机器学习和深度学习的基础教程

434 阅读4分钟

之前接触了一些机器学习基础资料包括线性代数,统计学,最优化理论,微积分,以及算法的实现,觉得有必要写一个教程讲讲自己的感受.由于掘金是前端为主,而js又是前端主要语言,在深度学习里现在也有了tensorflow.js框架,所以客户端和网站都可以实现机器学习算法.因此想尝试搞一个js的机器学习和深度学习的教程. 机器学习和深度里面其实都是比较难的内容,涉及其他学科的内容太多, 所以想根据学习过程谈谈一些自认为是关键的内容,由于tensorflow.js已经把我们所需要的算法都做了封装,很多情况下我们并不需要自己设计最底层的算法,但是了解每个封装函数的作用和意义,还是有必要的.所以涉及的内容不是怎么实现具体算法,主要还是基础知识的介绍. 最难的部分还是线性代数和统计的思维,后面着重介绍这两部分. 为了配合后续教程的完成,先放出参考教程的电子文档.

使用的教材

  1. 线性代数及其应用
  2. 行为科学统计概要
  3. 神经网络设计 第一版中文,第二版英文(有配套matlab程序)
  4. 最优化导论
  5. 深度学习的数学(有配套excel文件)
  6. 白话统计学
  7. 现代控制理论(神经网络设计数学部分的参考教材)
  8. 机器学习导论
  9. Deep Learning with JavaScript_Neural Networks in TensorFlow.js

百度网盘资源,密码:4p4g

仅供个人参考,前五本都是很好的教材, 可以考虑购买纸质版.尤其是前三本值得购买并反复阅读. 如果以后有志于以后从事数据科学工作,现在的投资买这几本书以后会获得很大的回报. 这是零基础的推荐教程,因为我是从零开始的.

其他资料

后面会提到一些其他教程

时间安排

预期时间为六个月,不知道能不能坚持下来. 有时很花时间要画图还有编公式,所以没法控制进度. 分为四大块:1线性代数,2统计学,3神经网络,4优化技术.不定时写,分别完成.

学习建议

其实在线性代数及及其应用,以及其他教程中教师都强调要反复阅读, 机器学习和深度学习本质是数学的学习,tensorflow也被称为科学计算工具, 我感觉现在我们的高校在数学的教学上安排的时间远远不够. 应该少上几门公共课,公共基础课和专业课,多安排数学课程的学习,和锻炼长跑一个道理,肺活量都没练出来,以后每次的成绩都不会太好.如果是出了校门学习这些课程,建立数学思维和统计思维也可以,前提条件一个要反复的学习和练习, 我们的大脑和你胳膊上的肌肉本质是相同的,只要你持续锻炼,总会看到一些很好的变化. 如果是出了校门很长时间的人,比如我第一次看到类似的教材,脑袋像是僵住了一样,似乎每个字都认识,但是就是不知道讲的是什么,这很正常, 我刚开始补这一部分的时候也是这样的想法. 但是我并没有放弃,我试图想各种办法,构造各种不同的模型来理解概念. 最终我感觉已经建立的一些基本的认识, 很辛苦,但是值得,如果以后要从事类似的工作,我已经在路上走了一段距离了,并且现在又加速的趋势. 这大概是学习过程中感到最欣慰的事情.

所以希望你和我一样坚持学习,想尽各种办法来学习,一旦要决定从事数据科学,机器学习和深度学习的工作,就要坚持不要放弃. 机器学习和深度学习已经越来越多的渗透的各行各业中,越是在就业困难的时候越要坚定学习的信念.