资讯专栏INFORMATION COLUMN

浅谈机器学习入门实践

shadajin / 237人阅读

摘要:机器学习的过程机器学习的流程可以概括为几大部分,分别是设置数据集划分训练集和测试集构建计算网络训练模型测试模型以及其他一些环节。机器学习在某些时候,很接近于线性回归,而这个库很适合用来创建大量的数字集合。

网上关于机器学习的文章,视频不计其数,本来写这么一篇东西,我自己也觉得有点多余,但是我还真没找到一个能帮助像我这样零基础的人,快速接触和上手机器学习的文章。这篇文章不能让你深入学习和掌握机器学习的相关知识,但是一定能让你快速了解什么是机器学习,以及你到底要不要深入学习,你需要提前学哪些东西来makes you ready。

机器学习是什么

其实这个恐怕任何一个从业人员都已经了解了,我也不过多介绍了,用我自己的话来说就是:让机器学会用接近人类思考的方式来学习新的技能,从而帮助人类从一些简单的智能工作上解脱出来。比如车牌号识别、手写识别、语音识别、图片OCR等等。

机器学习的过程

机器学习的流程可以概括为几大部分,分别是:设置数据集、划分训练集和测试集、构建计算网络、训练模型、测试模型以及其他一些环节。设置数据集就是获取测试数据,你不能用爬虫随便爬几千个图片来训练,必须将图片先转化为规范的数据集合,比如大小相同等。其他的语音识别等,也需要先做类似的工作。幸运的是,你可以注册一个kaggle的账号,来获取一些已经采集好的标准数据集。第二步是划分集合,一多半用来训练,一小半用来测试,具体的比例你可以自行测试调优。训练集用来训练模型,测试集用来评估训练结果。为了防止模型过于匹配某些训练数据(术语叫做过拟合),训练时往往是不停的随机抽取样本建立批次来进行训练的,而不是分批次逐个批次训练做到全覆盖。后面的几个环节,我就不细说了,网上最多的就是这个。在keras框架中,这三个环节也就是几行代码的事。

tensorflow、keras、Matlab和神经网络CNN都是什么

这个是我初学的时候最困扰我的问题之一。Matlab是一种开发工具,类似于python语言,通信专业的孩子都懂的,经常用来绘制数学图像。tensorflow是一套机器学习框架,你可以详细的设计和定制你的学习模型和流程,当然你需要大量的专业知识和技能才能做到。keras是最适合我这种入门小白学习的,但是抽象的级别过高,你还是先了解下tensorflow再用比较好。它把很多tensorflow的功能(也可以使用theano和其他计算框架)都进行了更高层面的组合,让你用很少的代码就能实现很多功能。神经网络CNN是主要用于图像领域的计算框架,是一种计算模型,类似于基于Java或者PHP语言所使用的后端架构。实现的方式多种多样,这种架构比较适合图像识别(也可以用于语音识别等)。

基础知识的准备

matplotlib库是你必备的,这个是数学工具库,主要用来绘制数学函数和图像,非常的强大,很接近于Matlab的功能。这个网上也有专门的教程,建议先简单学习一下。
然后是numpy库,这个库是科学计算领域常用的库,专门用来做数字方面的工作,也是建议先学习一下。机器学习在某些时候,很接近于线性回归,而这个库很适合用来创建大量的数字集合。
再之后是OpenCV库,这个是专门用来做图像处理的库(我学的是python版本,原版貌似是c++开发的),包括摄像头采集,图像变换,图像分析分类等等,功能非常的强悍,可以说是计算机视觉领域必备的库。网上也有专门的大量教程,也建议先学习一下,了解基础用法。其中摄像头人脸检测(就是在图像中识别出有没有人脸),甚至已经内置了处理模型,能直接调用api检测出来。

下一步要做什么

