最近使用很多軟件的時候會提示可以選擇開啟青少年模式诊赊,這些大廠在保護青少年有所行動是好事,因為現(xiàn)在很多小朋友都開始玩手機淑翼。我就想起來能不能有一個算法去識別圖片中是小孩或者是大人姿骏,這對計算機視覺來說不是一個復雜的問題,這是一個典型的分類問題抽莱。
在上一篇文章中圖像分類實踐展示了使用docker安裝一個cpu的模型訓練環(huán)境,今天我們在windows上安裝一個GPU的版本骄恶。
萬事開頭難
需要安裝
- anaconda3
python的科學計算環(huán)境 - CUDA
GPU程序包 - cudnn
神經(jīng)網(wǎng)絡的包食铐,需要找到官網(wǎng)右鍵查看下載鏈接,最好用迅雷下載 - pytorch
最流行的AI(人工智能)工具
配置清華的源
conda install pytorch torchvision cudatoolkit=10.2 -c pytorch - fastai
基于上面的工具開發(fā)的快速開發(fā)深度學習算法程序的工具
conda install -c fastai fastai
準備數(shù)據(jù)
隨便在網(wǎng)上下載了幾十張照片僧鲁,分別是百度圖片和bing圖片搜索的
設置了訓練數(shù)據(jù)的目錄虐呻,修復中文label顯示的問題象泵。
標簽函數(shù)需要自定義
接下來基于上面的數(shù)據(jù)進行模型訓練,訓練的過程中打印錯誤率斟叼。這里基于resnet34算法偶惠,屬于遷移學習,還使用的最新的訓練方法朗涩。并沒有進行調(diào)優(yōu)洲鸠。
測試數(shù)據(jù)
我們使用新測試的數(shù)據(jù)以便區(qū)別訓練數(shù)據(jù)和驗證數(shù)據(jù),使用模型沒有見過的圖片馋缅。
看看實際的效果
看起來還不錯的樣子。
使用的電腦是普通的筆記本
安裝機器學習的環(huán)境還比較快绢淀,花費了一兩個小時(希望只安裝一次)萤悴。GPU的內(nèi)存比較小,需要調(diào)小每次訓練batch的size皆的,如果內(nèi)存溢出需要重新啟動kernel覆履。
跑fastai的最簡單示例竟然需要七分鐘,看來還是要找免費的GPU费薄。