应用机器学习:传道解惑指南

在过去的两年时间里,我多次迷恋于学习机器学习。 正如你学习大多数的东西一样,每当我决定尝试新事物的时候,我不得不重新学习某些概念和课程。 所以,我编辑了一份包括概念、定义、资源以及工具的知识合集,这对于在这个复杂领域从事工作的我来说非常有用。 希望这些东西对于即将进入机器学习这个精彩(有时是令人沮丧)世界的朋友来说也会起到一定的帮助作用

如何最有效率地学习机器学习

老实说,每个人都有适合自己的学习方法。对我个人而言,最好的方法就是反复把在项目中学到的东西应用到其他地方,直到把它彻底弄明白弄熟练为止。如果你不打算使用它的话,为什么要学习它呢?而且多巴胺会让你在看到学习成果的时候进一步促进你学习的动力。

在刚开始学习机器学习的时候很容易不知所措。有很多东西要学,即使是对于同一个知识点也有太多的资源可供挑选来学习,而且这些资源可能完全不同,甚至很混乱。学习这种内容繁多并且发展迅速的东西非常困难。在理想情况下,一旦你感觉自己在机器学习方面入了门,就会清楚自己到底想要研究哪些具体的领域。

我将尝试用足够的篇幅来介绍这些松散的知识,使之适合于任何人阅读。如有疑问,请自行谷歌……

什么是机器学习(Machine Learning, ML)?

它是人工智能的一个子领域,它让计算机自己学习,而不需要被明确地编程。机器学习基本的目的是理解大量输入数据中的模式,然后根据其生成的模型来预测输出。


机器学习的工作流程

什么是机器学习算法?从本质上讲,机器学习采用了可以从数据中学习和预测数据的算法。这些算法通常来自于统计学,从简单的回归算法到决策树等等。

想要了解不同机器学习算法及其使用方法方面的内容,可以阅读这篇文章:机器学习算法要点

什么是机器学习模型?一般来说,它是指在训练机器学习算法后创建的模型构件。一旦有了一个经过训练的机器学习模型,你就可以用它来根据新的输入进行预测。机器学习的目的是正确训练机器学习算法来创建这样的模型。当我在这篇文章中提到“模型”时,我一般就是指的这个定义。

但是,机器学习社区中的“模型”这个术语并没有一个统一的定义。这个术语被大量提及,并且可以代表机器学习中使用的统计模型或数据模型中的任何内容。比如列、数据类型和数据源,甚至是神经网络规范。当你在技术或数学读物上学习有关机器学习的文章的时候,需要注意这一点。

流行的机器学习算法

机器学习算法有很多,每个人都有一套适合自己的案例。你可以根据学习的种类或相似性对机器学习算法进行分类。下图是通过相似性对目前流行的算法进行的概括。在本文中,我根据学习种类的不同将算法分为:监督学习无监督学习

监督学习

这是一种使用样例来进行训练的机器学习算法。训练数据被标上了已知的标签,该算法将基于这些数据来建立模型。一旦模型被训练出来,该算法将能够确定从未见过的实例的标签。

用监督学习解决的问题可以进一步分解为分类回归问题。

无监督学习

与监督学习相反,无监督学习使用未标记的训练数据进行学习。这意味着该算法能够自己确定如何使用这些数据(识别数据的模式)。

无监督学习可以分为聚类关联问题。

半监督学习

这是上述两种方法的混合体,即只有部分输入数据做了标记。

监督学习的线性回归

这其实是机器学习的“Hello World”教程。线性回归可用于理解输入(x)和输出(y)变量之间的关系。当只有一个输入变量(x)时,称为简单线性回归。你可能已经在简单统计中看到过这种技术的应用。

训练线性回归方程最常用的技术是普通最小二乘法。所以,当我们用这个过程训练机器学习中的模型时,通常被称为普通最小二乘线性回归。

输入(x)和输出(y)的简单回归模型可以被建模为:

y = B0 + B1*x

系数B1(β)是回归斜率的估计,附加系数B0是回归截距的估计,它给出了直线的附加自由度。

请阅读本教程来学习用于线性回归模型的四种技术:简单线性回归、普通最小二乘法、梯度下降和正则化。

你很快就会注意到,很多的机器学习算法只是使用了基本统计学的不同的曲线拟合方法。机器学习(至少在我看来)只有在深度学习领域中才会让人兴奋。

深度学习

