作者Baudelaire (遺憾太常。)
看板Google
標題Re: [問題] 明明有那封信卻搜尋不到
時間Fri Aug 4 02:51:11 2006
技術上的原因是,
處理中文時,會先把整篇文章indexing下來,
而如果做decompound的時候沒有考慮到那些詞/UTF-8斷字出問題(這比較不會發生),
那搜尋的時候當然就找不到了。
---
簡單說,中文搜尋是這樣做的:
如果corpus是「家庭圖書證」,
我們可以拆成 家 庭 圖 書 證 家庭 圖書 圖書證 家庭圖書 家庭圖書證,
這當然不能用排列組合的方式去做組合,一般都是用自己的字典;
如果用排列組合來處理,隨便就是個 O(N!) 的問題,
整個就死在那裡了...。
有了這些字詞的集合以後,就可以把這些結果index起來,
(據說Google內部的實做是用MySQL跟Oracle)
等到你要搜尋的時候,就把這個 DB 的東西丟給你。
至於牽扯到clustering端的技術,其實跟web search比較有關,
如果只是GMail裡的信件,clustering應該還是有用,
不過比起來就沒那麼要求了,畢竟整個網路上的資料,
跟GMail裡區區2G的玩意比起來根本不能比。
※ 引述《SYOTEN (曠工的礦工)》之銘言:
: 我的Gmail裡有一封信
: 主題是: 家庭圖書證
: 搜尋圖書 可以搜尋得到
: 沒想到用圖書證三個字卻搜尋不到
: 我還仔細檢查過字有沒有打錯
: 甚至直接從那封信的主題上複製這三個字去搜尋
: 一樣搜尋不到
: 怎麼會這樣?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 207.126.230.225
1F:推 cwlin:推 08/04 02:55
2F:推 chris234:應該是O(n^2)吧...雖然也是很大XD 08/04 17:18
3F:推 Baudelaire:sigma(i=1..n){ C(n,i)} 所以是N!啊? 08/05 01:41
4F:推 Baudelaire:不對,這要跟字跟字有沒有相連有關,吼,我數學太爛... 08/05 01:44