粒粒分明:發明家利用AI分類200萬顆樂高積木

作者 Jamie Beckett

Jacques Mattheij 從來沒想過他會買兩噸的樂高積木。
但是這是他某天在 ebay,不小心手滑購買大量二手積木之後必須面對的問題。他原本計畫要轉賣這些積木來賺取利潤,但是他沒想到競標到的積木數量如此龐大,隔天一早,他就收到超過兩百萬顆的積木。

現在,他必須先幫這些積木分類,才能賣得好價錢,但是,用人力手工進行分類不會是個好主意。Mattheij在自己的部落格上說道:「這些積木大概要花好幾輩子才整理得完。」

因此,Mattheij這位住在阿姆斯特丹郊區的發明家,決定要把這項勞累的工作轉交給電腦。他推論既然GPU加速的深度學習這麼有效,可以在自駕車的軌道上,展現辨識物體的能力,分辨出照片及影片中行人、自行車以及其他各種物體,那何不將AI技術用在這些樂高積木上呢?

拼湊出的大怪獸

Mattheij就像個孩子那般熱愛樂高積木,幾年前他也帶自己的孩子去丹麥的樂高樂園。在搭乘遊樂設施,餐廳用餐以及逛街的時候,他發現許多狂熱的粉絲購買整籮筐的樂高積木。

當時,他就決定要從事樂高積木轉售的新興行業,並且想要另闢蹊徑,利用自動化設備來進行繁瑣的分類工作。完整的樂高組和稀有零件,比零散的樂高來得有價值,因此如果他能成功,這將是一門穩賺不賠的生意。

為了要打造樂高分類機,Mattheij首先(當然是..)利用樂高打造了模型。然後花了好幾個月進行修正,拼湊出一個堪用的分類原型機,他稱呼為「一團瞎拼胡湊的硬體所組合成的獨立式機器科學怪人」。

這台「科學怪人」裡面有家用跑步機、收銀機的輸送帶、兩台冷凍櫃的馬達,還有一個空氣罐和照相機,然後利用了非常大量的快乾膠來黏著。以下影片可以看到這台「科學怪人原型機」放慢動作的分類工作情形。

樂高分類機

訓練這台樂高自動分類機可不是件容易的事情。一開始的時候,Mattheij要分類超過38,000種造型,超過100種的顏色及色澤,他不斷地重新改寫軟體,但是多方嘗試仍舊無法處理如此龐大的工作量。

「歷經了六個月的程式編輯,我實在受夠了去區分這些細微的不同,重複地測試及篩選樂高配件。」Mattheij說著,於是他使用Keras與TensorFlow深度學習框架訓練一個神經網路,並在NVIDIA GeForce GTX 1080 Ti GPU運行GPU加速的cuDNN來進行這項工作,這個方式可以分辨樂高成千上萬的造型和顏色。

「新方法只運作了幾個小時,就得到比之前更好的成效,這幾個月來的痛苦都恍如隔世。」Mattheij說道。

現在,Mattheij打造的樂高分類機,每小時可以分類4,000件樂高積木,正確率達到97%,但是Mattheij認為速度還會更快,正確率也不會受影響。截至目前為止,他已經分類了超過130,000件樂高積木。

「這台分類機效率比人工高得多,而且不需要休息,可以一直工作。」Mattheij說。

欲了解更多詳情,請參閱Mattheij的部落格,或是閱讀他刊登在IEEE Spectrum的文章。

影片說明:樂高分類機的工作情況(慢動作播放)。