一、机器学习主要任务:
1.分类:将实例数据划分到合适的类别中
2.回归:主要用于预测数值型数据
机器学习的本质就是分类(个人理解:回归可以看做是一个多分类)
二、监督学习与非监督学习
机器学习可以根据训练时监督的量与类型进行分类,主要有四类:监督学习、非监督学习、半监督学习、强化学习
监督学习:
分类和回归属于监督学习,之所以称作为监督学习,是因为这类算法知道预测什么,即目标变量的相关信息(标签)。.
非监督学习(可以减少数据特征的维度):
非监督学习,数据没有类别信息,也不会给定目标值。
在非监督学习中,将数据集合分成由类似的对象组成的多个类的过程被称为聚类。
半监督学习:
处理部分带标签的训练数据,通常是大量不带标签数据加上小部分带标签数据
强化学习:
学习系统在这里成为智能体(agent),可以对环境进行观察,选择和执行动作,获得奖励(负奖励是惩罚)
三、用于执行分类、回归、聚类和密度估计的机器学习算法
监督学习:
KNN、朴素贝叶斯、支持向量机、决策树、线性回归、局部加权线性回归、逻辑回归、Ridge回归、Lasso最小回归系数估计、GBDT、神经网络
集成学习:随机森林、Adaboost、Xgboost
非监督学习:
聚类:K-means、DBSCAN、最大期望、层次聚类分析
可视化与降维:主成分分析(PCA)、核主成成分分析、局部线性嵌入
关联性规则学习:Apriori算法 、Eclat算法
四、选择合适的算法原则
1.使用机器学习算法的目的
用于分类还是回归,或者不需要预测目标变量的值--聚类
2.需要分析或收集的数据是什么
了解数据特性:
2.1 数据值是连续性变量还是离散型变量
2.2 特征值中是否存在缺失值
2.3 特征值中是否存在异常值
2.4 特征值发生的频率如何(是否罕见) 等等
特征值的分析可以使用机器学习算法的优缺点来进一步缩小选择机器学习算法的时间
备注:
我们只能在一定程度下缩小算法的选择范围,一般不存在最好的算法或者可以给出最好结果的算法。机器学习一般要尝试不同算法执行的效果。发现好的算法的关键环节是反复迭代过程(超参数调节--使算法预测效果好)
五、机器学习算法应用程序
步骤:
1.分析项目需求,了解项目目的(分类、回归、聚类)
2.获取数据
3.输入数据--分析数据信息(并划分数据集)
4.数据处理--特征工程
5.选在模型,训练算法
6.测试算法
7.部署算法模型
六、python作为机器学习比较火的编程语言
python:http://learnpython.org/