你眼中的他和他眼中的他是不是同一个人。
今天准备来点儿干货。
你要问这两天什么火,每个产品经理都会告诉你人工智能和区块链。很多人都还没搞明白这些东西是什么,能解决啥问题,就已经怀着一身热情扑了进去,生怕错过下一个微信。你果哥也是个没事儿就喜欢焦虑的人,想了三天三夜,决定去做个人工智能的落地产品。
不瞒你们,你果哥之前是个很水的程序员,只会写写UI,调调API,连冒泡排序这样的幼儿园算法,都要咬烂一支笔憋半天。就这水平去搞AI,好比苟到决赛圈还只有一把平底锅,怎么跟人家98K八倍镜拼啊。不过你果哥也是见过世面的人,有差距不可怕,为了知彼知己,就把人工智能领域里的专家教授扒了扒,看看他们都是在做什么。
这里面的第一类人,是学术界的大牛。人工智能其实是一门比较老的学科,上世纪4、50年代就出现了,但进展一直比较缓慢。这几年有点喷薄的趋势,一方面算力跟上来了,另一方面学术研究起了很大的作用。大家看很多入门书,讲回归分析、聚类,反向传播,支持向量机,一大堆公式定理,涉及矩阵、概率、求导,都是学术界的工作。
随着理论的发展,很多神经网络模型被提出来然后完善。最基础的图像任务,识别定位检测,有几十个经典的CNN模型可以选。自然语言处理,从RNN到LSTM,记忆力越来越强。往往学术界一篇文章,可以带来一个领域的繁荣,比如这几年很火的对抗网络,现在已经能帮你把片儿里的女演员换成你老婆gaki了。
这里面第二类人,是工业界的工程师。理论的落地,离不开工程的实践。工程上大致有两部分,一类是各种深度学习框架的开发,一类是AI产品的研发。
其实一开始的时候,并没有什么框架,大家徒手搭神经网络,卷积运算,梯度更新全都自己解决。后来有大牛站出来,说干脆我给你们写一个框架,把这些基础的、都用的着的、需要极致的运算速度的东西做了,你们资词不资词啊?
于是一下子出来很多框架。G家的tensorflow,基于Python和C++,很流行,但是实际上用起来并不咋地,对新手不友好,调bug不容易。tensorflow算是比较低级的框架,还是要写很多无用的代码,keras框架更上一层,基于tensorflow,几行代码就能搭起一个神经网络。大牛贾清扬的caffe,元老级的框架,封装的非常好,速度很快,社区也很活跃,但是,我咧个神哩,安装起来那叫一个费劲。现在在做caffe2,据说对移动端支持比较好。FB的Torch,学术界用的比较多,主要是它基于Lua,把我们这些培训班学python出来的鄙视惨了。
都说未来是AI的时代,这里面有个很重要的前提是要有杀手级的产品落地。现在落地比较好的,一个是一些推荐系统,已经从传统的过滤算法,迈向了深度学习的路子。除此之外,如果C端不够成熟,从B端切入也是个不错的思路。
最后再说说,人工智能领域,还有一群从业者躲在墙角瑟瑟发抖,那就是大家说的调参狗。一个神经网络从理论到落地,有这么几个阶段,一个是模型构建,就是把别人论文里的网络搭建起来。然后是模型训练,把自己需要的数据准备好,然后部署到显卡上去跑,这个过程有很多参数要调,很玄,属于老中医看病,全靠经验,妙,不可言。一名调参狗的日常是这样的:
调参狗接到需求,第一件事就是去github和各种框架的model zoo上当搬运工。调参狗没有设计网络的能力,如果github上没有,就只能看论文动手撸了,不仅费时费力,出了bug还得到处求人。
模型搭好了,调参狗开始彻夜整理数据。你果哥有句话常常挂在嘴上,就是有多少人工,就有多少智能。很多时候大家用的模型是一样的,你牛逼就牛逼在有高质量的标注数据。实在没有?威胁老板买买买啊。
数据准备好了,调参狗就开始调参了。嗯,先用默认值来一遍,不行,试试小一点的LR呢?不行,换个initializer试试?艾玛,一不小心过拟合了,快快快,加大正则,加大正则还有救。
很不幸,你果哥干的就是调参狗的活。这不,没日没夜瞎折腾,时光小视频终于上线了。它能帮你的手机相册智能分类、整理、去差,做成小视频,一键即成。无论是分享给亲友,还是发抖音,都是逼格满满的。还不快玩起来,玩起来同学们~!