谷歌造出AI調香師:看一眼分子結構,就知道它聞起來什麼味兒

 2019-10-25 17:48:08.0

圖像、語言、聲音、遊戲,一直是AI界最喜歡「調戲」的幾個目標。

不過現在,谷歌把手伸向了一個不同的領域——氣味。

把一個物質的分子結構,經過兩輪神經網絡的處理,就能把知道這種東西聞起來是玫瑰的芬芳,還是烤肉的香氣。

這就是一個AI調香師嘛!

而且,還能順便把氣味「量化」,讓計算機理解氣味。

這不禁讓人覺得,或許有一天我們可以通過計算機和通信系統傳輸氣味了呢,看美食紀錄片的時候也能聞到節目裏的菜品了。

萬物皆可向量

向量,一直是機器學習er的好盆友,不止在研究語言的時候有詞向量,研究分子的時候,也可以把它用向量表示。

我們知道,分子是很多不同原子按照一定規則連接在一起的,每個原子就是一個節點,因此可以把每個節點用一個向量表示,然後每個節點上的原子再把向量傳遞到它的鄰居原子那裏去。


每個向量裏,可以把它是什麼元素、氫鍵的數量等各種中學化學課本里的基本特性帶上。

而每個原子和什麼樣的原子連接,構成了分子的模樣,也決定了它是什麼物質。因此,需要把每個節點上的原子和它「鄰居」們的信息打包在一起,用神經網絡轉換成關於這個節點的新信息。



這樣,就可以用計算機的「思維方式」表述一種化學物質了,這種方法可以用圖(graph)表示。

然後,把圖扔進一個圖神經網絡(GNN)裏,就可以預測出這種分子聞起來是什麼味兒了。

看這張動圖,就爲我們展示了這個過程的全貌:



整個過程需要兩隻神經網絡,完成這樣的轉化:



畫的不好,大家感受下

香味數據集

思路已經有了,那麼爲了訓練神經網絡,需要一些數據,能把一種分子和它是什麼味兒的對應起來。

這下,香水行業的人類專家們發揮了自己的作用。

研究者們找到了兩個經過專業調香師標註的數據集,有3784個分子的GoodScents香水材料數據集和有3561個分子的Leffingwell PMP 2001數據集,去重之後剩下了5030個分子,組成了QSOR的數據集。

每種分子都配有一到十幾個文字描述的標籤,比如菠蘿味、奶酪味、麪包味、堅果味,或者……沒味。



有X個標籤的分子 & 每個標籤下有多少種分子

這樣複雜的描述聽起來很像高級紅酒、咖啡、或巧克力對它們味道的描述,寫着有柑橘味、莓果味、堅果味,可是你喝的時候卻感覺差別不大,只能得出一個結論:真香。

畢竟,普通人也不知道標籤裏的Sweet Green是什麼味道啊!

不過,這個數據集也有個bug:

因爲它是香水行業的數據集,所以只有香味,沒有臭味……這也可能是個feature?

最後,不用的方法在這個QSOR數據集上的表現是這樣的,GNN得到了最高的分數:



如何量化氣味

不過,如果只是能用香菜味、烤肉味這樣的詞彙來形容氣味,勢必無法完成更深入的研究,因此,需要用計算機的方法系統的將各種分子和氣味表示出來。

我們知道,圖像在計算機上是一個一個的像素格子,然後把每個格子的顏色表示爲RGB值,只要知道了RGB值,就能知道它是紅的還是綠的,深色還是淺色。




音頻也有自己的波形圖。



那麼,氣味該怎麼表示?

和NLP世界的詞嵌入一樣,研究者們用了一種叫「氣味嵌入(odor embedding)」的方法:






在用氣味嵌入的方法後,看起來和PS裏的RGB圖非常類似,不同的區域意味着不同的味道。

這樣,計算機就可以用自己的方式理解氣味了,氣味也和圖像、文字、聲音一樣,實現了電子化。

傳送門

論文:

Machine Learning for Scent: Learning Generalizable Perceptual Representations of Small Molecules

arxiv.org/abs/1910.1068

谷歌博客:

ai.googleblog.com/2019/

文章來源:量子位