前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >机器学习初体验(1)

机器学习初体验(1)

作者头像
叶锦鲤
发布2018-03-15 11:12:52
6320
发布2018-03-15 11:12:52
举报
文章被收录于专栏:悦思悦读悦思悦读

本文是作者在赤兔APP“数据挖掘”小组内在线分享的记录的第【1】部分。

分享主题:机器学习初体验

分享时间:2016年5月25日晚8:00-10:00

分享地点:赤兔“数据挖掘”小组,线上

分享嘉宾:黄逸洲,来自美国华盛顿大学信息管理专业的研究生,专攻数据科学。

今天的主题是机器学习。分享的内容主要是针对初学者对机器学习内容的一个介绍,不涉及数理的知识,对于一些算法仅仅用一些例子来讲解,希望较为直观的展示这部分内容,也希望提供一些学习参考,帮助更多人学习这门学科。

首先,什么是机器学习?

从字面上来理解机器学习,就是让机器具有学习的能力,使机器能够完成一些更为智能的工作,而我们实现这种能力的方式就是构建算法模型,也就是一些机器学习算法。

一个简单的例:

假如我们喜欢吃甜得葡萄。我们去市场挑选的时候往往不能决定哪个葡萄比较好吃比较符合自己的口味,也就是甜这个因素。

如果我们能够先买一些葡萄回去试吃一下,下次也许我们就能知道那种葡萄会比较符合自己的要求。

如果我们再认真一点,记下这次买回来得葡萄的大小,颜色,产地,卖家等信息作为自己的参考。分别对甜的葡萄和酸的葡萄做标记。

然后就可以用这些简单地信息来做一个简单地模型,用来判断哪些葡萄比较甜哪些葡萄可能会比较酸。下次去市场的时候 就可以毫不犹豫的跑到特定的店里买特定产地的葡萄。不需要太多的考虑过程,这就是一个比较简单地建模的过程。

机器学习的应用

然而机器学习的算法模型远非如此,机器学习在我们现实生活中方方面面都有用到。比如识别垃圾邮件,购物网站的推荐系统,自动驾驶汽车,或者人脸识别。这些先进技术的背后都是机器学习的模型在做着支撑。

机器学习的步骤

机器学习有着固定的流程,包括5个方面:

1. 搜集数据:收集训练模型所需要的数据,尽可能多得收集相关的数据。

2. 准备和清理数据:保证所收集数据的质量,处理一些数据的问题如缺失值和极端值。

3. 训练模型:选择适当的的算法来构建模型,将数据分为想训练集,交叉集,和测试集。

4. 评估模型: 利用交叉集来评估模型的质量,利用测试集来评估模型的通用性。

5. 优化模型性能。

其中,模型的选择,评估,和优化对于找出一个好的模型来说是十分必要的,每种机器学习算法都有它们的应用范围。所以需要针对不同的情况加以区分和选择,模型的优化和评估对于提高模型的准确度有很大的帮助。

前期我们将数据分成训练集合测试集,训练集用来训练模型,测试集则是要用来检验模型。还可以进行交叉验证,如果所收集的数据集不是很多的话。

优化数据模型则是对模型的一种提升。通过利用诸如批量梯度下降的方法,我们能很容易的找到最优的参数,从而减少模型误差。

机器学习的常见问题

有些时候,模型对于数据的匹配较高 也是会有问题的。会出现过拟合的情况,也就是说当前模型对于数据的匹配很完美。可是对于其他数据集的匹配却出现了极大的误差,模型的通用性不好。这时候我们就得考虑消除不管是过拟合和欠拟合的情况。

还有时候我们还会遇到bias和variance权衡的问题。所以想得到一个好的模型 也是需要不断的验证和提炼的。

机器学习的理论基础

上次分享讲过数据科学的几个大的职位分类。机器学习则是偏向于数理理论的知识,对于学习者的数学统计能力要求较高。

机器学习是个十分交叉的门类。学习者最好要掌握微积分,概率论和线性代数等基本的高数知识。以及统计的基本理论。

运用机器学习算法需要编程能力

当然理论的最终目的还是在于应用,这里就涉及到了编程能力的要求,不管是python,R,还是其他语言。至少掌握一门语言来实践机器学习的算法也是十分必要的,如今很多语言都有丰富的机器学习的包,诸如python的scikit-learn都能很方便的让大家得到实践的机会。

机器学习的资源

看似复杂难懂的理论背后其实是很简单地应用方式,上一些mooc的课程也是很有必要的,如今网上资源丰富。如coursera上的data和machine learning的课都享有极高的声誉,值得学习。

推荐两门课给大家做个参考:

- Machine learning course from Andrew Ng

- Machine Learning Specialization(University of Washington)

这两门课都是coursera上的课程,浅显易懂。没有太复杂的数学知识的要求,是很好的入门材料。经常到论坛里参加比赛,实践自己学到的知识,也会是一种很好的而学习方式。

讨论机器学习的论坛有很多,其中kaggle和AnalyticsVidhya都很适合初学者。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-05-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 智汇AI 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
人脸识别
腾讯云神图·人脸识别(Face Recognition)基于腾讯优图强大的面部分析技术,提供包括人脸检测与分析、比对、搜索、验证、五官定位、活体检测等多种功能,为开发者和企业提供高性能高可用的人脸识别服务。 可应用于在线娱乐、在线身份认证等多种应用场景,充分满足各行业客户的人脸属性识别及用户身份确认等需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档