第1801章 別被技術細節嚇住

投票推薦 加入書籤 小說報錯

  辦公室的白板上寫滿了字。

  李明的粉筆停在半空,眉頭皺成一個疙瘩。

  他轉身看向另外四個同伴,又看看坐在會議桌旁的賈瀞雯。

  「賈總,這個『網頁爬蟲』的概念……我們研究了三天,還是有點不明白。」他放下粉筆,拍了拍手上的粉灰,「文檔上說,要讓程序像蜘蛛一樣在網上爬,自動發現和收集網頁。

  但具體怎麼實現?」

  張濤推了推眼鏡,翻開陳浩寫的技術框架文檔:「這裡寫了一些思路--從幾個種子網站開始,提取頁面上的連結,然後訪問這些連結,再提取新連結。

  理論上可行,但實際做起來問題很多。」

  「什麼問題?」賈瀞雯問。

  「比如,有些網站不允許被訪問。」說話的是王磊,團隊裡最年輕的一個,北大研究生在讀,「還有,網頁格式千奇百怪,怎麼準確提取連結?再比如,如果程序陷入死循環怎麼辦?」

  賈瀞雯點點頭。

  這些她也不懂,但她知道該問誰。

  「今天先到這裡。」她看看表,「晚上我打電話問問陳總。

  大家繼續研究其他部分,分詞算法那邊有進展嗎?」

  張濤搖搖頭:「更難。

  英文有空格分隔單詞,中文是連在一起的。

  『中華人民共和國』怎麼分?是『中華』『人民』『共和國』,還是『中華人民』『共和國』?不同的分法,意思差別很大。」

  會議室里一陣沉默。

  五個年輕人你看看我,我看看你,都從對方眼裡看到同樣的困惑--這個項目,比他們想像的要難得多。

  晚上八點,賈瀞雯在辦公室撥通了陳浩的電話。

  「餵?」陳浩的聲音有點喘,背景里有嘈雜的人聲。

  「在忙?」

  「剛下戲,換衣服呢。」陳浩走到安靜的地方,「說吧,今天遇到什麼問題了?」

  賈瀞雯把白天的討論複述了一遍。

  陳浩聽完,笑了:「正常,這些確實是難點。

  你記一下,我一個個說。」

  賈瀞雯拿起筆。

  「第一,爬蟲的倫理問題。

  我們要遵守robots協議,就是網站根目錄下的一個文本文件,告訴爬蟲哪些頁面可以訪問,哪些不行。

  這個必須遵守,不然我們會惹麻煩。」

  「第二,網頁格式問題。

  現在網頁主要是HTML,雖然各家寫法不一樣,但基本結構是固定的。

  連結都在<a href=>標籤里,用正則表達式可以提取。」

  賈瀞雯打斷:「正則表達式是什麼?」

  「一種文本匹配的方法。」陳浩解釋,「比如你要找所有以『��開頭的字符串。

  這個讓技術人員去查資料,他們懂。」

  「第三,防止死循環。

  每個訪問過的連結都要記錄下來,下次遇到就直接跳過。

  還要設置深度限制,不能無限爬下去。」

  賈瀞雯飛快地記著。

  陳浩的聲音很平靜,好像這些難題都不是問題。

  「那中文分詞呢?」她問,「這個他們覺得特別難。」

  電話那頭沉默了一會兒。

  「這個確實難。」陳浩承認,「英文搜索可以直接按單詞匹配,中文必須先把句子切分成有意義的詞語。

  我們需要的不是機械切分,而是理解語義後的智能切分。」

  「怎麼做?」

  「兩種思路。」陳浩說,「一是基於詞典,把常用的詞做成詞典庫,然後匹配。

  二是基於統計,分析大量文本,找出經常連在一起出現的字組合。

  最好的辦法是兩者結合。」

  賈瀞雯記下最後幾個字,筆尖頓了頓:「浩哥,這些概念你怎麼都懂?你又沒學過計算機。」


  陳浩笑了:「我是不懂具體編程,但我懂邏輯,懂原理。

  而且我看得多,想得多。

  搜尋引擎的核心不是技術多炫,而是理解人想要什麼,然後從數據里找出來。」

  他頓了頓:「瀞雯,你告訴團隊,別被技術細節嚇住。

  我們不是在寫完美的學術論文,是在做一個能用的工具。

  第一版可以粗糙,可以有問題,但要快,要讓用戶能用上。

  改進可以慢慢來。」

  掛斷電話後,賈瀞雯把筆記整理成文檔,列印了五份。

  第二天開會,她把陳浩的話轉述給團隊。

  「陳總說,第一版可以粗糙,但要快。」她看著五張年輕的臉,「我們不求完美,但求可用。」

  李明眼睛一亮:「這就對了。

  我們總想一次做到最好,結果越想越不敢動手。

  其實可以先做個最簡單的版本,能跑起來就行。」

  「對!」張濤一拍桌子,「爬蟲可以先從幾個固定的網站開始,比如新聞網站。

  這些網站結構規範,容易抓取。

  分詞可以先做基於詞典的簡單版本,複雜的以後再說。」

  團隊的氣氛活躍起來。

  年輕人就是這樣,不怕困難,就怕迷茫。

  一旦有了方向,哪怕方向不完美,他們也敢往前沖。

  三天後,新的問題來了。

  這次是王磊提出的。

  他在研究分詞算法時,遇到了一個具體難題。

  「賈總,我們試了基於詞典的方法,但遇到一個問題。」王磊在白板上寫了個例子,「比如『桌球拍賣完了』這句話。

  怎麼分?」

  他畫出兩種分法:「『桌球/拍賣/完了』,這是說桌球被拍賣掉了。

  但也可以是『桌球/球拍/賣完了』,這是說球拍賣光了。

  同一個句子,兩種分法,意思完全不一樣。」

  賈瀞雯看著白板上的句子,也皺起眉。

  確實,這太難了。

  當晚的電話匯報,她重點說了這個問題。

  陳浩聽完,沒有馬上回答。

  「這個問題很關鍵。」他說,「中文的歧義切分是搜尋引擎必須要解決的。

  這樣,你讓團隊等一下,我想想。」

  電話掛斷了。

  賈瀞雯以為陳浩要思考幾天,沒想到第二天一早,她就接到了電話。

  「瀞雯,我畫了個圖。」陳浩的聲音聽起來有些疲憊,像是熬了夜,「我讓助理去傳真給你,你看一下。」

  半小時後,傳真機響了。

  五頁紙,上面是手繪的流程圖和說明。

  賈瀞雯拿起來看。

  第一頁是總覽,標題是「中文分詞歧義處理邏輯」。

  後面四頁是詳細的流程圖,每一步都有說明。

  她看不懂技術細節,但能看懂思路。

  陳浩提出了一個「雙向最大匹配」的方法。

  從左到右掃描一遍,從右到左再掃描一遍,比較兩種結果。

  如果一致,就用這個結果。

  如果不一致,就啟用歧義處理規則--檢查上下文,查詞典,甚至用簡單的概率統計。

  最下面還有一行小字:初期可用簡單規則,後續逐步完善。

  賈瀞雯把傳真複印了五份。

  團隊看到後,會議室里炸開了鍋。

  【跪求禮物,免費的為愛發電也行!】

章節目錄