这是机器学习的一个子领域,近年来表现出了很大的潜力。它涉及到大脑中神经元结构和功能的算法。


Andrew Ng版权所有,保留所有权利。

深度学习中最令人激动的特性之一是它在特征学习上的表现。该算法在从原始数据中检测特征方面表现地特别好。有一个很好的例子,就是通过深度学习技术来识别汽车图片中的车轮。下图说明了典型机器学习与深度学习之间的区别:

深度学习通常由多个层组成。它们通常将更简单的模型组合在一起,通过将数据从一层传递到另一层来构建更复杂的模型。这是深度学习随着数据量的增加而优于其他学习算法的主要原因之一。

想进一步了解深度学习方面的知识,请阅读The Deep Learning Book,你可以在麻省理工学院的网站上免费获取。

TensorFlow简介

TensorFlow是专门为机器学习而设计的快速数值计算Python库。它由谷歌开源,旨在让世界各地更多的研究人员和开发人员掌握深度学习。

它的官方教程可能对初学者来说有些杂乱,我建议大家从本系列开始,首先学习Tensflow的相关介绍

如何使用TensorFlow

TensorFlow安装好之后,你就可以用它提供的多个API来训练机器学习模型了。建立在TensorFlow Core(最好控制最底层的API)之上的更高级别的API是最容易学习的,你应该从这里开始学习。

本文不可能包含完整的TensorFlow教程,网上有数不清的学习资源,首先从官方资源开始吧:

虽然TensorFlow是最受欢迎的机器学习库,不过也有其他几个很棒的选择,如Torch(Facebook使用)、Caffe(出自Berkeley AI研究所的深度学习框架)等等。

这篇文章缺少什么

很多。本文的目标是为你提供有关机器学习的基础知识,以避免你晕头转向。但是这个话题包含的内容实在太多了,无法全部写下来。

接下来做什么?

一旦对基础知识有了一定的了解,你应该知道自己对机器学习的哪些方面比较感兴趣,你想在应用程序中使用机器学习,还是想研究机器学习。

你可以根据自己的兴趣来阅读本文中嵌入的链接,或通过谷歌来搜索挖掘一些你需要的内容,从而更深入地研究某个领域。

在学习机器学习的过程中,最困难的部分就是打下一个扎实的基础。紧接着,就是弄清楚你自己想要做什么。

结语

“整个世界就是一个大数据问题” - Andrew McAfee

掌握机器学习就像是驯服一头野兽。但是,如果你已经吃透它,那么它就是你身边一个非常有价值的资源。

“拷问数据,它会屈打成招。” - 罗纳德·科斯

参考文献

文章原标题《Applied Machine Learning: The Less Confusing Guide》,作者:Udara Jay,译者:夏天,审校:主题曲。

文章为简译,更为详细的内容,请查看原文

时间: 2025-01-30 09:25:23

应用机器学习:传道解惑指南的相关文章

让你少走弯路:这有一份开展机器学习的简短指南

这是一份关于开展机器学习的简短指南,以下为译文. 简单任务: 假设你有一个问题,并且你喜欢用机器学习来解决它,然后在现实项目中使用该系统.我喜欢简单分享下我的方法,目的是给初学者提供基本的指导并记录这些东西来提醒自己. 当遇到任何问题,首先有很多的学习算法,建立的大数据知识应用在针对某些特定问题的模型上,所有的这些想法都遵循以下三个阶段: 1 定义基于度量的目标 2 建立系统 3 用更多的数据优化系统 下面查看这些步骤的更多细节 定义目标和指标 人类水平 VS 可接受 第一件事情,是需要从系统性

机器学习算法选用指南

