機器學習模型,能分清川菜和湘菜嗎?

一個地區的文化和當地的特色食物總是分不開關係,可以說小到村莊,大到國家,每個地方都有自己的「味道」。

在不熟悉的國家/地區旅遊時,常遇到餐廳取一些奇怪的名字來吸引眼球,導致點菜的時候經常觸雷。那麼作為技術愛好者,是否可以使用機器學習模型,通過食材預測菜品的口味呢?

「喪茶」菜單(圖片來自網路)

其實實現起來並不難,只要用機器學習的方法搭建、訓練和測試模型,並通過評估矩陣來選擇最優模型,就能實現原材料與菜系的映射。為了實現預期的功能,我們需要進行以下三個步驟。

1.

 

載入並分析數據

2.

 

建立模型

3.

 

模型預測

1. 載入並分析數據

以義大利菜係為例,我們準備好以下格式的樣例數據。其中「id」代表不同的菜肴種類,「cuisine」則代表菜系名稱。

拿到數據後,首先對數據進行提取,其中配方節點如下。其中包含了食譜 id,菜肴類型和成分列表的訓練集。

之後將 features 與 target 分別賦值到 train_ingredients 和 train_targets。通過統計分析等操作,可以計算出使用最頻繁的前 10 種原料,並將原料名和出現次數賦值到 sum_ingredients 字典中。通過樣例數據,還能計算出義大利菜系中使用最頻繁的前 10 種原料,並將原料名和出現次數賦值到 italian_ingredients 字典中。

得到的結果可以通過 matplotlib 進行可視化。通過數據分析,可以得出許多有意思的信息,比如,巴西菜用的最多的食材有洋蔥、橄欖油、檸檬等。而在中國,檸檬顯然不是家常飯的常客。我們用的最多的食材有醬、芝麻油、玉米澱粉等。小編猜測,老乾媽一定對中國排名第一的食材有巨大貢獻!

日本比較有特色的清酒和醬油也都榜上有名。而在寒冷的俄羅斯,黃油則成為餐桌上必不可少的食材,成為戰鬥民族每天所需能量的重要來源。英國更不必多說,如果你熱愛黃油、奶油、土豆和牛奶,去英國就是了!

2. 建立模型

建立模型的過程可能稍微有點複雜,主要分以下四步進行:

1、單詞清洗

2、特徵提取(使用TF_IDF)

3、數據分割與重排

調用 train_test_split 函數將訓練集劃分為新的訓練集和驗證集。

4、訓練模型

在訓練模型的過程中,需要嘗試不同的參數,挑選出泛化力最好的模型。通過訓練模型,可以計算得出驗證集上的得分。得分越高,說明分類準確度(正確分類的菜肴百分比)越高。這樣,一個優秀的模型就大功告成啦!

3. 模型預測

在測試文件 test.json 中,配方的格式與 train.json 相同,只刪除了美食類型,因為它是我們要預測的目標變數。

總的來說,要實現通過食材預測菜系的過程並不複雜,但是如何完善代碼、優化模型,使分類體系和匹配程度更高,才是我們要完成的關鍵目標。如果不能做到數據的有效清洗和分類,就會出現很多法國菜被誤分為義大利菜這樣的情況。

至於能不能分清川菜和湘菜……可以自己來試一試!這個項目其實來自優達學城 Udacity 的「機器學習工程師」納米學位。

(該項目現提供超值限量試學班,詳情見文末)

優達學城 Udacity 由 

Google 無人車之父

 Sebastion Thrun 創立,與 Google、Facebook、亞馬遜等名企聯合打造了一系列前沿技術課程。2017 年 8 月,騰訊宣布將 Udacity 納米學位項目作為內部員工學習內容。

一分鐘了解什麼是「納米學位」

與國內其他平台相比,Udacity 的一大優勢是來自矽谷的獨家特色實戰項目。項目難度深入淺出,結合實際,學員能夠直觀看到學習成果。以下項目成果示例來自「機器學習工程師」和「深度學習」納米學位的正式課程:

項目示例 1 

訓練機器人走迷宮

通過實現 Q-learning 演算法解決走迷宮問題。同時你有機會將你的演算法應用在股市中,讓機器學習出高收益策略。

(來自「機器學習」納米學位)

項目示例 2 

貓狗圖像識別

使用深度學習方法識別圖片中是貓還是狗。

(來自「機器學習」納米學位畢業項目)

實戰項目示例 3 

訓練四軸飛行器學會飛行

設計一個深度強化學習系統,構建懲罰函數、強化學習模型、深度學習隱藏層幫助四軸飛行器了解每一個動作的優劣。你的四軸飛行器將從一系列動作狀態中,選擇最優的策略來平穩起飛和降落。

(來自「深度學習」納米學位項目)

實戰項目示例 3 

風格遷移

深度學習模型可以用來完成「風格遷移」項目。神經網路會學習這些畫作採用的技巧,並學會如何自己應用這些繪畫技巧。

(來自「深度學習」練習項目)

除此之外,你將跟隨來自矽谷的行業專家系統學習,深入掌握人工智慧領域知識。實戰項目經驗均可

寫入簡歷,為求職面試加分

Udacity 還特別開啟

【7 天超值試學班】

,為保證輔導質量,試學名額有限,今天開始搶完為止。本期試學班能夠提前體驗:機器學習工程師項目「猜猜這道菜來自哪裡」和深度學習項目「你拍我猜」

文末關注 Udacity 官方服務號,即可自動獲得兩門課程完整大綱,以及限量 ¥299 超值試學入口。

如果你也在尋求轉行機會,或渴望突破薪資天花板,抓住人工智慧人才紅利,但又不確定自己是否真的適合、能不能學完,建議加入 7 天試學,讓專業導師手把手帶你完成項目!

長按識別二維碼

了解試學班

掃碼關注 Udacity 官方服務號,獲得收到完整課程大綱、

以及限量試學入口、

選課測試等

,先搶先得。

 點擊閱讀原文,添加學習規劃師,獲得「選課測試」一份

推薦閱讀:

智慧學習環境下職業教育教學方式變革的策略研究
exl學習
第六章 學看技術圖表學習頻道
了解史上最強的超級學霸,你也可以學習有成就!
姜春華談《傷寒論》的學習

TAG:學習 | 機器學習 | 川菜 | 模型 | 湘菜 | 機器 |