非线性假设
若使用logistic回归,通过在模型中加入很多高阶项来进行非线性分类问题。若只有两个特征,则可以构建所有可能的特征变量来进行拟合。但是当特征不是二维,而是很多维时。特征变量数量过多时,可能存在过拟合,同时计算复杂度很大。若只选取其中的一部分特征变量,又会缺失很多信息。
识别汽车在计算机视觉中,如果要识别一个汽车,放大汽车图像中的一个点,用一个表示数据表表示汽车各个像素的值,这样就可以通过数据特征识别汽车。
计算机视觉中的汽车识别模型通过训练集中的数据学习汽车的不同特征,最后在经过测试集识别某个物体是否为汽车
只有两个像素情况下的汽车识别在只有两个特征pixel1和pixel2的情况下,每一个汽车有不同的特征值,根据特征值可以画出其在坐标中的位置,这样有多个汽车,就对应于坐标中不同的点,如下图所示:
通过非线性分类,我们可以将汽车分类出来。但是,这只是对应于两个特征的情况,实际上,图像识别时,特征变量有很多。假设灰度图片的像素是50*50,那么特征的维度就是2500。每一个样本x对应于2500个特征,而此特征就有2500^2~30万个。而且这只是对应于灰度图片,若是彩色图片,n=2500*3=7500,特征向量更多。
神经元与大脑
神经重连实验生物上的神经重连实验表明,专门处理触觉信息的大脑皮层可以通过训练,处理视觉信息。受此启发,我们要想使机器完成不同的任务,也许不需要设计不同种类的代码,只要让机器学会处理不同的数据就可以了。将任何传感器接入大脑,大脑的学习算法就能很快找到处理这些数据的方法。如果我们能找到大脑的学习算法,然后在计算机上执行和大脑的学习算法相似的算法,也许就能实现人工智能。
单个神经元神经网络是多个神经元的集合,第一层为输入层,包含三个输入单元,可以加入偏置单元,且其值永远为1;第二层为隐藏层,包含三个神经元,最后一层输出层,包含一个神经元,该神经元决定了会后假设函数的计算结果。在监督学习中,我们可以看到输入和输出,但是训练集里是看不到隐含层里的值。实际上不属于输入层和输出层的,我们都称之为隐含层,隐含层可能有多层。
神经网络结构图 神经网路的数学表示在神经网络中还要定义几个变量表示第j层的第i个单元的激活函数,表示由一个具体的神经元计算并输出的值,对应于神经网络图中的第二层。表示一个从第j层到第j+1层的权重矩阵。
前项传播算法从输入层到隐藏层到输出层,依次计算激活项,最后得到输出。
如果忽略第一层输入层,后面的部分结构与logistic回归相似,即通过输入数据的特征和sigmoid函数进行预测。神经网络就是不经过输入的特征直接进行分类,而是通过隐含层的学习算法得到特征和构建模型,其模型结果可能比logistic模型更加有效。
神经网络如何进行复杂非线性分类问题
神经网络用于进行逻辑函数中的and计算 神经网络用于逻辑函数中的or计算 结合了三种逻辑判断的神经网路神经网络进行多元分类
多元分类上述神经网路有四个输出,每个输出对应不同的判断结果,如第一个输出判断是否为行人。
多元分类的输出结果为向量
网友评论