基礎果然要牢記(一次失敗的電面)


    果然又是一個悲劇的面試,不是上次筆試的悲劇,這次又以面試的悲劇結束。設計的主要問題是畢業設計的搜索引擎的設計,設計到問題為什么爬去和索引效率為什么會這么低?這個問題還真是不太清楚,因為這個問題本來就是利用Nutch的框架,我們當中只是實現了其中的一些插件,然而我們插件會輸出一些東西。我感覺最耽誤時間的就是那個貝葉斯分類器了,但是當問到貝葉斯分類器的時候,就徹底的完了,當時沒有意識到我實際上說的是一個KNN分類器。

    描述一下分類器的具體實現,我當時描述的是將文本和訓練樣本都進行分詞,然后計算每個文本和樣本的余弦夾角,然后選擇距離最近的那一個類別作為我們標記的類別。有沒有什么問題?當時沒感覺有什么問題,可是她說這根本不是一個貝葉斯分類器,當時懵了,只記得貝葉斯分類器是算概率的,一時想不起來貝葉斯分類器了。描述的這個分類器當時一時也沒有想起來是什么,現在電話掛的那一刻想到這是一個KNN分類器。投票機制的感覺,果斷還是要時刻復習自己實現的項目的,掌握每個細節。

    現在回想一下貝葉斯分類器大概的原理,它是計算最大后驗概率及 P(Ci|Xi...),及出現這一堆頻率的時候Ci出現的概率大小,選取最大的那個作為結果。根據貝葉斯公式可以對后驗概率進行轉換,轉換為先驗概率的計算P(Ci|Xi...)=P(Xi...|Ci)*P(Ci)/P(Xi...),針對給出的文本,其中Xi就是分詞中的每個詞。針對一個文本,右邊的分母部分相同。所以計算的任務就是P(Xi...|Ci)*P(Ci)這部分。假設每個詞都是獨立的,則可以轉換為P(Xi|Ci)*P(Xj|Ci)*...*P(Ci),所以這部分最大的及為所求的類別。

    只是一個問題的原因,就果斷悲劇了,面試的妹紙果斷是一個搞技術的,一下子就戳穿了我。沒有實現過貝葉斯分類器果然很虛。我決定有時間一定要實現一個貝葉斯分類器,自己實現算法,分詞和停用詞部分這些爭取也自己實現,基礎知識果然還是要牢牢的掌握,不能忘記。

    又一個悲劇的實習面試,自己實力太弱了,乖乖的寫服務器。

    貝葉斯服務器實現(待續)...


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM