机器学习前景
国家战略
-
习近平总书记指出:大数据是信息化发展的新阶段, 要推动大数据技术产业创新发展,运用大数据提升国 家治理现代化水平,促进保障和改善民生。
-
国务院近日印发《新一代人工智能发展规划》,按照 规划,“人工智能”将“无时不有、无处不在”,到 2030年中国要成为世界主要“人工智能”创新中心。
人工智能、机器学习和深度学习的关系
数据挖掘、数据分析、机器学习
数据挖掘:一般指从大量的数据中通过算法搜索隐藏于其中的信息的过程。通 常通过统计、检索、机器学习、模式匹配等诸多方法来实现这个过程。
• 数据分析:数据分析是指用适当的统计分析方法对收集的大量数据进行分析, 并提取有用的信息,以及形成结论,从而对数据进行详细的研究和概括。在实 际工作中,数据分析可帮助人们做出判断;数据分析一般而言可以分为统计分 析、探索性数据分析和验证性数据分析三大类。
• 机器学习:是数据分析和数据挖掘的一种比较常用、比较好的手段。
大数据时代
• 数据量大(Volume)
• 巨量资料,传统数据处理应用软件不足以处理这种量级的数据集,大数据的起始计量单位
至少是P(1000个T)、E(100万个T)或Z(10亿个T)• 类型繁多(Variety)
• 包括网络日志、音频、视频、图片、地理位置信息等等,多类型的数据对数据的处理能力 提出了更高的要求。
• 价值密度低(Value)
• 信息海量,就意味着价值密度较低,如何通过强大的机器算法更迅速地完成数据的价值
“提纯”,是大数据时代需要思考的问题。
• 速度快、时效高(Velocity)
• 要求处理速度快,时效性要求高。这是大数据区分于传统数据挖掘最显著的特征
大数据与机器学习结合
-
用数千个特征和数十亿个交易来构建信用卡欺诈 检测模型(风险评估、风控)
-
向数百万用户智能地推荐数百万产品他们可能喜 欢的产品(个性化推荐)
-
使用上亿级别的用户对广告的点击的数据集,做 一个广告CTR预估模型,进行广告投放
-
从千上万个人类基因的相关数据以发现致病基因
机器学习定义(what)
(统计)机器学习是关于计算机基于数据构建概率统计模型并运用模型对未来 未知数据进行预测和分析的一门学科。
• 研究对象:数据
• 目标:对未知数据进行预测分析
• 理论:概率论、统计学、信息论、计算理论、最优化理论等
• 形式:监督学习、非监督学习、半监督学习和强化学习
为什么要用机器学习(why)
传统编程
• 丢给计算机一串明确的用代码描述的指令(if...else...),
让它按照指令一步一步求得结果• 显著式编程,基于逻辑
• 机器学习
• 以数据为驱动,引入统计学的思想,让计算机来做各
种各样的工作
• 非显著式编程model,基于数据
机器学习之商业场景(where)
模式识别、数据挖掘、统计学习、计算机视觉、语音识别、自然语言处理
基础概念
T是数据集
-
数据集分割:训练集、验证集、测试集
-
训练集:用于模型训练的数据集
-
验证集:用于模型评估的数据集
-
测试集:模拟生产环境的数据集
• 用同一个验证集做评估,有可能出现模型对验证集上表现的比较好的情况,要想真正评估这个最佳模 型在将来的样本上的表现,这也就是需要把第三个子集即测试集保留在一边的原因(小风险)
机器学习四种形式
监督学习、非监督学习、半监督学习、强化学习
常用监督学习模型
http://spark.apache.org/docs/1.6.1/mllib-classification-regression.html
http://scikit-learn.org/0.18/user_guide.html
常用非监督学习模型
• K-means k均值聚类
• Gaussian mixture 高斯混合模型
• LDA(Latent Dirichlet allocation)
模型部署细节
• 将原始数据解析成特征:纯工程
• 将特征转换成其他特征:算法开始了
• 构建模型
• 评价模型:数学上、快速的分析当前模型好坏
• 模型超参数调优,重建
• 部署模型
• 业务评估(数据平台指标,常见:UV、VV、转化率等等):长远一点的评估方式• 实时模型更新
• 根据模型实时进行查询
机器学习常用框架
• sciket-learn(Python)
• http://scikit-learn.org/stable/
• Mahout(Hadoop生态圈基于MapReduce)• http://mahout.apache.org/
• Spark MLlib(Spark)
• http://spark.apache.org/
sklearn思维导图
机器学习算法Top10
算法名称 |
算法描述 |
C4.5 |
分类决策树算法,决策树的核心算法,ID3算法的改进算法。 |
CART |
分类与回归树(Classification and Regression Trees) |
kNN |
K近邻分类算法;如果一个样本在特征空间中的k个最相似的样本中大多数属于某一个 类别,那么该样本也属于该类别 |
NaiveBayes |
贝叶斯分类模型;该模型比较适合属性相关性比较小的时候,如果属性相关性比较大的 时候,决策树模型比贝叶斯分类模型效果好(原因:贝叶斯模型假设属性之间是互不影 响的) |
SVM |
|
EM |
|
Apriori |
关联规则挖掘算法 |
K-Means |
聚类算法,功能是将n个对象根据属性特征分为k个分割(k<n); 属于无监督学习 |
PageRank |
Google搜索重要算法之一 |
AdaBoost |
|
数据收集与存储
• 数据来源:
• 用户访问行为数据
• 业务数据
• 外部第三方数据
• 数据存储:
• 需要存储的数据:原始数据、预处理后数据、模型结果• 存储设施:mysql、HDFS、HBase、Kafka、Redis等
• 数据收集方式:• Flume & Kafka
机器学习可用公开数据集
在实际工作中,我们可以使用业务数据进行机器学习开发,但是在学习过程中, 没有业务数据,此时可以使用公开的数据集进行开发,常用数据集如下:
• http://archive.ics.uci.edu/ml/datasets.html
• https://aws.amazon.com/cn/public-datasets/
• https://www.kaggle.com/competitions
• http://www.kdnuggets.com/datasets/index.html
• http://www.sogou.com/labs/resource/list_pingce.php• https://tianchi.aliyun.com/datalab/index.htm
• http://www.pkbigdata.com/common/cmptIndex.html