想要开发出一个识别人脸或者动物的模型其实很简单,但是但是但是!想要知道这个模型是如何设计的,以及设计一个属于自己的模型去解决特定问题,这个是很难的。也就是说,写代码很简单,关键是熟练使用各种数学模型组成计算框架。斯坦福大学在网易云课堂上面有一个公开课,里面全都是各种数学模型和公式,目前我还无法驾驭,数学学渣感觉压力很大。如果你想深入研究并解决你自己遇到的特定问题,那么你需要熟练使用各种数学模型,还要知道如何评估自己的模型的准确率。星辰大海等着你去征服,少年。

最后的最后,我学这个时间确实很短,一定会有很多遗漏和错误之处,如果大家发现了,请一定指出并最好附上文档链接,大家共同学习。

最后补充一些特别好的文章资料,供大家进一步阅读:
https://zhuanlan.zhihu.com/p/... 专栏里的文章都不错,比较容易理解
http://www.cnblogs.com/neo-T/... 这是我看过的最简单的入门文章
https://www.bilibili.com/vide... 这个up的视频讲的也不错,真·手把手教

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/18408.html

相关文章

  • 浅谈机器学习入门实践

    摘要:机器学习的过程机器学习的流程可以概括为几大部分,分别是设置数据集划分训练集和测试集构建计算网络训练模型测试模型以及其他一些环节。机器学习在某些时候,很接近于线性回归,而这个库很适合用来创建大量的数字集合。 网上关于机器学习的文章,视频不计其数,本来写这么一篇东西,我自己也觉得有点多余,但是我还真没找到一个能帮助像我这样零基础的人,快速接触和上手机器学习的文章。这篇文章不能让你深入学习和...

    AlienZHOU 评论0 收藏0
  • 正在失业中的《课多周刊》(第3期)

    摘要:正在失业中的课多周刊第期我们的微信公众号,更多精彩内容皆在微信公众号,欢迎关注。若有帮助,请把课多周刊推荐给你的朋友,你的支持是我们最大的动力。是一种祸害译本文浅谈了在中关于的不好之处。浅谈超时一运维的排查方式。 正在失业中的《课多周刊》(第3期) 我们的微信公众号:fed-talk,更多精彩内容皆在微信公众号,欢迎关注。 若有帮助,请把 课多周刊 推荐给你的朋友,你的支持是我们最大的...

    robin 评论0 收藏0
  • 正在失业中的《课多周刊》(第3期)

    摘要:正在失业中的课多周刊第期我们的微信公众号,更多精彩内容皆在微信公众号,欢迎关注。若有帮助,请把课多周刊推荐给你的朋友,你的支持是我们最大的动力。是一种祸害译本文浅谈了在中关于的不好之处。浅谈超时一运维的排查方式。 正在失业中的《课多周刊》(第3期) 我们的微信公众号:fed-talk,更多精彩内容皆在微信公众号,欢迎关注。 若有帮助,请把 课多周刊 推荐给你的朋友,你的支持是我们最大的...

    Joyven 评论0 收藏0
  • 正在失业中的《课多周刊》(第3期)

    摘要:正在失业中的课多周刊第期我们的微信公众号,更多精彩内容皆在微信公众号,欢迎关注。若有帮助,请把课多周刊推荐给你的朋友,你的支持是我们最大的动力。是一种祸害译本文浅谈了在中关于的不好之处。浅谈超时一运维的排查方式。 正在失业中的《课多周刊》(第3期) 我们的微信公众号:fed-talk,更多精彩内容皆在微信公众号,欢迎关注。 若有帮助,请把 课多周刊 推荐给你的朋友,你的支持是我们最大的...

    lifefriend_007 评论0 收藏0
  • iOS进阶学习

    摘要:小试推出的是今年新推出面向开发者的机器学习框架。精简的网络封装不依赖第三方库精简的网络封装不依赖第三方库多线程开发之是苹果提供的一套多线程解决方案。 iOS 内存探秘 本文深入浅出的介绍了 iOS 系统的内存机制以及开发者所需要注意的问题 GMTC 上分享滴滴出行 iOS 端瘦身实践的 Slides 滴滴出行 iOS 端瘦身实践 iOS之widget开发(Today Extension...

    187J3X1 评论0 收藏0

发表评论

0条评论

shadajin

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<