首页 > 其他分享 >【深度学习笔记】第3章-神经网络基础

【深度学习笔记】第3章-神经网络基础

时间:2023-11-11 21:56:35浏览次数:33  
标签:数据 clf Perceptron 笔记 感知机 神经网络 per 深度 data

参考书籍: 邓立国等《python深度学习原理、算法与案例》清华大学出版社

3.3 感知机

3.3.1 感知机模型

感知机,又称阈值逻辑单元(Threshold Logic Unit,TLU)/线性阈值单元(Linear Threshold Unit,LTU)

经典数据集:Iris Data Set(鸢尾属植物数据集)

但是这个数据集有些复杂,没什么必要用,自己写了个简单的数据集。

import numpy as np
from sklearn.linear_model import Perceptron

# 每个数据单元由两个数据项组成
data = np.array([
	[0, 0],
	[0, 1],
	[1, 0],
	[1, 1]
	])

# 标签就是给数据分类的
# 此标签表示第一个数据为第一类,后面的三个数据为第二类
tag = np.array([0, 1, 1, 1])

# Perceptron 是 sklearn.linear_model 模块中的一个类,用于实现感知机算法。这个类的构造函数接受几个参数:
# max_iter=1000:这是最大迭代次数,即算法寻找最优解的最大尝试次数。
# tol=1e-3:这是停止标准的公差,如果模型在连续两次迭代中的改进小于这个值,那么就会停止迭代。
# random_state=42:这是随机数生成器的种子,用于初始化模型的权重。通过设置随机种子,可以确保每次运行代码时得到相同的结果。
per_clf = Perceptron(max_iter=1000, tol=1e-3, random_state=42)

# 用数据data和对应的标签tag来训练感知机
per_clf.fit(data, tag)

print(f"w = {per_clf.coef_}")
print(f"b = {per_clf.intercept_}")

输出:

w = [[2. 2.]]
b = [-1.]

感知机的模型预测公式 \(y = w^Tx + b\) ,从上面的结果看,将 \(w = [2, 2]^T\) 和 \(b=-1\) 代入模型公式后,当x = [0, 0]时,y = -1 < 0,是为负类,而其他点代入之后,y都大于1,是为正类。(感知机模型默认的阶跃函数是:

\[f(z) = \left\{ \begin{array}{l} 1, z > 0 \\ 0, 其他 \end{array} \right. \]

所以大于0是正类,小于0是负类。)

训练完模型之后,就可以用Perception的预测方法.predict来预测新数据点的类型是什么了。

data_for_preditc = [[2,2], [0, 0.4]]

prediction = per_clf.predict(data_for_preditc)  # predict接收二维数组作为参数
print(f"新数据点{data_for_preditc}的类别是:{prediction}")

输出:

新数据点[[2, 2], [0, 0.4]]的类别是:[1 0]

其实感知机就是个线性回归加个阈值

3.3.2 多层感知机(Multi-Layer Perceptron, MLP)

标签:数据,clf,Perceptron,笔记,感知机,神经网络,per,深度,data
From: https://www.cnblogs.com/code-pigeon/p/17825811.html

相关文章

  • 《Swin Transformer: Hierarchical Vision Transformer using Shifted Windows》阅读
    论文标题《SwinTransformer:HierarchicalVisionTransformerusingShiftedWindows》Swin这个词貌似来自后面的ShiftedWindowsShiftedWindows:移动窗口Hierarchical:分层作者微软亚洲研究院出品初读摘要提出SwinTransformer可以作为CV的通用主干Tansfo......
  • 学习笔记9
    第6章信号和信号处理1.信号和中断1.信号:信号是操作系统中用于通知进程有突发事件发生的一种机制。信号可以由硬件或软件生成,用于中断进程的执行。信号的主要目的是让进程能够及时处理这些特殊事件,例如用户输入、硬件故障等。信号的特点:异步性:信号可以在进程执行的任何时......
  • 深度学习模型---卷积神经网络
    深度学习深度学习模型是一种机器学习方法,它模仿人脑神经网络的结构和功能,通过多层次的神经网络进行学习和推断。深度学习模型在计算机视觉、自然语言处理、语音识别等领域取得了显著的成果。深度学习模型的基本单元是神经网络,它由大量的人工神经元组成,每个神经元都与其他神经元......
  • Pollard-Rho 学习笔记
    前言其实很早就看到过了,下定决心去学的,居然是因为翻到之前口胡的题目,然后发现之前做法假了,继续尝试做的时候发现需要这个算法,于是,题目就绿->黑了。Step.1引入求一个数的所有因数,这个问题伴随了我们很久了,现在又要翻出来鞭尸。最开始的时候,我们使用的是最朴素的\(O(n)\)试除......
  • SuperGlue: Learning Feature Matching with Graph Neural Networks论文笔记
    SuperGlue:LearningFeatureMatchingwithGraphNeuralNetworks源码:github.com/magicleap/SuperGluePretrainedNetwork背景:主要解决图像中点之间的对应关系。主要方法:上图为该方法的主要框架。模型大致分为两个部分:注意图神经网络和最优匹配层。其中第i个局部特征由di......
  • 第九周学习笔记
    @[TOC](第九周学习笔记)#1.信号的初步认识##1.1信号的特点信号所携带的信息量少,操作简单##1.2信号的状态1.产生①由键盘产生:例如Ctrl+c,Ctrl+②命令:kill③系统函数:kil④软条件:定时器⑤硬件:段错误,除0错误>由键盘和和硬件产生的信号统称为硬件方式,其余的为软件方式2.未......
  • openGauss学习笔记-120 openGauss 数据库管理-设置密态等值查询-概述及使用gsql操作密
    openGauss学习笔记-120openGauss数据库管理-设置密态等值查询-概述及使用gsql操作密态数据库120.1密态等值查询概述随着企业数据上云,数据的安全隐私保护面临越来越严重的挑战。密态数据库将解决数据整个生命周期中的隐私保护问题,涵盖网络传输、数据存储以及数据运行态;更进一步......
  • 学习笔记9(第六章)
    一、知识点归纳(一)知识点内容教材学习内容总结本章讲述了信号和信号处理;介绍了信号和中断的统一处理,有助于从正确的角度看待信号;将信号视为进程中断,将进程从正常执行转移到信号处理;解释了信号的来源,包括来自硬件、异常和其他进程的信号;然后举例说明了信号在Unix/Linux中的常见用......
  • 学习笔记10(第十二章)
    一、知识点归纳(一)知识点内容教材学习内容总结(二)苏格拉底挑战1.知识点一2.知识点二二、问题与解决(一)问题(二)解决三、实践过程与代码(一)实践(二)代码......
  • 计算机内存笔记
    本文作为一个笔记,复习一下计算内存相关知识,主要是参考:合集·CSAPP-深入理解计算机系统下面说一下储存器部分,当前计算机的储存有这么几种,寄存器是最快的,其次是几级缓存,最后是内存,从硬盘中拿数据是最慢的先说一下主要的两种内存:SRAM和DRAM他们的原理分别是:1、SRAM将每个bit......