白话机器学习(Machine Learning)
什么样的问题才能通过机器学习来解决呢?
首先,问题不能是完全随机的,需要具备一定的模式;
其次,问题本身不能通过纯计算的方法解决;
再次,有大量的数据可供使用。
机器学习的任务
就是使用数据计算出与目标函数最接近的假设,或者说拟合出最精确的模型。
机器学习处理过程
在数据的基础上,通过算法构建出模型并对模型进行评估。评估的性能如果达到要求,就拿这个模型来测试其他的数据;如果达不到要求,就要调整算法来重新建立模型,再次进行评估。如此循环往复,最终获得满意的模型来处理其他的数据。
机器学习分类:监督学习、无监督学习和强化学习
如果训练数据中的每组输入都有其对应的输出结果(Labeled data),这类学习任务就是监督学习(supervised learning)。
任务目标:使用数据中的模式预测未来结果。
对没有输出结果(No labels)的数据进行学习,则是无监督学习(unsupervised learning)。
任务目标:找出数据中隐含的结构。
有一些问题,但是不知道答案,我们要做的无监督学习就是按照他们的性质把他们自动地分成很多组,每组的问题是具有类似性质的(比如数学问题会聚集在一组,英语问题会聚集在一组,物理........)
所有数据只有特征向量没有标签,但是可以发现这些数据呈现出聚群的结构,本质是一个相似的类型的会聚集在一起。把这些没有标签的数据分成一个一个组合,就是聚类(Clustering)。
监督学习适用于预测任务;无监督学习适用于描述任务。监督学习和无监督学习模型在部署之后,无法更改。
强化学习(reinforcement learning):使用数据中的模式做预测,并根据越来越多的反馈结果不断改进。
举例
- 有监督学习:学认字
- 无监督学习:自动聚类
- 增强学习:学下棋
下面是一些常用的分析数据的算法。如何选择算法,取决于任务类型。
数据科学研究有4个主要步骤
首先,必须处理和准备待分析的数据。
其次,根据研究需求,挑选合适的算法。
再次,对算法的参数进行调优,以便优化结果。
最后,创建模型,并比较各个模型,从中选出最好的一个。