官术网_书友最值得收藏!

前言

通過(guò)新聞和社交媒體的報(bào)道,你可能已經(jīng)了解到,機(jī)器學(xué)習(xí)已成為當(dāng)代最激動(dòng)人心的技術(shù)之一。像谷歌、Facebook、蘋果、亞馬遜和IBM這樣的大公司基于各自的考慮,已經(jīng)在機(jī)器學(xué)習(xí)的研究和應(yīng)用方面投入了巨資。機(jī)器學(xué)習(xí)似乎已經(jīng)成為我們這個(gè)時(shí)代的流行詞,但這絕不是曇花一現(xiàn)。這個(gè)激動(dòng)人心的領(lǐng)域?yàn)槲覀冮_啟了許多新的可能性,已經(jīng)成為我們?nèi)粘I钪胁豢苫蛉钡囊徊糠帧V悄苁謾C(jī)的語(yǔ)音助手、為客戶推薦合適的產(chǎn)品、防止信用卡欺詐、過(guò)濾垃圾郵件,以及檢測(cè)和診斷疾病等都是明證,類似的應(yīng)用層出不窮。

機(jī)器學(xué)習(xí)入門

如果有志從事機(jī)器學(xué)習(xí)方面的工作,想更好地解決問題或開展機(jī)器學(xué)習(xí)方面的研究,那么本書就是為你而備。然而,對(duì)新手而言,機(jī)器學(xué)習(xí)背后的理論、概念可能艱深晦澀,但近幾年已經(jīng)出版了許多機(jī)器學(xué)習(xí)方面的著作,這有助于大家通過(guò)研發(fā)強(qiáng)大的機(jī)器學(xué)習(xí)算法走上機(jī)器學(xué)習(xí)之路。

理論與實(shí)踐相結(jié)合

通過(guò)實(shí)際的機(jī)器學(xué)習(xí)應(yīng)用示例來(lái)接觸實(shí)際代碼是深入該領(lǐng)域的好方法。此外,具體的示例也有助于通過(guò)把所學(xué)的材料直接付諸行動(dòng)來(lái)闡明寬泛的概念。然而請(qǐng)記住,更強(qiáng)大的力量意味著更重大的責(zé)任!

除了提供使用Python編程語(yǔ)言和基于Python的機(jī)器學(xué)習(xí)庫(kù)進(jìn)行機(jī)器學(xué)習(xí)的實(shí)踐經(jīng)驗(yàn)之外,本書還將介紹機(jī)器學(xué)習(xí)算法背后的數(shù)學(xué)概念,這些對(duì)成功地應(yīng)用機(jī)器學(xué)習(xí)至關(guān)重要。因此,本書與一般純粹的實(shí)踐手冊(cè)有所不同,書中不僅會(huì)對(duì)有關(guān)機(jī)器學(xué)習(xí)概念的必要細(xì)節(jié)進(jìn)行討論,而且還將對(duì)機(jī)器學(xué)習(xí)算法的工作原理、使用方法,以及如何避免最常見的陷阱(最為重要)做出直觀且翔實(shí)的解釋。

為什么要選擇Python

在深入機(jī)器學(xué)習(xí)領(lǐng)域之前,請(qǐng)先回答一個(gè)最重要的問題:“為什么要選擇Python?”答案很簡(jiǎn)單:Python功能強(qiáng)大且易于取得。Python已經(jīng)成為數(shù)據(jù)科學(xué)最常用的編程語(yǔ)言,因?yàn)樗粌H可以讓我們忘記編程的冗長(zhǎng)乏味,而且為我們提供了可以把想法落地、把概念直接付諸行動(dòng)的環(huán)境。

探索機(jī)器學(xué)習(xí)領(lǐng)域

如果在谷歌專業(yè)網(wǎng)站以“機(jī)器學(xué)習(xí)”作為關(guān)鍵詞進(jìn)行搜索,可能會(huì)找到325萬(wàn)個(gè)出版物。當(dāng)然,我們無(wú)法對(duì)過(guò)去60年來(lái)所出現(xiàn)的各種不同算法和應(yīng)用逐一進(jìn)行考證。然而,本書將開啟一個(gè)激動(dòng)人心的旅程,它將涵蓋所有重要的主題和概念,讓你在這些領(lǐng)域能夠捷足先登。如果你發(fā)現(xiàn)本書所提供的知識(shí)還不足以解渴,那么沒關(guān)系,你還可以利用本書所引用的其他有價(jià)值的許多資源來(lái)追蹤該領(lǐng)域的重要突破。

我們認(rèn)為,對(duì)機(jī)器學(xué)習(xí)的研究可以幫助我們成為更好的科學(xué)家、思想家和問題解決者。本書將與你分享這些知識(shí)。要獲得知識(shí)就要學(xué)習(xí),關(guān)鍵在于保持熱情,實(shí)踐出真知。

