QQ在線客服

當前位置:首頁> 建站> 網(wǎng)站運營

搜索引擎中文分詞技術(shù)詳解

2019-06-14 16:43 來源: qclog 編輯: 佚名 瀏覽(1236)人   

認為做seo需要從底層入手,了解搜索引擎的中文分詞技術(shù),能幫助我們理解seo技術(shù)的本質(zhì),更好的對網(wǎng)站進行優(yōu)化。另外,除開本文提到分詞技術(shù)外,其他的諸如搜索引擎原理等,也是必備的需要掌握的知識點。

2932844601.jpg


搜索引擎中文分詞技術(shù)


  如果你想成為一名專業(yè)的SEO,那么子晨認為搜索引擎分詞思維是必須掌握的,因為只有掌握了分詞思維,你才可以定位好搜索引擎喜歡,而且用戶也喜歡的關(guān)鍵詞,進而才能更深層次的挖掘出SEO技術(shù)。


  也許有一些新手朋友看起來中文分詞的分詞理論比較復雜,但你完全同必要詞那些理論,沒有太多的意義,你只要知道計算方法和如何去做好每個網(wǎng)頁分詞就可以了,現(xiàn)在就為大家詳細的介紹一下百度的中文分詞技術(shù)。股票配資


一、中文分詞是什么?


  子晨從相關(guān)渠道獲悉,百度分詞技術(shù)就是百度針對用戶提交查詢的關(guān)鍵詞串進行的查詢處理后根據(jù)用戶的關(guān)鍵詞串用各種匹配方法進行的一種技術(shù)。


  中文分詞指的是將一個漢字序列切分成一個一個單獨的詞,分詞就是將連續(xù)的字序列按照一定的規(guī)范重新組合成詞序列的過程,所謂分詞就是把字與字連在一起的漢語句子分成若干個相互獨立、完整、正確的單詞,詞是最小的、能獨立活動的、有意義的語言成分。


  我們知道,在英文的行文中,單詞之間是以空格作為自然分界符的,而中文只是字、句和段能通過明顯的分界符來簡單劃界,唯獨詞沒有一個形式上的分界符,雖然英文也同樣存在短語的劃分問題,不過在詞這一層上,中文比之英文要復雜的多、困難的多。


  中文分詞是文本挖掘的基礎(chǔ),對于輸入的一段中文,成功的進行中文分詞,可以達到電腦自動識別語句含義的效果。


  中文分詞技術(shù)屬于自然語言處理技術(shù)范疇,對于一句話,人可以通過自己的知識來明白哪些是詞?哪些不是詞?但如何讓計算機也能理解?其處理過程就是分詞算法。


  計算機的所有語言知識都來自機器詞典(給出詞的各項信息)、句法規(guī)則(以詞類的各種組合方式來描述詞的聚合現(xiàn)象)以及有關(guān)詞和句子的語義、語境、語用知識庫,中文信息處理系統(tǒng)只要涉及句法、語義(如檢索、翻譯、文摘、校對等應用),就需要以詞為基本單位,當漢字由句轉(zhuǎn)化為詞之后,才能使得句法分析、語句理解、自動文摘、自動分類和機器翻譯等文本處理具有可行性,可以說,分詞是機器語言學的基礎(chǔ)。


二、分詞的思路及原理


  首先我們要知道搜索引擎工作原理是把每個網(wǎng)頁的內(nèi)容按詞來錄入到數(shù)據(jù)庫,比如你的文章標題是:“SEO博客提供免費SEO實戰(zhàn)培訓教程”,那么搜索引擎分把這個標題分成搜索引擎字典已經(jīng)存儲的詞和用戶常關(guān)注的詞,比如:、SEO、博客,培訓,提供,免費,SEO教程,SEO實戰(zhàn)培訓,免費SEO教程,免費SEO培訓和SEO培訓等等。


  主要大家能領(lǐng)悟這種思維就可以了,所以文章句子分割成每個詞或者單個字是搜索引擎要做的第一頁,也是最重要的一步,因為只有詞分好了,才能準確地把價值的信息反饋給用戶。


  對于一個專業(yè)的網(wǎng)站優(yōu)化人員來說中文分詞的方法也十分的重要,因為主有把要優(yōu)化的每個詞好了分詞后,才能更好的做好每個網(wǎng)頁的優(yōu)化工作,才能更清楚的告訴搜索引擎我這網(wǎng)站是代表什么來提高搜索引擎排名的機會,同時也清楚告訴用戶,你的網(wǎng)頁要表達的內(nèi)容,這是做SEO服務以來體會最深刻的地方,往往一個網(wǎng)頁的分詞錯了,再多的努力都是白費,因為做SEO推廣的企業(yè)是非常講究效率的,效率低意味意投資與回報率太低,是企業(yè)資源沒有合理利用的一個錯誤策略。


