机器学习的三大要素:数据、算法模型、计算。
机器学习最大的用处是通过对历史数据的分析,找出其中的潜在规律,从而对未来进行预测。
数据:目前是大数据时代,各行各业基本上都不缺数据,缺乏的只是从数据当中提炼出有价值的参数,数据价值密度比较低。
计算:目前都有封装好的函数,学习训练期间采用fit训练函数,实盘采用predict预测函数,只是不同模型的API接口有所差别。
算法模型:这个需要经验和数据测试,根据不同的项目挑选不同的模型。
根据机器学习算法模型对于训练数据处理方式的不同,通常可以把机器学习算法分为两大类:监督学习、无监督学习。近年来,随着深度学习、神经网络的发展,又增加了一类:强化学习,不过这个属于神经网络领域。
一、监督学习
监督学习主要用于一部分数据集(训练数据)有某些可以获取的标签,但剩余的样本缺失并且需要预测的场景中。监督学习模式采用的输入数据被称为“训练数据”,每组训练数据有一个明确的标识或结果。
利用“训练数据”,算法模型会生成映射函数,训练过程会不断持续,直到模型在训练数据上获得期望的精确度。
监督学习的常见应用场景有分类问题和回归问题,常见监督学习算法有回归算法
、DT (决策树)算法
、RF (随机森林)算法
、K近邻算法
,以及BP (反向传递)神经网络算法
等。
二、无监督学习
无监督学习主要用于从未标注数据集中挖掘相互之间的隐含关系的情况。
无监督学习模式,数据无须预先进行标识。
无监督学习模式没有任何目标变量或结果变量要预测或估计。这个算法用在不同的组内聚类分析。这种分析方式被广泛地用来细分客户,根据干预的方式分为不同的用户组。
常见的无监督学习算法模型包括Apriori
关联算法和k-Means
算法。
三、半监督学习
严格说来,半监督学习模式也是监督学习的一种。
半监督学习模式输入数据的一部分被标识,一部分没有被标识,特别在"训练数据"有限的情况下。
半监督学习模式可以用来进行预测,但是模型首先需要学习数据的内在结构,以便合理地组织数据来进行预测。
半监督学习算法主要是一些常用监督学习、分类回归算法的延伸,算法包括图论推理算法(Graph Inference
)和拉普拉斯支持向量机(Laplacian SVM
)等。
四、强化学习
强化学习是近年神经网络、深度学习的产物,主要用于动态系统处理以及机器人控制等。强化学习算法可以训练机器进行决策。
重点区别:
在强化学习模型当中,输入数据作为模型的反馈进而优化模型,不像监督模型,输入数据仅仅是当作为一个检查模型对错的方式。
强化学习介于监督学习、无监督学习两者之间,每一步预测或者行为都或多或少有一些反馈信息,但是却没有准确的标签或者错误提示。
在强化学习模型当中,系统被放在一个能让它通过反复试错来训练自己的环境中。机器从过去的经验中进行学习,并且尝试做出精确的判断。
强化学习常见算法包括马尔可夫决策过程、Q-Learning 和时间差学习(Temporal Difference Learning)。