當前位置:
首頁 > 知識 > 機器學習模型,能分清川菜和湘菜嗎?

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

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







如果你在加利福尼亞州北部,那麼你將品嘗到各種蔬菜,有深紫色的羽衣甘藍,還有明亮的粉紅色和黃色的甜菜。在韓國,誘人的紅色泡菜將會迎接你,而大海的氣味會吸引你注意附近蠕動的魷魚。印度的市場也許是最豐富多彩的,明亮的色調和幾十種香料的香氣:薑黃,八角茴香……




作為一名合格的「吃貨」,看到「米、海苔、三文魚」就想到日本壽司,看到「雞蛋、火腿、麵包、沙拉醬」就想到三明治……通過食材預測菜系,用 python 就可以做到!







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





1.

 

載入並分析數據


2.

 

建立模型


3.

 

模型預測




載入並分析數據


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







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







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




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




日本比較有特色的清酒和醬油也都榜上有名。







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




建立模型


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



1、單詞清洗


2、特徵提取(使用TF_IDF)


3、數據分割與重排




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




4、訓練模型


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




模型預測


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




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




至於能不能分清川菜和湘菜……自己來試一試吧!

這個項目其實來自

優達學城 Udacity 

的「機器學習工程師」納米學位。


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




優達學城 Udacity 由 

Google 無人車之父

 Sebastion Thrun 創立,與 Google、Facebook、亞馬遜等名企聯合打造了一系列前沿技術課程,旨在讓每個人都能用遠低於線下教育的成本學習矽谷前沿技術,最終成為有能力通過技術改變世界的搶手人才。2017 年 8 月,

騰訊宣布將 Udacity 納米學位項目作為內部員工學習內容。




與國內其他平台相比,Udacity 的一大優勢是來自矽谷的獨家特色

實戰項目

。僅靠看視頻或者啃厚厚的教材很難零基礎入門人工智慧領域。學習者也很難在動輒幾十 G+ 的免費視頻教程中,高效快速地篩選出真正有用的東西。優達學城(Udacity)的項目難度深入淺出,能夠讓學習者快速將所學運用到實際生活,也能夠直觀的看到學習成果。下面的部分項目成果示例來自

「機器學習工程師」和「深度學習」納米學位

的正式課程:




項目示例 1 

訓練機器人走迷宮


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




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



項目示例 2 

貓狗圖像識別


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




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




實戰項目示例 3 

訓練四軸飛行器學會飛行


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




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




實戰項目示例 3 

風格遷移


深度學習模型可以用來完成「風格遷移」項目,你可以按照著名的畫作重新創建風格一樣的圖片!神經網路會學習這些畫作採用的技巧,並學會如何自己應用這些繪畫技巧。




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




除此之外,你將跟隨來自矽谷的行業專家系統學習,深入掌握人工智慧領域知識。實戰項目經驗均可寫入簡歷,為求職面試加分!




Udacity 還特別開啟

【7 天超值試學班】

,為保證輔導質量,試學名額有限,今天開始搶完為止。本期試學班能夠提前體驗的項目有:




猜猜這道菜來自哪裡」 

使用分類模型通過原料的不同組合預測所屬的世界菜系。


來自「機器學習工程師」7天試學班




「你拍我猜」 

利用神經網路來分類照片中是狗狗,是貓貓,還是人。


來自「深度學習」7天試學班




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




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


長按識別二維碼


了解試學班




Udacity 【機器學習工程師】與【深度學習】納米學位試學班開放

限量體驗席位,報滿即止。

關注 Udacity 官方服務號,即可自動獲得完整課程大綱,以及限量試學入口,先搶先得。







點擊閱讀原文,添加學習規劃師,獲得「選課指南」一份,了解適合自己的課程

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 ImportNew 的精彩文章:

趣圖:有那麼難么?不很簡單嘛?

TAG:ImportNew |