AI概论 第二周笔记 - Building AI Projects

前言
续上一个星期的内容,禁止转载

Week 2 Introduction
在这一篇文章中,会介绍启动一个AI项目需要做什么,AI的流程是什么,怎么去选择一个AI项目,如何组织数据和建立团队,无论对你自己或是和朋友一起,亦或是企业里更大规模的队伍,都是重要的。

Workflow of a machine learning project
机器学习可以学习从输入到输出,或 A-->B 的过程。

第一步是收集数据:现在那语音助手举个例子,比如苹果的siri,你得到处走然后让人们来说这个词'siri' ,然后你把这些语音记录下来,同时也需要收集其他的词 例如'你好'等很多其他的词,并且录音下来。当你收集了非常多音频数据 也就是收集了很多不同人说 'siri' 或其他词语的语音后就可以开始训练数据了。

第二步就是训练模型,就是说你需要利用一个机器学习算法 来学习从输入到输出,或者是A到B的映射,这里输入A就是一段上面收集的语音。这个时候团队会尝试第一次建立模型和训练,如果一次尝试的效果不好就需要尝试很多次。(在人工智能领域,叫做反复迭代。)直到模型看起来足够好为止。

第三步就是把训练好的模型发放给任何人用,让任何人去评估这个训练好的模型。如果有人觉得不好用,或者有人说siri之后 NN 没反应,这个时候就要维护和更新下 NN (比如英式口音和美式口音)。

Workflow of a data science project
和机器学习项目不同,可以从数据科学那里得到改进的行动和观点。这些观点可能会让你的采取不同的行动,所以数据科学项目与机器学习的工作流程不同。

如果你在运营一个卖咖啡杯的电子商务平台 或者是在线购物网站,所以当一个用户从你这购买咖啡杯时,他们常常需要经过一系列步骤。 首先,他们将访问你的网站,浏览不同的马克杯,然后他们点进某个产品的详情页面,他们把商品放入购物车,进入支付界面,最终他们将支付订单。在这个过程中可以通过用户点击记录一份日志。

第2步是分析数据,你的数据团队可能会想出很多会影响销售因素,例如,数据团队也许 会认为海外顾客因为国际运费太高而被吓退,这可以解释为什么很多人虽然 点进了支付页面,但是最终没有下单。如果真是这样,那么你可能会考虑是否把部分运费 直接包含进商品价格中,或者数据团队可能会想到在假期来临的时候,数据是否会存在短暂的突变。

所以,一个优秀的数据科学团队会有很多的想法,他们会尝试这些想法,反复迭代 许多次去获得好的见解和观点。最终,数据科学团队把这些见解提炼成一系列的假设,比如,怎么做才可以对销量有帮助,什么做对销量没用。数据团队也可能给出经营上的建议,等等。

当你采纳这些建议并把它们应用到你的网站,然后你的网站需要开始收集新的数据,因为用户的行为可能已经发生了变化,因为你改变了运费。然后,你的数据科学团队可以继续收集新一轮数据,定期作出评估,并且随着时间推移提出 更好的假设,提出更好的经营方法。所以说,数据科学项目的关键步骤是收集数据,分析数据,然后提出假设和行动, 然后继续定期地获取数据和分析数据。

Every job function needs to learn how to use data
过去几十年来社会正在走向数字化,以前人们经常进行纸质问卷调查,现在更加倾向于 使用数字问卷。医生仍然会写一些手写记录,但这些记录正逐渐变成数字档案等等。

假设你是一个在农场工作的农民,数据科学可以怎么帮到你呢?今天农民已经在 农作物里应用数据科学,可以从土壤条件、天气条件,以及 市场上不同农作物的价格中获取数据,然后让数据科学团队推荐 何时种植,以及种植什么作物来提高生产效率,同时又保留农场良好的土壤。

这种数据科学正在继续对农业起到越来越大的作用。让我们来看看机器学习在农业中的应用,机器学习在农业上的变化是将农业精准化,用手机拍的一张照片,如果中间有杂草,有了机器学习就可以开始以一种很精准的方式喷洒除草剂在杂草上,既能去除杂草 又不会喷洒过量的除草剂,这种类型的机器学习技术正在帮助农民。提高作物产量的同时,又有助于保护环境。

How to choose an AI project (Part 1)
如果你想要尝试做一个人工智能项目的话,怎样选择一个有价值的项目呢? 不要指望点子一夜之间就会出现,有时候可能可以,但有时也需要几天 或者几周才能获得一个好的点子。

