NLP 算法工程師相關的面試題
- 2019 年 10 月 31 日
- 筆記
【導讀】本項目記錄了面試NLP算法工程師常會遇到的問題,作者songyingxin。
1. 編程語言基礎
該文件夾下主要記錄 python 和 c++ 的一些語言細節, 畢竟這兩大語言是主流,基本是都要會的,目前還在查缺補漏中。
- C++面試題
- Python 面試題
2. 數學基礎
該文件夾下主要記錄一些數學相關的知識,包括高數,線性代數,概率論與信息論, 老宋親身經歷,會問到, 目前尚在查缺補漏中。
- 概率論
- 高等數學
- 線性代數
- 信息論
3. 計算機基礎理論知識
這部分內容一般不怎麼考,因此,沒有把重心放在上面,至少現在幾乎沒有遇到問這方面的, 有意思的是,投了阿里某部的NLP算法,居然來了個不懂NLP的來面,全程真的瞎聊,全是開發。
4. 機器學習基礎
這部分已經開始進入正題了,事實證明,部分大廠會提及一些基礎的機器學習算法知識,因此,這部分我覺得幾個核心的模型是要會的。
- 機器學習項目流程
- 判別模型 vs 生成模型
- 頻率派 vs 貝葉斯派
- 數據預處理
- 特徵工程
- 特徵工程-關聯規
- 模型 – SVM
- 模型 – 聚類算法
- 模型 – 決策樹
- 模型 – 邏輯回歸
- 模型 – 樸素貝葉斯
- 模型 – 隨機森林
- 模型 – 線性回歸
5. 深度學習基礎
這部分主要講述深度學習方面的基礎知識,是核心點,但很多情況下,很多面試官的題基本差不多,不過我個人覺得,有這種全局的,全面的知識框架是有益的。
- 深度學習項目流程
5.1 基礎理論部分
- 基礎理論 – 多任務學習
- 基礎理論 – 集成學習
- 基礎理論 – 分類問題評估指標
- 基礎理論 – 距離度量方法
- 基礎理論 – 目標函數,損失函數,代價函數
- 基礎理論 – 偏差 vs 方差,欠擬合 vs 過擬合
- 基礎理論 – 數據角度看深度學習
- 基礎理論 – 梯度消失,梯度爆炸問題
- 基礎理論 – 維數災難問題
- 基礎理論 – 指數加權平均
- 基礎理論- 局部最小值,鞍點
- 基礎理論 – 集成學習
- 基礎理論 – 集成學習
5.2 基本單元
- 基本單元 – CNN
- 基本單元 – MLP
- 基本單元 – RNN
5.3 調參相關
- 調參 – 超參數調優
- 調參 – 激活函數
- 調參 – 權重初始化方案
- 調參 – 優化算法
5.4 Tricks
- Trick – Dropout
- Trick – Normalization
- Trick – 融合訓練集,驗證集,測試集
- Trick – 提前終止
- Trick – 學習率衰減
- Trick – 正則化
6. 統計自然語言處理
這部分前期的筆記做的不多,因此還沒怎麼開始。
7. 深度學習自然語言處理
這部分算是核心的知識了,這部分還需要逐漸完善,時間有點緊啊。
- 文本數據預處理
- 各大任務的評價指標
- 改進 NLP 模型的一些思路
7.1 詞向量三部曲
- 詞向量 – Word2Vec
- 詞向量 – Glove
- 詞向量 – FastText
7.2 預訓練語言模型
- 預訓練語言模型 – BERT改進研究
- 預訓練語言模型 – 融入知識圖譜
- 預訓練語言模型 – 自然語言生成
7.3 Attention 機制7.4 文本分類7.5 語義匹配7.6 閱讀理解
8. 源碼閱讀
這部分主要推薦一些自己閱讀過的一些源碼,有些源碼是 NLP 相關, 有些是深度學習相關的,部分源碼我個人有做注釋,會相應的列出來。
原文鏈接:
https://github.com/songyingxin/NLPer-Interview