您好,登錄后才能下訂單哦!
本篇內容介紹了“怎么使用Python輕松完成垃圾分類”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
思路
這問題的解決思路或許不止一條。這里只是拋磚引玉一下,提供一些淺顯的見解。
第一種方案,可以把垃圾的信息制成表格化數據,然后用傳統的機器學習方法。
第二種方案,把所有的垃圾分類信息做成知識圖譜,每一次的查詢就好像是在翻字典一樣查閱信息。
第三種方案,可以借助現在的深度學習方法,來對垃圾進行識別和分類。每次我們給一張垃圾的圖片,讓模型識別出這是屬于哪一種類別的:干垃圾,濕垃圾,有害垃圾還是可回收垃圾。
圖像分類
圖像分類是深度學習的一個經典應用。它的輸入是一張圖片, 然后經過一些處理,進入一個深度學習的模型,該模型會返回這個圖片里垃圾的類別。這里我們考慮四個類別:干垃圾,濕垃圾,有害垃圾還是可回收垃圾。
我們對圖片里的物品進行分類,這是圖像處理和識別的領域。人工智能里提出了使用卷積神經網絡(Convolutional Neural Network, CNN)來解決這一類問題。
我會用keras包和Tensorflow后端來建立模型。由于訓練集的樣本暫時比較缺乏,所以這里只能先給一套思路和代碼。訓練模型的工作之前還得進行一波數據收集。
我們就先來看看代碼大致長什么樣吧
先導入一些必要的包。
再做一下準備工作。
在上面,我們初始化了一些變量,batch size是128;num_classes = 4,因為需要分類的數量是4,有干垃圾,濕垃圾,有害垃圾和可回收垃圾這四個種類。epochs 是我們要訓練的次數。接下來,img_rows, img_cols = 28, 28 我們給了圖片的緯度大小。
在 .reshape(60000,28,28,1)中 , 60000 是圖片的數量(可變), 28是圖片的大小(可調),并且1是channel的意思,channel = 1 是指黑白照片。.reshape(10000,28,28,1)也是同理,只是圖片數量是10000。
到了最后兩行,我們是把我們目標變量的值轉化成一個二分類, 是用一個向量(矩陣)來表示。比如 [1,0,0,0] 是指干垃圾,[0,1,0,0]是指濕垃圾等等。
接下來是建模的部分。
我們加了卷積層和池化層進入模型。激活函數是 relu,relu函數幾乎被廣泛地使用在了卷積神經網絡和深度學習。我們在層與層之間也加了dropout來減少過擬合。Dense layer是用來做類別預測的。
建完模型后,我們要進行模型的驗證,保證準確性在線。
“怎么使用Python輕松完成垃圾分類”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。