2

数据引擎的死活:Vol.第二部分:

 3 years ago
source link: https://panchuang.net/2021/08/08/%e6%95%b0%e6%8d%ae%e5%bc%95%e6%93%8e%e7%9a%84%e6%ad%bb%e6%b4%bb%ef%bc%9avol-%e7%ac%ac%e4%ba%8c%e9%83%a8%e5%88%86%ef%bc%9a/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

数据引擎的死活:Vol.第二部分:

fendouai • 2021年8月8日 am5:03 • Medium

每次我清理数据时,我都会对大规模标记图像不可避免的挑战产生新的敬意。正如你可以想象的那样,人们扔进垃圾桶的东西很多,所以在一个模型可以在训练中用甚至是伪弹性来分类垃圾之前,有很多注释要做。

我人工抽查了我的数据集的近三分之一,大约12000张垃圾的图片,我意识到有两件事:第一,数据收集和标记比直接的监督学习要困难得多,也更乏味;第二,不幸的是,为了我们的地球,被认为是垃圾的东西远远多于可回收的东西。

综上所述,AiPR(AI Powered Reccycling)是一家参加Nittany AI挑战赛的初创公司。通过建造一个分类机器人,我们希望在源头上提高回收效率,降低消费者的保费,并提供更好的废物再利用。我们已经构建了一个可投入生产的图像分类器(数据引擎)的中介,以有效地大量生产带标签的图像。你可以在这里读到我们最初的方法,但总而言之,我们训练了一个神经网络来对垃圾图像进行分类,然后在它没有看到的图片上测试我们的模型,评估它出错的地方,并找到更多错误分类的项目的例子,以帮助后续的模型重新训练。here

今年夏天,我们的引擎已经完成了第一次也是最困难的一次迭代。我们在一个垃圾图像的小数据集上训练了一个模型-字面上和谚语中-但在测试中存在大量的错误。这并不出人意料;在人工智能中进行泛化是一项要求很高的神秘壮举。我们的失败归结为两个简单的问题:有限的数据和不耐烦。

基于从Kaggle数据集收集的约5000幅训练图像和网络抓取,我们获得了90%的准确率。到目前为止,我们的项目类型多于类。那么,我们的模型必须能够将所有种类的东西分类,例如,各种塑料;它必须能够将酸奶容器、黄油桶和塑料杯放在同一类别中。因为有这么多不同类型的项目,而每个项目的实例都相对较少,所以每个特定项目的更多内容应该会对我们的度量有所帮助。

这是陈词滥调,但却是真的:更多的数据=更准确的模型。

起初,我认为在5000张图像上90%的准确率已经足够好了,并立即在包含25000张图像的新Kaggle数据集上测试了我的模型。当我说测试时,我的意思是对模型没有见过的图像进行分类,并检查任何不确定性。在确认或修正预测之后,我将接受它们作为标签,并将它们添加到我的训练数据中。25000美元远远超过了我第一次尝试时应该尝试的注解。结果不是很好。几乎所有的东西都被归类为垃圾,几乎没有任何东西被归类为塑料、金属、纸张或玻璃。在我最初的训练中没有数据不平衡,但我有一个假设;因为我的一组被标记为垃圾的图像是最多样化的,我的模型可能已经将它不确定的图像扔进了谚语中的垃圾桶。

我的训练集在可回收类别中包含的物品类型非常有限:塑料、纸张、金属、玻璃。不过,对于垃圾,图片更加多样,不那么具体的项目;我有超过30种类型的项目被标记为垃圾,每种项目的例子都很有限。在数学上,我将数据流形的各个部分形象化,如下所示:

如果红色的圆圈代表汽水罐的图像,黑色的圆圈代表垃圾的图像,该模型能够在两者之间画出准确的边界,但可能过于适合训练集中的有限示例。然而,在这一边界之外,有大量稀疏的被贴上垃圾标签的图像。因此,例如,在这些碳酸饮料罐和汤罐之间,有大片的数据流形被稀疏的黑点覆盖-垃圾的图像-造成了与数据不平衡相同的效果。在这些口袋里,例如汽水罐和汤罐之间,有大量的数据,它们被稀疏的黑点覆盖-垃圾的图像-造成了与数据不平衡相同的效果。到了测试时间,大多数东西都落在了训练集所代表的这些小而过大的图像口袋之外。

然而,另一个问题出现了:这些牛奶壶和汽水瓶的图像有非常不同的特征,但它们都是塑料的;数据流形上的这些红色圆圈口袋中的多个必须归入同一类。深卷积神经网络本质上由大量的卷积运算和非线性激活组成。这种架构概念-许多较小的功能组成了较大的网络-应该提供足够的复杂性,将数据流形的单独口袋中的项目(牛奶罐和汽水瓶)归入同一类别(塑料)。

在对拓扑学和统计学习理论没有更深入的理解的情况下,我最好的解决方案是在模型中再抛出数千个例子,或者探索一些半监督和无监督的技术。幸运的是,我们的机器人将能够在工作中学习;通过在学生会大楼收集现实世界中垃圾和可回收物品的图像,我们将能够继续重复数据引擎,随着时间的推移训练和重新部署更具弹性的模型。

在那之前,我们有很多图像要收集。

原创文章,作者:fendouai,如若转载,请注明出处:https://panchuang.net/2021/08/08/%e6%95%b0%e6%8d%ae%e5%bc%95%e6%93%8e%e7%9a%84%e6%ad%bb%e6%b4%bb%ef%bc%9avol-%e7%ac%ac%e4%ba%8c%e9%83%a8%e5%88%86%ef%bc%9a/


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK