一句话描述机器学习:让机器具备一个函式的能力。
Machine Learning约等于Looking for Function。
应用:在speech recognition中识别语言,在image recognition中识别图片中动物,在playing go中识别下一步落子。
机器学习任务:regression,classification,structured learning
regression回归分析:找到一个函数 function,通过输入特征 x ,输出一个数值Scalar。
classification分类问题:找一个函数判断输入数据所属的类别。
应用:邮箱官方侦测垃圾邮件。
structured learning结构学习:输入和输出都是具有结构化的对象(数列、列表、树、边界框等)。
应用:找函数,输入账号信息,输出未来一天的总观看次数。
model模型:带有未知参数的函数y叫做模型。已知参数是特征feature。
机器学习步骤
1.带未知参数的函数
y=b+wx₁,y是模型,x₁是特征,b是bias偏差,w是weight。
2.从训练数据中定义损失函数Define Loss from Training Data
Loss:损失函数,判断输入的未知参数与最优解的误差。
预测数值y与Label真实数值y′比对。
损失值L=(1/n)∑en
L越小越好。
平均绝对误差mean absolute error(MAE)
e=|y-y′|
均方误差mean square error(MSE)
e=(y-y′)²
3.最佳化
指的是当L得最小值时对应w、b的值。
梯度下降法gradient descent 误差曲面error surface:L与未知参数的坐标系。
自设的学习速率*斜率,决定参数update速率。
机器学习中需要自己设定的东西叫超参数hyperparameters
局部最优解和全局最优解
线性模型linear model
有严重的限制,太简易了,有Model Bias模型偏差
例如这种情况:
分段线性曲线piecewise linear curve,用下面red curve表示。
蓝色function特性是:当输入的x值小于threshold,是某一个定值,大于另一个threshold时是另一个定值,中间有一段斜坡。
转折点横坐标都是对应的。
red curve越复杂,需要的蓝色function越多。
如果曲线圆滑,则找特殊点,连起来,用分段线性曲线分析。
用S型函数sigmoid function表示蓝色函数:
通过调整c、b、w使sigmoid function逼近蓝色函数:
用s型函数表示分段线性曲线red curve:
单feature
再结合多feature公式
因此最终表示:
或者线性代数(矩阵)方法表示:
optimization of new model:
计算出最优的θ*(读作si ta sa),θ是对所有未知参数的统称,N笔数据分成多批,每批B笔,每批算一个Loss。
蓝色函数另一种表示方法
Rectified Linear Unit(ReLU,读作rei lu)。
蓝色函数可看做连个ReLU的加总:
ReLU和Sigmoid两种表示统称为Activation function,其中ReLU更好。
Sigmoid转ReLU:
Deep Learning
上面激活函数可以表示成:
过拟合Overfitting
层数变多,训练资料变好,但预测资料变坏。
例如:
机器学习步骤总结
model如果太simple,就Model Bias,导致大海无针捞针。
model要更d性more flexible,more features
区分模型偏差和最优化问题:
如果层数变多,训练测试L都变大,那就是最优化问题。
最优化成功的话,一定layer越大,Loss越小。
解决最优化问题
先跑更容易最优化的小layer。
解决overfitting
或者增加training data(不建议,浪费时间)
或data augmentation创造新的资料,例如图片左右翻转。
或根据理解给model加constrain,比如限制成一元二次方程曲线。
解决问题
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)