投了近20家大廠,由於才大二,簡歷內容也不算豐富,所以大多數在簡歷關就掛了.得到筆試機會的有網易,今日頭條,百詞斬.
百詞斬(一面掛)
一面:
- 平時如何學習相關知識.
- 項目經歷.
- 講一個最喜歡的機器學習算法.我答了神經網絡.
- 為什么神經網絡的激勵函數要用非線性的.沒有回答出來.正確答案是線性函數疊加仍是線性函數,非線性函數才能起到層與層之間的變化.
- 了解決策樹嗎,決策樹划分結點的方法有哪些.
- 詳細解釋信息增益.
- 什么是過擬合?如何防止過擬合?
- 講講KNN和K-Means的不同.
- K-Means一般如何選取K值和初始質心.選取K值應該講到平均輪廓系數,答得不好.
- 一般怎么做交叉驗證.
- 百詞斬題庫中有很多閱讀題,現在如何判斷新出的題目和已有題目的相似度.我的回答是用詞袋向量計算夾角余弦值.
- 有監督學習和無監督學習的區別是什么.
總共持續了半小時左右,面試官比較和藹.由於恰好感冒所以問題回答的都不大好.
今日頭條(二面掛)
一面:
- 手寫代碼:旋轉有序數組的二分查找,磕磕絆絆寫出來了
- 項目經歷
- 了解哪些機器學習算法
二面:
- 項目經歷
- 了解集成學習嗎,講講bagging和boosting
- 隨機森林
- GBDT
- 如果單棵決策樹在數據集上的表現很差,還要嘗試隨機森林嗎
- 知道哪些分類和回歸的算法
- 分類和回歸常用的損失函數
- 手寫代碼:有20000個詞頻,如何選出前100個高頻詞.因為正好看了堆排序就按堆排序的思路答了,但是面試官說20000其實是一個不大的數據量,直接用sort()排序就可以了.
- 手寫代碼:有兩個二叉樹節點,如何找到他們的最近公共子節點.因為對數據結構有些生疏,最后在面試官提示下才回答上來.
總結
不同公司側重點很不一樣,比如百詞斬問了很多機器學習基礎知識的問題,頭條則很注重算法.共同點是項目經歷非常重要.通過這次經歷看出自己還是有很多知識漏洞的,接下來的學習重點是多參加比賽,多實踐,還有了解常用的算法與數據結構.