关于神经网络的思考

关于感知机

感知机(Perceptron)和神经网络(Neural Network)之间有一定的关系,可以说感知机是神经网络的一个基本组成单元。

  • 感知机

    • 感知机是一种简单的二分类线性分类器。
    • 它接受多个输入,对每个输入施加权重,然后将它们相加。这个总和会经过一个激活函数(通常是阶跃函数)得到输出。
    • 如果输出超过某个阈值,它将被分类为一类,否则分类为另一类。
    • 感知机可以用于解决线性可分的问题,但不能解决线性不可分的问题。

感知机有两部分,一是线性函数,二是激活函数:

其中线性函数如果在二维中就是一条直线f=wx+b把两种类别分开,在三维就是一个平面...

单个感知机能处理与或非但不能处理异或:

因为异或可以用与或非表示出来,故要处理异或问题可以用多层感知机:

  • 神经网络

    • 神经网络是一个更加复杂的模型,由许多层次的神经元组成。
    • 每个神经元接受多个输入,并为每个输入分配一个权重。然后将所有加权输入相加,通过激活函数处理得到输出。
    • 神经网络可以包含多个层(输入层、隐藏层、输出层),其中隐藏层其实就是多层感知机,可以处理更加复杂的非线性关系。

关于损失函数

最小二乘法

假设是真实结果,是预测结果,最直观的想法就是去求它们之间的差值,让差值尽可能的小,即让预测结果尽可能接近真实结果。

但是用这个绝对值可能会不可导,故采用平方的形式衡量这种差距,"最小"即min"二乘"即二次方。

极大似然估计法

知道结果,由结果去反推造成结果的概率模型时的估计方法。

比如10每硬币抛出来7个正面3个反面,如果算出的概率模型有0.1:0.9、0.7:0.3和0.8:0.2,其中0.7:0.3的概率模型下发生这件事的概率为0.7^5*0.3^3,概率是最大的即"似然",那么就"估计"这种概率模型就是真实抛硬币的概率模型。

如果事件只有两种情况,那么符合伯努利分布。

交叉熵

熵是衡量一个系统不确定性的多少即信息量。

假如有一个概率系统P,那么它的熵就是对这个系统的信息量求期望。

KL散度

KL散度即相对熵,相对指的是两个概率系统。

D(P||Q)和D(Q||P)是不等价的,D(P||Q)表示以P为基准,它们信息量相差多少。

由整理的结果可见,第一项是交叉熵;第二项是P的系统熵,是定值。

引理: KL散度大于等于0,当P=Q时为0。

要让两个概率系统接近,即最小化交叉熵->损失函数。

由于P的熵是定值求梯度(即函数偏导)为0,故其实KL散度作损失函数等价于交叉熵作损失函数。

假设事件只有两种情况,交叉熵可写为:

可以发现,交叉熵和极大似然估计法的式子形式一样(含义不同)。

关于梯度下降

调整参数(比如权重w和偏置b)的策略是反向传播,梯度下降是反向传播的一种方法,除此之外还有牛顿法、冲量法...

正向传播就是信息在一层层的感知机下传递下去。

反向传播就是把偏差传递到各个参数上,根据参数对偏差的"贡献"大小作相应的调整多少。

(蕴含的贪心思想:优先调整那些对最后结果有重大影响的参数)

其中J表示由损失函数算出来的偏差,绿色部分代表该感知机因对最后结果的"贡献"大小所承担的"责任"的多少(浅绿部分是参数,深绿部分是上一层造成的偏差,回传给上一层)。

上面直观的理解图的偏差是用数值加法,实际是用向量的加法进行分配,由于偏差值是没有方向的,所以还需要找到一个确定的方向->梯度的方向就是向量的方向。准确来说是梯度的反方向,因为梯度的方向是数值增加最快的方向,其反方向才是数值减小最快的方向。

相关推荐
galileo201619 分钟前
LLM与金融
人工智能
DREAM依旧35 分钟前
隐马尔科夫模型|前向算法|Viterbi 算法
人工智能
GocNeverGiveUp1 小时前
机器学习2-NumPy
人工智能·机器学习·numpy
B站计算机毕业设计超人2 小时前
计算机毕业设计PySpark+Hadoop中国城市交通分析与预测 Python交通预测 Python交通可视化 客流量预测 交通大数据 机器学习 深度学习
大数据·人工智能·爬虫·python·机器学习·课程设计·数据可视化
学术头条2 小时前
清华、智谱团队:探索 RLHF 的 scaling laws
人工智能·深度学习·算法·机器学习·语言模型·计算语言学
18号房客2 小时前
一个简单的机器学习实战例程,使用Scikit-Learn库来完成一个常见的分类任务——**鸢尾花数据集(Iris Dataset)**的分类
人工智能·深度学习·神经网络·机器学习·语言模型·自然语言处理·sklearn
feifeikon2 小时前
机器学习DAY3 : 线性回归与最小二乘法与sklearn实现 (线性回归完)
人工智能·机器学习·线性回归
游客5202 小时前
opencv中的常用的100个API
图像处理·人工智能·python·opencv·计算机视觉
古希腊掌管学习的神2 小时前
[机器学习]sklearn入门指南(2)
人工智能·机器学习·sklearn
Ven%2 小时前
如何在防火墙上指定ip访问服务器上任何端口呢
linux·服务器·网络·深度学习·tcp/ip