详解深度学习感知机原理
大家好 , 欢迎阅读深度学习专题 。
我们之前的机器学习专题已经结束了 , 我们把机器学习领域当中常用的算法、模型以及它们的原理以及实现都过了一遍 。 虽然还有一些技术 , 比如马尔科夫、隐马尔科夫、条件随机场等等没有涉及到 。 但是这些内容相比来说要弱一些 , 使用频率并不是非常高 , 我们就不一一叙述了 , 感兴趣的同学可以自行研究一下 。 我想像是GBDT、SVM这些模型都能理解的话 , 那些模型想必也不在话下 。
深度学习简介深度学习最近几年非常火 , 很多人会把它和人工智能扯上联系 。 这里的深入并不是指学习深入 , 也不是指概念很深入 , 只是单纯地指多层神经网络组成的“深度”神经网络 。
文章插图
其实无论是神经网络还是深度神经网络或者是深度学习当中的算法 , 其实至今都已经有好几十年的历史了 。 比如众所周知的深度学习核心算法反向传播算法最早提出在1989年 , 距今已经三十多年了 。 虽然历史并不短 , 但是这门领域之前起起伏伏 , 虽然也曾辉煌过 , 但一直到最近几年才强势崛起 , 成为了几乎家喻户晓的概念 。
其中的原因也很简单 , 因为训练神经网络的复杂度实在是太大了 , 以之前的计算资源根本扛不住这么大规模的运算 。 所以在之前那个年代 , 深度学习还是一个偏小众的领域 。 研究的人不多 , 经费也有限 。 直到最近几年 , 由于计算资源飞速发展 , 再加上通过GPU加速神经网络训练的黑科技被发明出来 , 使得原本不可能做到的变成了可能 。 再加上阿尔法狗战胜了李世石这种划时代的事件发生 , 导致了深度学习一时间吸引了大量的资源与关注 , 那么这个行业自然也就蒸蒸日上发展起来了 。
既然深度学习是有关于神经网络的技术 , 那么我们这个专题文章讲解的内容自然也不会脱离神经网络的范畴 。 今天我们就从神经网络最基础的神经元——感知机开始说起 。
感知机感知机的英文是perceptron , 我们可以把它理解成神经网络的最小构成单位 。 我们知道在自然界的生物体当中 , 神经的最小单位是神经元 , 一个神经元是一个细胞 , 它大概长成下面这个样子 。 我想绝大多数同学都应该曾经在生物课的课本上看到过神经元的图片 。
文章插图
感知机可以理解成神经元的仿生结构 , 我们都知道一个神经元细胞可以连接多个神经细胞 , 这些神经元之间彼此连接形成了一张巨大的网络 。 神经元之间可以互相传递电信号以及化学物质 , 从而形成了一系列复杂的反应 。 人类的大脑就可以理解成一张极其巨大且复杂的神经网络 , 但是关于人类的大脑以及生物的神经元网络究竟是如何起作用的 , 目前还没有定论 。
但计算学家模拟神经元以及神经网络搭建了深度学习的模型 , 的确在一些问题上取得了非凡的结果 。 感知机就可以认为是一个神经元细胞的抽象 , 我们都知道一个神经元细胞会从其他若干个神经元当中获取信号 , 也会向另一个神经元细胞传递信号 。 我们把传入的信号当成是输入 , 传出的信号当做是输出 , 这样就得到了感知机的结构 。
文章插图
这里我们把结构做到了最简 , 我们把输入的信号都看成是浮点数 , 每一个信号都有一个自己的权重 , 所有的信号会累加在一起 , 最后通过一个映射函数输出信号 。
我们来看最简单的感知机来做个例子:
文章插图
这个感知机只有两个输入 , 我们很容易得到
- 系统性学习Node.js(5)—手写 fs 核心方法
- 无需入耳的蓝牙,南卡骨传导蓝牙耳机深度体验
- 使用半监督学习从研究到产品化的3个教训
- Rust语言学习:Beginning_Rust
- 如何编写JAVA小白第一个程序
- 不需要负样本对的SOTA的自监督学习方法:BYOL
- Linux培训完能到什么水平,之后还需要学习哪些技术?
- 向蚂蚁学习“跳一跳”战略,持续打磨公文写作核心竞争力
- 从Bengio演讲发散开来:探讨逻辑推理与机器学习
- Java学习路线图