数据科学概述
一、挑战
(一)工程实现
- 特征提取:对于原始数据进行处理:数据清洗、数据整合、变量归一化等,转换成能被模型使用的特征;
- 矩阵运算:使用算法来估算算法的模型参数;模型越复杂,需要估计的参数越多,在数学上对应着矩阵运算;
- 分布式机器学习:将原本在一台机器上运行的模型,改写成能在多台机器上并行运行;
(二)模型搭建
-
预测效果好:一个模型的预测效果取决于其假设是否被满足。模型假设就像模型的阿喀琉斯之踵。在实际生产中,假设几乎不可能完全满足,此时需要特征提取,避免那些对结果影响很大的假设。
-
模型参数的稳定性:我们需要根据模型参数,分析变量和结果之间的关系。但是,模型参数都是估计得出的,也就是不太可靠,但是我们可以尽可能控制波动,使不可靠性控制在可接受范围内。
-
模型结果的可解释性:也就是将模型结果运用到实际生产中。生产者不需要知道模型内部的数学原理,使用这个模型就能得到具有直观且良好的解释性的结果。将复杂深奥的模型翻译成最简单的语言。
(三)模型搭建思路
- 数据模型:传统统计模型;
- 算法模型:机器学习。
二、机器学习
(一)机器学习 v.s. 传统编程
研究:成年人身高(x)和体重(y)之间的关系
-
传统编程:使用网上查阅的公式:y=0.9x-90,编写代码即可;
-
机器学习:使用线性回归模型:y=ax+b,使用大量数据,估计a,b的取值;最后获得:y=0.8x-100;
也就是说:传统编程是人类自己经验的积累,然后将这些经验转换成规则/公式;机器学习则不需要提前掌握这些规则,只需要制定学习步骤(模型类型)、输入数据,计算机就能根据给定的条件自己总结经验。
(二)监督式和非监督式学习
1. 监督式学习
定义:训练数据中有标注,也就是带着正确答案训练。每次训练的目的就是不断逼近正确结果。
按照标注的类型,分为:
-
分类:标注的类型是离散的。比如区分猫狗这种动物图片识别的问题;
-
回归:标注的类型是连续的。比如上面根据身高预测体重这种问题。
2. 非监督式学习
定义:训练数据没有标注,只输入自变量x。根据用途,分成聚类和降维
-
聚类:把“距离”相近的点归于一类。这里可以拓宽为有相似特点的归于一类;
-
降维:把高维空间的数据映射到低维空间。