『壹』 搜索引擎原理與實踐的目錄
第1章 搜索引擎概述
1.1 搜索引擎的概念
1.2 搜索引擎的歷史
1.3 搜索引擎的分類
1.4 搜索引擎的關鍵技術
1.5 當代主要搜索引擎介紹
1.5.1 谷歌搜索
1.5.2 雅虎搜索
1.5.3 網路搜索
1.5.4 北大天網搜索
1.6 搜索引擎的發展
1.7 小結
思考題
第2章 搜索引擎的體系結構和工作原理
2.1 搜索引擎的體系結構
2.1.1 搜索器
2.1.2 索引器
2.1.3 檢索器
2.1.4 用戶介面
2.2 搜索引擎的工作原理
2.2.1 網頁搜集
2.2.2 網頁處理
2.2.3 查詢服務
2.3 元搜索引擎
2.3.1 元搜索引擎的基本構成
2.3.2 元搜索引擎的分類
2.3.3 常用元搜索引擎介紹
2.3.4 元搜索引擎的特點
2.3.5 主要技術指標
2.4 小結
思考題
第3章 信息處理技術
3.1 檢索模型
3.1.1 經典模型
3.1.2 代數模型
3.2 文本處理
3.2.1 詞法分析
3.2.2 分詞技術
3.2.3 無用詞彙刪除
3.2.4 詞干提取
3.2.5 索引詞選擇
3.2.6 詞典
3.3 文本壓縮
3.3.1 基本概念
3.3.2 統計方法
3.3.3 字典方法
3.3.4 倒排文檔壓縮
3.4 Web信息處理
3.4.1 Web信息的特點
3.4.2 Web信息的表現方式
3.4.3 Web信息系統結構
3.5 小結
思考題
第4章 信息檢索技術
4.1 順排檢索
4.1.1 表展開法
4.1.2 邏輯樹展開法
4.1.3 BF演算法
4.1.4 KMP演算法
4.1.5 BM演算法
4.2 倒排檢索
4.2.1 倒排檢索
4.2.2 倒排文檔
4.2.3 逆波蘭表達式
4.2.4 檢索指令表的生成
4.2.5 檢索實施
4.3 其他檢索方法
4.3.1 布爾檢索
4.3.2 後綴樹和後綴數組
4.3.3 加權檢索
4.3.4 全文檢索
4.3.5 超文本檢索
4.4 web信息檢索
4.4.1 網頁的搜集
4.4.2 網頁的預處理
4.4.3 網頁索引的建立
4.4.4 相似度計算與排序方法
4.5 小結
思考題
第5章 信息檢索評價
5.1 相關性
5.1.1 相關性的特徵
5.1.2 相關性類別
5.1.3 相關性模型
5.2 性能評價指標
5.2.1 有效性
5.2.2 查全率和查准率
5.2.3 其他指標
5.3 相關組織和會議
5.4 小結
思考題
第6章 網路搜索引擎技術
6.1 搜索引擎的基本結構
6.1.1 搜索引擎的結構分類
6.1.2 網頁收集模塊
6.1.3 網頁索引模塊
6.1.4 查詢模塊
6.1.5 用戶界面
6.1.6 搜索引擎的主要指標及分析
6.2 搜索引擎的數據結構
6.2.1 存儲結構
6.2.2 信息庫
6.2.3 文本索引
6.2.4 詞典
6.2.5 采樣表
6.2.6 前向索引
6.2.7 後向索引
6.3 搜索引擎爬蟲
6.3.1 網路爬蟲
6.3.2 深度優先策略
6.3.3 廣度優先策略
6.3.4 不重復抓取策略
6.3.5 網頁抓取優先策略
6.3.6 網頁重訪策略
6.3.7 網頁抓取提速策略
6.3.8 Robots協議
6.3.9 網頁內容提取技術
6.4 小結
思考題
第7章 多媒體檢索概述
7.1 多媒體信息
7.1.1 多媒體及多媒體技術
7.1.2 音頻信息
7.1.3 圖形與圖像信息
7.1.4 視頻信息
7.2 多媒體的基本概念
7.2.1 多媒體技術的特點
7.2.2 多媒體信息系統
7.2.3 多媒體資料庫
7.2.4 多媒體信息檢索
7.3 多媒體數據壓縮
7.3.1 多媒體壓縮原理
7.3.2 多媒體壓縮編碼
7.4 多媒體內容的理解
7.4.1 圖像分割
7.4.2 特徵提取
7.4.3 分類
7.5 多媒體信息檢索的關鍵技術
7.5.1 信息模型和表示
……
第8章 基於內容的多媒體信息檢索技術
第9章 搜索引擎開發技術
參考文獻
……
『貳』 編輯距離的應用
最小編輯距離通常作為一種相似度計算函數被用於多種實際應用中,詳細如下: (特別的,對於中文自然語言處理,一般以詞為基本處理單元) DNA分析:基因學的一個主要主題就是比較 DNA 序列並嘗試找出兩個序列的公共部分。如果兩個 DNA 序列有類似的公共子序列,那麼這些兩個序列很可能是同源的。在比對兩個序列時,不僅要考慮完全匹配的字元,還要考慮一個序列中的空格或間隙(或者,相反地,要考慮另一個序列中的插入部分)和不匹配,這兩個方面都可能意味著突變(mutation)。在序列比對中,需要找到最優的比對(最優比對大致是指要將匹配的數量最大化,將空格和不匹配的數量最小化)。如果要更正式些,可以確定一個分數,為匹配的字元添加分數、為空格和不匹配的字元減去分數。 全局序列比對嘗試找到兩個完整的序列 S1和 S2之間的最佳比對。以下面兩個 DNA 序列為例:
S1= GCCCTAGCG
S2= GCGCAATG
如果為每個匹配字元一分,一個空格扣兩分,一個不匹配字元扣一分,那麼下面的比對就是全局最優比對:
S1'= GCCCTAGCG
S2'= GCGC-AATG
連字元(-)代表空格。在 S2'中有五個匹配字元,一個空格(或者反過來說,在 S1'中有一個插入項),有三個不匹配字元。這樣得到的分數是 (5 * 1) + (1 * -2) + (3 * -1) = 0,這是能夠實現的最佳結果。
使用局部序列比對,不必對兩個完整的序列進行比對,可以在每個序列中使用某些部分來獲得最大得分。使用同樣的序列 S1和 S2,以及同樣的得分方案,可以得到以下局部最優比對 S1''和 S2'':
S1 = GCCCTAGCG
S1''= GCG
S2''= GCG
S2 = GCGCAATG
這個局部比對的得分是 (3 * 1) + (0 * -2) + (0 * -1) = 3。 拼寫糾錯(Spell Correction):又拼寫檢查(Spell Checker),將每個詞與詞典中的詞條比較,英文單詞往往需要做詞干提取等規范化處理,如果一個詞在詞典中不存在,就被認為是一個錯誤,然後試圖提示N個最可能要輸入的詞——拼寫建議。常用的提示單詞的演算法就是列出詞典中與原詞具有最小編輯距離的詞條。 這里肯定有人有疑問:對每個不在詞典中的詞(假如長度為len)都與詞典中的詞條計算最小編輯距離,時間復雜度是不是太高了?的確,所以一般需要加一些剪枝策略,如: 因為一般拼寫檢查應用只需要給出Top-N的糾正建議即可(N一般取10),那麼我們可以從詞典中按照長度依次為len、len-1、len+1、len-2、len-3、...的詞條比較; 限定拼寫建議詞條與當前詞條的最小編輯距離不能大於某個閾值; 如果最小編輯距離為1的候選詞條超過N後,終止處理; 緩存常見的拼寫錯誤和建議,提高性能。 命名實體抽取(Named Entity Extraction):由於實體的命名往往沒有規律,如品牌名,且可能存在多種變形、拼寫形式,如「IBM」和「IBM Inc.」,這樣導致基於詞典完全匹配的命名實體識別方法召回率較低,為此,我們可以使用編輯距離由完全匹配泛化到模糊匹配,先抽取實體名候選詞。 具體的,可以將候選文本串與詞典中的每個實體名進行編輯距離計算,當發現文本中的某一字元串的編輯距離值小於給定閾值時,將其作為實體名候選詞;獲取實體名候選詞後,根據所處上下文使用啟發式規則或者分類的方法判定候選詞是否的確為實體名。 實體共指(Entity Coreference):通過計算任意兩個實體名之間的最小編輯距離判定是否存在共指關系?如「IBM」和「IBM Inc.」, "Stanford President John Hennessy "和"Stanford University President John Hennessy"。 機器翻譯(Machine Translation): 識別平行網頁對:由於平行網頁通常有相同或類似的界面結構,因此平行網頁在HTML結構上應該有很大近似度。首先將網頁的HTML標簽抽取出來,連接成一個字元串,然後用最小編輯距離考察兩個字元串的近似度。實際中,此策略一般與文檔長度比例、句對齊翻譯模型等方法結合使用,以識別最終的平行網頁對。 自動評測:首先存儲機器翻譯原文和不同質量級別的多個參考譯文,評測時把自動翻譯的譯文對應到與其編輯距離最小的參考譯文上,間接估算自動譯文的質量,如下圖所示: 字元串核函數(String Kernel):最小編輯距離作為字元串之間的相似度計算函數,用作核函數,集成在SVM中使用。
『叄』 R語言中的情感分析與機器學習
來源 | 雪晴數據網
利用機器學習可以很方便的做情感分析。本篇文章將介紹在R語言中如何利用機器學習方法來做情感分析。在R語言中,由Timothy P.Jurka開發的情感分析以及更一般的文本挖掘包已經得到了很好的發展。你可以查看下sentiment包以及夢幻般的RTextTools包。實際上,Timothy還寫了一個針對低內存下多元Logistic回歸(也稱最大熵)的R包maxtent。
然而,RTextTools包中不包含樸素貝葉斯方法。e1071包可以很好的執行樸素貝葉斯方法。e1071是TU Wien(維也納科技大學)統計系的一門課程。這個包的主要開發者是David Meyer。
我們仍然有必要了解文本分析方面的知識。用R語言來處理文本分析已經是公認的事實(詳見R語言中的自然語言處理)。tm包算是其中成功的一部分:它是R語言在文本挖掘應用中的一個框架。它在文本清洗(詞干提取,刪除停用詞等)以及將文本轉換為詞條-文檔矩陣(dtm)方面做得很好。這里是對它的一個介紹。文本分析最重要的部分就是得到每個文檔的特徵向量,其中詞語特徵最重要的。當然,你也可以將單個詞語特徵擴展為雙片語,三連詞,n-連詞等。在本篇文章,我們以單個詞語特徵為例做演示。
注意,在R中用ngram包來處理n-連詞。在過去,Rweka包提供了函數來處理它,感興趣的可以查看這個案例。現在,你可以設置RTextTools包中create_matrix函數的參數ngramLength來實現它。
第一步是讀取數據:
創建詞條-文檔矩陣:
現在,我們可以用這個數據集來訓練樸素貝葉斯模型。注意,e1071要求響應變數是數值型或因子型的。我們用下面的方法將字元串型數據轉換成因子型:
測試結果准確度:
顯然,這個結果跟python得到的結果是相同的(這篇文章是用python得到的結果)。
其它機器學習方法怎樣呢?
下面我們使用RTextTools包來處理它。
首先,指定相應的數據:
其次,用多種機器學習演算法訓練模型:
現在,我們可以使用訓練過的模型做測試集分類:
准確性如何呢?
得到模型的結果摘要(特別是結果的有效性):
結果的交叉驗證:
結果可在我的Rpub頁面找到。可以看到,maxent的准確性跟樸素貝葉斯是一樣的,其它方法的結果准確性更差。這是可以理解的,因為我們給的是一個非常小的數據集。擴大訓練集後,利用更復雜的方法我們對推文做的情感分析可以得到一個更好的結果。示例演示如下:
推文情感分析
數據來自victornep。victorneo展示的是用python對推文做情感分析。這里,我們用R來處理它:
讀取數據:
首先,嘗試下樸素貝葉斯
然後,嘗試其他方法:
這里,我們也希望得到正式的測試結果。包括:
1.analytics@algorithm_summary:包括精確度,召回率,准確率,F-scores的摘要
2.analytics@label_summary:類標簽摘要
3.analytics@document_summary:所有數據和得分的原摘要
4.analytics@ensemble_summary:所有 精確度/覆蓋度 比值的摘要
現在讓我們看看結果:
與樸素貝葉斯方法相比,其它演算法的結果更好,召回精度高於0.95。結果可在Rpub查看
原文鏈接:http://www.xueqing.cc/cms/article/107
『肆』 有沒有老師了解Python用於Meta分析的工具包
Python在科學計算領域,有兩個重要的擴展模塊:Numpy和Scipy。其中Numpy是一個用python實現的科學計算包。包括:
一個強大的N維數組對象Array;
比較成熟的(廣播)函數庫;
用於整合C/C++和Fortran代碼的工具包;
實用的線性代數、傅里葉變換和隨機數生成函數。
SciPy是一個開源的Python演算法庫和數學工具包,SciPy包含的模塊有最優化、線性代數、積分、插值、特殊函數、快速傅里葉變換、信號處理和圖像處理、常微分方程求解和其他科學與工程中常用的計算。其功能與軟體MATLAB、Scilab和GNU Octave類似。
Numpy和Scipy常常結合著使用,Python大多數機器學習庫都依賴於這兩個模塊,繪圖和可視化依賴於matplotlib模塊,matplotlib的風格與matlab類似。Python機器學習庫非常多,而且大多數開源,主要有:
1.scikit-learn
scikit-learn是一個基於SciPy和Numpy的開源機器學習模塊,包括分類、回歸、聚類系列演算法,主要演算法有SVM、邏輯回歸、樸素貝葉斯、Kmeans、DBSCAN等,目前由INRI資助,偶爾Google也資助一點。
項目主頁:
https://pypi.python.org/pypi/scikit-learn/
http://scikit-learn.org/
https://github.com/scikit-learn/scikit-learn
2.NLTK
NLTK(Natural Language Toolkit)是Python的自然語言處理模塊,包括一系列的字元處理和語言統計模型。NLTK常用於學術研究和教學,應用的領域有語言學、認知科學、人工智慧、信息檢索、機器學習等。NLTK提供超過50個語料庫和詞典資源,文本處理庫包括分類、分詞、詞干提取、解析、語義推理。可穩定運行在Windows, Mac OS X和linux平台上.
項目主頁:
http://sourceforge.net/projects/nltk/
https://pypi.python.org/pypi/nltk/
http://nltk.org/
3.Mlpy
Mlpy是基於NumPy/SciPy的Python機器學習模塊,它是Cython的擴展應用。包含的機器學習演算法有:
l回歸
least squares,ridge regression, least angle regression,elastic net, kernel ridge regression,support vector machines(SVM),partial least squares(PLS)
l分類
linear discriminant analysis(LDA), Basicperceptron, Elastic Net,logistic regression, (Kernel) Support Vector Machines (SVM), Diagonal Linear Discriminant Analysis (DLDA), Golub Classifier, Parzen-based, (kernel) Fisher Discriminant Classifier, k-nearest neighbor, Iterative RELIEF, Classification Tree, Maximum Likelihood Classifier
l聚類
hierarchical clustering, Memory-saving Hierarchical Clustering,k-means
l維度約減
(Kernel)Fisher discriminant analysis(FDA), Spectral Regression Discriminant Analysis (SRDA), (kernel)Principal component analysis(PCA)
項目主頁:
http://sourceforge.net/projects/mlpy
https://mlpy.fbk.eu/
4.Shogun
Shogun是一個開源的大規模機器學習工具箱。目前Shogun的機器學習功能分為幾個部分:feature表示,feature預處理,核函數表示,核函數標准化,距離表示,分類器表示,聚類方法,分布,性能評價方法,回歸方法,結構化輸出學習器。
SHOGUN的核心由C++實現,提供Matlab、R、Octave、Python介面。主要應用在linux平台上。
項目主頁:
http://www.shogun-toolbox.org/
5.MDP
The Molar toolkit for Data Processing (MDP),用於數據處理的模塊化工具包,一個Python數據處理框架。
從用戶的觀點,MDP是能夠被整合到數據處理序列和更復雜的前饋網路結構的一批監督學習和非監督學習演算法和其他數據處理單元。計算依照速度和內存需求而高效的執行。從科學開發者的觀點,MDP是一個模塊框架,它能夠被容易地擴展。新演算法的實現是容易且直觀的。新實現的單元然後被自動地與程序庫的其餘部件進行整合。MDP在神經科學的理論研究背景下被編寫,但是它已經被設計為在使用可訓練數據處理演算法的任何情況中都是有用的。其站在用戶一邊的簡單性,各種不同的隨時可用的演算法,及應用單元的可重用性,使得它也是一個有用的教學工具。
項目主頁:
http://mdp-toolkit.sourceforge.net/
https://pypi.python.org/pypi/MDP/
『伍』 r語言tm包轉換為語料後怎麼到處
##4.Transformations
#對於xml格式的文檔用tm_map命令對語料庫文件進行預處理,將其轉為純文本並去除多餘空格,
#轉換小寫,去除常用詞彙、合並異形同意詞彙,如此才能得到類似txt文件的效果
#可以用inspect(reuters)查看此時的效果,明顯好很多
reuters <- tm_map(reuters, as.PlainTextDocument)#將reuters轉化為純文本文件,去除標簽
reuters <- tm_map(reuters, stripWhitespace)#去掉空白
reuters <- tm_map(reuters, tolower)#轉換為小寫
reuters <- tm_map(reuters, removeWords, stopwords("english"))#去停用詞
#採用Porter's stemming 演算法 提取詞干
#Stem words in a text document using Porter's stemming algorithm
#install.packages("SnowballC")
tm_map(reuters, stemDocument)
『陸』 英漢講笑話的異同分析
一、中英文分詞方式不同
分詞是中英文NLP差異最廣為人知的一點。我們都知道英文的單詞之間天然存在空格來分隔,因此在進行英文文本處理時,可以非常容易的通過空格來切分單詞。例如英文句子:
DataGrand is a Chinese company
可輕松切分為DataGrand / is / a / Chinese / company (文本用/表示詞彙分隔符)。
中文在每句話中間是不存在分隔符的,而是由一串連續的漢字順序連接構成了句子。現代漢語里表達意思的基本語素是詞而不是字。例如「自然」,拆為「自」和「然」都不能單獨表意,兩個字合並組成的詞才能有準確的意義,對應英文單詞是Nature。因此在我們使用計算機技術對中文進行自動語義分析時,通常首要操作就是中文分詞(Chinese Word Segmentation)。中文分詞是指按人理解漢語的方式,將連續的漢字串切分為能單獨表義的詞彙。例如中文句子:
「達觀數據是一家中國公司。」
讓計算機來處理,第一步需要切分為「達觀數據/是/一家/中國/公司」這樣的詞串的形式,然後再進行後續的理解和處理。
如何正確的根據語義完成中文切分是一個挑戰性的任務,一旦切詞發生失誤,會導致後續的文本處理產生連鎖問題,給正確理解語義帶來障礙。為了快速准確的切分好中文,學術界迄今有超過50年的研究,提出了很多方法。中文切詞常見方法里既有經典的機械切分法(如正向/逆向最大匹配,雙向最大匹配等),也有效果更好一些的統計切分方法(如隱馬爾可夫HMM,條件隨機場CRF),以及近年來興起的採用深度神經網路的RNN,LSTM等方法。
由於漢語語法本身極為靈活,導致歧義語義時常發生,給正確完成中文分詞帶來了很多障礙。如例句「嚴守一把手機關了」所示,按照語義理解,正確切分方式為「嚴守一/把/手機/關了」,而演算法有誤時容易切分為「嚴守/一把/手機/關了」。
更困難的是,有些時候兩種切詞方法意思都對,例如「乒乓球拍賣了」,切分為「乒乓/球拍/賣了」和「乒乓球/拍賣/了」本身都可行,必須要依賴更多上下文來選擇當前正確的切分方法。類似的還有「南京市長江大橋」、「吉林省長春葯店」等等。如果把「市長」「省長」等切出來,整句話的理解就偏差很多了。常見歧義類型包括交叉歧義(Cross Ambiguity)和組合歧義(Combination Ambiguity)等,在語義消岐方面近年不斷有國內外學者提出新的解決思路,來解決漢藏語系的這個特定問題。
此處順便一提,和中文類似,日文句子內部同樣缺乏天然的分隔符,因此日文也同樣存在分詞需求。日文受漢語語法的影響很深,但同時又受表音語法的影響,明治時代還曾興起過廢漢字興拼音的運動,行文上漢字和假名混雜,好比中英文混血兒。業內比較知名的日文分詞器有MeCab,其演算法內核是條件隨機場CRF。事實上,如果將MeCab的內部訓練語料由日文更換為中文後,也同樣可以用於切分中文。
隨著深度學習技術近年來在NLP領域成功的應用,一些seq2seq學習過程可以不再使用分詞,而是直接將字作為輸入序列,讓神經網路自動學習其中的特徵,這在一些端到端的應用中(如自動摘要、機器翻譯、文本分類等)確實省略了中文分詞這一步驟,但是一方面還有很多的NLP應用離不開分詞的結果,如關鍵詞提取、命名實體識別、搜索引擎等;另一方面切分所得的詞彙也可以和單字一起作為特徵輸入,用以增強效果。因此分詞仍然是工程界進行中文處理時的一項重要技術。
二、英文語素和中文偏旁的使用
英文單詞的提取雖然比中文簡單的多,通過空格就能完整的獲取單詞,但英文特有的現象是單詞存在豐富的變形變換。為了應對這些復雜的變換,英文NLP相比中文存在一些獨特的處理步驟,我們稱為詞形還原(Lemmatization)和詞干提取(Stemming)。
詞形還原是因為英文單詞有豐富的單復數、主被動、時態變換(共16種)等情況,在語義理解時需要將單詞「恢復」到原始的形態從而讓計算機更方便的進行後續處理。例如「does,done,doing,do,did」這些單詞,需要通過詞性還原統一恢復為「do」這個詞,方便後續計算機進行語義分析。類似的:「potatoes,cities,children,teeth」這些名詞,需要通過Lemmatization轉為「potato,city,child,tooth」這些基本形態;同樣「were,beginning,driven」等要轉為「are,begin,drive」。
請注意詞形還原通常還需要配合詞性標注(pos-tag)一起來進行,以確保還原准確度,避免歧義發生。因為英文中存在一些多義詞的情況,例如calves就是個多義詞,即可以作為calf(名詞,牛犢)的復數形式,也可以是calve(動詞,生育小牛)的第三人稱單數。所以詞形還原也有兩種選擇,需要按實際所表示的詞性來挑選合適的還原方法。
『柒』 網路信息檢索的圖書1
ISBN: 978-7-5606-2378-8
開本: 16開
定價: 32.00元 《網路信息檢索》詳細介紹了網路信息檢索的原理和技術,內容包括信息檢索模型、網路信息的自動獲取、網路信息預處理和索引、查詢語言和查詢優化等。針對網路信息檢索的廣泛應用,書中對搜索引擎、中文和跨語言信息檢索、多媒體檢索、並行和分布式信息檢索、信息分類和聚類、信息提取與自動問答等重要應用的關鍵技術也進行了深入的探討。
《網路信息檢索》層次分明,深入淺出;既有原理闡述和理論推導,也有大量的實例分析,闡述力求系統性和科學性。《網路信息檢索》可作為高等院校計算機科學與技術、信息管理與信息系統、電子商務等專業的高年級本科生或研究生的教科書和參考書,對廣大從事網路信息檢索、數字圖書館、信息管理、人工智慧、Web數據挖掘等研究和應用開發的科技人員也有較大的參考價值。 第1章 緒論
1.1 網路信息檢索概述
1.1.1 網路信息
1.1.2 信息檢索
1.1.3 網路信息檢索
1.2 信息檢索的發展
1.2.1 手工檢索
1.2.2 離線批處理檢索
1.2.3 聯機檢索
1.2.4 網路信息檢索
1.3 網路信息檢索的應用
1.3.1 搜索引擎
1.3.2 多媒體信息檢索
1.3.3 話題識別與跟蹤
1.3.4 信息過濾
1.3.5 問題回答
思考題
參考文獻
第2章 信息檢索模型
2.1 檢索模型定義
2.2布爾模型
2.3 向量模型
2.3.1 索引項權重
2.3.2 相似度量
2.3.3 計算方法
2,4 概率模型
2.5 擴展的布爾模型
2.5.1 模糊集合模型
2.5.2 擴展布爾模型
2.6 擴展的向量模型
2.6.1 廣義向量空間模型
2.6.2 潛語義標引模型
2.6.3神經網路模型
2.7 擴展的概率模型
2.7.1 推理網路模型
2.7.2 信任度網路模型
2.7.3 語言模型
2.8 小結
思考題
習題
參考文獻
第3章 網路信息的自動搜集
3.1 網路信息的特點
3.1.1 Web的組成
3.1.2 Web的特點
3.2 網路信息搜集的原理
3.2.1 信息搜集的基本流程
3.2.2 遍歷策略
3.2.3 頁面解析
3.3 網路信息搜集的禮貌原則
3.3.1 機器人排斥協議
3.3.2 機器人元標簽
3.4 高性能信息搜集
3.4.1 並行搜集
3.4.2 DNS優化
3.4.3 優先搜集策略
3.4.4 網頁更新
3.4.5 網頁消重
3.4.6 避免蜘蛛陷阱
3.5 專題信息搜集
3.5.1 網頁的主題特性
3.5.2 專題信息搜集演算法
3.6 小結
思考題
習題
參考文獻
第4章 網頁文本處理和索引
4.1 文本的特性
4.1.1 信息熵
4.1.2 統計定律
4.2 網頁信息的特徵
4.2.1 網頁結構
4.2.2 網頁類型
4.3 網頁去噪
4.3.1 基於網頁結構的方法
4.3.2 基於模板的方法
4.4 文本處理
4.4.1 詞彙分析
4.4.2 排除停用詞
4.4.3 詞干提取
4.4.4 索引詞選擇
4.5 索引
4.5.1 Trie樹
4.5.2 後綴樹
4.5.3 簽名檔
4.5.4 倒排文件
4.6 小結
思考題
習題
參考文獻
第5章 查詢語言與查詢處理
5.1 Web查詢語言
5.1.1 WebSQL查詢語言
5.1.2 W3QL查詢語言
5.1.3 WebOQL查詢語言
5.2 查詢方式
5.2.1 基於關鍵字的查詢
5.2.2 模式匹配
5.3 相關反饋
5.3.1 向量空間模型中的相關反饋
5.3.2 概率模型中的相關反饋
5.4 查詢擴展
5.4.1 基於字典的簡單查詢擴展
5.4.2 自動局部分析
5,4.3 自動全局分析
5.5 小結
思考題
習題
參考文獻
第6章 信息檢索性能評價
6.1 信息檢索評價指標
6.1.1 查全率和查准率
6.1.2 其他評價指標
6.2 信息檢索評價基準
6.2.1 基準測試
6.2.2 TREC評測
6.2.3 Web檢索評價
6.2.4 CWIRF評測
6.3 小結
思考題
習題
參考文獻
第7章 搜索引擎
7.1 概述
7.1.1 發展概況
7.1,2 術語與定義
7.1.3 工作原理
7.2 鏈接分析
7.2.1 PageRank
7.2.2 HITS
7.2.3 演算法比較
7.3 相關排序
7.3.1 Lucene檢索模型
7.3.2 Nutch排序演算法
7.4 大規模搜索引擎
7.4.1 體系架構
7.4.2數據結構
7.4.3 檢索演算法
7.4.4 相關排序
7.5 小結
思考題
習題
參考文獻
第8章 並行和分布式信息檢索
8.1 並行信息檢索
8.1.1 並行計算的概念
8.1.2 並行信息檢索體系架構
8.1.3 並行編程
8.1.4 數據並行
8.2 分布式信息檢索
8.3元搜索引擎
8.3.1 系統架構
8.3.2 資源選擇
8.3.3 文檔選擇
8.3.4 信息融合
8.4 P2P網路信息檢索
8.4.1 P2P網路信息檢索的原理
8.4.2 非結構化P2P網路信息檢索
8.4.3 結構化P2P網路信息檢索
8.5 小結
思考題
習題
參考文獻
第9章 中文和跨語言信息檢索
9.1 中文預處理
9.1.1 中文編碼及轉換
9.1.2 中文分詞
9.2中文信息檢索
9.2.1 中文檢索模型
9.2.2 中文索引
9.3 跨語言信息檢索
9.3.1 基本原理
9.3.2 基於GVSM的跨語言檢索
9.3.3 基於LSI的跨語言檢索
9,4 小結
思考題
習題
參考文獻
第10章 多媒體信息檢索
10.1 基於內容的圖像信息檢索
10.2 圖像特徵提取
10.2.1 顏色特徵
10.2.2 形狀特徵提取
10.2.3 紋理特徵提取
10.3 圖像相似量度
10.4 基於內容的視頻信息檢索
10.4.1 鏡頭分割
10.4.2 關鍵幀提取
10.5 基於內容的音頻信息檢索
10.6 小結
思考題
習題
參考文獻
第11章 信息分類與聚類
11.1 基本知識
11.1.1 類的概念
11.1.2 對象特徵描述
11.1.3 文檔相似性
11.1.4 類間距離
11.2 特徵描述及提取
11.2.1 特徵提取
11.2.2 特徵選擇
11.3 聚類方法
11.3.1 劃分聚類法
11.3.2 層次聚類法
11.3.3 其他聚類方法
11.4 分類方法
11.4.1 NaiveBayes演算法
11.4.2 kNN演算法
11.4.3 Rocchio演算法
11.4.4 SVM演算法
11.5 方法評測
11.5.1 聚類方法評測
11.5.2 分類方法評測
11.5.3 顯著性檢驗
11.6 小結
思考題
習題
參考文獻
第12章 Web信息抽取與問答系統
12.1 信息抽取概述
12.1.1 信息抽取的發展
12.1.2 信息抽取的評價指標
12.2 Web信息抽取
12.2.1 基於關鍵字的Web信息抽取
12.2.2 基於模式的Web信息抽取
12.2.3 基於樣本的Web信息抽取
12.3 問答系統
12.3.1 問題分析
12.3.2 信息檢索
12.3.3 答案抽取
12.6 小結
思考題
參考文獻
『捌』 Python中主要使用哪些資料庫
Python中常用的資料庫有很多,需要根據不同的業務和應用場景來選擇合適的資料庫,才能使程序更高效.
一般常用的主要有 MySQL, Redis, MangoDB 等資料庫
學習這些資料庫,可以看黑馬程序員視頻庫的學習視頻,有代碼、有資料,有PPT,不了解還可以問老師!
『玖』 求用C/C++寫的抽詞干(stem)函數
C 程序
給定目標 字元str_stem
打開文件 a.txt
查到有str_stem 子串的 的字元串則 列印出來
#include"stdio.h"
FILE *fin;
void main()
{
char namein[80]="a.txt";
char str_stem[]="read";
char str[32];
int i,j,N,L;
N = strlen(str_stem);
if ( (fin = fopen(namein,"r") ) == NULL ) {
printf("open %s error\n",namein);
exit(0);
};
while (fscanf(fin,"%s",&str[0]) == 1){
L = strlen(str);
if (L >= N) {
for (i=0;i<=L-N;i++)
if (strncmp(&str[i],str_stem,N) == 0){ printf("found: %s\n",str); };
} // if
}; // while
fclose(fin);
getch();
}
----------
type a.txt
Let us read some thing
reading book forread
.... 1234 read1 3read--
『拾』 自然語言處理的工具(詞干提取 )( 指代消解)的工具(軟體)分別都有哪些急呀,,,,期待您幫助
http://jkx.fudan.e.cn/nlp/fudannlp.do 復旦的在線demo,可以下載webservice調用指代消解……