三、中文分詞技術(shù)在搜索引擎中有哪些應用?


  在自然語言處理技術(shù)中,中文處理技術(shù)比西文處理技術(shù)要落后很大一段距離,許多西文的處理方法中文不能直接采用,就是因為中文必需有分詞這道工序,中文分詞是其他中文信息處理的基礎(chǔ),搜索引擎只是中文分詞的一個應用,其他的比如機器翻譯(MT)、語音合成、自動分類、自動摘要、自動校對等等,都需要用到分詞在線配資


  因為中文需要分詞,可能會影響一些研究,但同時也為一些企業(yè)帶來機會,因為國外的計算機處理技術(shù)要想進入中國市場,首先也是要解決中文分詞問題。


  分詞準確性對搜索引擎來說十分重要,但如果分詞速度太慢,即使準確性再高,對于搜索引擎來說也是不可用的,因為搜索引擎需要處理數(shù)以億計的網(wǎng)頁,如果分詞耗用的時間過長,會嚴重影響搜索引擎內(nèi)容更新的速度。因此對于搜索引擎來說,分詞的準確性和速度,二者都需要達到很高的要求。


四、特殊性


  據(jù)了解,在計算機網(wǎng)絡上,之所以存在中文分詞技術(shù),是由于中文在基本文法上有其特殊性,子晨歸納出的特殊性具體表現(xiàn)在:


  1、與英文為代表的拉丁語系語言相比,英文以空格作為天然的分隔符,而中文由于繼承自古代漢語的傳統(tǒng),詞語之間沒有分隔。


  古代漢語中除了連綿詞、人名和地名等,詞通常就是單個漢字,所以當時沒有分詞書寫的必要,而現(xiàn)代漢語中雙字或多字詞居多,一個字不再等同于一個詞。


  2、在中文里,“詞”和“詞組”邊界模糊,現(xiàn)代漢語的基本表達單元雖然為“詞”,且以雙字或者多字詞居多,但由于人們認識水平的不同,對詞和短語的邊界很難去區(qū)分。


  例如:“對隨地吐痰者給予處罰”,“隨地吐痰者”本身是一個詞還是一個短語,不同的人會有不同的標準,同樣的“海上”“酒廠”等等,即使是同一個人也可能做出不同判斷,如果漢語真的要分詞書寫,必然會出現(xiàn)混亂,難度很大。


  中文分詞的方法其實不局限于中文應用,也被應用到英文處理,如手寫識別,單詞之間的空格就很清楚,中文分詞方法可以幫助判別英文單詞的邊界。


