
2
|
第
1
章
无心插柳柳成荫。数据处理工作流往往是多阶段的迭代过程。举个例子,股票价格是在交易
所中观测到的,然后由像汤森路透这样的中间机构进行汇集并保存在数据库中,之后被某个
公司买去,转换为一个
Hadoop
集群上的
Hive
仓库,再被某个脚本从仓库中读出,进行二次
抽样和各种处理,接着通过另一个脚本进行清洗,导出到一个文件,转换为某种格式,然后
你使用
R
、
Python
或
Scala
中你最喜欢的建模程序进行试验。接着,预测结果被导出为一个
CSV
文件,再用一个估值程序进行解析。模型会被迭代多次,由产品团队用
C++
或
Java
重写,并在全部数据上运行,然后最终的预测结果会输出到另一个数据库中保存起来。
数据
答案
图 1-1:数据与答案之间错综复杂的路径
然而,如果我们不被这些杂乱的工具与系统所迷惑,就能够发现这个过程包括两个构成机
器学习基础的数学实体:
模型
和
特征
。
1.3
模型
通过数据来理解世界就像是玩拼图,但这副拼图是杂乱且不完整的,而且带有多余的部
分。这时数学模型——特别是统计模型——就派上用场了。统计语言中有很多概念,可以
描述常见的数据特性,比如
错误数据
、
冗余数据
和
缺失数据
。错误数据是由测量时的错误
造成的。冗余数据则是对同一信息的多次表述,比如,一周中的一天可以用分类变量来表
示,它的值为“星期一”“星期二”……“星期日”,还可以表示为
0
和
6
之间的整数值。
如果某些数据点中不存在这种星期几的信息,那就出现了缺失数据。
数据的
数学模型
描述了数据不同部分之间的关系。例如,预测股票价格的模型可以是一个
公式,它将公司的收入历史、过去的股票价格和行业映射为预测的股票价格 ...