本書以人工智能發(fā)展為時(shí)代背景,通過20個機(jī)器學(xué)習(xí)模型和算法案例,為讀者提供較為詳細(xì)的實(shí)戰(zhàn) 方案,以便進(jìn)行深度學(xué)習(xí)。 在編排方式上,全書側(cè)重對創(chuàng)新項(xiàng)目的過程進(jìn)行介紹,分別從整體設(shè)計(jì)、系統(tǒng)流程和實(shí)現(xiàn)模塊等角度 論述數(shù)據(jù)處理、模型訓(xùn)練和模型應(yīng)用等過程,并剖析模塊的功能、使用及程序代碼。為便于讀者高效學(xué)習(xí), 快速掌握人工智能程序開發(fā)方法,本書配套提供項(xiàng)目設(shè)計(jì)工程文檔、程序代碼、實(shí)現(xiàn)過程中出現(xiàn)的問題及 解決方法等資料,可供讀者舉一反三,二次開發(fā)。 本書語言簡潔,深入淺出,通俗易懂,不僅適合對Python編程有興趣的愛好者,而且可作為高等院校 相關(guān)專業(yè)的參考教材,還可作為從事智能應(yīng)用創(chuàng)新開發(fā)專業(yè)人員的技術(shù)參考書。
Python作為人工智能和大數(shù)據(jù)領(lǐng)域的主要開發(fā)語言,具有靈活性強(qiáng)、擴(kuò)展性好、應(yīng)用面廣、可移植、可擴(kuò)展、可嵌入等特點(diǎn),近年來發(fā)展迅速,熱度不減,相關(guān)人才需求量逐年攀升,已經(jīng)成為高等院校的專業(yè)課程。
為適應(yīng)當(dāng)前教學(xué)改革的要求,更好地踐行人工智能模型與算法的應(yīng)用,本書以實(shí)踐教學(xué)與創(chuàng)新能力培養(yǎng)為目標(biāo),采取了創(chuàng)新方式,從不同難度、不同類型、不同算法,融合了同類教材的優(yōu)點(diǎn),將實(shí)際智能應(yīng)用案例進(jìn)行總結(jié),希望起到拋磚引玉的作用。
本書的主要內(nèi)容和素材來自開源網(wǎng)站的人工智能經(jīng)典模型算法、信息工程專業(yè)創(chuàng)新課程內(nèi)容、作者所在學(xué)校近幾年承擔(dān)的科研項(xiàng)目成果及作者指導(dǎo)學(xué)生完成的創(chuàng)新項(xiàng)目。通過這些創(chuàng)新項(xiàng)目同學(xué)們不僅學(xué)到了知識,提高了能力,而且為本書提供了手素材和相關(guān)資料。
本書內(nèi)容由總述到分述、先理論后實(shí)踐,采用系統(tǒng)整體架構(gòu)、系統(tǒng)流程與代碼實(shí)現(xiàn)相結(jié)合,對于從事人工智能開發(fā)、機(jī)器學(xué)習(xí)和算法實(shí)現(xiàn)的專業(yè)技術(shù)人員可以作為技術(shù)參考書、提高其工程創(chuàng)新能力;也可以作為信息通信工程及相關(guān)專業(yè)本科生的參考書,為機(jī)器學(xué)習(xí)模型分析、算法設(shè)計(jì)和實(shí)現(xiàn)提供幫助。
本書的編寫得到了教育部電子信息類專業(yè)教學(xué)指導(dǎo)委員會、信息工程專業(yè)國家類特色專業(yè)建設(shè)項(xiàng)目、信息工程專業(yè)國家第二類特色專業(yè)建設(shè)項(xiàng)目、教育部CDIO工程教育模式研究與實(shí)踐項(xiàng)目、教育部本科教學(xué)工程項(xiàng)目、信息工程專業(yè)北京市特色專業(yè)建設(shè)、北京市教育教學(xué)改革項(xiàng)目以及北京郵電大學(xué)教育教學(xué)改革項(xiàng)目(2020JC03)的大力支持,在此表示感謝!
由于作者經(jīng)驗(yàn)與水平有限,書中疏漏之處在所難免,衷心地希望各位讀者多提寶貴意見及具體整改措施,以便作者進(jìn)一步修改和完善。
編者2021年7月
項(xiàng)目1電影推薦小程序
1.1總體設(shè)計(jì)
1.1.1系統(tǒng)整體結(jié)構(gòu)
1.1.2系統(tǒng)流程
1.2運(yùn)行環(huán)境
1.2.1Python環(huán)境
1.2.2TensorFlow環(huán)境
1.3模塊實(shí)現(xiàn)
1.3.1數(shù)據(jù)預(yù)處理
1.3.2模型設(shè)計(jì)
1.3.3模型訓(xùn)練及測試
1.3.4特征矩陣提取
1.3.5推薦電影
1.3.6客戶端
1.4系統(tǒng)測試
1.4.1訓(xùn)練準(zhǔn)確率
1.4.2運(yùn)行結(jié)果
項(xiàng)目2服裝分類助手
2.1總體設(shè)計(jì)
2.1.1系統(tǒng)整體結(jié)構(gòu)
2.1.2系統(tǒng)流程
2.2運(yùn)行環(huán)境
2.2.1Python環(huán)境
2.2.2PyTorch環(huán)境
2.2.3Django環(huán)境
2.3模塊實(shí)現(xiàn)
2.3.1數(shù)據(jù)預(yù)處理
2.3.2模型創(chuàng)建與編譯
2.3.3模型訓(xùn)練及保存
2.3.4模型生成
2.4系統(tǒng)測試
2.4.1訓(xùn)練準(zhǔn)確率
2.4.2測試效果
2.4.3模型應(yīng)用
項(xiàng)目3檢索式模型聊天機(jī)器人
3.1總體設(shè)計(jì)
3.1.1系統(tǒng)整體結(jié)構(gòu)
3.1.2系統(tǒng)流程
3.2運(yùn)行環(huán)境
3.2.1Python環(huán)境
3.2.2TensorFlow環(huán)境
3.3模塊實(shí)現(xiàn)
3.3.1數(shù)據(jù)預(yù)處理
3.3.2模型創(chuàng)建與編譯
3.3.3模型訓(xùn)練及保存
3.3.4模型生成
3.4系統(tǒng)測試
3.4.1訓(xùn)練準(zhǔn)確率
3.4.2測試效果
3.4.3模型應(yīng)用
項(xiàng)目4方言種類識別
4.1總體設(shè)計(jì)
4.1.1系統(tǒng)整體結(jié)構(gòu)
4.1.2系統(tǒng)流程
4.2運(yùn)行環(huán)境
4.2.1Python環(huán)境
4.2.2TensorFlow環(huán)境
4.2.3Jupyter Notebook環(huán)境
4.2.4PyCharm環(huán)境
4.3模塊實(shí)現(xiàn)
4.3.1數(shù)據(jù)預(yù)處理
4.3.2模型構(gòu)建
4.3.3模型訓(xùn)練及保存
4.3.4模型生成
4.4系統(tǒng)測試
4.4.1訓(xùn)練準(zhǔn)確率
4.4.2測試效果
項(xiàng)目5行人檢測與追蹤計(jì)數(shù)
5.1總體設(shè)計(jì)
5.1.1系統(tǒng)整體結(jié)構(gòu)
5.1.2系統(tǒng)流程
5.2運(yùn)行環(huán)境
5.2.1Python環(huán)境
5.2.2TensorFlow環(huán)境
5.2.3安裝所需的軟件包
5.2.4硬件環(huán)境
5.3模塊實(shí)現(xiàn)
5.3.1準(zhǔn)備數(shù)據(jù)
5.3.2數(shù)據(jù)預(yù)處理
5.3.3目標(biāo)檢測
5.3.4目標(biāo)追蹤
5.3.5主函數(shù)
5.4系統(tǒng)測試
項(xiàng)目6智能果實(shí)采摘指導(dǎo)系統(tǒng)
6.1總體設(shè)計(jì)
6.1.1系統(tǒng)整體結(jié)構(gòu)
6.1.2系統(tǒng)流程
6.2運(yùn)行環(huán)境
6.2.1Python環(huán)境
6.2.2TensorFlow環(huán)境
6.2.3Jupyter Notebook環(huán)境
6.2.4PyCharm環(huán)境
6.2.5微信開發(fā)者工具
6.2.6OneNET云平臺
6.3模塊實(shí)現(xiàn)
6.3.1數(shù)據(jù)預(yù)處理
6.3.2創(chuàng)建模型與編譯
6.3.3模型訓(xùn)練及保存
6.3.4上傳結(jié)果
6.3.5小程序開發(fā)
6.4系統(tǒng)測試
6.4.1訓(xùn)練準(zhǔn)確率
6.4.2測試效果
6.4.3外部訪問效果
項(xiàng)目7基于CNN的貓種類識別
7.1總體設(shè)計(jì)
7.1.1系統(tǒng)整體結(jié)構(gòu)
7.1.2系統(tǒng)流程
7.2運(yùn)行環(huán)境
7.2.1計(jì)算型云服務(wù)器
7.2.2Python環(huán)境
7.2.3TensorFlow環(huán)境
7.2.4MySQL環(huán)境
7.2.5Django環(huán)境
7.3模塊實(shí)現(xiàn)
7.3.1數(shù)據(jù)預(yù)處理
7.3.2數(shù)據(jù)增強(qiáng)
7.3.3普通CNN模型
7.3.4殘差網(wǎng)絡(luò)模型
7.3.5模型生成
7.4系統(tǒng)測試
7.4.1訓(xùn)練準(zhǔn)確率
7.4.2測試效果
7.4.3模型應(yīng)用
項(xiàng)目8基于VGG16的駕駛行為分析
8.1總體設(shè)計(jì)
8.1.1系統(tǒng)整體結(jié)構(gòu)
8.1.2系統(tǒng)流程
8.2運(yùn)行環(huán)境
8.2.1Python環(huán)境
8.2.2TensorFlow環(huán)境
8.2.3Android環(huán)境
8.3模塊實(shí)現(xiàn)
8.3.1數(shù)據(jù)預(yù)處理
8.3.2模型構(gòu)建
8.3.3模型訓(xùn)練及保存
8.3.4模型生成
8.4系統(tǒng)測試
8.4.1訓(xùn)練準(zhǔn)確率
8.4.2測試效果
8.4.3模型應(yīng)用
項(xiàng)目9基于Mask RCNN的娛樂視頻生成器
9.1總體設(shè)計(jì)
9.1.1系統(tǒng)整體結(jié)構(gòu)
9.1.2系統(tǒng)流程
9.2運(yùn)行環(huán)境
9.2.1Python環(huán)境
9.2.2PyTorch環(huán)境
9.2.3Detectron2平臺
9.2.4MoviePy的安裝
9.2.5PyQt的安裝
9.3模塊實(shí)現(xiàn)
9.3.1數(shù)據(jù)處理
9.3.2視頻處理
9.3.3PyQt界面
9.4系統(tǒng)測試
9.4.1訓(xùn)練準(zhǔn)確率
9.4.2運(yùn)行效率
9.4.3應(yīng)用使用說明
項(xiàng)目10基于CycleGAN的圖像轉(zhuǎn)換
10.1總體設(shè)計(jì)
10.1.1系統(tǒng)整體結(jié)構(gòu)
10.1.2系統(tǒng)流程
10.2運(yùn)行環(huán)境
10.2.1Python環(huán)境
10.2.2TensorFlow GPU環(huán)境
10.2.3Android環(huán)境
10.3模塊實(shí)現(xiàn)
10.3.1數(shù)據(jù)集預(yù)處理
10.3.2模型構(gòu)建
10.3.3模塊分析
10.3.4模型訓(xùn)練及保存
10.3.5模型生成
10.4系統(tǒng)測試
項(xiàng)目11交通警察車輛監(jiān)控系統(tǒng)
11.1總體設(shè)計(jì)
11.1.1系統(tǒng)整體結(jié)構(gòu)
11.1.2系統(tǒng)流程
11.2運(yùn)行環(huán)境
11.2.1Python環(huán)境
11.2.2TensorFlow環(huán)境
11.2.3PyCharm IDE配置
11.2.4Protoc配置
11.3模塊實(shí)現(xiàn)
11.3.1API下載及載入
11.3.2識別訓(xùn)練
11.3.3導(dǎo)入模型與編譯
11.3.4模型生成
11.4系統(tǒng)測試
項(xiàng)目12驗(yàn)證碼的生成與識別
12.1總體設(shè)計(jì)
12.1.1系統(tǒng)整體結(jié)構(gòu)
12.1.2系統(tǒng)流程
12.2運(yùn)行環(huán)境
12.2.1Python環(huán)境
12.2.2TensorFlow環(huán)境
12.2.3VsCode環(huán)境
12.3模塊實(shí)現(xiàn)
12.3.1數(shù)據(jù)預(yù)處理
12.3.2模型搭建
12.3.3模型訓(xùn)練及保存
12.3.4模型測試
12.4系統(tǒng)測試
12.4.1訓(xùn)練準(zhǔn)確率
12.4.2測試效果
項(xiàng)目13基于CNN的交通標(biāo)志識別
13.1總體設(shè)計(jì)
13.1.1系統(tǒng)整體結(jié)構(gòu)
13.1.2系統(tǒng)流程
13.2運(yùn)行環(huán)境
13.3模塊實(shí)現(xiàn)
13.3.1數(shù)據(jù)預(yù)處理
13.3.2模型構(gòu)建
13.3.3模型訓(xùn)練及保存
13.4系統(tǒng)測試
13.4.1訓(xùn)練準(zhǔn)確率
13.4.2測試效果
項(xiàng)目14圖像風(fēng)格轉(zhuǎn)移
14.1總體設(shè)計(jì)
14.1.1系統(tǒng)整體結(jié)構(gòu)
14.1.2系統(tǒng)流程
14.2運(yùn)行環(huán)境
14.2.1Python環(huán)境
14.2.2TensorFlow環(huán)境
14.2.3庫安裝
14.2.4VGG19網(wǎng)絡(luò)下載
14.3模塊實(shí)現(xiàn)
14.3.1實(shí)時(shí)風(fēng)格轉(zhuǎn)移
14.3.2非實(shí)時(shí)風(fēng)格轉(zhuǎn)移
14.3.3交互界面設(shè)計(jì)
14.4系統(tǒng)測試
14.4.1非實(shí)時(shí)風(fēng)格轉(zhuǎn)移測試
14.4.2實(shí)時(shí)風(fēng)格轉(zhuǎn)移測試
項(xiàng)目15口罩識別系統(tǒng)
15.1總體設(shè)計(jì)
15.1.1系統(tǒng)整體結(jié)構(gòu)
15.1.2系統(tǒng)流程
15.2運(yùn)行環(huán)境
15.3模塊實(shí)現(xiàn)
15.3.1數(shù)據(jù)預(yù)處理
15.3.2模型訓(xùn)練及保存
15.3.3頁面顯示和視頻流輸入
15.3.4模型生成
15.4系統(tǒng)測試
15.4.1訓(xùn)練準(zhǔn)確率
15.4.2測試效果
項(xiàng)目16垃圾分類微信小程序
16.1總體設(shè)計(jì)
16.1.1系統(tǒng)整體結(jié)構(gòu)
16.1.2系統(tǒng)流程
16.2運(yùn)行環(huán)境
16.2.1Python環(huán)境
16.2.2TensorFlow環(huán)境
16.2.3微信小程序及后臺服務(wù)器環(huán)境
16.3模塊實(shí)現(xiàn)
16.3.1數(shù)據(jù)預(yù)處理
16.3.2創(chuàng)建模型與編譯
16.3.3模型訓(xùn)練及保存
16.3.4模型生成
16.4系統(tǒng)測試
16.4.1訓(xùn)練準(zhǔn)確率
16.4.2測試效果
16.4.3模型應(yīng)用
項(xiàng)目17基于OpenCV的人臉識別程序
17.1總體設(shè)計(jì)
17.1.1系統(tǒng)整體結(jié)構(gòu)
17.1.2系統(tǒng)流程
17.2運(yùn)行環(huán)境
17.2.1Python環(huán)境
17.2.2TensorFlow環(huán)境
17.3模塊實(shí)現(xiàn)
17.3.1數(shù)據(jù)預(yù)處理
17.3.2模型構(gòu)建
17.3.3模型訓(xùn)練
17.4系統(tǒng)測試
項(xiàng)目18基于CGAN的線稿自動上色
18.1總體設(shè)計(jì)
18.1.1系統(tǒng)整體結(jié)構(gòu)
18.1.2系統(tǒng)流程
18.2運(yùn)行環(huán)境
18.2.1Python環(huán)境
18.2.2TensorFlow環(huán)境
18.3模塊實(shí)現(xiàn)
18.3.1數(shù)據(jù)預(yù)處理
18.3.2模型構(gòu)建
18.3.3模型訓(xùn)練及保存
18.3.4模型應(yīng)用
18.4系統(tǒng)測試
18.4.1訓(xùn)練效果
18.4.2測試效果
18.4.3模型使用說明
項(xiàng)目19基于ACGAN的動漫頭像生成
19.1總體設(shè)計(jì)
19.1.1系統(tǒng)整體結(jié)構(gòu)
19.1.2系統(tǒng)流程
19.2運(yùn)行環(huán)境
19.2.1Python環(huán)境
19.2.2TensorFlow環(huán)境
19.2.3OpenCV環(huán)境
19.2.4Illustration2Vec
19.3模塊實(shí)現(xiàn)
19.3.1數(shù)據(jù)獲取
19.3.2數(shù)據(jù)處理
19.3.3模型構(gòu)建
19.3.4模型訓(xùn)練及保存
19.4系統(tǒng)測試
19.4.1模型導(dǎo)入及調(diào)用
19.4.2生成指定標(biāo)簽
項(xiàng)目20手勢語言識別
20.1總體設(shè)計(jì)
20.1.1系統(tǒng)整體結(jié)構(gòu)
20.1.2系統(tǒng)流程
20.2運(yùn)行環(huán)境
20.2.1Python環(huán)境
20.2.2TensorFlow環(huán)境
20.2.3OpenCVPython環(huán)境
20.3模塊實(shí)現(xiàn)
20.3.1設(shè)置直方圖
20.3.2載入手勢圖片
20.3.3模型訓(xùn)練及保存
20.4系統(tǒng)測試
20.4.1測試準(zhǔn)確率
20.4.2測試效果