人工智能学习入门先学什么 零基础自学路线与常见误区
前几天有个读者给我发消息,说他买了五本人工智能的书,看了三个月,结果连最基础的线性回归都没搞明白。我问他第一本看的是什么,他说是一本讲深度学习的实战书,封面写着“从入门到精通”。我当时就乐了,这不叫从入门到精通,这叫从入门到放弃。我自己也干过类似的蠢事,三年前第一次接触人工智能学习的时候,直接上手看论文,满屏的数学公式看得我头皮发麻,坚持了不到一周就把书扔角落里吃灰了。
先搞清楚人工智能学习到底在学什么
很多人一提到人工智能学习,脑子里浮现的就是科幻电影里的机器人,或者新闻里那些动不动就几千亿参数的模型。这些离普通学习者太远了。你真正要学的东西,说白了就三块:数学基础、编程工具、还有算法思维。
数学这块,不需要你成为数学家。线性代数、概率统计、微积分,每样知道核心概念就行。比如线性代数,你重点理解向量和矩阵的运算就够了,不用去纠结那些证明。概率统计呢,搞清楚条件概率和贝叶斯公式,后面学起来会轻松很多。微积分更简单,你记住导数就是变化率,梯度就是方向,基本够用了。
编程工具方面,现在最主流的是Python,中文叫蟒蛇语言。这个语言对新手特别友好,语法简单,社区资源也多。你不需要学得多深,会写函数、会用循环、能看懂常见的库怎么调用就行。我当初花了大概两周时间,每天挤出一个多小时,把基础语法过了一遍,然后就边用边查,慢慢就熟了。
提示:千万别想着把Python学精通了再开始人工智能学习,这就好比你想学炒菜,非要把锅碗瓢盆的制造工艺先研究一遍,完全没必要。
零基础自学路线,我踩过的坑你们别再踩
说到具体怎么学,我把自己和身边朋友的经验捋了一遍,大概可以分成三个阶段。第一个阶段是热身期,大概两三周。这个阶段的任务特别简单,就是装好Python环境,然后跟着教程跑几个小例子。比如用几行代码画个正弦曲线,或者写个猜数字的小游戏。目的不是学会什么高深的东西,而是让自己习惯用代码解决问题这个模式。
第二个阶段是打基础,需要一到两个月。这时候你要开始碰数据了。找一份简单的数据集,比如鸢尾花分类或者波士顿房价预测,跟着教程做数据清洗、特征选择、模型训练这一整套流程。这个阶段特别容易陷入一个误区,就是光看不动手。我有个朋友就是,他把教程视频看了三遍,觉得自己都会了,结果一打开编辑器,连怎么读取文件都忘了。所以我的建议是,每看完一个知识点,马上自己动手写一遍,哪怕照着抄都行,手熟了才是真的会了。
第三个阶段是实战期,时间因人而异。这时候你可以挑一个自己感兴趣的方向,比如图像识别、自然语言处理,或者推荐系统,找一个完整的项目跟着做。这个过程中你一定会遇到各种报错,各种跑不通,这太正常了。我记得有一次调一个模型参数,调了整整一个周末,最后发现是数据格式搞错了。气得我当晚没睡好。但就是这种折腾,才能真正让你把知识变成自己的。
常见问题:数学不好能学人工智能吗?
能学,但会吃力一些。我的建议是边学边补数学,遇到不懂的概念再去查,别一开始就抱着数学教材啃。我认识一个做前端开发转人工智能的朋友,他高中数学都忘得差不多了,现在照样在做机器学习相关的工作。关键是你愿不愿意花时间补短板,而不是一开始就给自己判死刑。
新手最容易掉进去的几个误区
第一个误区就是追求大而全的教材。市面上很多书,动不动就六七百页,从感知机讲到Transformer,恨不得把人工智能发展史都给你讲一遍。新手看这种书,大概率会在第三章就卡住。选教材要选薄的,选那种每章都有代码示例的,选你能在两周内翻完第一遍的。
第二个误区是只学不练。人工智能学习本质上是个手艺活,跟你学木工、学修车没太大区别。看再多的视频,不如自己亲手调通一个模型。哪怕这个模型很简单,哪怕你只是把别人的代码复制粘贴过来跑了一遍,也比纯看强。因为跑的过程中你会遇到环境配置问题、版本兼容问题、数据路径问题,这些坑踩过了才是经验。
第三个误区是急于求成。我看过太多人,学了两周就觉得自己能去做算法工程师了,投了一圈简历没人理,然后就放弃了。说实话,人工智能学习这件事,从零基础到能干活,快的话也得小半年,正常要一年左右。那些培训班告诉你三个月包就业的,要么是造假,要么就是把门槛降得极低。你细想,如果一个行业三个月就能轻松入门,那它凭什么给你高工资。
给自己定个小目标,别想太远
说了这么多,其实我想表达的就一句话:人工智能学习没那么神秘,但也绝不是三天打鱼两天晒网能搞定的。你如果真想学,别一上来就规划什么半年成为专家,那太虚了。就定一个小目标,比如这周把环境装好,下周把第一个例子跑通,下个月能自己做个简单的手写数字识别。一步一步来,每一步都算数。
至于我自己,到现在也不敢说学明白了。前两天试了个新模型,调了半天参数效果还是不如预期,最后发现是学习率设大了。你看,老手也会犯这种低级错误。所以别怕犯错,犯的错越多,记得越牢。反正我是这么过来的,你们估计也差不多。
上下篇导航