AI For Everyone 学习笔记(五)AI项目开始前的调研和准备工作
作者:微信文章本篇文章是学习吴恩达教授“AI For Everyone”课程的第5篇学习笔记,这门课程非技术,非常通俗易懂,更主要的是教大家如何将AI业务布局到公司,以及了解AI对社会的影响。本篇文章里主要介绍了在开始AI项目之前需要做哪些调研和准备工作,以保障最终项目能达成预期目标。希望对大家学习AI有所帮助。01
—
做好项目的前期调研
也许你有很多AI项目的想法,但在投入之前,怎么确定是一个值得的项目呢?
如果这是一个快速的项目,可能只需要几天功夫,就可以很快去知道它是否可行。
但是对于一个需要投入很长时间的大型项目来说,如何事前评估是否值得花费几个月的努力去做,这个项目是否可行?下面会介绍了一些方法和具体的步骤。
首先,项目的选择范围,需要是AI能解决的事情,和对业务有价值的的事情,必须是这两组的交叉结合。这在上一篇文章里也介绍过。
然后,在投入大型AI项目之前,我通常会对此进行彻底的考察。意味着你要花一些时间来做充分的调研,确保项目最终的结果是可以现实的,主要包括3个步骤。
1. 技术方面的调研:
第一点,通过全面的技术考察,确保想要建立的人工智能系统的可行性。
因此,你可以与AI专家讨论AI系统是否能够真正达到理想的性能水平。
例如,如果你希望构建一个准确率高达95%的语音系统,那么咨询AI专家或者阅读一些文献可以让你了解这个系统的可行性。
或者,如果你希望开发一个准确度达到99%的检测工厂制造的咖啡杯的系统,这一构想使用今天的技术能否实现?
第二点,技术重点考察的问题:需要多少数据才能达到理想的性能水平?并且你有办法获得那么多的数据吗?
第三点,是开发此系统的时间表。试图弄清楚需要多长时间以及需要多少人来建造一个你想要的AI系统。
2. 商业方面的调研:
第一点,进行全面的商业考察,确保构想的项目对企业来说真的具有价值。
很多AI项目将通过降低成本来提供价值。例如,通过自动执行一些任务或者通过系统提高运营效率。
也有很多人工智能系统可以增加收入。例如,让更多的网购用户把放在购物车里的东西完成下单,或者构建AI系统帮助推出新产品或新业务。
第二点,仔细思考你正在构建的AI系统,是改善当前的业务,还是创建全新的业务。哪一个会帮助公司实现业务目标。
例如,是改善现有的业务,通过自动化的视觉检测系统,来降低成本。还是推出一个语音识别系统的新业务。
第三点,建立商业价值评估的财务模型,进行定量的价值估算。
无论您的业务目标是改善当前的业务,或在公司创建全新的业务。在进行业务调查时,我经常会建立电子表格财务模型以定量估算价值。
例如建立与项目相关联的经济模型,预估实际可节省多少钱,或者可以带来多少新增收入。通过经济模型计算,让假设的数字更加合理。
3. 道德方面的调研:
在决定投入一个大型项目之前,还需要考虑做第三种调研,即道德考察。
人工智能可以做很多事情,甚至可以赚很多钱。但有的AI项目虽然赚钱,但有可能不会让社会变得更好。
因此,除了全面考察技术可行性和商业价值之外,还需要进行道德考察,确保让社会变得更好。
02
—
考虑自建还是购买or外包?
当你计划开始AI项目时,还必须决定是自己来建设还是向别人购买?这是IT界的一个老问题,在人工智能中我们也面临此问题。
例如,现在几乎没有公司建立自己的计算机,他们购买电脑。现在也几乎没有公司建立自己的wifi路由器,只需要购买商用wi-fi路由器。
那机器学习和数据科学呢?
1. 机器学习项目可以让企业内部做或外包给别人。我已经见证过这两种模式的成功案例。
有时如果你外包一个机器学习项目,你可以更快地找到合适的人才,并加速项目的实施。你也可以在公司内部建立自己的人工智能团队,并在公司内部完成项目。
2. 与机器学习项目不同,数据科学项目通常在内部完成。
他们并非不可能被外包,而是数据科学项目与企业密切相关,这通常需要对企业的业务有非常深入的了解,才能进行最好的数据科学项目。因此,从大概的比例来看,数据科学项目比机器学习项目更多放在企业内部。
3. 最后,在每个行业中,如果有些东西是有行业标准的话,你应该避免构建它们。
自建与购买问题的一个共同答案是,如果你需要构建一个非常专业的东西,或需要构建独特的防御优势时,那可以考虑自建。
但如果你的项目是一个行业应用,本身这个行业是有行业标准的。那你应该购买市场上成熟的系统,而不是在内部自建一套,这对你来说更有效率。
有一个非常诗意的比喻“不要跟火车冲刺赛跑”,不要做那个试图在火车前面冲刺的工程师。
如果已经有一家大公司正在构建行业标准解决方案的开源工作,那么你最好避免企图领先于这列火车。
因为即使你在短期内冲刺得很快,最终火车也会追上,并撞到试图在火车前冲刺的人。
因此,当有大量已建立的行业标准解决方案时,最好采用已有的行业标准,用别人的平台,而不是试图在内部建造一个全新的东西。
我们都生活在一个资源有限,时间有限,数据有限,工程资源有限的世界里,所以要能把这些资源集中在最独特的项目上,以此让公司带来最大的收益。
03
—
设定项目验收标准
1. 设定验收标准:
首先,为项目提供一个验收标准,这对人工智能团队能起到很多的帮助作用。
假设目标是监测咖啡杯中的缺陷能达到至少95%的准确率,那这就可以是项目的验收标准。
但95%的准确率,该如何测量呢?
AI团队需要有一组数据集来测试模型的准确率,这里的数据集只不过是一组有不同标签的图片。比如有3张咖啡杯的图片,前两个咖啡杯标注是好的,第三个标注是有缺陷的。
所以作为验收标准的一部分,需要保证AI团队有一组可以用来测试模型表现的数据集,这样才能知道模型是否达到了95%的准确率。
这组数据集的正式术语,称为“测试集”。
测试集可以不需要太大, 也许1000张图片,对这个例子而言就足够了。如果你咨询AI专家,会告诉你更合适的数字。
其次,验收标准的设定通常是数据统计的方式。
人工智能系统的特点是,它们的性能表现通常是以数据统计的方式来展现的。所以经常会看到AI系统是以一定百分比的准确率来运行,而不是要求它弄出一个完美的结果。
就比如这个例子,当你给出验收标准时,想想验收标准是否需要以数据统计的方式体现出来,比如多少百分比能获得正确的答案,或者平均多长时间完成任务。
2. 更深入地了解测试集的概念:
人工智能团队把一组数据分成两部分,第一个被称为训练集,第二个被称为测试集。
第一个数据集是训练集。是一堆配有标签的图片,比如一张咖啡杯是否合格还是有瑕疵的图片,所以训练集给出输入A即咖啡杯图片的例子,也给输出B即这个咖啡杯合格与否的标签。
就是说给定一个训练集,机器学习算法要做的将是学习它,换句话说就是计算出从A到B的映射关系。所以说训练集是给机器学习用来训练的原料,使软件学会计算,能够计算出A到B的映射。
第二个数据集是测试集。这是一组不同于训练集的被标签的图片,人工智能团队用它来评估算法学习得怎么样。
把测试集里的图片放入AI软件中,看看软件给出的输出是什么。
打个比方,如果有三张测试集的图片,标注的是“合格、合格、有缺陷”。而人工智能软件输出的结果是“合格、合格、合格”。那么AI系统对了2个,准确率为66.7%。
这里举例的训练集和测试集都只有三张图片,而在实操中,这两个数据集会大得多。你会发现, 在大多数项目中,训练集的数量比测试集要大很多。当然,与人工智能工程师交流,你会知道具体的问题需要多大的数据集。
3. 关于准确率的陷阱:
最后提醒避免掉入一个陷阱,就是期望人工智能团队能实现100%的准确率。
为什么准确率达不到100%,有以下原因:
第一,数据不足。如果你没有足够的数据,特别是如果训练数据不够的话,要得到高准确率是比较难的。
第二,数据错误。有时数据可能会被错误地标记,比如一个绿色的咖啡杯,看起来没有任何瑕疵,但它标记为有瑕疵,则是一个错误的标记,这会损害人工智能软件的表现。
第三,数据模棱两可。比如一个橙色的咖啡杯,看起来有一个很小的划痕,也许检测人员A觉得没有问题,但另一个检测人员B会视为残次品,不同的检测人员给出了不同的结论。
最后,尽管机器学习科技在现今是非常强大的,但仍有其局限性,即使有大量的数据,AI也无法100%做到所有的事情。
以上提到的这些问题,其中有些可以改善。例如数据不足,可以补充数据。标记错误的数据可以清除或修复。一些模棱两可不明确的标签,可以让工厂检测专家给出一致的结论。所以,是有方法来改善这些问题的。
但是,很多人工智能系统即使没有实现100%的准确率,也是极其有价值的。所以,鼓励你与人工智能工程师讨论什么是合理的准确率。
最后
到这里《AI For Everyone》课程的系列学习笔记就完结了,如果对该课程感兴趣,可以自行搜索相关资料去学习,希望对您有所帮助。
END.
✦ 飞述增长 ✦
互联网 产品经理 用户增长 AI
页:
[1]