机器学习怎么入门-疑惑解答(2022持续更新)

文章最新版本请查看官网,这里不定期更新《老饼讲解机器学习》icon-default.png?t=N7T8https://www.bbbdata.com/text/118


目录

一、关于数学

(一)需要什么数学基础

(二) 需要重新数学吗

二、关于编程

(一) 使用什么编程语言

(二)要先学会python再学机器学习吗

(三) 机器学习环境与python用什么IDE

三、需要学习哪些算法内容

(一) 模型(算法)

(二) 求解算法

(三)综合知识

四、有哪些学习途径

(一) 自学

(二) 非自学

五、好的书籍、视频介绍

(一)书藉

(二) 视频

六、要不要参加培训班


本文收集与解答一些入门者的常见疑惑,或者,你有什么疑惑,也可以留言。

一、关于数学

(一)需要什么数学基础

机器学习中需要的数学主要有(包括但不限于):

高等代数(线性代数)

数学分析(微积分)

概率论(统计原理)
三者之中个人认为《线性代数》的使用率占70%。


(二) 需要重新数学吗

大学数学没学到位,需要重新学完再学机器学习吗?

如果大学数学没学好,学机器学习过程会有些困难。但如果回头去学完数学,再来学机器学习,那就真的是不归路了!数学比机器学习更难学,回去学数学,基本只能被劝退!
老饼认为,前期可以艰难前行,慢慢跟随着机器学习去提升我们的数学水平。

在这里,老饼给出一些个人认为很重要的建议:
 

(一) 调整学习顺序
先避开数学要求高的算法,先学数学门槛不太高,又常用的算法。数学门槛高的算法等后面整体知识水平上来了,再回头搞它。
因此,学习顺序非常重要,阶梯式学习,就可以跟随着每个算法去顺带提高数学,慢慢地,把所需的数学补上来了。
注意,这里说的,是核心算法的学习由简单到复杂。如果学的算法虽然简单,而非核心,那只能一直在机器学习边缘游走,最终把激情消磨殆尽。


(二)非必要莫引入
坚持奥卡姆剃刀原则,非必要莫引入!
如果一个数学知识点不会,可以去百度了解和补习下知识点,补习到能够把算法继续看下去就可以了,不建议一次性进行过深的学习。
等接触到新的算法,原来的理解不足以支撑算法原理时,再去进行深一步的学习。
能够坚持在机器学习的主线上走下去是最重要的,慢慢的,数学就会补回来了。
非必要莫引入!简单有效即可。


(三) 提示:一些能阻挡你的数学知识
机器学习中,没有用到太高深的数学知识,大部分的数学知识,只要有基本的数学sense,和足够的耐心,就一定不会成为你的绊脚石。
但也有个别知识会成为拦路虎。它是认识层面上的,而非公式层面的。
1.特征值
2.线性变换

目前知识的只有这两个(后面继续更新),针对这两个知识点,老饼会出个数学特别版扫出障碍


二、关于编程

(一) 使用什么编程语言

用于机器学习的语言有很多,python、R、matlab、SAS、C++等。现在基本都用python.

python最大的好处是,包多,开源,用的人多,在众多语言中不算难,建议大家也直接入手python。
理由如下:
(1) 工作中有时需要统一编程语言。
(2) 找资料方便,也更丰富。
(3)python可以做的东西很多,熟悉python,以后用编程处理其它需求也不用重学另一种语言。
事实上,本人更愿意用matlab,但目前不得不转向了python。

(二)要先学会python再学机器学习吗

如果完全不懂任何编程,那是必须过一遍的,但不宜太专业的学习。
如果有一些编程思想,或其它语言编程经验,只是欠缺python的语法,我认为可以边学机器学习边跟随代码学习语法
整个学习过程仍然遵守奥卡姆剃刀原则,非必要莫引入。


(三) 机器学习环境与python用什么IDE

如果装原生python,在装完python后还需要装其它机器学习包、ide。
建议直接使用Anaconda。Anaconda是全家桶,各种包直接安装好,自带编程界面Spyder。对机器学习来说,使用Anaconda简单了事。
另外IDEA使用jupyter notebook也是不错的选择。pycharm则面向开发更多,机器学习不太推荐。


