明明有那封信卻搜尋不到 - Google

Table of Contents


技術上的原因是,
處理中文時,會先把整篇文章indexing下來,
而如果做decompound的時候沒有考慮到那些詞/UTF-8斷字出問題(這比較不會發生),
那搜尋的時候當然就找不到了。

---

簡單說,中文搜尋是這樣做的:

如果corpus是「家庭圖書證」,
我們可以拆成 家 庭 圖 書 證 家庭 圖書 圖書證 家庭圖書 家庭圖書證,
這當然不能用排列組合的方式去做組合,一般都是用自己的字典;
如果用排列組合來處理,隨便就是個 O(N!) 的問題,
整個就死在那裡了...。

有了這些字詞的集合以後,就可以把這些結果index起來,
(據說Google內部的實做是用MySQL跟Oracle)
等到你要搜尋的時候,就把這個 DB 的東西丟給你。

至於牽扯到clustering端的技術,其實跟web search比較有關,
如果只是GMail裡的信件,clustering應該還是有用,
不過比起來就沒那麼要求了,畢竟整個網路上的資料,
跟GMail裡區區2G的玩意比起來根本不能比。



※ 引述《SYOTEN (曠工的礦工)》之銘言:
: 我的Gmail裡有一封信
: 主題是: 家庭圖書證
: 搜尋圖書 可以搜尋得到
: 沒想到用圖書證三個字卻搜尋不到
: 我還仔細檢查過字有沒有打錯
: 甚至直接從那封信的主題上複製這三個字去搜尋
: 一樣搜尋不到
: 怎麼會這樣?

--

All Comments

Victoria avatarVictoria2006-08-06
Oscar avatarOscar2006-08-06
應該是O(n^2)吧...雖然也是很大XD
George avatarGeorge2006-08-07
sigma(i=1..n){ C(n,i)} 所以是N!啊?
Emma avatarEmma2006-08-11
不對,這要跟字跟字有沒有相連有關,吼,我數學太爛...