前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >移动端学习AI的线路

移动端学习AI的线路

作者头像
PhoenixZheng
发布2019-05-16 11:38:38
7110
发布2019-05-16 11:38:38
举报

AI是一个理论知识基础要求非常扎实的技术方向。在学习AI的过程中会遇到很多高等数学知识,比如矩阵运算,导数偏导数。 目前对于AI的开发人员要求普遍需要研究生以上,在扎实的理论背景下才能进行比较系统的AI开发。 对于大部分有几年工程经验的移动端开发来说,大学的这些知识已经生疏了,要想学AI这些生疏的知识是比较严重的阻碍。 这个问题其实可以绕过去,对于移动端开发来说,如果只是想达到"能够理解并开发AI"的程度,只需要补充几个基础的知识点就够。 当然如果想要有完整的AI知识体系,除了高等数学,矩阵数学,统计学也需要好好学习一下。

下面根据开发经验,列了一个适合移动端工程师学习AI的线路。

学习前的补充知识

回顾矩阵乘法 复习下大学线性代数前2章就行,基本概念和性质理清楚就够、

Python语言 学习AI基本是在python环境下的,当然想用其他语言也可以,AI框架也有Python之外的语言,但是效率没有python高

上面这两个学习前提准备好后就可以开始学习AI了。 像"python要学到什么程度"这样的问题初学者会比较关心,特别是对于没接触过Python的人来说。建议找本python的基础学习教材,做到能够手撸3个demo,能够读写文件的程度就行,不用深入学习。能明白Python的基础语法,能够用它来调用tensorflow这些第三方框架,这个程度就Ok了。

入门基础: 每个语言的学习都是从hello world开始的,AI也一样。 但是AI没有hello world。

AI世界里的 hello world,是一个叫 MNIST 的数据集分类识别功能。MNIST是一堆手写的0~9的数字,入门AI的第一件要做的事情,就是用 tensorflow 开发一个AI,能够自动地识别这些数字。

从这里开始就有很多个基本概念可以开始学习了,分几个阶段

Step 1:
  • AI模型的四大组成要素,输入输出,网络结构,损失函数
  • 全连接层
  • 反向传播算法

step 1 能够让你学会怎么开发一个准确率在89%的人工只能。 AI的学习门槛比较高,即使是Step 1,也并不能像学语言一样几行代码就敲出一个 Hello World。Step 1阶段看不同的人和花的精力,可能需要1个星期到1个月的时间才能完成。

Step 2:
  • AI模型落地到移动端

Step 2 是一个和AI本身关心不大的步骤,仅为移动工程师设计的。这个阶段只涉及一小部分的 AI 开发,包括模型固化和落地。后面就全都是Android工程师熟悉的app开发部分了。 结合Step 1 跑完Step 2,能完整的体会一个AI功能从开发到落地的流程。以后所有的移动端AI开发都不过是在这个基础上添砖加瓦。

但是现在落地的这个AI还很不智能,基本算是人工智障,不管是在准确率,性能,内存,模型大小这几个方面的表现都很智障。要真正实现人工智能,要学的还有很多。

Step 2对于熟手的Android开发来说也就1天时间就行。

Step 3:
  • 卷积网络
  • 不同的激励函数
  • 循环卷积网络

Step 3 能够学会开发一个准确率在 95% 以上的AI。这个步骤估计也要花1星期~1个月。

1个月的学习时间和5个点的准确率提升看起来不是很划算,但在学习卷积网络之前都不能算真正的入门人工智能。

Step 3 需要不少东西,特征提取,卷积运算,池化函数,Relu激励,drop out,L1和L2正则化。

学完 Step 3 之后就算真正入门了AI了。

Step 4:

挑一个方向

  • 计算机视觉
  • 自然语言处理

这两个方向归纳了目前AI领域的大部分工作。挑一个方向作为你喜欢的去学习。不同的方向在学习的东西上面有很多不同,虽然有共同性,但差异也有不少。

计算机视觉是个比较有意思的方向,做的事情都比较直观,也比较容易验证,特别是对于Android开发来说,用Camera就能直接验证,成就感和直接反馈比较强。

Step 5:
  • 模型优化

模型优化是一个移动端工程师几乎是必备的技能,对于一些涉及用户隐私的数据,目前是不允许传到服务端进行运算的,必须落地模型到移动端进行本地推理。

那么模型的大小,推理速度,就成为了优化的关键方向。 这里涉及到很多技巧。

  • 量化,剪枝
  • 小模型设计
  • 模型压缩
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-05-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Android每日一讲 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Step 1:
  • Step 2:
  • Step 3:
  • Step 4:
  • Step 5:
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档