如果你有一百万张完好的咖啡杯和一百万张有裂缝的咖啡杯的图片,有这么多的好杯子和坏杯子的图片能喂给你的人工智能系统当然是非常好的。 但我希望你没有一百万有问题的咖啡杯,因为它非常昂贵。有时即使只有1000个, 或100个, 或甚至只有10个样本,你也能开启你的机器学习项目。需要多少数据很大程度上,取决于你要解决的问题。与人工智能工程师或者 AI 专家聊聊也许会帮助你更好的找到方向,有些问题需要大数据才能获得好的解决方案,也就是说有1000张图片也不够,但我的建议是不要因为在一开始的时候没有很多数据就开始放弃,很多时候,即使是用很小的数据库也能够有所进展。

How to choose an AI project (Part 2)
在每个行业中,如果有些东西是有行业标准的话,比如使用开源的工具,或者付费的,你就避免重新去构建它。构建与购买问题的一个共同答案是,构建对你来说要有非常专业知识或 对您完全专业的知识,或者它们允许你构建独特的优势。但如果所需工具的是具有 特殊的行业标准的话,应该去购买它而不是在内部建造它,因为它这对你来说更有效率。

因此,当有大量建立的行业标准解决方案时,你可能最好也只采用行业标准或其他人的平台,而不是试图在内部重新建造一个全新的东西。我们都生活在一个资源有限,时间有限,数据有限,工程资源有限的世界里,所以我希望你能把这些资源集中在 我们最独特的项目上,以此让你的公司带来最大的收益。通过全面彻底的对 技术和业务的考察过程,我希望你能够开始识别哪些具有潜在价值或对你的业务有前途的项目。 如果这个项目很大,也许会需要许多个月来进行,在决定投身于这种项目之前,经常会花上好几周时间进行这种全面彻底的考察。

Working with an AI team
我想敦促你避免一个坑,就是不要期望人工智能团队能给你100%的准确率。
一个人工智能软件也许不可能达到100%准确率,尽管机器学习科技在现今表现很强大,但仍有其局限性,它们无法做所有的事情。也就是说,你也许在试图解决一个当今机器学习技术十分难解决的问题。第二,数据不足,如果你没有足够多的数据,特别是如果训练数据不够的话 要得到一个高准确率会是比较难的。第三,数据很混乱,有时数据可能会被错误地标记 比如这个绿色咖啡杯,看起来完全没有任何的裂痕,但它还是标记为有裂痕,因此则是一个错误的标记,这就会损害你人工智能软件的表现。

还有,NN有时会过于拟合,比如说,这个咖啡杯,它 看起来在这里只有一个小划痕,但这是一个很小的划痕,所以也许我们觉得这是没问题的。 也许这应该被视为一个残次品,也许不同的咖啡杯检测专家会对这个咖啡杯是否合格, 也能够通过产检会给出不同的结论。

以上提到的这些问题中,有些可以得到改善。如果你的数据不足, 也许你可以尝试收集更多的数据。更多的数据往会有所帮助或者你也可以尝试清除 这些错误的标记又或者去找你的工厂专家来。所以这就是为什么人工智能系统 即使没有实现100% 的准确率 也是极其有价值的。要和你的人工智能工程师讨论什么是 合理的准确率,然后试着去找一个既能通过技术调研又能通过商业调研并且没有达到100%准确率的项目。

Technical tools for AI teams (optional)
许多团队会使用这些工具构建自己的系统。所以,你如果听说过这些工具:TensorFlow,PyTorch,Keras,MXNet, CNTK,Caffe,Paddlepaddle,Scikit-learn,R Or Weka,这些都是开源机器学习框架。它们能帮助 AI团队更加高效地写代码,也有人工智能技术的突破。现在也可以在各种网站上自由发布文章,如:Arxiv。

本人喜欢用 TensorFlow ,是谷歌开发的,所以你看到我的博客通常会研究 TensorFlow。

Github 也有人脸识别软件,比如 Face Recognition 等,在使用的时候请注意他们的许可证,你也可以自由地浏览 GitHub, 看看网站中发布的各种 AI软件的类型。除了这些开源技术工具外,你也经常听到 AI 工程师谈论 CPU 和 GPU。

从历史上看, GPU 是用来处理图片的,当你在玩视频游戏时,很可能是 GPU 在 绘制出那些奇妙的图形。但是几年前 我们发现这个原本是为了处理图形而设计的硬件,非常适合用来构建大型神经网络,即大型深度学习算法。 因为需要构建非常大型深度学习或者大型神经网络系统,AI社群不得不永无止境的寻求更强的计算能力 以训练更大的神经网络。然而 GPU 已经被证明是一种非常匹配这种需求的计算方式,用于训练很大的神经网络 所以, 这就是为什么 GPU 在深度学习中起兴。

Comments