中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

你的食物變質沒?用AI算法來檢測一下吧

2018-09-27    來源:raincent

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用

最近一條幼兒園采用過期食物的新聞引起了社會的強烈關注,對于食品安全而言,國家一直是嚴格要求的,尤其是對于嬰幼兒食品安全的標準,部分已經超越了國際上的標準。但可能是由于無法嚴格地執(zhí)行到每一個地方且檢測周期較長,造成這一現象的出現,著實有些令人憤怒。程序員,用代碼改變世界的一群人,今天向大家介紹用AI算法來檢測食物是否過期,希望能夠在以后普及應用到食物安全的初步檢測之中,下面以披薩為例。

 

 

在俄羅斯最大的披薩連鎖店“Dodo Pizza”的最新Dbrain用例中,首席數據科學家Arthur Kuzin解釋了開發(fā)的AI算法如何通過短信控制披薩質量,將披薩面團打分1到10分。下面詳細解釋如何教AI算法來評估披薩質量!

本文重點關注以下內容:i)僅從少數標記樣本中獲取完整數據集的標記; ii)將方框拉伸到對象的分割掩模(將方框的方形掩模應用于任何形狀)。

想法

Dodo pizza有許多活躍的客戶,在完成訂單后,他們同意分享他們對披薩質量的看法。為了簡化反饋環(huán)節(jié)及其處理過程,Dbrain開發(fā)了一個AI算法驅動的應用程序來檢查披薩質量。此應用程序類似于聊天機器人,客戶上傳照片后可以獲得得分為1到10的等級評分。

 

 

問題陳述

當程序員收到開發(fā)請求時,就著手開發(fā)一種可以客觀地確定面團質量的算法。問題在于確定披薩烘焙過程是何時停止的,披薩外皮上的白色氣泡與產品的變質相關。

數據挖掘

該數據集收集了披薩烘焙的照片,還包括了一些不相關的圖像。如果配方不正確,披薩外皮上就會出現白色氣泡。此外,專家還對面團質量進行了二元標記。因此,得到數據集之后,算法的開發(fā)就只是時間問題了。

這些數據集的照片是在不同的手機上、在不同的光線條件下以及從不同的角度拍攝得到的。整個數據集有17k張的披薩標本圖像,而整個數據集的圖片總數為60k張。

由于該任務需求非常簡單明了,因此用不同的方法來處理數據是一個很好的操練場。那么,以下就是我們解決任務所需要的:

1.選擇能夠看到披薩外殼的照片;

2.區(qū)分所選照片中的披薩外皮與背景區(qū)域;

3.在選定區(qū)域訓練神經網絡。

數據過濾

此外,我自己標記了一小部分照片,而不是向其他人解釋我真正需要的東西,因為,如果你想要做得好,自己就需要對數據進行處理,以下就是我所做的:

1.標記了50張有披薩外皮圖像,標記了50張沒有披薩外皮圖像:

 

 

2.使用resnet-152網絡在imagenet11k上預訓練權重等參數,在全連接層后提取特征;

 

 

3.將兩個類別的特征的平均值作為基準點;

4.計算從該基準點與剩余的60k圖片的所有特征之間的距離;

5.確定前300個與正類別相關的樣本,后500個與負類別相關的樣本;

 

 

6.基于這些樣本的特征訓練LightGBM;

7.使用此模型在整個數據集上預測出標簽;

 

 

這與我在kaggle比賽中用作基線的方法大致相同。

前傳

大約一年前,我和Evgeny Nizhibitsky一起參加了“海獅” kaggle比賽。任務是從無人機拍攝的圖像上統計海豹的個數。標記只是給出了尸體的坐標,但在某些時候, Vladimir Iglovikov用方框標記了它們,并在社區(qū)慷慨地進行了分享。

我決定通過分割來解決這個任務,在第一階段只將海豹方框作為目標。經過幾次訓練迭代后,很容易找到一些硬樣品,但是效果不好。

 

 

