Python 自然語言處理實戰:核心技術與算法 Python自然语言处理实战:核心技术与算法

塗銘, 劉祥, 劉樹春

立即出貨 (庫存 < 4)

買這商品的人也買了...

相關活動主題

20181003 %e7%b0%a1%e9%ab%94%e6%9c%80%e6%96%b0%e5%88%b0%e8%b2%a8 small

商品描述

這是一本自然語言處理理論和實踐完美結合的教材。

讀者在瞭解自然語言處理全貌的同時,可以根據本書的一些實踐案例快速上手並應用於自己的項目中。

作者結合自己的實踐經驗,重點介紹了真實場景下快速構建一些自然語言處理項目所需的技能,並提供了一些工具推薦或算法實現。

本書著眼於實際應用場景,主要介紹了分詞、詞性標註和名實體識別、句法分析等基本技術,並通過剖析近年來在自然語言處理領域大放光彩的深度學習技術,力求快速地帶領讀者入門自然語言處理。

作者在後還通過在大數據平臺上的實戰項目,完整呈現了真實場景下自然語言處理項目的整個環節,以供讀者參考。

作者簡介

塗銘,阿里巴巴數據架構師,對大數據、自然語言處理、Python、Java相關技術有深入的研究,積累了豐富的實踐經驗。曾就職於北京明略數據,是大數據方面的高級諮詢顧問。

在工業領域參與了設備故障診斷項目,在零售行業參與了精準營銷項目。在自然語言處理方面,擔任導購機器人項目的架構師,主導開發機器人的語義理解、短文本相似度匹配、上下文理解,以及通過自然語言檢索產品庫,在項目中構建了NoSQL+文本檢索等大數據架構,同時也負責問答對的整理和商品屬性的提取,帶領NLP團隊構建語義解析層。劉祥,百煉智能自然語言處理專家,主要研究知識圖譜、NLG等前沿技術,參與機器自動寫作產品的研發與設計。

曾在明略數據擔當數據技術合夥人兼數據科學家,負責工業、金融等業務領域的數據挖掘工作,在這些領域構建了諸如故障診斷、關聯賬戶分析、新聞推薦、商品推薦等模型。

酷愛新技術,活躍於開源社區,是SparkMLlib和Zeppelin的Contributor。劉樹春,七牛雲高級算法專家,七牛AI實驗室NLP&OCR方向負責人,主要負責七牛NLP以及OCR相關項目的研究與落地。在七牛人工智能實驗室工作期間,參與大量NLP相關項目,例如知識圖譜、問答系統、文本摘要、語音相關係統等;同時重點關注NLP與CV的交叉研究領域,主要包括視覺問答(VQA),圖像標註(Image Caption)等前沿問題。

曾在Intel DCSG數據與雲計算部門從事機器學習與雲平台的融合開發,項目獲得IDF大獎。碩士就讀於華東師範大學機器學習實驗室,在校期間主攻機器學習、機器視覺、圖像處理,並在相關國際會議發表多篇SCI/EI論文。

目錄大綱

目錄
序一
序二
前言


第1章NLP基礎1 
1.1什麼是NLP 1 
1.1.1 NLP的概念1 
1.1.2 NLP的研究任務3 
1.2 NLP的發展歷程5 
1.3 NLP相關知識的構成7 
1.3.1基本術語7 
1.3.2知識結構9 
1.4語料庫10 
1.5探討NLP的幾個層面11 
1.6 NLP與人工智能13 
1.7本章小結15 


第2章NLP前置技術解析16 
2.1搭建Python開發環境16 
2.1.1 Python的科學計算發行版——Anaconda 17 
2.1.2 Anaconda的下載與安裝19 
2.2正則表達式在NLP的基本應用21 
2.2.1匹配字符串22 
2.2.2使用轉義符26 
2.2.3抽取文本中的數字26 
2.3 Numpy使用詳解27 
2.3.1創建數組28 
2.3.2獲取Numpy中數組的維度30 
2.3.3獲取本地數據31 
2.3.4正確讀取數據32
2.3.5 Numpy數組索引32 
2.3.6切片33 
2.3.7數組比較33 
2.3.8替代值34 
2.3.9數據類型轉換36 
2.3.10 Numpy的統計計算方法36 
2.4本章小結37 
第3章中文分詞技術38 
3.1中文分詞簡介38 
3.2規則分詞39 
3.2.1正向最大匹配法39 
3.2.2逆向最大匹配法40 
3.2.3雙向最大匹配法41 
3.3統計分詞42 
3.3.1語言模型43 
3.3.2 HMM模型44 
3.3.3其他統計分詞算法52 
3.4混合分詞52 
3.5中文分詞工具——Jieba 53 
3.5.1 Jieba的三種分詞模式54 
3.5.2實戰之高頻詞提取55 
3.6本章小結58 