五、分詞算法的分類


  現(xiàn)有的分詞算法可分為三大類:基于字符串匹配的分詞方法、基于理解的分詞方法和基于統(tǒng)計的分詞方法,按照是否與詞性標注過程相結(jié)合,又可以分為單純分詞方法和分詞與標注相結(jié)合的一體化方法。


  1、基于字符串匹配的分詞方法


  這種方法又叫做機械分詞方法,它是按照一定的策略將待分析的漢字串與一個“充分大的”機器詞典中的詞條進行配,若在詞典中找到某個字符串,則匹配成功(識別出一個詞)。


  按照掃描方向的不同,串匹配分詞方法可以分為正向匹配和逆向匹配;按照不同長度優(yōu)先匹配的情況,可以分為最大(最長)匹配和最小(最短)匹配;常用的幾種機械分詞方法如下:


 ?。?)、正向最大匹配法(由左到右的方向)


  首先粗分,按照句子把文本切成一個一個句子,然后把每個句子切成單字,字典按照樹形結(jié)構(gòu)存儲,比如這句話“春天還會遠嗎”首先查找“春”字開頭的詞,然后按照字典樹形結(jié)構(gòu)往下走一個節(jié)點,查找“春”后面一個字是“天”的詞,然后又下沉一個節(jié)點,找“還”下面是“會”的詞,找不到了,查找就結(jié)束。


 ?。?)、逆向最大匹配法(由右到左的方向)


  就是朝相反的方向發(fā)掘可以匹配的文字,比如網(wǎng)上商城這個文字串,那么會向左延伸在網(wǎng)上的前面會出現(xiàn)的結(jié)果是區(qū)域性的文字,比如上海或者北京等,在商城的前面會出現(xiàn)更精準的定義文字符,比如愛家,女人等專屬性強的文字符。


 ?。?)、最少切分法


  使每一句中切出的詞數(shù)最小,還需通過利用各種其它的語言信息來進一步提高切分的準確率。


 ?。?)、雙向最大匹配法(進行由左到右、由右到左兩次掃描)


  正向最大匹配方法和逆向最大匹配方法結(jié)合起來構(gòu)成雙向匹配法,就是向左右縱深挖掘比較匹配的結(jié)果值。


  還可以將上述各種方法相互組合,例如,可以將正向最大匹配方法和逆向最大匹配方法結(jié)合起來構(gòu)成雙向匹配法,由于漢語單字成詞的特點,正向最小匹配和逆向最小匹配一般很少使用。


  一般說來,逆向匹配的切分精度略高于正向匹配,遇到的歧義現(xiàn)象也較少,統(tǒng)計結(jié)果表明,單純使用正向最大匹配的錯誤率為1/169,單純使用逆向最大匹配的錯誤率為1/245,但這種精度還遠遠不能滿足實際的需要,實際使用的分詞系統(tǒng),都是把機械分詞作為一種初分手段,還需通過利用各種其它的語言信息來進一步提高切分的準確率。


  一種方法是改進掃描方式,稱為特征掃描或標志切分,優(yōu)先在待分析字符串中識別和切分出一些帶有明顯特征的詞,以這些詞作為斷點,可將原字符串分為較小的串再來進機械分詞,從而減少匹配的錯誤率。


  另一種方法是將分詞和詞類標注結(jié)合起來,利用豐富的詞類信息對分詞決策提供幫助,并且在標注過程中又反過來對分詞結(jié)果進行檢驗、調(diào)整,從而極大地提高切分的準確率。


  對于機械分詞方法,可以建立一個一般的模型,在這方面有專業(yè)的學術(shù)論文,這里不做詳細論述。


  2、基于理解的分詞方法


  這種分詞方法是通過讓計算機模擬人對句子的理解,達到識別詞的效果,其基本思想就是在分詞的同時進行句法、語義分析,利用句法信息和語義信息來處理歧義現(xiàn)象,它通常包括三個部分:分詞子系統(tǒng)、句法語義子系統(tǒng)、總控部分。


  在總控部分的協(xié)調(diào)下,分詞子系統(tǒng)可以獲得有關(guān)詞、句子等的句法和語義信息來對分詞歧義進行判斷,即它模擬了人對句子的理解過程,這種分詞方法需要使用大量的語言知識和信息,由于漢語語言知識的籠統(tǒng)、復雜性,難以將各種語言信息組織成機器可直接讀取的形式,因此目前基于理解的分詞系統(tǒng)還處在試驗階段。


  3、基于統(tǒng)計的分詞方法


  從形式上看,詞是穩(wěn)定的字的組合,因此在上下文中,相鄰的字同時出現(xiàn)的次數(shù)越多,就越有可能構(gòu)成一個詞,因此字與字相鄰共現(xiàn)的頻率或概率能夠較好的反映成詞的可信度,可以對語料中相鄰共現(xiàn)的各個字的組合的頻度進行統(tǒng)計,計算它們的互現(xiàn)信息,定義兩個字的互現(xiàn)信息,計算兩個漢字X、Y的相鄰共現(xiàn)概率,互現(xiàn)信息體現(xiàn)了漢字之間結(jié)合關(guān)系的緊密程度,當緊密程度高于某一個閾值時,便可認為此字組可能構(gòu)成了一個詞。


  這種方法只需對語料中的字組頻度進行統(tǒng)計,不需要切分詞典,因而又叫做無詞典分詞法或統(tǒng)計取詞方法,但這種方法也有一定的局限性,會經(jīng)常抽出一些共現(xiàn)頻度高、但并不是詞的常用字組,例如“這一”、“之一”、“有的”、“我的”、“許多的”等,并且對常用詞的識別精度差,時空開銷大。


  實際應用的統(tǒng)計分詞系統(tǒng)都要使用一部基本的分詞詞典(常用詞詞典)進行串匹配分詞,同時使用統(tǒng)計方法識別一些新的詞,即將串頻統(tǒng)計和串匹配結(jié)合起來,既發(fā)揮匹配分詞切分速度快、效率高的特點,又利用了無詞典分詞結(jié)合上下文識別生詞、自動消除歧義的優(yōu)點。


  另外一類是基于統(tǒng)計機器學習的方法,首先給出大量已經(jīng)分詞的文本,利用統(tǒng)計機器學習模型學習詞語切分的規(guī)律(稱為訓練),從而實現(xiàn)對未知文本的切分,我們知道,漢語中各個字單獨作詞語的能力是不同的,此外有的字常常作為前綴出現(xiàn),有的字卻常常作為后綴(“者”“性”),結(jié)合兩個字相臨時是否成詞的信息,這樣就得到了許多與分詞有關(guān)的知識,這種方法就是充分利用漢語組詞的規(guī)律來分詞,這種方法的最大缺點是需要有大量預先分好詞的語料作支撐,而且訓練過程中時空開銷極大。


  到底哪種分詞算法的準確度更高,目前并無定論,對于任何一個成熟的分詞系統(tǒng)來說,不可能單獨依靠某一種算法來實現(xiàn),都需要綜合不同的算法,例如,海量科技的分詞算法就采用“復方分詞法”,所謂復方,就是像中西醫(yī)結(jié)合般綜合運用機械方法和知識方法,對于成熟的中文分詞系統(tǒng),需要多種算法綜合處理問題。


六、搜索引擎分詞的技術(shù)難點


  有了成熟的分詞算法,是否就能容易的解決中文分詞的問題呢?事實遠非如此,中文是一種十分復雜的語言,讓計算機理解中文語言更是困難,在中文分詞過程中,有兩大難題一直沒有完全突破。


  1、歧義識別


  歧義是指同樣的一句話,可能有兩種或者更多的切分方法,主要的歧義有兩種:交集型歧義和組合型歧義,例如:表面的,因為“表面”和“面的”都是詞,那么這個短語就可以分成“表面的”和“表面的”,這種稱為交集型歧義(交叉歧義)。


  像這種交集型歧義十分常見,前面舉的“和服”的例子,其實就是因為交集型歧義引起的錯誤,“化妝和服裝”可以分成“化妝和服裝”或者“化妝和服裝”,由于沒有人的知識去理解,計算機很難知道到底哪個方案正確。股票配資平臺


  交集型歧義相對組合型歧義來說是還算比較容易處理,組合型歧義就必須根據(jù)整個句子來判斷了,例如,在句子“這個門把手壞了”中,“把手”是個詞,但在句子“請把手拿開”中,“把手”就不是一個詞;在句子“將軍任命了一名中將”中,“中將”是個詞,但在句子“產(chǎn)量三年中將增長兩倍”中,“中將”就不再是詞,這些詞計算機又如何去識別?


  如果交集型歧義和組合型歧義計算機都能解決的話,在歧義中還有一個難題,是真歧義,真歧義意思是給出一句話,由人去判斷也不知道哪個應該是詞,哪個應該不是詞,例如:“乒乓球拍賣完了”,可以切分成“乒乓球拍賣完了”、也可切分成“乒乓球拍賣完了”,如果沒有上下文其他的句子,恐怕誰也不知道“拍賣”在這里算不算一個詞。


  2、新詞識別


  命名實體(人名、地名)、新詞,專業(yè)術(shù)語稱為未登錄詞,也就是那些在分詞詞典中沒有收錄,但又確實能稱為詞的那些詞。


  最典型的是人名,人可以很容易理解,句子“王尼瑪去廣州了”中,“王尼瑪”是個詞,因為是一個人的名字,但要是讓計算機去識別就困難了,如果把“王尼瑪”做為一個詞收錄到字典中去,全世界有那么多名字,而且每時每刻都有新增的人名,收錄這些人名本身就是一項既不劃算又巨大的工程,即使這項工作可以完成,還是會存在問題,例如:在句子“王尼姑騎著愛瑪摩托”中,“王尼瑪”還能不能算詞?


  子晨總結(jié)到除了人名以外,還有機構(gòu)名、地名、產(chǎn)品名、商標名、簡稱、省略語等都是很難處理的問題,而且這些又正好是人們經(jīng)常使用的詞,因此對于搜索引擎來說,分詞系統(tǒng)中的新詞識別十分重要,新詞識別準確率已經(jīng)成為評價一個分詞系統(tǒng)好壞的重要標志之一。


【版權(quán)與免責聲明】如發(fā)現(xiàn)內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息發(fā)郵件至 kefu@2898.com ,我們將及時溝通與處理。 本站內(nèi)容除了2898站長資源平臺( afrimangol.com )原創(chuàng)外,其它均為網(wǎng)友轉(zhuǎn)載內(nèi)容,涉及言論、版權(quán)與本站無關(guān)。