在从事数据科学工作的时候,经常会遇到为具体问题选择最合适算法的问题.虽然有很多有关机器学习算法的文章详细介绍了相关的算法,但要做出最合适的选择依然非常困难. 在这篇文章中,我将对一些基本概念给出简要的介绍,对不同任务中使用不同类型的机器学习算法给出一点建议.在文章的最后,我将对这些算法进行总结. 首先,你应该能区分以下四种机器学习任务: 监督学习 无监督学习 半监督学习 强化学习 监督学习 监督学习是从标记的训练数据中推断出某个功能.通过拟合标注的训练集,找到最优的模型参数来预测其他对象(测试集

联想控股董事长柳传志来到甘肃北部大戈壁,为创业者传道解惑

从8月11日-14日,联想之星.正和岛.创新工场.亚杰商会机构等发起的"即客出发-联想之星创业戈壁行"活动,近200位创业者汇聚甘肃瓜州,重走玄奘法师当年西行途中九死一生走过的漫漫荒漠. 玄奘的目的是取得佛家真经,普渡众生:联想之星发起的此次活动的目的则在于传递更多"创业智慧". 柳传志没有参与此次徒步,他的"真经"是自己的创业经验总结.他的真经中包含两点,一是什么样的人适合创业,二是创业者需要什么样的素质. 柳传志说人可以分为两种,一种人是过日

机器学习必备手册

更多深度文章,请关注云计算频道:https://yq.aliyun.com/cloud 请收下这份关于人工智能的根目录--博客整理系列(一) 关于数据科学的那些事--博客整理系列(二) 机器学习必备手册--博客整理系列(三) 扩展眼界的都在这--博客整理系列(四) 深度学习必备手册(上)--博客整理系列(五) 深度学习必备手册(下)--博客整理系列(六) 机器学习是计算机科学的一个子领域,在人工智能领域,机器学习逐渐发展成模式识别和计算科学理论的研究.从2016年起,机器学习到达了不合理的火热巅

机器学习小白如何成长为业内专家?

请收下这份关于人工智能的根目录--博客整理系列(一) 关于数据科学的那些事--博客整理系列(二) 机器学习必备手册--博客整理系列(三) 扩展眼界的都在这--博客整理系列(四) 深度学习必备手册(上)--博客整理系列(五) 在过去的一段时间内,我通过不断的深入学习,成长为一名不错的机器学习从业者.为此我接受了一个小时的访谈,以此来总结我学习的历程.学习机器学习主要有两种方法:理论机器学习方法和应用机器学习方法. 理论机器学习 对于学习机器学习的理论方法,下面的课题应该进行深入的研究. 1.线性代

一只龙虾引发的盛宴:CVPR 亚洲人工智能学者聚会 IJCV Asia Night,十位大牛都说了什么?| CVPR 2017

*"IJCV 亚洲之夜"嘉宾合影 雷锋网导读:CVPR 2017 期间,国际计算机视觉顶级期刊 IJCV 举办了"IJCV 亚洲之夜"宴会.IJCV 首位华人主编汤晓鸥教授,邀请了 CV 领域的海内外知名亚洲学者如沈向洋.李飞飞.张正友.金出武雄等,与大家分享对亚洲 CV 学术实力崛起的观点.自己职业生涯中经历的那些事,以及对年轻人的寄语.一起来看看他们都说了些什么. 计算机视觉领域的顶级会议 CVPR,正在夏威夷火奴鲁鲁召开.夜夜笙歌的小岛上,突然多了批面容稳肃的

蓝牙、WiFi 版树莓派发布;日韩三巨头联手推出 AI 语音助手 Clova | AI 开发者头条

▲ 内容预览: 树莓派也有蓝牙和 Wifi 啦! 日韩三巨头联手,推出 AI 语音助手 Clova 微软发布 Azure Stack  第三技术预览版本 每日推荐阅读 14 步教会你用 Python 掌握机器学习 █ 树莓派也有蓝牙和 Wifi 啦! 初代树莓派的诞生已经过去五年.前天,也就是 2 月 28 日,应该是树莓派的五岁生日--而作为庆祝,Raspberry Pi Zero W 在这一天发布. (冷知识:为什么说"应该是"?因为初代树莓派发布于 2012 年 2 月 29 日

mat-OpenCV Mat问题,想把数组加到矩阵的某一行,赋值出现错误

问题描述 OpenCV Mat问题,想把数组加到矩阵的某一行,赋值出现错误 for(int i=a;i { //想把数组加到矩阵的某一行 i++; float *p; p=colsmean;//colsmean是个float数组 for(int j=0;j { //matsurfdes_addrow是一个Mat矩阵 matsurfdes_addrow.ptr(i)[j]=(*p); p++; } } matsurfdes_addrow.copyTo(matsurfdes); //错误就出在这里,

Resellerclub的代理之路——规范化和国际化的融合

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 Resellerclub当属海外主机商中国际化步伐迈的最大的,Resellerclub主打域名代理招牌,在不断拓展世界市场的同时,自身的代理体系也在不断完善, Resellerclub的规范化和国际化之路相辅相成的,相互融合. 国际步伐高调深入 商家的国际化过程细化出来其实就是一个本土化过程.最能证明 Resellerclub国际化步伐的便是