- 机器学习是让机器通过学习数据对某些任务做得更好,而不使用确定的代码规则。
- 有许多不同类型的机器学习系统:监督或非监督,批量或在线,基于实例或基于模型, 等等。
- 在机器学习项目中,我们从训练集中收集数据,然后对学习算法进行训练。如果算法是 基于模型的,就调节一些参数,让模型拟合到训练集(即,对训练集本身作出好的预 测),然后希望它对新样本也能有好预测。
- 如果算法是基于实例的,就是用记忆学习样 本,然后用相似度推广到新实例。 如果训练集太小、数据没有代表性、含有噪声、或掺有不相关的特征(垃圾进,垃圾 出),系统的性能不会好。最后,模型不能太简单(会发生欠拟合)或太复杂(会发生 过拟合)。
机器学习的几个概念:
- 什么是机器学习?
机器学习是通过编程让计算机具有学习的能力,无需明确的编程限制
- 机器学习可以解决的四类问题?
1、分类问题: 解决明确的分类问题,如垃圾分类,针对明确的类目
2、回归问题(预测): 通过训练数据,预测未来的数据,如股票,天气预报,相应的数据问题会引发过拟合和欠拟合问题
过拟合: 数据过于复杂,提供了太多无关的特征,如树叶的锯齿状,让机器人以为有锯齿的才是树叶
欠拟合:数据过于简单,提供了太少的数据特征,如绿色的就是树叶,让机器以为绿色的就是树叶
参考图1-1
3、聚类:对所有的数据不加以分类,让模型自己进行归类,将数据分成一小团一小团,如访客的聚类,
可以分成学生,工作者,漫画爱好者等
相应的就是可视化算法聚类参考图1-2
相应的还有聚类的降维,如果数据太多太过复杂,就需要简化数据,并保持一定的数据特征,将所有的相同的数据特征整合为一个,如汽车的磨损和公里数有关,即汽车的磨损,叫特征提取
分类:
分类和回归是监督学习,聚类为无监督学习
- 什么是带标签的训练集?
通过数据(data, label)为数据挂上标签,训练数据中大多数应用于二分类或多分类,
如判断邮件是否是垃圾邮件,垃圾的分类,判断鞋子和衣服的种类一般都用带标签的训练集
- 最常见的两个监督任务是什么?
回归和分类
- 指出四个常见的非监督任务?
聚类,降维,可视化,规则性学习
- 机器人行走最好的学习算法?
进行强化学习,如围棋,象棋等用的都是强化学习,机器人通过不断地尝试,并分析下一步的奖惩机制,来获得最好的行进路线。
- 要对你的顾客进行分组,你会采用哪类算法?
使用聚类算法,对所有顾客进行大分类,如果有固定的标签,可使用分类算法
- 垃圾邮件检测是监督学习问题,还是非监督学习问题?
监督学习,通过分析邮件的类别来统计邮件的特征,分为好和坏,是分类的算法
- 什么是在线学习系统?
在线学习 又称为持续性学习系统,适合需要实时做出变化的算法问题,如股票分析问题,
缺点是,在线学习依赖于给出的新数据,如果新数据的可靠性低,训练的算法准确度降低,
在线学习可以分为惰性学习和高速率学习,惰性学习慢,并且对噪声和无特征数据不敏感
在线学习可以扔掉旧的数据,节约空间
- 什么是核外学习?
通过对cpu 无法处理的大量数据分为小批量, 然后利用在线学习进行小批量学习
- 什么学习算法是用相似度做预测?
基于实例的学习系统 是 先学习现有实例的特征,根据预测的实例相识度来做出判断
- 学习算法的超参数和 模型算法的参数区别?
学习算法的超参数为常规参数,如分类的类别数目,聚类算法的所有分类, 模型算法的参数有多个,
运用算法的目的在于寻找最好的参数,如线性回归的斜率。
- 基于模型学习的算法搜寻的是什么?最成功的策略是什么?基于模型学习如何做预测?
搜寻的是模型函数的最佳参数值。
使成本函数最小化来寻找,如果有正则化,加上对模型复杂度的惩罚
将实例特征放入预测函数
- 机器学习的四个主要挑战是什么?
低质量数据
过拟合数据
欠拟合数据
不相关特征
- 如果模型在训练集上表现好,但推广到新实例表现差,问题是什么?给出三个可能的解决方案。
增加训练数据量
使用正则化
数据降噪 去除异常数据,错误
减少训练数据的属性数
- 什么是测试集,为什么要使用它?
使用测试数据预测实际实例的效果,实现最佳泛化误差
-
验证集的目的是什么?
-
用来验证算法的预测效果,调整参数
-
如果用测试集调节超参数,会发生什么?
有可能过拟合,实际应用效果变差
- 什么是交叉验证,为什么它比验证集好?
交叉验证先将数据分为互补的子集,一旦确定了超参数,将剩下的训练数据用于验证超参数,模型选择和调整超参数,节约了训练数据和时间