阿里云
阿里云多端小程序中小企业获客首选
发表主题 回复主题
  • 3163阅读
  • 0回复

[干货分享]机器学习 从入门到精通的学习方法

级别: 论坛版主
发帖
1678
云币
6082
翻译:青蛙跳 B~7]x;8h  
(bD'SWE  
Yu_` >so  
原文:machinelearningmastery.com/machine-learning-mastery-method/ :!<U"AC  
J8#3?Lp  
`~+[pY 1r  
%W,V~kb  
#5=!ew  
5个步骤 让你入门机器学习,直至精通机器学习 &LDA=B  
{mmQv~|5q  
?i5=sK\  
我将介绍5个“机器学习”的步骤,这五个步骤是非常规的。 A_}6J,*u  
传统的机器学习方法是下而上的。从理论和数学开始,然后学习算法执行,再教你如何解决实际问题(实践)。 YJMaIFt  
U2kl-E:  
b2G1@f.U  
入门者如果以传统的“机器学习”步骤学习,会发现自己总是和真正的“机器学习”工作者存在差距,这也是以往学习方法中存在的缺点。 Lu9`(+  
本文所介绍的步骤与传统学习方法不同,本文推荐初学者从结果着手。 @D7/u88|  
它所满足的,正是企业所想要的:如何交付结果 .kZ<Q]Vk  
一系列预测或模型的结果,能够可靠地预测。 f/3rcYR;y  
这是一种自上而下结果优先的方法。 [6cf$FS9  
从满足市场要求出发,最短的路径是真正成为这个行业的从业者。 ]D&\|,,(  
我们可以通过以下5个步骤来概括这种方法:
  • 第一步:调整心态  (信念!)。
  • 步骤2:选择一个过程(如何获得结果)。
  • 第3步:选择一个工具(实施)。
  • 第四步:数据集实操(投入实际工作)。
  • 第5步:建立一个收藏夹(展示你的技能)。
L]#b =Y  
就是这么简单 Be~In~~  
这是我所有电子书培训背后所展示出的哲学思考。 FN"Ye*d  
这也是我创建这个网站的原因。如果我知道更简便的方法,我可以直接在这与他人分享。 4d;.p1ro  
下面是一张漫画,简单地展示了这个过程,其中第1步(思维方式)和第2步(展示你的作品)为简洁起见省略。 &9Xn:<"`)  
TpAso[r  
L#Rj~&U  
学习机器学习的一种更好的方法是从端到端的工作机器学习问题开始。 WIYWql>*  
让我们仔细看一下每一步。 Bf8[(oc~  
O 2W2&vY  
第0步:标志 7p[NuU*Gg  
`IH*~d]  
/[,0,B9!3  
在开始之前,您必须知道机器学习的标志。 -E>LB\[t)  
我经常只是假设这一点,但除非你知道一些真实的基础知识,否则你不能继续下去。 jWcfQ  
例如:应该知道一些“机器学习”实例 应该知道“机器学习”是解决一些复杂问题的唯一方法。 应该知道,预测建模是应用机器学习中最有用的部分。 你应该知道机器学习在人工智能和数据科学方面的实际应用 应该知道主要几种“机器学习”算法类型。 你应该知道一些基本的“机器学习”术语 E?cf#;2h8m  
{q.|UCg[L  
第一步:心态 ]qO*(m:}o  
8<PQ31  
$n_ax\15  
机器学习不仅仅是为了成为该领域的专业人员、为了成才或是学位。 "mB /"  
yt1dYF0Xq  
你必须相信 e1Bqd+  
|^C35 6M>  
QR {>]I  
你可以学习这些知识,并将其用于解决实际问题。
  • 你不需要编写代码。
  • 你不需要知道或擅长数学。
  • 你不需要更高的学位。
  • 你不需要大数据。
  • 你不需要使用超级计算机。
  • 你不需要很多时间。
!MEA@^$#  
)W |_f  
&Rt^G  
Q(/F7 "m  
有些人总有理借口,始终不开始学习。 YWhp4`m  
真的,只有一件事可以阻止你入门,并善于机器学习——就是你自己!
  • 也许你找不到动机。
  • 也许你认为你必须一切从头开始。
  • 也许你一直在挑选前沿的问题而不是初学者的问题。
  • 也许你没有一个系统的过程来实现结果。
  • 也许你没有使用好的工具和库。
rH9[x8e  
清除阻止你入门的限制性信念。 V~]&1  
这篇文章可能有帮助 )}i|)^J  
有很多速度颠簸,你可以打。 g^[BnP)I  
识别他们,解决他们,并继续前进。 A}G>JL  
wPl9%  
为什么要学习机器 H' %#71  
yt#~n _  
UNyk, #4  
一旦你知道你可以做机器学习,理解为什么。
  • 也许你有兴趣学习更多关于机器学习算法的知识。
  • 也许你有兴趣创造预言。
  • 也许你有兴趣解决复杂的问题。
  • 也许你有兴趣创造更聪明的软件。
  • 也许你甚至有兴趣成为一名数据科学家。
#D .hZ=!  
仔细想想这个话题,试着找出你的“ 为什么 ”。 M+-1/vR *@  
这篇文章可能会让你有更深入的认识: #r'S@:[  
一旦知道了“ 为什么 ”,就如同给自己打了一剂强心剂。 hGb SN_F  
你对哪一组机器学习从业者有最大的亲和力?
  • 也许你是一个有普遍兴趣的商业人士。
  • 也许你是一个交付项目的经理。
  • 也许你是一个“机器学习”的学生。
  • 也许你是机器学习研究员。
  • 也许你是一个有问题的研究人员。
  • 也许你想要实现算法
  • 也许你需要一次性的预测。
  • 也许你需要一个可以部署的模型。
  • 也许你是一个数据科学家。
  • 也许你是一个数据分析师。
FZx.Yuv  
每个人群都有不同的兴趣,从不同的方向走向机器学习领域。 Y3bZ&G)  
当然,并不是所有的书籍和材料都适合你,你需要找到你的领域,然后找到适合你的材料。 8XD_p);Oy  
这篇文章可能有帮助: .05x=28n%  
%:yVjb,Yf  
第2步:选择一个过程 5E0dX3-  
HleMzykF  
b_']S0$c\  
你想在问题后得到高于平均水平的结果吗? s_cur-  
你需要遵循一个系统化的过程。
  • 一个与你水平相对应的实例。
  • 你不需要依靠记忆或直觉。
  • 它引导你完成一个项目的端到端。
  • 你知道下一步该做什么。
  • 它可以根据您的特定问题类型和工具进行量身定制。
