当前位置: 首页 > news >正文

深度学习(鱼书)day01--感知机

深度学习day01–感知机

在这里插入图片描述

一、感知机的定义

感知机是由美国学者Frank Rosenblatt在1957年提出来的。感知机是神经网络的基础,学习感知机的构造就是学习通向神经网络和深度学习的一种重要思想。

感知机接收多个输入信号,输出一个信号。感知机的信号只有“流/不流”(1/0)两种取值,0对应“不传递信号”,1对应“传递信号”。

下图是一个接收两个输入信号的感知机的例子。x1、x2是输入信号,y是输出信号,w1、w2是权重w是weight的首字母)。图中的○称为“神经元”或者“节点”。输入信号被送往神经元时,会被分别乘以固定的权重(w1x1、w2x2)。神经元会计算传送过来的信号的总和,只有当这个总和超过了某个界限值时,才会输出1。这也称为“神经元被激活”。这里将这个界限值称为阈值,用符号θ表示。
在这里插入图片描述

把上述内容用数学式来表示,就是式:

感知机的多个输入信号都有各自固有的权重,这些权重发挥着控制各个信号的重要性的作用。也就是说,权重越大,对应该权重的信号的重要性就越高。

二、简单逻辑电路

  1. 与门:与门仅在两个输入均为1时输出1,其他时候则输出0。

在这里插入图片描述

下面考虑用感知机来表示这个与门。需要做的就是确定能满足图2-2的真值表的w1、w2、θ的值。实际上,满足图2-2的条件的参数的选择方法有无数多个。(w1,w2, θ) = (0.5, 0.5, 0.7) ,为(0.5, 0.5, 0.8),设定这样的参数后,仅当x1和x2同时为1时,信号的加权总和才会超过给定的阈值θ

  1. 与非门:与非门就是颠倒了与门的输出。用真值表表示的话,如图2-3所示,仅当x1和x2同时为1时输出0,其他时候则输出1。

在这里插入图片描述

(w1, w2, θ) = (−0.5,−0.5,−0.7)实际上,只要把实现与门的参数值的符号取反,就可以实现与非门。

  1. 或门:只要有一个输入信号是1,输出就为1

在这里插入图片描述

3个门电路只有参数的值(权重和阈值)不同。也就是说,相同构造的感知机,只需通过适当地调整参数的值,就可以变身为与门、与非门、或门。

三、感知机的实现

  1. 与门

    def AND(x1,x2):w1, w2, theta = 0.5, 0.5, 0.7tmp = w1 * x1 + w2 * x2if tmp > theta: return 1else:return 0
    

  2. 引入权重和偏置:把之前的公式中的θ换成-b:此处,b称为偏置,w1和w2称为权重。

    w1和w2是控制输入信号的重要性的参数,而偏置是调整神经元被激活的容易程度(输出信号为1的程度)的参数。

  3. 基于权重和偏置的与门的实现

    import numpy as np
    def AND(x1,x2):w = np.array([0.5, 0.5])x = np.array([x1, x2])b = -0.7tmp = np.sum(w*x) + bif tmp > 0: return 1else:return 0
    

在这里插入图片描述

  1. 与非门

    import numpy as np
    def AND(x1,x2):w = np.array([-0.5, -0.5])x = np.array([x1, x2])b = 0.7tmp = np.sum(w*x) + bif tmp > 0: return 1else:return 0
    

在这里插入图片描述

  1. 或门:

    import numpy as np
    def OR(x1,x2):w = np.array([0.5, 0.5])x = np.array([x1, x2])b = -0.2tmp = np.sum(w*x) + bif tmp > 0: return 1else:return 0
    

在这里插入图片描述

四、感知机的局限新

异或门:仅当x1或x2中的一方为1时,才会输出1(“异或”是拒绝其他的意思)

在这里插入图片描述

实际上,用前面介绍的感知机是无法实现这个异或门的。首先,我们试着将或门的动作形象化。或门的情况下,当权重参数(b, w1, w2) = (0.5, 1.0, 1.0)时:表示的感知机会生成由直线0.5 + x1 + x2 = 0分割开的两个空间。其中一个空间输出1,另一个空间输出0

在这里插入图片描述

这条直线可以将○和△分开。

异或门的图像无法用一条直线来分割输出结果:

在这里插入图片描述

感知机的局限性就在于它只能表示由一条直线分割的空间。图2-8这样弯曲的曲线无法用感知机表示。另外,由图2-8这样的曲线分割而成的空间称为非线性空间,由直线分割而成的空间称为线性空间

五、多层感知机

感知机的绝妙之处在于它可以“叠加层”。

在这里插入图片描述

这里,x1和x2表示输入信号,y表示输出信号。x1和x2是与非门和或门的输入,而与非门和或门的输出则是与门的输入。

在这里插入图片描述

异或门的实现:

import numpy as np
def XOR(x1,x2):s1 = OR(x1,x2)s2 = NAND(x1,x2)return AND(s1,s2)

在这里插入图片描述

与门、或门是单层感知机,而异或门是2层感知机。叠加了多层的感知机也称为多层感知机(multi-layered perceptron)。

在这里插入图片描述

http://www.lryc.cn/news/599045.html

相关文章:

  • 基于CloudBase+React+CodeBudddy的云上智能睡眠应用开发实践
  • Rust与YOLO目标检测实战
  • rust-结构体使用示例
  • 论文阅读:《无约束多目标优化的遗传算法,群体和进化计算》
  • Eureka-服务注册,服务发现
  • SpringBoot航空订票系统的设计与实现
  • 华为OpenStack架构学习9篇 连载—— 01 OpenStack架构介绍【附全文阅读】
  • docker pull weaviate 国内拉取失败的问题
  • java中如何返回一个可以执行返回操作(return action)的函数或对象
  • rust-枚举
  • 技术赋能多元探索:我的技术成长与行业洞察
  • 【安卓笔记】lifecycle与viewModel
  • MySQL的底层原理--InnoDB记录存储结构
  • Ollama(5)服务接口压力测试
  • PostgreSQL 保留关键字冲突问题:语法错误 在 “user“ 或附近的 LINE 1: CREATE TABLE user
  • Windchill用SQL获取所有组织下的所有用户
  • CIRL:因果启发的表征学习框架——从域泛化到奖励分解的因果革命
  • Linux进程间通信:管道机制全方位解读
  • 【MediaTek】AN7563编译wlan_hwifi出现en_npu.c:42:10: fatal error:
  • 【STM32项目】水质检测
  • 【数组的定义与使用】
  • 使用Python采集招聘网站数据并智能分析求职信息
  • AI大模型各类概念扫盲
  • 【C++】标准模板库(STL)—— 学习算法的利器
  • 算法题(179):单调栈
  • C++抽象类完全指南
  • ARM汇编常见伪指令及其用法示例
  • Datawhale AI数据分析 作业2
  • linux入门 相关linux系统操作命令(二)--文件管理系统 ubuntu22.04
  • DS18B20扩展:在数码管上显示温度时包含小数部分