AI:从线性函数到神经网络

1. 经典案例:预测房价

连续值预测。构建一个线性函数:\(y=w\cdot x + b\)来预测值;

2. 之后想尽办法要找到向量w使得y的图像和真实值拟合地进了接近,提出了“优化”问题:

● 先是提供梯度下降的思路,求这个线性函数中x的梯度来更新w值一步步接近最优,更新过程中的预测值和真实值之差称为“损失”,而计算损失的函数称为“损失函数”,更新过程涉及到了“学习率”的概念,即每一步更新的步长有多大
● 再是提出各种和调节“学习率”有关的方法来使得优化的过程又快又准,如Adagrad、RMSProp、Adam等等

3. 在连续值的预测之后,提到了离散的分类问题

● 这就涉及到了概率,于是引入Logistic-对数,由其相关的计算引出对率回归(这个就不详细讲述啦),亦即“逻辑回归”,而参与计算其对数的函数\(sigmoid(output) = \frac{1}{1+e^{-output}}\)称为“激活函数”,这里的“激活”取自后续的神经网络部分
● 逻辑回归为二分类,可以感性地将实现了逻辑回归的那个“权重向量”及其“偏置”的结合视为一个神经元(神经元中的参数矩阵运算从数学上讲就是一个多元函数:逻辑回归的数学表达),而这个“神经元”的输出经过激活函数sigmoid后最终称为了分类的“概率”。至此,神经网络的基本单位——神经元(也被称为“感知器Perception”)提出,与之紧密相连的,是神经元的相关概念:神经元的输入-一个样本的特征;神经元的输出:样本特征和神经元权重、偏置结合后可以用于衡量当前神经元“负责”考量的区域的一个量,这个量决定了该样本有多大程度属于“这个领域”;而后的激活函数则将这个量变为了概率(在二分类问题中),当这个概率大于0.5时认定为分类1,反之认定为分类2。而究竟是>0.5时为分类1还是小于0.5时为分类1这就取决于训练时提供的训练集了,通过训练集训练一个神经元具备优秀的分类能力(存储了合适的权重值)的过程和1、2中提到的优化、拟合过程完全一致
● 对于多分类问题,仅仅通过一个神经元显然难以胜任——它需要对应于更多“类别领域”的更多神经元来分别根据其特征给出一个样本分别有多大程度属于这若干个领域,而程度最大的那个就被认定是这个样本“理应”属于的那个类别。而这多个“神经元”就是多个逻辑回归的陈列,这就是一层神经网络,这若干个分类领域的表示“程度”的量也被搜集起来用做分类标准。它们就当然也需要一个“激活函数”来计算其“概率”值。在此,陈述这样一个基本事实:这个样本属于类别1,就不会属于类别2——即,样本的分类情况是相互独立的,那么,样本在所有类别上的概率值之和应该等于1:\(P(C_1|x)+P(C_2|x)+...+P(C_n|x)=1\),这就给构建多分类问题的激活函数提供了思路:分别通过sigmoid,然后再除以它们的加和\(P(C_1|x) = \frac{σ(o_1)} {\sum _{i=1}^n{σ(o_i)}}\),事实上,采用的激活函数和这个思路大体一致:\(softmax(output_i)=\frac {e^{output_i}} {\sum_{i=1}^{n}e^{output_i}}\)

4. 承前启后

至此,由预测到分类、由连续到离散、由函数到神经网络的历程正式结束。
有一个牛批的定律:一个具有有限个神经元的单层神经网络可以很好地拟合任意的函数(映射关系),即万能近似定理(Universal Approximation Theorem),由此,下面将展开对神经网络部分的讨论:包括
● 各种“神奇网络结构”的提出——样本的特征不一定为数值,它可能是某个高纬度的空间特征,如图片的识别中,图片主体的各部分特征就是二维特征而不能再简单地视作是一维的特征
● 各种深度的网络:不单单用一层神经元来作为识别的标准,而是将“特征的特征”作为其所属类别的指标,这就需要在一层神经元构成的网络之后再加一层
● 以及“可能不只在输出中出现的激活函数”:神经元的学习不一定是一个正反馈的过程,它可能学习过头——过于依赖某个特征、学习不到位——啥都要看结果没有任何侧重点-和瞎猜一样,为了纠正这些较差学习效果的神经元、同时也为保证它们的下一层能够接受到良好的输入,中间可能采取各种措施来尽量让每层神经元都“好好学习”,如采用dropout——将不好的踢出去、early stopping——在表现变差时就停止继续学习(过犹不及,对同一组训练集训练千万次肯定会造成对这个训练集所表现出的特征有过分的依赖,这就是“过拟合”,与之对应的“欠拟合”,如只学习了一次,那就啥也学不到:还是在瞎猜)

5. 后续网络任务

现在,NN的任务已经不仅仅在于回归、分类这些,人们希望它能够做到像人一样的能力,如“理解”——会看、会听、“交互”——会说,等等。而这以基于Logistic回归为单元的神经网络为什么被相信可以做到这些?答案基本有两个方向,这也是目前对于AI的“智慧”的两大阵营:
● 仿生学派
仿生学派认为,神经元(在仿生学派中称为“感知器”)的构建是对人脑的一种“仿生”:人脑的神经元也接收外界的输入,也处理输入,并且只有外界刺激/输入达到一定阈值时才会做出反应(激活)。所以一个神经元/感知器 不仅仅是逻辑回归这个数学拟合过程的体现,它也被视作是AI大脑中对一次输入/刺激能够做出反应的最小单元;
● 数理学派
数理学派对于“智慧”的构建更多地倾斜于“数理”。他们认为:人是生物,有生物独有的“大脑”作为“智慧”的载体,而AI“智慧”的载体则是由无数神经元构成的AI神经网络;生物的大脑通过“生物电”进行刺激、反馈,而AI则是通过“数理”输入、输出来对世界进行感知。
不管哪个学派,当前看来,都还说得过去。希望他们的确可以完成“拟合、分类”的各种任务吧!

posted @ 2022-09-10 16:59  YIYUYI  阅读(73)  评论(0编辑  收藏  举报