找回密码
 立即注册
搜索

一、机器学习Machine Learning

qeroxo 2024-12-5 21:52:27 显示全部楼层 阅读模式

1. 什么是机器学习?

“对于某类任务(Task,简称T)和某项性能评价准则(Performance,简称P),如果一个计算机在程序T上,以P作为性能度量,随着经验(Experience,简称E)的积累,不断自我完善,那么我们称计算机程序从经验E中进行了学习.” -------《机器学习》 汤姆.米切尔(Tom Mitchell)
2. 机器学习的形式


  • 建模
  • 评估
  • 优化
3. 机器学习的分类

1) 有监督、无监督、半监督

有监督学习

在已知数据输出,即经过标注的情况下,对模型进行训练,根据输出进行调整、优化的学习方式称为有监督学习







无监督学习

在没有已知输出的情况下,仅仅根据输入信息的相关性,进行类别的划分(聚类)。







半监督学习

先通过无监督学习进行分类,再人工标记,通过有监督学习方式来预测输出。
例如先对相似的水果进行聚类,再识别是具体哪个类别。







强化学习

通过对不同决策结果的奖励,惩罚,使机器学习系统在经过足够长时间的训练后,越来越倾向于接近期望结果的输出。
2) 批量学习、增量学习

批量学习

将学习过程和应用过程分开,用全部训练数据训练模型,然后再在应用场景中进行预测,当预测结果不够理想时,重新回到学习过程,如此循环
增量学习

将学习过程和应用过程统一结合起来,在应用的同时,以增量的方式不断学习新的内容,边训练边预测。
3) 基于模型学习、基于实例学习

基于模型学习

根据样本数据,建立用于联系输入和输出的数学模型,将预测输入带入该模型,预测其结果。即:根据数据建立模型,然后根据模型预测。
基于实例的学习

根据经验,在样本数据集中寻找与预测输入最接近的样本,将该样本对应的输出作为预测结果,即:从样本数据中找答案。
4. 机器学习的一般过程


  • 数据收集,手段如手工采集,设备自动采集,爬虫等
  • 数据清洗:规范数据,将具有较大误差的,没有意义的数据进行清理
上述两步称为数据处理,或数据预处理,包括 数据检索、数据挖掘、爬虫 等

  • 选择模型(算法)
  • 训练模型
  • 模型评估
  • 测试模型
3~6步主要是机器学习过程,包括算法、框架、工具等

  • 应用模型
  • 模型维护
5. 机器学习的典型应用


  • 股价预测
  • 推荐引擎
  • 自然语言处理NLP
  • 语音处理:语音识别、语音合成
  • 图像识别、人脸识别
6. 机器学习的几类基本问题

1)回归问题

根据已知的输入和输出,寻找某种性能最佳的模型,将未知输出的输入带入模型,得到连续的输出。例如

  • 根据房屋面积,地段,修建年代以及其他条件预测房屋的价格
  • 根据各种外部条件,预测某只股票的价格
  • 根据农业,气象等数据预测粮食收成
  • 计算两个人脸的相似度
2)分类问题

根据已知的输入和输出,寻找性能最佳的模型,将未知输出的输入带入模型,得到离散的输出,例如

  • 手写体识别
  • 鲜花、水果、动物识别
  • 工业产品瑕疵检测(良品,次品 二分类问题)
  • 识别一个句子表达的情绪(正面,负面,中性)
3)聚类问题

根据已知输入的相似程度,将样本划分为不同的群落,例如

  • 根据一批麦粒的数据,判断哪些属于同一个品种
  • 根据客户在电商网站的浏览记录,和购买历史,判断哪些客户对某件商品感兴趣
  • 判断哪些客户具有更高的相似度
4)降维问题

在性能损失尽可能小的情况下,降低数据的复杂度,数据规模缩小都称为降维问题。
著名的例子:PCA
简单拓展一下下:PCA - Principal Component Analysis 主成分分析,是一种统计方法,通过正交变换,将一组可能相交的向量转换为完全不相关的向量,以实现降维。这些新的变量叫做“主成分”。
降维这个操作在整个机器学习领域都有使用,比如在深度学习领域,向量的维度往往很高,比如长短期循环神经网络模型LSTM中的隐含层的状态,按照时间步来划分可以看作是一个一个长度为几十或者几百甚至上千的状态向量,这时如果取单独某个时间步的隐含状态向量进行分析,可能会用到PCA降维的方式映射为三维或者二维的向量,进行可视化输出展现。
传统机器学习的内容其实已经相对成熟,我们很多时候都可以直接使用前人建立好的资源。
编写Python代码时,我们可以直接导入sklearn机器学习模块,其中的preprocessing数据预处理模块,linear_model线性回归模型模块等等,都有很广泛的应用。这里我们可以使用sklearn.decomposition模块下的PCA对象,对高维向量进行降维。
from sklearn.decomposition import PCAH = "一个高维向量"pca = PCA(n_components=2)principalComponents = pca.fit_transform(H)print(principalComponents)其中的n_components参数表示期望转换为的维度数量,这里是二维。
7. 过拟合和欠拟合

这两种状态用来形容模型训练到某一个时间点下,对模型状态的表示。
欠拟合模型一般表现为训练集和测试集下准确率都比较低。
过拟合模型一般表现为准确度较高,测试集下准确率较低。模型过于拟合于训练样本数据,学习到了训练集下和当前任务关系不大的特征。
而对于一个好的模型,无论是训练数据集,还是测试数据集,都有相差不大的表现。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

大神点评3

aitp6080 2024-12-6 07:15:56 显示全部楼层
路过 帮顶 嘿嘿
回复

使用道具 举报

DT170 2024-12-7 10:54:06 来自手机 显示全部楼层
元芳你怎么看?
回复

使用道具 举报

新村居民佬 2024-12-8 21:42:39 显示全部楼层
我也是坐沙发的
回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies