寫在前面
今天給大家分享一份NLP算法方向的社招面經(jīng),當然校招也可以參考,希望對大家有所幫助。在今年這個相對糟糕的大環(huán)境下,面試者歷經(jīng)1個多月的刷題復(fù)習+1個多月的面試,最終拿到了多個大廠offer。
1.背景
2022年大環(huán)境不太好,整體hc(head count)比2021年少了很多,回想2021年,各個候選人所到之處,各家大廠中廠竭誠歡迎,hc充足,大家挑花了眼,那種生機勃勃,萬物競發(fā)的景象猶在眼前,沒想到短短一年之后,居然情況急轉(zhuǎn)直下。
情況介紹:我主要做nlp,也涉及到多模態(tài)和強化學習。2022年的大環(huán)境比較差,能投的公司不是很多,比如騰訊,主要還是高級別的,所以騰訊我就沒投(說得好像我投了能面過一樣...)。面了的公司包括小紅書,抖音,寒武紀,螞蟻,還有一些國企和研究院,比如北京智源人工智能研究院,某國內(nèi)金融公司,其他的用來練手也面了一些,比如蔚來汽車,吉利汽車,華人運通,boss直拒,還有一些元宇宙公司,AI制藥公司之類的,拿到了其中大部分offer,當然我自己也遇到一些拉胯情況,比如小紅書二面掛[笑哭]。
2. 面試總結(jié)
這一個多月面下來,總體面試考察主要包括下面幾個模塊:代碼題+項目細節(jié)+八股文+場景題。其中:
代碼題
代碼題,寫不出來大概率還是要跪的,我覺得刷200道左右一般就問題不大。200道爭取達到肌肉記憶,就是給出你題目你要10s之內(nèi)給出思路,哪怕沒有bug free,但是一定要保證有思路。有一點要注意,200道高頻題刷2遍,好過400道題目刷一遍,重點還是刷高頻題。另外推薦的刷題地址,里面可以選擇公司和標簽:
刷題地址:https://codetop.cc/home
項目
項目細節(jié)我的感觸最深,有些面試官會問的很細,在不斷的試探我們的邊界,所以項目細節(jié)還是要準備到位。通過這段時間的面試我反而對項目的理解更深刻,不知道這算不算面試給我?guī)淼氖找妫?/p>
這里有一個提高通過率的小trick:可以和1個或者多個靠譜小伙伴一起,讓大家看對方的簡歷,假設(shè)自己是面試官,然后針對項目出一些題目,這樣一來可以查漏補缺,有點co-teaching的感覺,這個方法還是挺管用的,大家可以試試~
八股文
八股文的話主要圍繞項目出題,比如你做了強化學習的東西,那么常見的reinforce,actor-critic,on policy和off policy的區(qū)別,一定要掌握。比如你項目用到了swin-transformer,那么swin-transformer和傳統(tǒng)的transformer的區(qū)別是什么,patch merging怎么做的,要清楚。
場景題
場景題可能是大廠喜歡考察,小廠不一定問。
3.面經(jīng)
廢話不多說,面經(jīng)奉上。
3.1 小紅書
3.1.1 小紅書一面
聊項目。
你們的訓練集和驗證集,測試集分別是多少?怎么來的?
宏平均和微平均是用來干什么的?是如何計算的?他倆的主要區(qū)別?
知識蒸餾為什么有效,詳細介紹一下知識蒸餾?
強化學習適合在哪些場景使用?
智力題:如何用rand6實現(xiàn)rand10。
代碼題:lc 76,最小覆蓋子串。
3.1.2 小紅書二面
聊項目。
layer normalization的好處是?和batch normalization的區(qū)別?你有沒有看過有的transformer也用bn?
BERT的主要改進,包括結(jié)構(gòu)的改進,預(yù)訓練方式的改進,都說一下?(這里能說的很多,挑自己熟悉的說就行)
Reformer中,LSH(局部敏感哈希)是如何實現(xiàn)的?
CRF和HMM的區(qū)別,哪個假設(shè)更強?他們的解碼問題用什么算法?
lstm參數(shù)量計算,給出emb_size和hidden_size,求lstm參數(shù)量。
cv中有哪些常見的數(shù)據(jù)增強方式。
簡單實現(xiàn)一個layer normalization類,只需要實現(xiàn)__init__和forward就行。
總結(jié):這一面壓力不小,而且面試官從一開始就多次打斷我的說話,說我目前做的項目沒意義,而且表情好像不耐煩,不知道是不是晚上面試耽誤他下班了。這是我體驗最差的一場面試,當時我有點想和他懟起來,但是想想還是忍住了,最后掛了也是意料之中
3.2 抖音
3.2.1 抖音一面
聊項目。
AUC的兩種公式是?你能證明這兩種等價的嗎?
BERT-CRF中,為什么要加CRF?好處是?
self-attention為什么要用QKV三個矩陣,不用有什么問題?有沒有哪個模型的Q和K矩陣是一樣的?
reinforce屬于on-policy還是off-policy?為什么?
reinforce帶上baseline好處是?reinforce的loss寫一下?
策略梯度會推導(dǎo)嗎?簡單寫一下?
代碼題(代碼題一般別著急寫,先跟面試官說下思路,確定了再寫):
lc 46,全排列(lc表示leetcode,下同)。
lc 73,矩陣置0。
總結(jié):這一面我以為面試官只會問多模態(tài),不會問強化學習,沒想到這個面試官好厲害,強化學習也很懂,真的很強啊,我比較好奇,他們哪里來那么多時間看那么多領(lǐng)域的東西
3.2.2 抖音二面
介紹項目。
知識蒸餾有哪幾種?你覺得哪種效果最好?
nlp的數(shù)據(jù)增強方法,主要有哪幾種?每一種舉個例子?
分類的損失函數(shù)為什么是交叉熵而不是mse?
BERT對輸入文本的長度有什么限制,為什么要限制長度呢?
BigBird里面有哪幾種注意力機制?相比原始transformer的self-attention的優(yōu)勢?
場景題:如何根據(jù)拼多多的商品數(shù)量,估計淘寶的商品數(shù)量?
給出emb_size, max_len, vocab_size, ff_inner_size,num_heads, 12層,求BERT參數(shù)量。
代碼題:n皇后問題。
總結(jié):給我來了一道hard題目,我以為我要掛了,結(jié)果沒幾分鐘HR告訴我過了。
3.2.3 抖音三面
簡單聊項目。
CRF和HMM區(qū)別?CRF為什么比HMM效果好?
如果BERT詞表很大,比如vocab_size達到幾百萬,怎么辦?
快速手寫一些transformer的mha(多頭注意力),偽代碼意思一下就行。
為什么對比學習中,temperature很小,而知識蒸餾的temperature比較大?
你覺得在抖音買東西,和淘寶、拼多多他們的區(qū)別是?(我沒在抖音買過,就只能現(xiàn)場編。)
你最近看到過哪些paper?簡單介紹下?
你覺得自己有那些優(yōu)缺點?平時喜歡怎么緩解壓力?
總結(jié):這一面的面試官很和藹,一直笑呵呵的,后面就是閑聊了,體驗很不錯。
3.3 螞蟻
3.3.1 螞蟻一面
聊項目。
多模態(tài)的預(yù)訓練方式你知道哪些,知道的都說一下?
coca和CLIP的區(qū)別?為什么coca效果比CLIP好?
CLIP預(yù)訓練的時候,batch size達到了32768,他用到了哪些trick去提高batch size?
CRF的loss寫一下,CRF打破了HMM的哪個假設(shè)?
對比學習為什么有效?cv和nlp的經(jīng)典的對比學習的模型說一下?
多頭注意力的頭的數(shù)量,對參數(shù)量有影響嗎?為什么?
transformer里面為什么要加add&norm模塊?好處是什么?
代碼:
簡單實現(xiàn)一個transformer-encoder-layer,要求pre-norm和post-norm可選。
編輯距離。
這和我想的螞蟻的面試不太一樣,我以為螞蟻的代碼題會容易一些呢,之前看到的面經(jīng),螞蟻的代碼題一般以medium為主
3.3.2 螞蟻二面
聊項目。
衡量對比學習的兩個指標是哪些?公式?
transformer相比lstm的優(yōu)勢有哪些?
distillBERT, tinyBERT, mobileBERT和miniLM,他們是如何對BERT蒸餾的?
ViT是如何對圖片進行處理的?為什么要加position embedding?
說到position embedding,transformer一定要加position embedding么?有些模型沒有加pe,你知道嗎?
beam search的思想,偽代碼實現(xiàn)。
代碼題:lc 33,排序數(shù)組的搜索。
3.3.3 螞蟻三面:
聊項目。
多頭注意力,給出序列長度n和hidden_size,那么多頭注意力的時間復(fù)雜度是多少?
ALBert相比BERT的改進,說一下?
BERT預(yù)訓練有哪些問題?后面的模型怎么改進的?重點說說ELECTRA和MacBERT。
有沒有了解過,有的模型用生成的方式做信息抽取?
講一下UIE模型是怎么做信息抽取的?其中的SSI和SEL說一下?
你老家哪里的?有哪些興趣愛好?
你覺得自己優(yōu)缺點有哪些?
我們走個流程,來一道代碼題吧:lc 207,課程表。
3.4 寒武紀
3.4.1 寒武紀一面:
聊項目。
你知道哪些對比學習的方法?cv和nlp都說一下。
simCLR和moco區(qū)別?moco里面加k_encoder的作用?
moco v2, moco v3相對moco的改進有哪些?
resnet為什么效果好?殘差連接的好處?
pytorch中,dataloader dataset和sampler的關(guān)系?
動態(tài)圖和靜態(tài)圖區(qū)別?
蒸餾,量化和剪枝的原理大致說一下?
3.4.2 寒武紀二面:
聊項目。
簡單介紹一些CRF的好處,CRF條件概率的公式寫一下。
transformer相比lstm的優(yōu)勢有哪些?
transformer優(yōu)點那么多,是不是可以淘汰lstm了,以后全用transformer?
swin-transformer和ViT的區(qū)別?數(shù)據(jù)量少的時候,他們和ResNet比,哪個效果好?為什么?
寒武紀做什么你知道嗎?分布式訓練用過嗎?
pytorch的ddp和dp區(qū)別是什么?
你對混合精度的了解多嗎?說一下混合精度的原理?
4. 面試感受總結(jié)
高密度的面試挺累的,所以我建議分階段面試:前期面試一些練手的小公司,同時這些小公司也不能太水,不然達不到練手的效果,然后比如隔一周時間稍微總結(jié)下,接下來正式面試自己的dream company。
結(jié)對跳槽是個不錯的選擇,這次跳槽我和朋友一起跳,相互給對方出題,相互吐槽自己遇到的奇葩面試官,比自己一個人跳槽有趣的多。這次面試的復(fù)習過程也得到了很多大佬的幫助,比如 給了我很多指點和建議,沒有他們的幫助我估計面試通過率下降一半,所以內(nèi)心真的特別感謝~
持續(xù)更新中,因為最近面試完了以后有點累,加上本身工作也有點忙,面經(jīng)沒寫完,后面會繼續(xù)更新~
審核編輯 :李倩
-
算法
+關(guān)注
關(guān)注
23文章
4739瀏覽量
96721 -
nlp
+關(guān)注
關(guān)注
1文章
491瀏覽量
23043
原文標題:NLP算法面經(jīng)分享
文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
求一份CS1237資料
求一份CS32G020實現(xiàn)ALT Mode功能的demo
工業(yè)傳感器的“愛情長跑”:用精準數(shù)據(jù)守護每一份信任

基于 NXP NCJ29D5D UWB 定位算法方案

使用CS1237時在640HZ采集電壓失敗,使用STM32F103,GPIO口模擬通信,請求一份官方示例代碼
求一份在STM32F407的CS1239的驅(qū)動程序
求一份evl-32px10的資料
求一份evl-32px10評估板的資料
智能工具視頻特輯上線!5分鐘速通AI視覺算法方案和模型構(gòu)建

評論