深度学习入门笔记01

本笔记参考《深度学习入门:基于python的理论与实践》的内容。本文语言通俗易懂,适合小白!

感知机

什么是感知机?感知机接受信息,感知机的信号只有“流/不流”(1/0)两种取值。在《深度学习入门:基于python的理论与实践》中,0对应“不传递信号”​,1对应“传递信号。

如图,x1,x2代表输入的信息。w1和w2表示权重(weight),y代表输出信号,一个圆表示一个神经元。输入信号被送往神经元时,会被分别乘以固定的权重w1、w2。神经元会计算传送过来的信号的总和,只有当这个总和超过了某个界限值时,才会输出1。这也称为“神经元被激活”​。这里将这个界限值称为阈值,用符号θ表示。

简单的电路逻辑

这里介绍四种感知机。

AND gate (与门)

功能:两个输入均为1,才会输出1(输入和输出只能是0或1)

如图

联系前面的公式,我们知道有多种w1,w2,θ组合能够创造与门。比如(w1,w2,θ)=(1,1,1)或者(0.8,0.8,1)。满足条件的搭配其实有无数个,这里我们是人为的设置参数,而机器学习就是让机器找到这些参数。学习是确定合适的参数的过程,而人要做的是思考感知机的构造(模型)​,并把训练数据交给计算机。

OR gate (或门)

功能:两个输入中,有一个1就行。(只要有一个输入信号是1,输出就为1)

NAND gate (与非门)

仅当两个输入同时为1时输出0,其他时候则输出1

感知机的简单实现

换一种方法表示(增加偏置的概念)

在此之前,首先把式(2.1)的θ换成-b,于是就可以用式(2.2)来表示感知机的行为。

思考一下:为什么不用 θ,而是用b来代替-θ?这样做有什么好处?会让计算更加方便吗?

用python 实践

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

请自行实践或门,与非门。 

感知机的不足

 异或门 XOR gate

仅当x1或x2中的一方为1时,才会输出1

 你可以确定一组(w1,w2,b)来创建异或门吗?

用图形解释 

这里有一个或门的例子。我们确定这个或门的参数(w1,w2,b)=(1,1,-0.5)

能否输出1,只需要判断w1x1+w2x2+b(即x1+x2-0.5)是否大于0。

我们画出一个图像,横轴为x1,竖轴为x2,做出(x1+x2-0.5=0)的图像

图中四个点是代表四种输入。在直线以上的部分就是输出为1的点,在直线一下的部分就是输出为0的点。这里我们也可以看出,直线w1x1+w2x2+b=0的系数有多种选择,具体表现为图中的直线可以在一定范围内移动变化。

而异或门是不能用一条直线来划分的,只能用一条曲线来划分,也就是说非线性。由图2-8这样的曲线分割而成的空间称为非线性空间,由直线分割而成的空间称为线性空间。线性、非线性这两个术语在机器学习领域很常见。

有没有什么方法可以使得我们创造出异或门呢?可不可以用与门,与非门,或门来创造出异或门?请大家暂停思考一下!

我们下期继续更新!

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值