前面的路或許崎嶇不平,有些主題可能頗具挑戰(zhàn)性,但希望你能抓住這個(gè)機(jī)會(huì),更多地思考本書所帶來(lái)的回報(bào)。請(qǐng)記住,我們將共同踏上這段旅程,幫助你掌握許多強(qiáng)大的武器,讓你以數(shù)據(jù)驅(qū)動(dòng)的方式來(lái)解決最棘手的問題。

本書的目標(biāo)讀者

如果你已經(jīng)詳細(xì)研究了機(jī)器學(xué)習(xí)方面的理論,那么本書可以教你如何把知識(shí)付諸實(shí)踐。如果你以前使用過(guò)機(jī)器學(xué)習(xí)技術(shù),想要更加深入地了解其工作原理,那么本書也是為你而寫的。

如果你是機(jī)器學(xué)習(xí)領(lǐng)域的新手,那么不必?fù)?dān)心,你更有理由為閱讀本書而感到興奮!我保證機(jī)器學(xué)習(xí)將會(huì)改變你解決問題的思路,并讓你看到如何通過(guò)釋放數(shù)據(jù)的力量來(lái)解決問題。如果你想了解如何開始用Python來(lái)回答有關(guān)數(shù)據(jù)方面的關(guān)鍵問題,那么請(qǐng)閱讀本書。無(wú)論是想從零開始,還是想擴(kuò)展自己已有的數(shù)據(jù)科學(xué)知識(shí),本書都是必不可少且不可忽視的資源。

本書內(nèi)容

第1章介紹用于解決不同問題的主要機(jī)器學(xué)習(xí)子領(lǐng)域。另外,還將討論創(chuàng)建典型的機(jī)器學(xué)習(xí)模型構(gòu)建流水線的基本步驟,從而形成貫穿后續(xù)各章的脈絡(luò)。

第2章追溯機(jī)器學(xué)習(xí)的起源,介紹二元感知分類器和自適應(yīng)線性神經(jīng)元。還會(huì)簡(jiǎn)單介紹模式分類的基本原理,同時(shí)關(guān)注算法優(yōu)化和機(jī)器學(xué)習(xí)的交互。

第3章描述機(jī)器學(xué)習(xí)的基本分類算法,并使用最流行、最全面的開源機(jī)器學(xué)習(xí)軟件庫(kù)之一scikit-learn提供實(shí)際示例。

第4章討論如何解決未處理數(shù)據(jù)集中最常見的問題,如數(shù)據(jù)缺失。也會(huì)討論用來(lái)識(shí)別數(shù)據(jù)集中信息量最大的特征的幾種方法,并教你如何處理不同類型的變量以作為機(jī)器學(xué)習(xí)算法的適當(dāng)輸入。

第5章描述在減少數(shù)據(jù)集中特征數(shù)量的同時(shí)保留大部分有用和具有可識(shí)別性信息的基本技術(shù)。討論基于主成分分析的標(biāo)準(zhǔn)降維方法,并將其與監(jiān)督學(xué)習(xí)和非線性變換技術(shù)進(jìn)行比較。

第6章討論在預(yù)測(cè)模型的性能評(píng)價(jià)中該做什么和不該做什么。此外,還將討論模型評(píng)估的不同度量以及優(yōu)化機(jī)器學(xué)習(xí)算法的技術(shù)。

第7章介紹有效結(jié)合多種學(xué)習(xí)算法的不同概念。講解如何構(gòu)建專家小組來(lái)克服個(gè)別學(xué)習(xí)者的弱點(diǎn),從而產(chǎn)生更準(zhǔn)確、更可靠的預(yù)測(cè)。

第8章討論將文本數(shù)據(jù)轉(zhuǎn)換為對(duì)機(jī)器學(xué)習(xí)算法有意義的表達(dá)方式的基本步驟,以根據(jù)文本內(nèi)容預(yù)測(cè)人們的意見。

第9章繼續(xù)使用第8章中的預(yù)測(cè)模型,并介紹使用嵌入式機(jī)器學(xué)習(xí)模型開發(fā)Web應(yīng)用的基本步驟。

第10章討論根據(jù)目標(biāo)變量和響應(yīng)變量之間的線性關(guān)系建模,從而進(jìn)行連續(xù)預(yù)測(cè)的基本技術(shù)。在介紹不同的線性模型之后,還將討論多項(xiàng)式回歸和基于樹的建模方法。

第11章將焦點(diǎn)轉(zhuǎn)移到機(jī)器學(xué)習(xí)的其他子領(lǐng)域,即無(wú)監(jiān)督學(xué)習(xí)。用來(lái)自三個(gè)基本聚類家族的算法來(lái)尋找一組擁有一定程度相似性的對(duì)象。

