首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

机器学习入门——数据、模型和算法

机器学习三要素为:数据(Data)、模型(Model)、算法(Algorithm)。

简而言之,三要素间的关系,可以用一句话来说明:

算法通过在数据上进行运算产生模型 。

那么,我们来具体了解机器学习三要素。

数据(Data)

向量空间模型(VSM)

原始数据(Raw Data)是无法直接用来喂给算法进行计算的,所以,需要构建一个向量空间模型(Vector Space Model/VSM)。VSM 的任务是将各种格式的Raw Data(文字、图片、音频和视频等等)转换为数字向量形式。接着,才可以把这些转换后的向量才可以作为机器学习算法的输入。

比如:著名的鸢尾花数据集(Iris)。

Iris的原始形式是一个个花,而使用VSM将每个花转换为一个长度为4的向量:(花萼长度, 花萼宽度, 花瓣长度, 花瓣宽度)

鸢尾花数据集的形式是这样的:

其中,每行代表了一个样本,比如第一行:[5.1, 3.5, 1.4, 0.2],代表了第一个样本的花萼长度=5.1, 花萼宽度=3.5, 花瓣长度=1.4, 花瓣宽度=0.2

每一行,也称为特征向量(Feature Vector) ,可以这么理解,花萼和花瓣的长度宽度,就是这个花的特征。要把这些特征输入到机器学习算法之中,而非花的本身。

模型

之前说过,机器学习学习的三要素是数据、模型、算法,,那什么是模型?

模型是机器进行学习的结果,学习的过程称为训练(Train)

可以把一个训练好的模型,理解成一个函数

我们把数据()输入到模型()中,得到预测结果()

输出的结果可能是一个实数(回归问题),也可能是一个标签(分类问题)。

比如,我们预测一张图片是猫还是狗:

这时候,会先用VSM将图片转换成向量,并放入到模型中进行计算,之后获得预测结果。

模型的要通过训练才能得到最终的结果,训练过程需要依靠某些方法来让模型变得更好。这个方法就是算法。

算法

介绍算法,首先要理解损失函数(Loss Function)的概念

机器学习的目标是优化模型,让模型的预测更准。于是,人们提出了损失函数 的概念,用来衡量模型的性能。

比如。回归任务的损失函数,通常用该点的预测值 与实际值的差的平方和作为损失函数,也就是

那么,最终的损失函数,就是在所有点上预测的误差的和,也就是

加上 是为了方便后续计算。 这个损失函数的名称叫做均方误差(Mean Squared Error,MES), 也是回归任务最常见的损失函数。

当这个损失函数最小的时候,也就是在当前数据上预测最准的时候(不代表在未知数据上也很准)。

而分类任务的性能判断方式有很多,最常用的包括:

准确分数(Accuracy Score,AC):所有分类正确的百分比

召回率(Recall Score)

ROC_AUC分数(Roc_auc Score)

交叉熵损失

而算法,则是用来降低这些损失函数的方法,算法通常也被称作优化算法,常用的算法包括:梯度下降(Gradient Descent),共轭梯度法(Conjugate Gradient),牛顿法和拟牛顿法,模拟退火法(Simulated Annealing) 等等。

一般来说,算法是机器学习和深度学习中比较考验数学与编程能力的部分,所以算法工程师的高薪不难理解。

不过,算法并非最重要的,数据的质量及数量以及模型是否适合与算法共同决定了最终的效果,所以,理解为什么数据、模型以及算法并称为机器学习三要素了吧?

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181221A026W000?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券