美文网首页解密大数据
机器学习 | 一步一步跟我学Python(十)

机器学习 | 一步一步跟我学Python(十)

作者: 肚财神 | 来源:发表于2017-10-02 18:25 被阅读96次
  • 1.本系列基于新生大学课程《Python编程&数据科学入门》和公开的参考资料;
  • 2.文章例子基于python3.6,使用Windows系统(除了安装,其余基本没有影响);
  • 3.我是纯小白,所以,错误在所难免,体系会逐渐成熟;如果您发现了错误,也烦请帮我指出来,在此先谢过了。

这次课是最后一堂课,讲的是机器学习。

讲课的是吴博士,吴博士是北美世界100强的一名数据科学家,讲的内容也是自己工作中遇到的具体案例。

这节课的目的不是学会机器学习的代码,而是带领大家一窥机器学习的真实面目,打消对机器学习的盲目崇拜。所以,这堂课我也写不出代码来。只能把机器学习的真实含义讲出来,供大家参考。

数据分析师是怎样一个职业?

数据科学家或者说数据分析员,平时的主要工作是挖掘数据价值,为数据提供者提出优化战略,为内部商业伙伴提供咨询。他们每天的工作是把商业问题转化为定量分析问题,从统计分析以及机器学习中找到答案。

需要掌握的计算机技术包括:R/Python、SAS、Spark、SQL等等。

R语言、Python语言是非常棒的定量分析工具,只要精通一门,就能99%的问题。而python还能应用到其他领域。

在数据分析遇到的一个挑战有两个:

  • 一是现实生活中的数据量巨大,找到合适的数据不容易;
  • 二是对模型预测进行准确性的评估不容易。
  • 最后,进行AB测试:将对照组与实验组进行对比,这相对容易。

机器实际上就是算法,学习的过程就是构建模型的过程。

通过对大量数据进行窥探,从中找出规律,形成更好的决策,这中模式在北美已经越来越流行。这个趋势在世界其他地方会普及开来。

机器学习和大数据的关系

现在的大数据是一个热词。那么究竟大数据是什么呢?

吴博士的理解是:一台计算机无法出来的数据量,就是大数据。你必须依赖比如spark这样的算法来实现分析。

所以大数据也是一个不断发展的概念,以前的大数据,对我们来说可能就是一个小数据。

机器学习的两大任务:

  • 监督学习

从给定的训练数据中集中学习出一个函数,当新的数据到来时,预测结果。

监督学习最大的特征:有特征和目标。特征为输入,目标为输出。

比如:预测某个地区的房价;对区块链对冲价值的预测;预测信用卡违约的概率等等。

  • 无监督学习

它没有目标。需要从输入中探索规律,得出结论。

比如:图片聚类分析,文章主题分类,搜索关键词给出网页,基因序列分析等等。

可以这样理解:不管监督学习还是无监督学习,都是有输出的。但监督学习输出的结果的可以通过测试集进行验证,它是客观的;而无监督学习,无法通过测试集进行验证,它得出的是一个主观的结果。

比如怎样把图片进行分类,以往的搜索是一个结果,换一种算法,可能得出另一种结果,这种结果不一定就不对。它的好坏需要使用者来具体体验才行。

案例分析:波士顿地区房价分析

这个案例是一个典型的监督学习的案例。

数据非常干净,共13个变量。而在实际中,收集数据是耗费时间最长的一个过程。在第8次课提到的分析过程中,前面三步可能一直在循环进行。

直到最后才会有干净的数据,而把商业问题转化为数据问题相对容易。而将机器学习的模型与实际数据进行拟合,这其实是最愉悦的过程。

下面是通过学习得到的碎片信息:

  • sklearn是机器学习的主要算法包。算法非常多,只需要几行代码就可以实现非常复杂的功能,这也是python的特点。
  • 任何数据都可以通过可视化来热身。所以学好用好matlablib非常有必要。

  • 可以将数据区分为测试集和训练集,空出一些字段来对模型进行预测。

  • 定量建模:先建立简单的线性模型。而后再拟合更复杂的模型。

  • 在分析的过程中,经常会需要自己重新去找更合适的数据集,这个过程非常普遍。

  • 有些时候,数据需要进行处理。比如第9课讲到的时间戳本身不能使用,需要拆分为“年、月、日、小时”等等,这叫做特征工程,将数据进行特征处理。

  • 后期,要把精力放在模型都有什么样的适用范围,有什么缺点优点上。

  • 大部分变量都有一个线性关系,预测精度往往不高。而业界往往用基于随机森林、德温树等等方法,用来解决非线性问题。

  • 在以前的数据集中,很多都是线性的,因为计算机的处理能力比较弱。但后期,计算机处理能力变强后,可以用一些非线性的方法来解释问题。(可以这样猜想:线性关系就是简单的因果关系;而非线性关系就是由多因素导致的结果,这样的模型更复杂,但也更真实。)

  • 机器学习是数据分析的一种方式,只是它的精度更高。
  • 可能会出现一些不想看到的结果,去想一想为什么会有出入,然后改其他的模型。比如“啤酒和尿布的销量高度相关”。

  • 收集数据和用模型处理是相当难的。而如果有了数据,模型也找到了,那实现起来,其实是非常简单的。就像写作一样。如果框架和例子有了,写起来非常快。框架就是模型;例子就是数据。

  • 不要一开始就学习算法。可以从实战中体验每个算法的优劣,再思考适用范围为什么不一样,再读书系统学习。

终于跟完了,下一步是把它们用起来。在实际运用的过程中,是一个更为艰难的过程。

祝你好运。

祝我好运。


知识本身不是力量,“知识+持续的行动”才是!

我是陶肚。如果喜欢,请帮忙点赞或分享出去。

相关文章

网友评论

  • Bog5d:好走心 为你点赞

本文标题:机器学习 | 一步一步跟我学Python(十)

本文链接:https://www.haomeiwen.com/subject/bactyxtx.html