第12章擴(kuò)展基于梯度的優(yōu)化概念,該概念在第2章中介紹過(guò)。還將介紹如何基于常見的反向傳播算法在Python中構(gòu)建強(qiáng)大的多層神經(jīng)網(wǎng)絡(luò)。

第13章基于第12章的知識(shí),為更有效地訓(xùn)練神經(jīng)網(wǎng)絡(luò)提供實(shí)用指南。該章的重點(diǎn)是TensorFlow 2.0,這是一個(gè)開源的Python軟件庫(kù),它允許我們充分利用現(xiàn)代的多核圖形處理器(GPU),通過(guò)對(duì)用戶友好的Keras API,采用相同的構(gòu)件來(lái)構(gòu)建深度神經(jīng)網(wǎng)絡(luò)。

第14章接著第13章的內(nèi)容更詳細(xì)地介紹TensorFlow 2.0更高級(jí)的概念和功能。TensorFlow是一個(gè)龐大且復(fù)雜的軟件庫(kù),該章將逐步探討一些概念,例如將代碼編譯成靜態(tài)圖形以加快執(zhí)行速度并定義可訓(xùn)練的模型參數(shù)。此外,該章還會(huì)提供用TensorFlow的Keras API以及TensorFlow的預(yù)制估計(jì)器訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)的其他實(shí)踐經(jīng)驗(yàn)。

第15章介紹卷積神經(jīng)網(wǎng)絡(luò)(CNN)。CNN代表一種特定類型的深度神經(jīng)網(wǎng)絡(luò)體系結(jié)構(gòu),特別適合用于圖像數(shù)據(jù)集。由于CNN的性能優(yōu)于傳統(tǒng)方法,因此現(xiàn)在已被廣泛用于計(jì)算機(jī)視覺中,在各種圖像識(shí)別任務(wù)方面獲得了非常優(yōu)秀的結(jié)果。在該章中,你將學(xué)習(xí)如何將卷積層用作圖像分類的強(qiáng)大的特征提取器。

第16章介紹深度學(xué)習(xí)的另外一種常用的神經(jīng)網(wǎng)絡(luò)體系結(jié)構(gòu),它特別適合處理文本序列數(shù)據(jù)和時(shí)間序列數(shù)據(jù)。作為熱身練習(xí),在該章中,我們應(yīng)用不同的循環(huán)神經(jīng)網(wǎng)絡(luò)來(lái)預(yù)測(cè)電影評(píng)論的情感。然后將學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)如何從書中提取信息,以生成全新的文本。

第17章介紹一種常用的神經(jīng)網(wǎng)絡(luò)對(duì)抗訓(xùn)練機(jī)制,可用于生成逼真的新圖像。該章首先簡(jiǎn)要地介紹自動(dòng)編碼器,這是一種可用于數(shù)據(jù)壓縮的特定類型的神經(jīng)網(wǎng)絡(luò)體系結(jié)構(gòu)。然后展示如何將自動(dòng)編碼器的解碼器部分與第二個(gè)神經(jīng)網(wǎng)絡(luò)相結(jié)合,以區(qū)分真實(shí)圖像和合成圖像。通過(guò)讓兩個(gè)神經(jīng)網(wǎng)絡(luò)在對(duì)抗性訓(xùn)練中相互競(jìng)爭(zhēng)的方法,實(shí)現(xiàn)用于生成新的手寫數(shù)字的生成對(duì)抗網(wǎng)絡(luò)。最后,在介紹生成對(duì)抗網(wǎng)絡(luò)的基本概念之后,介紹諸如Wasserstein距離指標(biāo)等可以提高對(duì)抗性訓(xùn)練穩(wěn)定性的方法。

第18章討論常用于訓(xùn)練機(jī)器人和其他自主系統(tǒng)的機(jī)器學(xué)習(xí)子類別。該章首先介紹強(qiáng)化學(xué)習(xí)(RL)的基礎(chǔ)知識(shí),讓你熟悉智能體與環(huán)境的交互、強(qiáng)化學(xué)習(xí)系統(tǒng)的獎(jiǎng)勵(lì)過(guò)程,以及從經(jīng)驗(yàn)中學(xué)習(xí)的概念。涵蓋基于模型和無(wú)模型兩大類強(qiáng)化學(xué)習(xí)。在介紹完基本算法(如基于蒙特卡羅和基于時(shí)間距離的學(xué)習(xí))之后,我們將動(dòng)手實(shí)現(xiàn)并訓(xùn)練一個(gè)可以使用Q學(xué)習(xí)算法在網(wǎng)格世界環(huán)境里導(dǎo)航的智能體。最后,該章將介紹深度Q學(xué)習(xí)算法,這是使用深度神經(jīng)網(wǎng)絡(luò)的Q學(xué)習(xí)的變體。

