機器學習演算法工程師--實習面經
阿新 • • 發佈:2019-01-01
最近找實習,整理一下面的比較完整的幾家公司的問題,如果後面還有比較完整的流程再新增吧。
小米麵試
一面
- 給使用者推薦一首歌,每首歌被推薦的概率和歌的評分成正比
- 對上面的題進行優化,要求每次推薦歌的時間複雜度為O(1)
- 給定一些字元,每個字元都可以出現或可以不出現,出現的字元的順序和給定的保持一致,問一共有多少種出現方式
- 對上面的題進行優化
- 問了一道分類的應用題,,有點不記得是什麼了
二面
- 問了一道分類應用題
- 兩個連結串列是否存在公共節點,如果連結串列本身有環怎麼辦
- 如果一個連結串列很長一個連結串列很短怎麼優化
京東面試
一面
- 先寫了一道演算法題,去掉連結串列中的重複元素
- 智力題,三枚硬幣如何等概率扔出0~4
- 機器學習基礎,LR損失函式,過擬合,正則化
- 問專案,貝葉斯有什麼改進,還問了一道,沒有聽明白題意的問題,什麼歸一什麼鬼
- 商品分類問題,只給商品id和分類去預測新的演算法(文字分類、詞頻、語義)
二面
- 先是問了專案,然後文字分類的工作,問如果現在做能怎麼改進
- 京東搜尋“手機”,對搜尋出來的商品怎麼排序(提出了迴歸的模型,userCf模型,面試官說了一種learning to rank的想法)
微軟面試
一面
- 專案的相關問題,為什麼不用mlib中自帶的演算法
- gbdt和rf的區別
- svm核函式相關的問題
- 找有序陣列中值為k的數的下標範圍,可能有多個值為k的數
二面
- 多個有序連結串列中的值相同的節點
- java中的反射機制
頭條面試
一面
- 決策樹的並行策略
- 能否十分鐘寫出cart樹
- 視訊分類應用(標題,作者的id和行為,視訊詳情,歷史的使用者資料和行為,使用者評論)
- 二叉搜尋樹找到一個節點並刪除
二面
- 連續子陣列最大和的值和起始終止位置
- 並行演算法和mlib的區別,有沒有什麼演算法上的改進
- 文字分類svm調參,使用了什麼核,手推svm
- 為什麼svm可以使用和函式,LR不可以使用
- 手推牛頓迭代法和擬牛頓法
百度面試
一面
- 專案
- 機器學習演算法的相關知識
- spark和hadoop的區別
- linux命令 awk,sort,grep
- 二叉樹的中序遍歷非遞迴
- Kmeans和KNN
二面
- 問專案
- 手推LR
- 陣列流找中位數,使用兩個堆
- 檔案流隨機挑選K行
三面
- 問spark是啥。。
- 個性化推薦
- 線上的程式碼重構,出問題如何定位
嘀嘀新銳面試
一面
- 簡歷上的東西
- 結合偏差和方差說明gbdt和rf的區別,然後又圍繞展開很多其他問題
- spark的基本問題
- spark程式執行很慢的原因
二面
- 開始就聊工作預期bulabula
- sgd的並行化思路
- sgd並行化思路展開,一個並行任務執行很慢怎麼辦
- 飛機尋找在沙漠中尋找黑匣子:飛機得到黑匣子的訊號,有強弱的區別
- 尋找黑匣子的過程像什麼演算法
美團面試
一面
- 簡歷上的東西
- 連續子陣列的最大和
- 字串轉整數
- 研究生期間讓自己覺得不錯的專案
二面
- 簡歷上的東西,為什麼寫貝葉斯和決策樹
- 論文
- 時序演算法的一些相關問題
三面
沒什麼技術問題,主要是簡歷上的東西以及是否有意願來