Spark2.x管理与开发-Spark MLlib-什么是机器学习
1、机器学习定义
机器学习可以看做是一门人工智能的科学
利用数据或者以往经验,以此优化计算机程序的性能标准。
A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E。
三个关键词:算法-T、经验-E、模型评价-P
在数据的基础上,通过算法构建出模型,并对模型进行评估。
评估如果达到要求,就可使用此模型,
如果达不到要求,就要调整算法,重新建立模型,再次进行评估。
循环往复,最终的到满意的模型。
应用:推荐系统,金融反欺诈,语音识别,自然语言处理,翻译,模式识别,智能控制。
2、基于大数据的机器学习
传统的机器学习算法,由于技术和单机存储的限制,只能在少量数据上使用。
需要统计、数据抽样。
实际过程中,很难做好随机。导致学习模型不是很准确,在测试数据上效果不好。
随着HDFS等分布式文件系统出现,存储海量数据已经成为可能。
在全量数据上进行机器学习也成为可能。
spark立足于内存计算,天然适用于迭代式计算。
像下面这两种工具非常适合机器学习:
spark-shell
Pyspark
因为它们便于随时调整参数,以此来提高精度
3、MLlib
spark 机器学习库在1.2版本之后分成两个包
spark.mllib:包含基于RDD的原始算法API,历史较长
spark.ml:提供了基于DataFrame 高层次API
从2.0开始,mllib进入维护模式,即不新增任何新特性。
浙公网安备 33010602011771号