ML三(人工神经网络)
人工神经网络
Artificial Neural Nerworks
基本术语概念:
人工神经网络(Artificial Neural Networks,ANN)
感知器(Perceptron):以一个实数值向量作为输入,计算输入的线性组合,如果结果大于某个阈值输出1,否则输出-1。
权值(weight):贡献率。
线性可分(linearly separable)
Delta法则(delta rule):LMS的一个变态,采用梯度下降。
感知器训练法则(perceptron training rule)
梯度下降(gradient descent)
反向传播算法(The Backpropagation Algorithm)
1 适合神经网络学习的问题
-
实例使用很多"属性-值"对表示的。
-
目标函数的输出可能是离散值。
-
训练数据可能包含错误。
-
可容忍长时间的训练。
-
可能需要快速求出目标函数值。
-
人类能否理解学到的目标函数是不重要的。
2 感知器(perceptron)
感知器:ANN系统的基础单元
其中,w是一个实数常量,叫做权值(weight)。
学习一个感知器意味着选择权w的值。
2.1 感知器的表征能力
单独的感知器可以解决线性可分(linearly separable)样例集合,例如很多布尔函数,AND,OR,但不能解决线性不可分的函数,例如异或函数XOR。
2.2 感知器训练法则
-
感知器法则(perceptron training rule):
该法则收敛的前提是训练样例线性可分。
-
Delta法则:
如果训练样本不是线性可分的,那么delta法则会收敛到目标概念的最佳近似。它的关键思想是使用梯度下降(gradient descent)来进行搜索。
先制定一个度量标准来衡量假设相对于训练样本的训练误差(training error)。
其中,D是训练样例集合,t是训练样例d的目标输出,o是线性单元对训练样例d的输出。
接下来要是误差最小,计算E相对w每个分量的导数。
这个向量导数被称为E对于w的梯度(gradient)。
通过求导得:
3 多层网络和反向传播算法(The Backpropagation Algorithm)
3.1 可微阈值单元(A Differentiable Threshold Unit)
这里需要的单元应该是,它的输出是输入的非线性函数,并且输出是输入的可微函数,这样我们就能表征非线性函数的网络。Sigmoid单元满足。
Sigmoid单元:
3.2 反向传播算法(The Backpropagation Algorithm)
这里描述的算法适用于包含两层sigmoid单元的分层前馈网络,它采用梯度下降方法试图最小化网络输出值和目标值之间的误差平方,来学习这个网络的权值。一些符号意义:
3.3 反向传播法则的推导
符号表示:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?