三、需要学习哪些算法内容

这里我们并不考虑机器学习学术上的知识体系和完整性,如果要学完整个体系,那是不现实的,相对实际工作或使用也是牛刀杀鸡,学造火箭拧螺丝 。

入门者比较实际,比较可行的路线是,只学习实际应用(或就业面试所需)中的知名度、性价比高的关键常用算法。学完这些算法,作为局中人,再去研究前沿、或冷门的知识。

这里我们把日常使用的算法分为模型(算法)、求解算法、综合知识。

(一) 模型(算法)

模型/算法可分为主线(核心)、散装,主线是工作中常用的,核心的模型;支线是主线的一些变形、拓展;散装通常是较独立的,不常用但业务知名度广的。


(1)主线模型
线性回归-->逻辑回归-->SVM
决策树-->集成算法(随机森林、Adboost、GBDT)-->Xgboost
*PCA-->LDA-->FA-->ICA(该系列通常用于降维)

(2)支线
线性回归:岭回归、Lasso回归


(3) 散装
KNN、K-means、朴素贝叶斯、隐马可夫链、Apriori

(二) 求解算法

1、精确求解:线性方程最小二乘求解
2、基于微分的优化算法:梯度下降、牛顿法与拟牛顿法、共轭梯度法
3、*启发式算法:模拟退火、遗传算法、蚁群算法

(三)综合知识

过拟合、正则化、数据清洗、模型训练、AUC、KS等等

备注:加*的代表该系列优先度不高。
这里只是把较具代表性的列出来,能搞完上面这些,已经不错了。


四、有哪些学习途径

(一) 自学

买书籍、看网文、看视频、系列的教学视频或文章、软件的官网、个人专题网站、github、公众号。
视频:推荐去b站搜索
文章:百度、知乎
博主:CSDN、博客园、简书
软件官网:python-sklearn的官网
书籍:去某东某宝买
电子书籍:某宝买打包好的资源、百度网盘下载(通过百度网盘搜索网站进行资源搜索)。

(二) 非自学

学校、培训班、拜师、靠朋友(别笑,后面两种也是很有效的途径)


五、好的书籍、视频介绍

(一)书藉

我认为没有什么让我非常满意的入门书藉,主要是跟随着这些书藉,我也学不会。
但能推荐好书藉,这些书藉可以作为工具书,在不懂时借鉴与查询。


下面只写的优点。
1.《统计学习方法》--李航
经典书藉,排第一位没有什么问题!里面的内容都非常实在,通俗、完整、严谨与深度于一身。
2.《机器学习》 -- 周志华
继《统计学习方法》后,又一本大家推荐的书,对初学者更为友好。
3.《机器学习实战》李锐 李鹏 曲亚东 王斌 译( 原作《Machine Learning in Action》 -- Peter Harrington)
对初学者非常友善,轻理论,重实战,有一步步的python代码,比较具体。
4.《模式分类》 --李宏东、姚天翔 等译 (《Pattern Classification》--Richard O. Duda/Peter E. Hart/David G. Stork)
深入、严谨、有序。深入之余不失条理。

(二) 视频

1.吴恩达 视频
2.李宏毅《机器学习》视频,B站可以搜索。


六、要不要参加培训班

我个人不会参加,但你真的自学搞不定,参加培训班也不失为一种途径。但不要寄予厚望。


如果你是我亲戚,我会建议你参加,还愿意掏费资助,虽然明知参加培训班收益上限不高,但它始终有个下限,多少还是有回报的,从人生的价值投资来说,是值得投的一笔钱。


但如果你现在让我重回当年,会不会参加,我还是不会参加,一万次,我还是会选择跌跌撞撞自己走过来。反正,这是一个非常矛盾的问题。


相关文章

《入门篇-环境搭建:anaconda安装》

《​​​​​​入门篇-模型:逻辑回归》

《入门篇-模型:决策树-CART》

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值