第4章詞性標註與命名實體識別59 
4.1詞性標註59 
4.1.1詞性標註簡介59 
4.1.2詞性標註規範60 
4.1.3 Jieba分詞中的詞性標註61 
4.2命名實體識別63 
4.2.1命名實體識別簡介63
4.2.2基於條件隨機場的命名實體識別65 
4.2.3實戰一:日期識別69 
4.2.4實戰二:地名識別75 
4.3總結84 


第5章關鍵詞提取算法85 
5.1關鍵詞提取技術概述85 
5.2關鍵詞提取算法TF/IDF算法86 
5.3 TextRank算法88 
5.4 LSA/LSI/LDA算法91 
5.4.1 LSA/LSI算法93 
5.4.2 LDA算法94 
5.5實戰提取文本關鍵詞95 
5.6本章小結105 


第6章句法分析106 
6.1句法分析概述106 
6.2句法分析的數據集與評測方法107 
6.2.1句法分析的數據集108 
6.2.2句法分析的評測方法109 
6.3句法分析的常用方法109 
6.3.1基於PCFG的句法分析110 
6.3.2基於最大間隔馬爾可夫網絡的句法分析112 
6.3.3基於CRF的句法分析113 
6.3.4基於移進–歸約的句法分析模型113 
6.4使用Stanford Parser的PCFG算法進行句法分析115 
6.4. 1 Stanford Parser 115 
6.4.2基於PCFG的中文句法分析實戰116
6.5本章小結119 


第7章文本向量化120 
7.1文本向量化概述120 
7.2向量化算法word2vec 121 
7.2.1神經網絡語言模型122 
7.2.2 C&W模型124 
7.2.3 CBOW模型和Skip-gram模型125 
7.3向量化算法doc2vec/str2vec 127 
7.4案例:將網頁文本向量化129 
7.4.1詞向量的訓練129 
7.4.2段落向量的訓練133 
7.4.3利用word2vec和doc2vec計算網頁相似度134 
7.5本章小結139 


第8章情感分析技術140 
8.1情感分析的應用141 
8.2情感分析的基本方法142 
8.2.1詞法分析143 
8.2.2機器學習方法144 
8.2.3混合分析144 
8.3實戰電影評論情感分析145 
8.3.1卷積神經網絡146 
8.3.2循環神經網絡147 
8.3.3長短時記憶網絡148 
8.3.4載入數據150 
8.3.5輔助函數154 
8.3.6模型設置155 
8.3.7調參配置158
8.3.8訓練過程159 
8.4本章小結159 


第9章NLP中用到的機器學習算法160 
9.1簡介160 
9.1.1機器學習訓練的要素161 
9.1.2機器學習的組成部分162 
9.2幾種常用的機器學習方法166 
9.2.1文本分類166 
9.2.2特徵提取168 
9.2.3標註169 
9.2.4搜索與排序170 
9.2.5推薦系統170 
9.2.6序列學習172 
9.3分類器方法173 
9.3.1樸素貝葉斯Naive Bayesian 173 
9.3.2邏輯回歸174 
9.3.3支持向量機175 
9.4無監督學習的文本聚類177 
9.5文本分類實戰:中文垃圾郵件分類180 
9.5.1實現代碼180 
9.5.2評價指標187 
9.6文本聚類實戰:用K-means對豆瓣讀書數據聚類190 
9.7本章小結194 


第10章基於深度學習的NLP算法195 
10.1深度學習概述195 
10.1.1神經元模型196 
10.1.2激活函數197 
10.1.3感知機與多層網絡198
10.2神經網絡模型201 
10.3多輸出層模型203 
10.4反向傳播算法204 
10.5最優化算法208 
10.5.1梯度下降208 
10.5.2隨機梯度下降209 
10.5.3批量梯度下降210 
10.6丟棄法211 
10.7激活函數211 
10.7.1 tanh函數212 
10.7.2 ReLU函數212 
10.8實現BP算法213 
10.9詞嵌入算法216 
10.9.1詞向量217 
10.9.2 word2vec簡介217 
10.9.3詞向量模型220 
10.9.4 CBOW和Skip-gram模型222 
10.1