课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,人工智能编程开发技术得到了众多程序员的追捧和学习,今天我们就一起来了解一下学习人工智能技术都需要从哪些方面开始。
基本功
如果是视觉方面,就是图像处理,语音方面就是音频处理。以视觉为例,现在深度学习基本输入都是原始像素,也不用做复杂的特征提取,所以这一块要求不是太高。当然随着应用的深入,很多东西还是慢慢要学。
动手把流行的算法移植到手机上
这件事情可能是重要的,就是动手,动手,动手。很多人学习深度学习,就是先把Tensorflow在自己的机器上安装一遍,然后把Tutorial里面的几个例子跑一跑,就完事了。加起来也没几行python代码,其实你什么也没学会,就是照书敲代码。
我说的动手,还是针对Inference,建议先从Tensorflow Lite开始,一步步把训练好的模型通过量化处理变成简化的模型,然后在Android或者iOS上调用API,做一个App。
Tensorflow官方有开源的sample,是1000类的图像分类,可以在这个基础上改模型,改代码,逐步尝试。比如把1000类变成狗的品种识别,或者实现一个手写数字识别,再复杂一点,做一个人脸检测。后面会专门写一些教程,把不同算法移植到手机上。
紧密关注Tensorflow Lite的发展
Google发布Tensorflow之后,生态日渐完善,开发社区非常活跃,远远把Caffe甩在了身后。随后发布的TPU,专门针对Tensorflow优化的AI芯片,提供了Cloud服务,Tensorflow Lite也是对移动平台支持好的Inference框架,近日推出的Edge TPU,同样完美支持Tensorflow Lite,大有一统江湖之势。所以一定要关注Tensorflow的发展。
作为移动端开发人员,Tensorflow Lite是重中之重。目前来看,Tensorflow Lite的优化还主要限于CPU,之后还会有什么发展也是关注重点。Tensorflow Lite的代码量也不是太大,有时间阅读源代码,甚至进行一些优化,都是非常有价值的事情。
学习性能优化的方法
前面提到了,性能优化是客户端智能的重中之重,可以着重学习一下技术:
C++性能优化
Neon/SSE指令集优化
GPU优化
这些技术难度都不低,而且通常跟应用场景本身相关,不容易有通用解决方案,在实际应用中可能会成为核心突破点。
除了手机,玩玩别的设备
边缘计算不只包含手机,手机重界面和交互,有很多AI应用其实是不强调界面和交互的,比如安防领域,试试更多的设备,会拓展更多的可能性。比如Nvidia的TX2,Raspberry PI,以及即将上市的Edge TPU。
有时间多看看书
前面几乎没有提到看书,不是看书不重要,而是只看书不动手是没有效果的。在实践中,不明白的地方一定需要网上查或者翻看资料。在这个基础上,系统的学习理论知识,也是很有必要的。理想情况下,我认为可以重点关注一下几点:
主流深度神经网络的架构,设计的思想,理解不同层到底在干什么,对应的代码在哪
人工智能发展的历程,怎么一步步发展到深度学习的
曾经流行的一些算法,很多思想其实在深度学习中都有应用
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。