對于此示例,可以選擇沒有海豹的大區(qū)域,手動將蒙版設置為零,還可以添加到訓練集。因此,Evgeny和我訓練了一個模型,該模型已經學會了分割大型海豹鰭。

 

 

披薩外皮檢測和提取

再次回到主題披薩,為了識別所選和過濾后的圖像上的外殼,最佳選在標簽上做文章。通常,一些貼標機工作對同一樣本的工作方式是不同的,但當時我們已經對這種情況應用了一致性算法并將其用于方框中。這就是為什么我只是做了幾個例子就把它交給了貼標機。最后,獲得了500個樣本,這些樣本特別突出了披薩外皮區(qū)域。

為了識別所選過濾照片上的外殼,我為貼標機做了幾個例子。

第一次迭代模型訓練的結果仍然是錯誤的,預測的可信度定義如下:

1 ——(灰色區(qū)域的面積)/(掩膜的面積)

 

 

接下來,為了完成獲得接近掩模方框的下一次迭代,在小的樣本集上用TTA預測掩模。這在某種程度上可以被認為是WAAAAGH式的知識蒸餾,但更為正確地將其稱之為偽標簽。

 

 

然后,我人為地確定某個閾值,用于形成新訓練集的置信度,還可以選擇出標記出集成失敗的最復雜樣本。我認為這將是有用的,并在自己休息時標記了20張圖片。

 

 

最終模型訓練

最后——模型的訓練。為了準備樣品,我用掩膜提取了披薩外皮區(qū)域。此外,我通過擴大掩膜并將其應用于圖片以去除背景來略微充氣掩膜,因為它不包含有關面團質量的任何信息。然后我從Imagenet中調整了幾個模型。我總共收集了大約14k張合適的樣本,此外,沒有訓練整個神經網絡,而只訓練最后一組全連接層層以防止過擬合。

 

 

最終發(fā)現模型為Inception-Resnet-v2時效果最好,其ROC-AUC達到0.700。如果沒有進行處理并在沒有掩膜的原始圖像上訓練模型的話,那么得到的ROC-AUC將為0.58左右。

驗證

在開發(fā)解決方案時,DODO披薩回傳了下一批數據,并且使用這些數據測試了整個模型,結果ROC-AUC達到了0.83。

上述結果表明,我們仍然無法完全保證在沒有錯誤的情況下管理披薩的質量?紤]到錯誤出現的原因,我再一次訓練了模型并取得了積極的成果。我們現在看一下錯誤:

 

 

從上圖可以看出,它們與披薩外皮標簽的錯誤有關,因為有些標記為正常的披薩有明顯的變質跡象。

 

 

這里的誤差是由于第一個模型未能選擇正確的樣本,這導致難以確定正常披薩的關鍵特征。解決這個問題后,模型的性能會有所提升。

結論

我的同事有時會取笑我?guī)缀跛械姆指钊蝿斩际峭ㄟ^使用Unet完成,但我仍然希望他們會喜歡它,因為Unet網絡是一種相當強大和方便的方法,它可以使得模型誤差可視化,且表現優(yōu)異,可以節(jié)省處理數據集的時間。此外,整個模型看起來非常簡單,應用十分方便。

以上是整個算法流程及實驗記錄,現在是時候吃一塊比薩餅放松一下了,干杯!

文章原標題《Your Pizza is Good: How to Teach AI to Evaluate Food Quality》,譯者:海棠

標簽: 安全 代碼 網絡

版權申明:本站文章部分自網絡,如有侵權,請聯系:west999com@outlook.com
特別注意:本站所有轉載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權歸原作者所有,如需使用,請與原作者聯系。

上一篇:野蠻數據時代,企業(yè)和從業(yè)者如何應對變革焦慮?

下一篇:從算力到半導體供應鏈,硬件如何決定機器學習的研究趨勢