S^_F0</U,  
一个系统的过程就是过山车一方面是好的还是坏的结果,一方面是高于平均水平,另一方面是永远改善的结果。  S)x5.vo^  
我推荐的流程模板如下所示:
  • 第1步:定义问题(列出问题)。
  • 第2步:准备数据。
  • 第3步:检查算法。
  • 第4步:改善结果。
  • 第5步:得出结果。
V-x/lo]Co  
下面这幅图,总结了上方的流程: _:+ k|I  
f[-$##S.~  
$PFE>=nM  
通过一个系统化、可重复的流程,可以得出一个一致的结果。 =i>i,>bv  
&;[e  
您可以在这篇文章中了解更多关于流程的信息 lS/l iI'Y  
你并不一定要使用这个流程,但是你需要系统化的流程来处理预测建模问题。 q z8Jvgu?  
Xp0S  
第3步:选择一个工具 NE+ ;<mW  
Wd?=RO`a  
?63ep:QEk  
选择一个可以用来提供机器学习结果的最佳工具。 $lb$<  
将您的过程映射到工具上,并学习如何最有效地使用它。 *H~&hs>k  
我推荐的工具有三种:
  • Weka机器学习工作台(适合初学者)。Weka提供了一个GUI界面,不需要代码。我用它来快速地解决一次性建模问题。 Weka机器学习迷你课程
Python生态系统(中级)。您可以在开发中使用相同的代码和模型,并且足够可靠,可以在操作中运行。 R平台(高级)。R是为统计计算而设计的,虽然语言比较深奥,而且一些软件包记录不完善,但它提供了大多数方法以及最先进的技术。  I}u&iV`  
我也有专业领域的建议:
  • Keras深度学习。它使用Python,意味着您可以利用整个Python生态系统,节省大量时间。界面非常干净,同时也支持Theano和Keras,后端的功能非常强大。 深度学习迷你课程
XGBoost渐变提升。这是该技术最快的实现。它还支持R和Python,使您可以在项目中利用任一平台。 `_!R;f  
学习如何使用选择的工具,研究它,精通它。 d$:LUxM#  
> *soc!#Y  
什么是编程语言? 'mk_s4J  
!7Nz_d~n  
Z+2 j(  
编程语言并不重要。 F<J`1 :  
即使你使用的工具并不重要。 |jb,sd[=S  
通过问题学习的技能将轻松地从平台转移到平台。 \ {;3'<  
不过,下面是机器学习中各种语言受欢迎程度的调查结果: IGF25-7B  
f"t+r /d  
第四步:数据集实操 \e~5Dx1  
Z31a4O  
, FR/X/8  
虽然有了系统化流程和相关工具,仍需要多加练习,方能生巧。 5IfC8drAs  
在标准机器学习数据集上的实践。
  • 使用真实的数据集,从实际问题领域收集(而不是人为虚构的)。
  • 使用适合的内存或Excel电子表格的小型数据集。
  • 使用易于理解的数据集,以便了解期望的结果类型。
/i(R~7;?  
练习不同类型的数据集,练习一些让你不喜欢的问题,因为你将不得不提高技术来获得解决方案。在数据问题中找出不同的特征,例如:
  • 不同类型的监督学习,如分类和回归。
  • 从数十,数百,数千和数百万个实例的不同大小的数据集。
  • 不到十个,几十个,几百个和几千个属性的不同数量的属性。
  • 来自实数,整数,分类,序数和混合的不同属性类型。
  • 不同的领域,迫使你迅速理解和了解一个你以前没有解决过的新问题。
.,\^{.E  
qm< mw"]  
使用UCI机器学习库 qK]Om6 a~  
{_UOS8j7  
5A+r^xN  
这些是最常用和最好理解的数据集,也是最好的开始。 t"P:}ps{?  
在这篇文章中了解更多: v\D.j4%ij  
t]E@AJO K  
使用机器学习比赛,如Kaggle #'BPW<Ob  
+h8`8k'}-2  
#]r'?GN  
这些数据集通常较大,需要更多的准备才能建模。 'cA(-ghY/E  
有关您可以练习的最受欢迎的数据集列表,请参阅以下文章: +!)_[ zo  
Q096M 0m  
对你自己的设计问题的实践 g0#w 4rGF)  
~>XqR/v  
eIQ@){lJ-]  
收集有关您的重要机器学习问题的数据。 !,R=6b$E5  
你会发现你所设计的问题和解决方案更有价值。 dUv(Pu(.#  
欲了解更多信息,请查看帖子: wH+| & C  
J~AmRo0!k  
第五步:建立一个收藏夹 1 0^FfwRfM  
U#|6n ,  
hGRHuJ  
把自己完成的项目内容,放入一个收藏夹,把它们好好利用起来(有点像高中的错题集)。 W&v|-#7=6  
在您处理数据集并获得更好的效果时,请汇总您的发现、学习经验到自己的收藏夹。
  • 可以上传你的代码,并在自述文件中总结。
  • 可以你在博客文章中写下你的结果。
  • 可以做一个幻灯片。
  • 可以在YouTube上创建一个小视频。
`%*`rtZ+H.  
它们每一个都代表了您不断增长的经验之一。 c$x >6&&L  
就像一个画家,你可以建立一个完整的收藏夹,来展示你在机器学习的成果递送技术。 pA6A*~QE  
您可以在该文章中了解更多关于这种方法的信息: g]E3+:5dk  
当你觉得自己的收藏夹已经硕果累累的时候,你甚至可以选择利用它来承担更多的工作责任,或者成为一个新的机器学习的重点角色。 =yWdtBng  
欲了解更多信息,请看这篇文章: .-)kIFMi  
8vQR'<,  
技巧和窍门 odn3*{c{x  
e xkPu-[W  
<6+T&Ov6  
以下是您在使用此过程时可能会考虑的一些实用技巧和窍门。
  • 从一个简单的过程开始(像上面)和一个简单的工具(像Weka),然后提升难度,在这个过程中,你的自信心会得到提高。
  • 从最简单和最常用的数据集(鸢尾花皮马糖尿病)开始。
  • 每次应用一个流程时,都要寻找改进方法和使用方法。
  • 如果你发现新的方法,找出把它们整合到你的收藏中。
  • 学习算法,再多不多,以帮助您获得更好的结果与您的过程。
  • 从专家身上学习,看看哪些东西可以应用到自己的项目上。
  • 像研究预测建模问题一样研究你的工具,并充分利用它。
  • 解决越来越难的问题,因为在解决问题的过程中,你会从中学到很多东西。
  • 在论坛和问答网站上参与社区,提出问题和回答问题。
$g),|[ x+(  
k"6&&  
概要 f{2I2kJr  
Dt(xj}[tC  
^I) +u>fJ  
在这篇文章中,您看到了简单的5个步骤,您可以使用它学习“机器学习”并取得学习进展。 t%StBq(q  
虽然看上去很简单,但这种方法却需要付出艰辛的努力,最终将受益无穷。 J$lfI^^  
我的许多学生都是通过这个步骤来学习的,而且还是机器学习的工程师和数据科学家。 FIUQQQ\3  
如果您对这个过程和相关想法有更深入的了解,请参阅以下文章:
发表主题 回复主题
« 返回列表上一主题下一主题

限100 字节
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
 
验证问题: 68 + 6 = ?
上一个 下一个
      ×
      全新阿里云开发者社区, 去探索开发者的新世界吧!
      一站式的体验,更多的精彩!
      通过下面领域大门,一起探索新的技术世界吧~ (点击图标进入)