2016年,由于视频游戏的长期梦想以及围绕AI的“炒作”,我开始学习Python。
计算机科学之所以有趣,是因为仅在一周前,我训练了第一个识别模型,但是没有使用Python(计算机科学中有很多诱惑)。 正如Andrei Sebrant(Yandex)所预测的那样,一场新的技术革命已经过去。 怎么了 使图像识别应用程序比计算机游戏更容易。 足够一两个小时。

我采用了“困难”的方式-我没有从四个已经受过训练的模型中进行选择,但是我训练了自己的模型。 Apple的Core ML库允许您使用6行代码或通过操场上的GUI来执行此操作。
import CreateMLUI let builder = MLImageClassifierBuilder() builder.showInLiveView()
大部分时间都花在收集和过滤训练数据上,其中有70张狗,猫和人的照片,但由于编写迅速,脚本使该过程成为半自动的。
我以前只是阅读有关机器学习的文章。 当我自己尝试时,遇到了三个预期的问题/结论:
- 数据是最重要的部分。
- 用户友好界面(CoreML)。 一切正常,我真的不想进入源代码来了解细节。 任何用户都可以使用机器学习,但是Apple工程师试图隐藏复杂的细节。
- 该模型是一个黑匣子。 我不知道该模型相信照片中“猫”的2%的规则。
识别“人类猫”的实验导致了这样的想法,即分类算法可以应对“样式”。
我选了四位摄影师,每位选出约一百张照片。 我没有尝试仔细选择示例,只是从我的收藏集中复制了
Evgeny Mokhorev和
Oleg Videnin的前一百张图像或最后一百张图像。 没有足够的
马克西姆·舒米林 (
Maxim Shumilin)的照片,因为不仅选择了肖像。 但是,
叶戈尔·沃伊诺夫 (
Yegor Voinov)的照片是经过仔细挑选的,因为我在他的网站上下载了两幅专门介绍肖像的部分。
我开始训练算法,平均获得80%的识别准确度(创建期间的测试结果)。
有一个奇怪的时刻。 我将Oleg Videnin的照片数量增加了一倍,系统仅了解了30%的图像,并且识别精度降低到20%。
为了避免出现偏差,必须对系统进行检查,我让Yegor Voynov发送了不在网站上的照片。 结果,该算法确认了26张照片中的20张照片与Yegor Voinov拍摄肖像的方式相似。
这确认了创建分类器时获得的77%的识别精度。

然后乐趣就开始了。
首先,可以通过将“错误”重新添加到训练集中来训练系统。 结果有所变化,但是系统不记得照片,而是找到特定作者的常见标志。 系统将某些“处理错误”后的照片识别为Yegor Voinov的照片,而有些则不然。

其次,该系统倾向于将“裸照”归因于叶夫根尼·莫霍列夫的照片,因此他在奥列格·维德宁罕见的“裸照”下写道,这些是莫霍列夫的照片。 并且,一旦您显示“穿着高腰的Mokhorev”,系统便可以“看到Voinov”。 并将Yegor Voynov的照片识别为Oleg Videnin的照片。

马克西姆·舒米林(Maxim Shumilin)精选的照片证明非常异类。 因此,带有明显“模糊”系统的小人物和肖像是指Maxim的照片。

第三,可以看一下尤达大师的照片。
您可以快速拍摄一张照片,并找出照片的拍摄风格。
这是关键时刻。 我上传了我的画像,以了解我中有多少莫霍列夫,维登宁,沃伊诺夫和舒米林。
PhotoGuru应用草稿
已准备就绪。 到目前为止,在我看来这是一个有趣的玩具,但我将进行设计并扩大训练样本。
总之,您需要选择一个框架来进一步研究ML。