google机器学习框架tensorflow学习笔记(二)

线性回归

人们早就知晓 ,相比凉爽的天气,蟋蟀在较为炎热的天气里鸣叫更为频繁。数十年来,专业和业余昆虫学者已将每分钟的鸣叫声和温度方面的数据编入目录。Ruth 阿姨将她喜爱的蟋蟀数据库作为生日礼物送给您,并邀请您自己利用该数据库训练一个模型,从而预测鸣叫声与温度的关系。如果把数据画成图将得到下图:
事实上,虽然该直线并未精确无误地经过每个点,但针对我们拥有的数据,清楚地显示了鸣叫声与温度之间的关系。只需运用一点代数知识,您就可以将这种关系写下来,如下所示:y=mx+b
其中:y是指温度,即我们试图预测的值。m是直线的斜率。x是每分钟鸣叫的次数,即输入特征的值。b是y轴截距。

按照机器学习的惯例,您需要写一个存在细微差别的模型方程式:y'=b+w1x1
其中:y'是指预测标签(理想输出)。b是偏差。w1是特征1的权重。x1是输入特征。

要根据新的每分钟的鸣叫值x1推断温度y',只需将x1带入次模型即可。
下标可以用来表示更复杂的模型,如一个具有3特征的模型可以表示为:y'=b+w1x1+w2x2+w3x3

训练与损失

简单来说, 训练 模型表示通过有标签样本来学习(确定)所有权重和偏差的理想值。在监督式学习中,机器学习算法通过以下方式构建模型:检查多个样本并尝试找出可最大限度地减少损失的模型;这一过程称为 经验风险最小化
损失是对糟糕预测的惩罚。也就是说, 损失 是一个数值,表示对于单个样本而言模型预测的准确程度。如果模型的预测完全准确,则损失为零,否则损失会较大。训练模型的目标是从所有样本中找到一组平均损失“较小”的权重和偏差。 例如,图 3 左侧显示的是损失较大的模型,右侧显示的是损失较小的模型。
平方损失:一种常见的损失函数
接下来我们要看的线性回归模型使用的是一种称为 平方损失 (又称为  L2 损失 )的损失函数。单个样本的平方损失如下:
  = the square of the difference between the label and the prediction
  = (observation - prediction(x))2
  = (y - y')2
均方误差 (MSE) 指的是每个样本的平均平方损失。要计算 MSE,请求出各个样本的所有平方损失之和,然后除以样本数量:

其中:(x, y)是样本,x是模型预测时使用的特征集,y是样本的标签。prediction(x)是对x的预测,即y'。 N是样本数量,D是数据集。
虽然 MSE 常用于机器学习,但它既不是唯一实用的损失函数,也不是适用于所有情形的最佳损失函数。

猜你喜欢

转载自blog.csdn.net/qq_41196472/article/details/79560156
今日推荐