2-4 机器学习是什么(上)
主目录点这里
不妨来一个实际的例子,方便你理解上面这张图:
目前,我的boss想要知道我做的这个对话系统的留资能力,也就是留资率。那么我们可以将这个任务抽象为一个二分类判断,即已留资、未留资。从用户最开始使用该系统的第一句话开始进行循环判断,例:
甲:我的微信是xxxxx,想了解了解
乙:我只是看看
丙(第一句话):我先看看哈
丙(第二句话):你们的某产品挺不错的,我电话是xxx,让你们销售联系我
然后呢,我们对于留资也会有一个评判标准。这里就先定为是否能提取到微信号,手机号。机器在处理一句话时会将其变换为一个词向量空间,在通过特定的方式(涉及算法的后面再细说)得到对应类别的评分。对于甲,判断留资的评分为0.9,不留资的评分便是0.1,那么预测的结果便是甲已留资。同样的甲乙丙都是一个道理,只是丙在第二句话时才进行留资。
机器学习的主要类型
监督学习
就是我将已经数据标注好的语料喂给机器来学习
无监督学习
你可以理解为将没有进行数据标注的语料来进行聚类,此时聚的类别没有名称
强化学习
举例:训练一个智能体在迷宫中找到出口。
1.环境(Environment): 迷宫由多个房间组成,每个房间可以通往其他房间,有一个房间是出口。
2.智能体(Agent): 智能体最初对迷宫一无所知,它的目标是找到出口。
3.状态(State): 智能体在迷宫中的位置可以被视为状态。
4.行动(Action): 智能体可以向上、下、左、右移动。
5.奖励(Reward): 每次移动,智能体都会收到一个奖励信号:
(1)如果移动到出口,奖励很高(例如+1)。
(2)如果移动到墙壁,奖励很低(例如-1)。
(3)如果是普通的移动,奖励为零。
智能体的学习过程如下:
1.初始时,智能体随机选择一个行动。
2.根据行动结果,智能体收到奖励,并移动到新的状态。
3.智能体更新其对迷宫的知识,特别是关于哪些行动导致了高奖励。
4.重复这个过程,智能体逐渐学会在大多数情况下选择导致出口的行动。
通过这种方式,智能体在不断的试错中学习最佳的行动策略,最终能够有效地找到迷宫的出口。这个过程就是强化学习的核心思想:通过与环境的交互来学习如何在给定的情境下做出最优决策。
机器学习的步骤
为什么要做清洗数据
数据集的构建
构建数据集是机器学习项目中的一个关键步骤,它涉及到数据的收集、处理、清洗和格式化。以下是构建数据集的一般步骤:
- 定义目标:
- 明确你的机器学习项目目标,这将帮助你确定需要什么样的数据。
- 数据收集:
- 根据项目目标,从各种来源收集数据。数据可以来自公开的数据集、内部数据库、在线数据服务或通过实验和观察获得。
- 数据清洗:
- 处理缺失值:删除或填充缺失的数据。
- 处理异常值:识别并处理异常或不合理的数据点。
- 处理重复数据:删除重复的记录。
- 数据预处理:
- 特征工程:选择、转换和构造有助于模型学习的特征。
- 数据标准化或归一化:将数据转换为统一的尺度。
- 特征缩放:例如,使用最小-最大缩放或标准化。
- 数据转换:
- 将数据转换为适合机器学习模型的格式,通常是数值数组或矩阵。
- 对于分类数据,可能需要进行独热编码(One-Hot Encoding)。
- 对于文本数据,可能需要进行词袋(Bag of Words)或词嵌入(Word Embedding)处理。
- 数据分割:
- 将数据集分割为训练集(学习用的知识)、验证集(课后练习题)和测试集(期末考试用题)。通常使用70%-80%的数据进行训练,15%-10%的数据进行验证,剩余的用于测试。
- 数据增强:
- 如果数据量有限,可以通过数据增强技术(如旋转、翻转、缩放图像)来增加数据的多样性。
- 数据存储与管理:
- 使用数据库或专用的数据存储解决方案来管理数据。
- 确保数据的安全性和隐私性。
- 文档和记录:
- 记录数据集的来源、处理步骤和任何假设。
- 为数据集提供清晰的文档和说明,以便其他人可以理解和使用。