机器学习-概述
机器学习是一门能够让编程计算机从数据中学习的计算机科学。
一个计算机程序在完成任务T之后,获得经验E,其表现效果为P,如果随着任务的增加,其表征经验的效果也能随之增加,即P与T成正增长关系,这样的系统就是一个机器学习系统。
什么是机器学习
机器学习是一门能够让编程计算机从数据中学习的计算机科学。
一个计算机程序在完成任务T之后,获得经验E,其表现效果为P,如果随着任务的增加,其表征经验的效果也能随之增加,即P与T成正增长关系,这样的系统就是一个机器学习系统。
人工智能,智能手机也算智能,通过编写逻辑智能就可以称之为人工智能
机器学习,是从现有流程中学习经验
深度学习,由神经网络算法构建的机器学习模型
为什么需要机器学习
- 有助于提高系统的可维护性和可扩展性
- 用于解决算法非常复杂或没有算法的问题
经验主义 - 规则发现,算法自动生成,获得对业务的洞见
机器学习的问题
- 建模问题
所谓机器学习,在形式上可这样理解:在数据对象中通过统计或推理的方法,寻找一个接受特定输入X,并给出预期输出Y的功能函数f,即Y=f(X)。 - 评估问题
针对已知的输入,函数给出的输出(预测值)与实际输出(目标值)之间存在一定的误差,因此需要构建一个评估体系,根据误差的大小判定函数的优劣。 - 优化问题
学习的核心在于改善性能,通过数据对算法的反复锤炼,不断提升函数预测的准确性,直至获得能够满足实际需求的最优解,这个过程就是机器学习。
机器学习的类型
按照学习方式划分:有监督学习、无监督学习、半监督学习、强化学习
- 有监督学习:用已知输出评估模型的性能;考试选择题:给出标准答案
- 无监督学习:在没有已知输出的情况下,仅仅根据输入信息的相关性,进行类别的划分;考试写作文:没有标准答案
- 半监督学习:先通过无监督学习划分类别,再根据人工标记通过有监督学习预测输出。
- 强化学习:通过对不同决策结果的奖励和惩罚,使机器学习系统在经过足够长时间的训练以后,越来越倾向于给出接近期望结果的输出。类似于小孩,做对了,会得到夸奖,做错了,会得到惩罚。
按照学习过程划分:批量学习、增量学习
- 批量学习:将学习的过程和应用的过程截然分开,用全部的训练数据训练模型,然后再在应用场景中实现预测,当预测结果不够理想时,重新回到学习过程,如此循环。
- 增量学习:将学习的过程和应用的过程统一起来,在应用的同时以增量的方式,不断学习新的内容,边训练边预测。
按照学习策略划分:基于实例的学习,基于模型的学习
实例学习:根据以往的经验,寻找与待预测输入最接近的样本,以其输出作为预测结果。
年龄 学历 经验 性别 月薪 25 硕士 2 女 10000 20 本科 3 8000 … … … … … 20 本科 3 男 ? 模型学习:根据以往的经验,建立用于联系输出和输入的某种数学模型,将待预测输入代入该模型,预测其结果。
输入 输出 1 2 2 4 3 6 … … 2x =Y … … 9? 18
机器学习的基本流程
1 | graph LR |
数据处理
- 数据收集 (数据检索、数据挖掘、爬虫)
- 数据清洗
机器学习
- 选择模型 (算法)
- 训练模型 (算法)
- 评估模型 (工具、框架、算法知识)
- 测试模型
业务运维
- 应用模型
- 维护模型
机器学习的典型应用
股价预测、推荐引擎、自然语言识别、语音识别、图像识别、人脸识别
机器学习的基本问题
回归问题:根据已知的输入和输出寻找某种性能最佳的模型,将未知输出的输入代入模型,得到连续的输出。
分类问题:根据已知的输入和输出寻找某种性能最佳的模型,将未知输出的输入代入模型,得到离散的输出。
聚类问题:根据样本特征的相似程度,将其划分为不同的群落。
降维问题:在性能损失尽可能小的前提下,降低数据的复杂度(样本特征)。