1.什么是机器学习模型?
机器学习的目标是找出一个尽可能通用的函数,这个函数要尽可能对不可见数据给出正确的答案。
机器学习模型(machine learning model)是机器学习算法产出的结果,可以将其看作是在给定输入情况下、输出一定结果的函数F(function) 。机器学习模型不是预先定义好的固定函数,而是从历史数据中推导出来的。因此,当输入不同的数据时,机器学习算法的输出会发生变化,即机器学习模型发生改变。机器学习算法是揭示数据中潜在关系的过程。
2.有监督与无监督、半监督学习
(1)有监督学习
在一个有监督的学习任务中,数据样本将包含一个目标属性 y,也就是所谓的真值(ground truth)。任务是通过学习得到一个函数 F,它接受非目标属性 X,并输出一个接近目标属性的值,即 F(X)≈y。目标属性 y 就像指导学习任务的教师,因为它提供了一个关于学习结果的基准。所以,这项任务被称为有监督学习。
(2)无监督学习
与有监督的学习任务相反,在无监督的学习任务中没有设置y值,也就是说是无标签的。人们期望从数据中学习潜在的模式或规则,而不以预先定义的真值作为基准。
比如:
① 聚类(Clustering)
给定一个数据集,可以根据数据集中样本之间的相似性,将样本聚集成簇。例如,样本可以是一个客户档案,具有诸如客户购买的商品数量、客户在购物网站上花费的时间等属性。根据这些属性的相似性,可以将客户档案分组。对于聚集的群体,可以针对每个群体设计特定的商业活动,这可能有助于吸引和留住客户。
② 关联(Association)
给定一个数据集,关联任务是发现样本属性之间隐藏的关联模式。例如,样本可以是客户的购物车,其中样本的每个属性都是商品。通过查看购物车,人们可能会发现,买啤酒的顾客通常也会买尿布,也就是说,购物车里的啤酒和尿布之间有很强的联系。有了这种学习而来的洞察力,超市可以将那些紧密相关的商品重新排列到相邻近的角落,以促进这一种或那一种商品的销售。
(3)半监督学习
在数据集很大,但标记样本很少的情况下,可以找到同时具备有监督和无监督学习的应用。可以将这样的任务称为半监督学习(semi-supervised learning)。
在许多情况下,收集大量标记的数据是非常耗时和昂贵的,通过将有监督和无监督的学习结合在一个只有少量标记的数据集中,人们可以更好地利用数据集,并获得比单独应用它们更好的结果。
例如,人们想要预测图像的分类,但只对图像的 10% 进行了标记。通过有监督的学习,用有标记的数据训练一个模型,然后用该模型来预测未标记的数据,但是很难相信这个模型是足够普遍的,毕竟只用少量的数据就完成了学习。一种更好的策略是首先将图像聚类成组(无监督学习),然后对每个组分别应用有监督的学习算法。第一阶段的无监督学习可以帮助缩小学习的范围,第二阶段的有监督学习可以获得更好的精度。
3.分类 与 回归
将机器学习模型定义为一个函数 FFF,它接受一定的输入并生成一个输出。通常会根据输出值的类型将机器学习模型进一步划分为分类(classification)和回归(regression)。
(1)分类问题
例如,说明照片中是否包含猫的模型可以被视为分类模型,因为可以用布尔值表示输出。更具体地说,输入可以表示为矩阵 M,尺寸为 H×W ,其中 H 是照片的高度(像素),W 是照片的宽度。矩阵中的每个元素都是照片中每个像素的灰度值,即一个介于 [0, 255] 之间的整数,表示颜色的强度。模型的预期输出为二进制值 [1∣0],用于指示照片是否显示猫。
(2)回归问题
例子,考虑一个用于估算房产价格的模型,其特征包括诸如面积、房产类型(例如住宅、公寓),当然还有地理位置。在这种情况下,可以将预期输出看作是一个实数 p∈R,因此它是一个回归模型。注意,所拥有的原始数据并非全部是数字,其中某些数据是用于分类的,例如房地产类型。对于每个正在考虑的房产,可以将其特征用元组 T 来表示,其中元组中的每个元素要么是数值,要么是表示其属性之一的分类值。在许多情况下,这些元素也被称为 “特征(features)”。
(3)问题转化
有时回归和分类这两个模型之间的边界并不清晰,人们可以将分类问题转化为回归问题,反之亦然。
①、在上述房产价格估算的例子中,似乎很难预测房产的确切价格。然而,如果将问题重新表述为预测房产的价格范围,而不是单一的价格标签,那么可以期望获得一个更健壮的模型。因此,应该将问题转化为分类问题,而不是回归问题。
②、对于猫照片识别模型,也可以将其从分类问题转换为回归问题。可以定义一个模型来给出一个介于 [0,100%]之间概率值来判断照片中是否有猫,而不是给出一个二进制值作为输出。这样,就可以比较两个模型之间的细微差别,并进一步调整模型。例如,对于有猫的照片,模型 A 给出概率为 1%,而模型 B 对相同照片给出了 49% 的概率。虽然这两种模型都没有给出正确的答案,但可以看出,模型 B 更接近于事实。在这种情况下,人们经常应用一种称为逻辑回归(Logistic Regression)的机器学习模型,这种模型将连续概率值作为输出,但用于解决分类问题。
链接:
https://leetcode-cn.com/leetbook/