有编程基础还是非常轻松的, 我现在在课堂上教学生人工智能基础最大的麻烦就是他们没有python语言基础,有了python语言基础之后就好办了。 因为关于机器学习那块对于python来说,就是调用现成的工具包, 熟悉现有的工具包就行。
在tensorflow之前建议可以先熟悉sklearn相关的包, 这个包安装使用非常简单。 里面的关于学习的套路也非常简单,无非就是导入数据集,拆分,训练,最后是评估。全都是调用现成的方法。 后面就是各种各样的调参了,想方设法把准确度提上去。
当然,有一定数据基础的话会更好,像sklearn中训练时,我平时和学生讲课的时候就是按矩阵运算的思想来讲解的(训练就相当于求系数矩阵)。对于一些底层原理多了解之后调参就更得心应手。
另外,要注意的是,很多情况下,机器学习不一定是整个过程中最难的。相反,数据的来源才是。机器学习之前的数据必须先处理好(如果没有办法用数据来描述问题,也根本谈不上机器学习了), 得是电脑能够比较好处理的。 而且必须有大量的数据给模型来训练,这里就引出了另一个问题,如何合规地来获取大量的数据,这一般是大的公司才有的能力。没有大量的数据,你训练出的模型可能存在泛化能力不强的问题。毕竟,机器学习的目标就是对未知事物的预测。