閱讀本書需要的材料

要執(zhí)行本書的示例代碼,需要在macOS、Linux或者M(jìn)icrosoft Windows操作系統(tǒng)上安裝Python 3.7.0或更新的版本。本書將持續(xù)使用包括SciPy、NumPy、scikit-learn、Matplotlib和pandas在內(nèi)的Python的科學(xué)計(jì)算軟件庫(kù)。

第1章將為設(shè)置Python環(huán)境及其核心庫(kù)提供指令和有用的提示。我們將逐漸添加更多的軟件庫(kù),另外也會(huì)在不同的章節(jié)中分別提供相應(yīng)的安裝指令,例如第8章的自然語(yǔ)言處理NLTK庫(kù)、第9章的Flask網(wǎng)絡(luò)框架庫(kù),以及從第13章到第18章用于在GPU上高效訓(xùn)練神經(jīng)網(wǎng)絡(luò)的TensorFlow。

下載示例代碼及彩色圖像

本書的示例代碼及彩色圖像可以從http://www.packtpub.com通過(guò)個(gè)人賬號(hào)下載,也可以訪問華章圖書官網(wǎng)http://www.hzbook.com,通過(guò)注冊(cè)并登錄個(gè)人賬號(hào)下載。

你也可以從GitHub網(wǎng)址https://github.com/rasbt/python-machine-learning-book-3rd-edition下載全部的示例代碼。

本書所有代碼也以Jupyter Notebook的格式提供,這可以在本書第1章的代碼文件夾中找到簡(jiǎn)明的指令,其具體位置為https://github.com/rasbt/python-machine-learning-book-3rd-edition/tree/master/ch01#pythonjupyter-notebook。想要了解更多有關(guān)Jupyter Notebook用戶界面的信息,請(qǐng)參考https://jupyter-notebook.readthedocs.io/en/stable/網(wǎng)站上的官方文檔。

盡管我們推薦使用Jupyter Notebook來(lái)執(zhí)行代碼,但是所有的代碼示例仍然會(huì)以Python腳本(例如ch02/ch02.py)和Jupyter Notebook(例如ch02/ch02.ipynb)兩種格式提供。另外,推薦閱讀每章附帶的README.md文件,以了解更多的信息和更新情況(例如https://github.com/rasbt/python-machine-learning-book-3rd-edition/blob/master/ch01/README.md)。

我們也把本書中用到的彩色圖像截屏或者圖表以PDF文件格式提供給讀者。彩色圖像有助于讀者更好地理解輸出中的變化。可以從網(wǎng)站https://static.packt-cdn.com/downloads/9781789955750_ColorImages.pdf下載該文件。

約定

新的術(shù)語(yǔ)重要的詞用粗體顯示。

008-01 在這樣的提示后會(huì)顯示警告或重要注釋。

008-02 在這樣的提示后會(huì)顯示提示和竅門。

延伸閱讀

如果你正在考慮從事機(jī)器學(xué)習(xí)工作,或者只想跟上該領(lǐng)域的最新進(jìn)展,我們向你推薦機(jī)器學(xué)習(xí)領(lǐng)域以下領(lǐng)先專家的著作。

  • Geoffrey Hinton(http://www.cs.toronto.edu/~hinton/)
  • Andrew Ng(http://www.andrewng.org/)
  • Yann LeCun(http://yann.lecun.com)
  • Juergen Schmidhuber(http://people.idsia.ch/~juergen/)
  • Yoshua Bengio(http://www.iro.umontreal.ca/~bengioy/yoshua_en/)

僅舉幾例!最后,你可以從下面這些網(wǎng)站了解作者們所擅長(zhǎng)的內(nèi)容:

https://sebastianraschka.com

http://vahidmirjalili.com.

如果對(duì)本書有任何疑問或者需要一些有關(guān)機(jī)器學(xué)習(xí)的提示,歡迎與我們聯(lián)系。

主站蜘蛛池模板: 黄大仙区| 乡城县| 惠安县| 本溪| 广灵县| 宁武县| 当阳市| 越西县| 大竹县| 康马县| 石渠县| 安化县| 汝州市| 沐川县| 常宁市| 叙永县| 东阿县| 射阳县| 介休市| 彭山县| 金门县| 青铜峡市| 益阳市| 溧水县| 台北市| 虞城县| 阳泉市| 哈尔滨市| 峨边| 吴川市| 绥德县| 松原市| 溧水县| 贵州省| 墨竹工卡县| 黄陵县| 定襄县| 柳林县| 象山县| 乌兰浩特市| 铜川市|