天天看點

2015年機器學習/資料挖掘面試總結

                                    2015年機器學習/資料挖掘面試總結

       明年碩士畢業,今年開始找工作。在北方呆的太久,想回濕潤的南方。

       第一站(3月份),阿裡資料挖掘實習生面試。個人覺得,阿裡的面試是最人性化的,幾乎不需要提前準備什麼。不需要刷題,不需要死記硬背一些概念。他們看重的是你的項目經曆和解決實際問題的能力。每一場面試都不難,但是面試的次數是我所知道的公司中最多的。面試的題目有:

1)自我介紹。突出自己的特色就好,廢話少說。

2)項目經曆。先簡述,後詳述。一般要描述這個項目的背景,需求,你是怎麼做的,結果如何。然後,面試官就會問與其他人相比,你的創新在哪兒,你遇到過哪些坑,你覺得還可以往哪方面改進。如果你是和别人合作的項目,面試官還會問你們是怎樣分工的。

3)協同過濾主要有哪些?基于物品的和基于使用者的。

4)一道組合數學題。10盞燈,滅三盞,兩頭的必須亮着,不能滅掉相鄰的兩盞燈,問組合數?C(6,3) = 20 。

5)PCA有什麼用?降維。

       第二站(7月8日),百度商業搜尋部門面試。這是我最不堪回首的面試經曆。面試官和我的交流很少,沉默寡言,說話很直接。面試結束後,我自我感覺還算良好,問他覺得我怎麼樣,他很直接地說,很差。我心碎了一地,默默地告訴自己失敗是成功之母,然後回去梳理知識。面試題目有:

1)反轉連結清單。一上來就要求在紙上寫代碼,要求是反轉連結清單。好簡單的一道題!我說有遞歸和非遞歸解法,先寫了遞歸,然後寫了非遞歸算法,檢查三遍,沒問題,很開心的交卷。結果因為第一次在紙上寫代碼,寫的可謂是龍飛鳳舞,被面試官狠狠的鄙視了,說我的代碼寫得太醜了。回去後,我在電腦上又寫了一遍,感覺也不是很醜啊。http://blog.csdn.net/u011300443/article/details/46804339

2)排列數的生成算法。http://blog.csdn.net/u011300443/article/details/46884681

3)項目經曆。他問我用過哪些模型,我說用過GBDT,RF,LR,SVM。然後他接着問SVM原理是什麼,SVM核函數的作用。SVM是在給定的資料集上找一個超平面,使得支援向量(超平面兩邊距離超平面最近的點)到超平面的距離最大。SVM通過引入核函數,巧妙地解決了在高維空間中的内積運算,進而很好地解決了非線性分類問題。

        第三站(7月31日),百度大資料研發部門面試。第一面有兩個面試官,第二面的面試官很拽的感覺。面試題目有:

1)最長公共子序列。我一不留神寫成求編輯距離的算法了。

2)字元串轉整數。

3)哈夫曼編碼。給出每個詞的頻率,為每個詞的編碼,使得平均編碼長度最短。

4)虛函數機制。

       第四站(8月19日),京東面試。面試題目有:

1)設計O(n)空間複雜度的均值平滑算法。

2)最大連續乘積子串。用動态規劃求解。

       第五站(8月20日),百度網絡搜尋部門面試。面試官平易近人,交流起來很舒心。經常聊着聊着,就開始興奮起來,感覺不像是一場面試,更像是一次朋友的交談。末了,我還問面試官怎麼看待公司喜歡招“熟練工”的問題?他說他們部門更看重項目經曆和思維能力,他們部門的員工更像藝術家,而非工程師。面試題目有:

1)給你54張撲克牌,判斷是否是順子。Hash算法。

       第六站(8月27日),阿裡搜尋部面試。阿裡的面試官真的很nice,很有耐心。8月26号,我手機快沒電了而且靜音了。8月27号早上,面試官給我打電話,因為手機靜音是以沒聽到,結果打了幾次後,把我手機打沒電了。粗心的我一直沒意識到手機沒電了,直到下午5點給手機充電時才發現面試官給我的短信。我趕緊回了過去,約在晚上7點半面試。面試官有了早上的經驗,提前半小時(7點)開始打我電話,我又沒收到,後來發現是忘記取消手機靜音了。我還收到面試官發過來的一條略帶調侃的短信“又打不通了哦”,一個“哦”字讓我的心略略安穩了一些。後來,我打電話給他,他還說以為是我的手機出了問題,然後主動和我聊起了我名字的含義,緩解了我緊張的情緒,才開始進入正題。面試題目有:

1)說一下随機森林的執行過程。

2)基尼指數和資訊增益的差別。

3)GBDT和RF的優缺點。

4)他:你有什麼想問我的?

我:你們是不是核心部門?

他:當然是的。為什麼想去核心部門?

我:我喜歡做有挑戰性的工作。

他:如果你能把非核心部門變成核心部門,不是更有挑戰性嗎?

我:有道理。

————————————————————————————————————

以下,是小猴子遇到的騰訊面試題,非常感謝他的無私奉獻。:)

騰訊面試

1)有25匹馬 ,5個跑道,一次隻能比5匹馬,得到跑得最快的前3,至少需要比幾次?

答:7次。

2)一個檔案中包含超大的N個數,求最大的K個數?

答:最小堆,時間複雜度為N log k 。

3)一個資料流中,如何采樣得到100個數,保證采樣得到的100個數是随機的?

答:蓄水池抽樣算法。

4)如何解決特征共線性的問題?

答:可以利用PCA,特征降維,去除備援特征和噪聲特征。

5)為什麼RF和GBRT比LR效果好?

答:混合模型的優勢,分别是bagging和boosting的思想,LR畢竟是單模型,而且特征不保證與label是線性的,需要特征轉換和拟合。

6)LR正則化L1和L2的差別?

答:L1正則化産生稀疏解,将不相關特征對應的權重設為0,去除不相關特征,進行特征選擇,L2正則化進行特征權重衰減。L1正則是拉普拉斯先驗,L2正則是高斯先驗。兩者都能達到防止過拟合,增加模型的泛化能力的目的。

————————————————————————————————————

      找工作和找對象差不多,都是雙向選擇。被拒不代表你不好,也許是因為你們彼此不适合。找一份最适合你的工作,找一個最适合你的伴侶,人生就很美滿了。

繼續閱讀