內容簡介這本書的前四章集中在足夠的理論和基礎,給你,實踐者,為這本書剩下的部分一個工作的基礎。最后五章將從這些概念出發,帶領您通過一系列使用DL4J進行深度學習的實踐路徑。
在本書中,我們交替使用DL4J和Deeplearning4j這兩個名稱。這兩個術語都指的是Deeplearning4j庫中的工具套件。
我們以這種方式設計這本書,因為我們覺得有必要讓這本書既包含足夠的理論,又足夠的實際,以構建生產級的深度學習工作流。我們認為,這種混合方法的書的覆蓋面適合這個空間。
第一章回顧了機器學習的一般概念,特別是深度學習,讓讀者快速了解了解本書其余部分所需要的基礎知識。我們增加了這一章,因為許多初學者可以使用這些概念的復習或入門,我們想讓盡可能多的讀者可以訪問這個項目。
第2章以第1章的概念為基礎,并為您提供了神經網絡的基礎。它在很大程度上是神經網絡理論的一個章節,但是我們的目標是用一種可訪問的方式來呈現信息。
第三章在前兩章的基礎上更進一步,讓你了解網絡是如何從神經網絡的基本原理發展而來的。
第四章介紹了深層網絡的四種主要架構,并為本書的其余部分提供了基礎。
在第5章中,我們將使用前半部分中的技術,帶您瀏覽一些Java代碼示例。
第6章和第7章討論了調優一般神經網絡的基本原理,然后討論了如何調優深度網絡的特定架構。這些章節是平臺無關的,將適用于任何深度學習庫的實踐。
第8章是對矢量化技術和如何使用DataVec (DL4J的ETL和矢量化工作流工具)的基礎知識的回顧。
第9章總結了該書的主體部分,回顧了如何在Spark和Hadoop上本地使用DL4J,并舉例說明了可以在自己的Spark集群上運行的三個實際示例。
這本書有許多附錄章節的主題是相關的,但不適合直接放在主要章節。主題包括:
部分截圖:
作為布爾邏輯的替代
雖然邏輯是理性推理的數學基礎和計算的基本原理,但它僅限于信息既完整又確定的問題。然而,許多現實世界的問題,從金融投資到電子郵件過濾,本質上是不完整或不確定的。概率論和貝葉斯計算共同提供了一個處理不完整和不確定數據的框架。
不完全和不確定數據的決策工具和方法
貝葉斯編程強調概率是布爾邏輯的替代選擇,它涵蓋了為真實世界的應用程序構建概率程序的新方法。本書由設計并實現了一個高效概率推理引擎來解釋貝葉斯程序的團隊編寫,書中提供了許多Python示例,這些示例也可以在一個補充網站上找到,該網站還提供了一個解釋器,允許讀者試驗這種新的編程方法。
原則和建模
只需要一個基本的數學基礎,本書的前兩部分提出了一種新的方法來建立主觀概率模型。作者介紹了貝葉斯編程的原理,并討論了概率建模的良好實踐。大量簡單的例子突出了貝葉斯建模在不同領域的應用。
形式主義和算法
第三部分綜合了已有的貝葉斯推理算法的工作,因為需要一個高效的貝葉斯推理引擎來自動化貝葉斯程序中的概率演算。對于想要了解貝葉斯編程的形式主義、主要的概率模型、貝葉斯推理的通用算法和學習問題的讀者,本文提供了許多參考書目。
常見問題
第四部分連同詞匯表包含了常見問題的答案。作者比較了貝葉斯規劃和可能性理論,討論了貝葉斯推理的計算復雜性,討論了不完全性的不可約性,討論了概率的主觀主義和客觀主義認識論。
貝葉斯計算機的第一步
創建一個完整的貝葉斯計算框架需要新的建模方法、新的推理算法、新的編程語言和新的硬件。本書著重于方法論和算法,描述了實現這一目標的第一步。它鼓勵讀者探索新興領域,例如仿生計算,并開發新的編程語言和硬件架構。
本文介紹了一階優化方法及其在機器學習中的應用。這不是一門關于機器學習的課程(特別是它不涉及建模和統計方面的考慮),它側重于使用和分析可以擴展到具有大量參數的大型數據集和模型的廉價方法。這些方法都是圍繞“梯度下降”的概念而變化的,因此梯度的計算起著主要的作用。本課程包括最優化問題的基本理論性質(特別是凸分析和一階微分學)、梯度下降法、隨機梯度法、自動微分、淺層和深層網絡。
主題: Exploring Deep Learning for Search
摘要: 本書作者Tommaso Teofili著重介紹了他的著作《深度學習搜索》三章。 書中介紹了神經搜索如何通過自動執行以前手動完成的工作來節省用戶時間并提高搜索效率以及如何通過循環神經網絡(RNN)向搜索引擎添加文本生成功能來擴展搜索網絡。 在最后一章中,深入研究了如何使用卷積神經網絡(CNN)為圖像編制索引,并使它們可按其內容進行搜索。 借助這份以激光為重點的指南,讀者將掌握通過深度學習改善搜索的基礎知識。
?
改進您的編程技術和方法,成為一個更有生產力和創造性的Python程序員。本書探索了一些概念和特性,這些概念和特性不僅將改進您的代碼,而且還將幫助您理解Python社區,并對Python哲學有深入的了解和詳細的介紹。
專業的Python 3,第三版給你的工具寫干凈,創新的代碼。它首先回顧了一些核心的Python原則,這些原則將在本書后面的各種概念和示例中進行說明。本書的前半部分探討了函數、類、協議和字符串的各個方面,描述了一些技術,這些技術可能不是常見的知識,但它們共同構成了堅實的基礎。后面的章節涉及文檔、測試和應用程序分發。在此過程中,您將開發一個復雜的Python框架,該框架將整合在本書中所學到的思想。
這個版本的更新包括Python 3中迭代器的角色、用Scrapy和BeautifulSoup進行web抓取、使用請求調用沒有字符串的web頁面、用于分發和安裝的新工具等等。在本書的最后,您將準備好部署不常見的特性,這些特性可以將您的Python技能提升到下一個級別。
你將學習
這本書是給誰看的 熟悉Python的中級程序員,希望提升到高級水平。您應該至少編寫了一個簡單的Python應用程序,并且熟悉基本的面向對象方法、使用交互式解釋器和編寫控制結構。
掌握通過機器學習和深度學習識別和解決復雜問題的基本技能。使用真實世界的例子,利用流行的Python機器學習生態系統,這本書是你學習機器學習的藝術和科學成為一個成功的實踐者的完美伴侶。本書中使用的概念、技術、工具、框架和方法將教會您如何成功地思考、設計、構建和執行機器學習系統和項目。
使用Python進行的實際機器學習遵循結構化和全面的三層方法,其中包含了實踐示例和代碼。
第1部分側重于理解機器學習的概念和工具。這包括機器學習基礎,對算法、技術、概念和應用程序的廣泛概述,然后介紹整個Python機器學習生態系統。還包括有用的機器學習工具、庫和框架的簡要指南。
第2部分詳細介紹了標準的機器學習流程,重點介紹了數據處理分析、特征工程和建模。您將學習如何處理、總結和可視化各種形式的數據。特性工程和選擇方法將詳細介紹真實數據集,然后是模型構建、調優、解釋和部署。
第3部分探討了多個真實世界的案例研究,涵蓋了零售、交通、電影、音樂、營銷、計算機視覺和金融等不同領域和行業。對于每個案例研究,您將學習各種機器學習技術和方法的應用。動手的例子將幫助您熟悉最先進的機器學習工具和技術,并了解什么算法最適合任何問題。
實用的機器學習與Python將授權您開始解決您自己的問題與機器學習今天!
你將學習:
這本書是給誰看的 IT專業人士、分析師、開發人員、數據科學家、工程師、研究生
目錄:
Part I: Understanding Machine Learning
Chapter 12: Deep Learning for Computer Vision
簡介:
自從2012年以來,最近的技術史上最重大的事件也許就是神經網絡爆炸了。標記數據集的增長,計算能力的提高以及算法的創新齊頭并進。從那時起,深度神經網絡使以前無法實現的任務得以實現,并提高了任務的準確性,使它們超出了學術研究范圍,并進入了語音識別,圖像標記,生成模型和推薦系統等領域的實際應用。在這種背景下,Google Brain的團隊開始開發TensorFlow.js。該項目開始時,許多人認為“ JavaScript深度學習”是一種新穎事物,對于某些用例來說并不能當真。盡管Python已經有了一些完善的,功能強大的深度學習框架,但JavaScript機器學習的前景仍然是零散的和不完整的。在當時可用的少數JavaScript庫中,大多數僅支持以其他語言(通常是Python)進行預訓練的部署模型。
這本書不僅是作為如何在TensorFlow.js中編寫代碼的秘訣,而且還是以JavaScript和Web開發人員的母語為基礎的機器學習基礎入門課程。深度學習領域是一個快速發展的領域。我們相信,無需正式的數學處理就可以對機器學習有深入的了解,而這種了解將使您能夠在技術的未來發展中保持最新。有了這本書,您就成為成為成長中的JavaScript機器學習從業人員社區的第一步,他們已經在JavaScript和深度學習之間的交匯處帶來了許多有影響力的應用程序。我們衷心希望本書能激發您在這一領域的創造力和獨創性。
目錄:
內容簡介:
本書分為四個部分。第一部分僅由第一章組成,向您介紹了人工智能,機器學習和深度學習的概況,以及在JavaScript中實踐深度學習為何有意義。第二部分是對深度學習中最基礎和最常遇到的概念的簡要介紹。本書的第三部分系統地為希望建立對更前沿技術的理解的用戶,提供了深度學習的高級主題,重點是ML系統的特定挑戰領域以及與之配合使用的TensorFlow.js工具。
書名: Deep Learning for Search
簡介:
深度學習搜索是一本實用的書,關于如何使用(深度)神經網絡來幫助建立有效的搜索引擎。這本書研究了一個搜索引擎的幾個組成部分,提供了關于它們如何工作的見解以及如何在每個環境中使用神經網絡的指導。重點介紹了基于實例的實用搜索和深度學習技術,其中大部分都有代碼。同時,在適當的地方提供相關研究論文的參考資料,以鼓勵閱讀更多的書籍,加深對特定主題的知識。
讀完這本書,將對搜索引擎的主要挑戰有所理解,它們是如何被普遍解決的以及深度學習可以做些什么來幫助。并且將對幾種不同的深度學習技術以及它們在搜索環境中的適用范圍有一個理解,將很好地了解Lucene和Deeplearning4j庫。
這本書主要分為3個部分:
第1部分介紹了搜索、機器學習和深度學習的基本概念。第一章介紹了應用深度學習技術來搜索問題的原理,涉及了信息檢索中最常見的方法。第2章給出了如何使用神經網絡模型從數據中生成同義詞來提高搜索引擎效率的第一個例子。
第2部分討論了可以通過深度神經網絡更好地解決的常見搜索引擎任務。第3章介紹了使用遞歸神經網絡來生成用戶輸入的查詢。第四章在深度神經網絡的幫助下,在用戶輸入查詢時提供更好的建議。第5章重點介紹了排序模型:尤其是如何使用詞嵌入提供更相關的搜索結果。第6章討論了文檔嵌入在排序函數和內容重新編碼上下文中的使用。
第3部分將介紹更復雜的場景,如深度學習機器翻譯和圖像搜索。第7章通過基于神經網絡的方法為你的搜索引擎提供多語言能力來指導你。第8章討論了基于內容的圖像集合的搜索,并使用了深度學習模型。第9章討論了與生產相關的主題,如微調深度學習模型和處理不斷輸入的數據流。
作者簡介:
Tommaso Teofili是一名軟件工程師,他對開源機器學習充滿熱情。作為Apache軟件基金會的成員,他為許多開放源碼項目做出了貢獻,從信息檢索到自然語言處理和機器翻譯等主題。他目前在Adobe工作,開發搜索和索引基礎結構組件,并研究自然語言處理、信息檢索和深度學習等領域。他曾在各種會議上發表過搜索和機器學習方面的演講,包括BerlinBuzzwords、計算科學國際會議、ApacheCon、EclipseCon等。