面了百度AI,新生代农民工炸了
最近摸魚期間,發(fā)現(xiàn)程序員被賦予了另一個(gè)身份“新生代農(nóng)民工”,簡(jiǎn)直炸了!重點(diǎn)還官宣了,這就更加實(shí)錘了啊!我們新生代農(nóng)民工招誰(shuí)惹誰(shuí)了,我們能有什么壞心思呢?頭都禿了掙點(diǎn)高工資容易嗎?
說(shuō)到高工資,坊間確實(shí)流傳著程序員35歲財(cái)富自由一說(shuō),尤其是做AI算法工程師的,年紀(jì)輕輕就可以月入6W+!但也有不少人說(shuō)了,真能開出高薪的也就大廠了吧,看看那些JD,再看看自己之前螺絲釘?shù)墓ぷ?#xff0c;大廠的程序員是不是都得會(huì)造輪子?自己能面的上么?
這不,一個(gè)朋友最近去百度面了一個(gè)AI相關(guān)的工作,面試官結(jié)合現(xiàn)在流行的AI、物聯(lián)網(wǎng)趨勢(shì),問到AI落地會(huì)考慮哪些問題,先來(lái)給大家分享一下~
一、為了適配邊緣部署要求,AI算法怎么做適配?
二、在模型效果和效率之間怎么做平衡和取舍?怎么在不犧牲效果的前提下提高效率?
三、AI算法上線后怎么持續(xù)做迭代?
這一連“三問”瞬間給朋友問懵了,他說(shuō)當(dāng)時(shí)真想找個(gè)地縫鉆進(jìn)去。不過幸好他提前刷了很多試題,也找別人取了經(jīng)驗(yàn),關(guān)鍵還主動(dòng)對(duì)飛槳PaddlePaddle、飛槳企業(yè)版BML等產(chǎn)品做了一些了解,思考了一會(huì)兒以后竟然對(duì)答如流,簡(jiǎn)直“凡爾賽”了!面試回來(lái)竟然還寫了面經(jīng)!
“跑起來(lái)”——適配、適配,還是適配!
我們都知道現(xiàn)在是人工智能時(shí)代,越來(lái)越多的AI需要從云端擴(kuò)展到我們熟悉的邊緣端,比如智能耳機(jī)、智能攝像機(jī)、智能手環(huán)、物流機(jī)器人等等,把AI部署在邊緣端已經(jīng)成為趨勢(shì),這也正式嵌入式AI要做的事情。而我們關(guān)心的AI模型能不能跑起來(lái)問題,關(guān)鍵在于軟硬件環(huán)境的適配情況:
硬件適配,當(dāng)然是適配越多的AI芯片越好。常見的有CPU,GPU,FPGA,以及各類ASIC芯片,例如:Nvidia Jetson系列、海思NNIE系列、華為Atlas、麒麟NPU、高通DSP、Intel VPU、瑞芯微NPU、寒武紀(jì)等,都適配了就給工程師降低了端側(cè)模型適配遷移的難度,換一個(gè)設(shè)備照樣可以輕松的部署上去;
軟件適配,四大操作系統(tǒng)肯定不用說(shuō)要適配。Linux、Windows、Android 、iOS,無(wú)論是PC還是手機(jī),都得能給安排上;
框架適配,越全越好。我們知道的飛槳 PaddlePaddle、TensorFlow、PyTorch、Caffe、MXNet 等框架以及 ONNX 模型格式。此外,還要支持圖像分配、物體檢測(cè)、人臉識(shí)別、OCR等業(yè)界主流的算法類型,這樣在模型的適配和轉(zhuǎn)換方面可以輕松自如。
“跑得快”——“輕裝上陣”,不以犧牲精度為目的
在進(jìn)行端側(cè)部署時(shí),我們通常比較關(guān)注模型的推理性能,其實(shí),各家AI芯片廠商為了實(shí)現(xiàn)更高性能的推理能力,都在努力提高芯片的并行處理能力,比如通過GPU這樣的超多線程并行處理……但最終的結(jié)果是,算力得到提升了,靈活性反而下降了。
想要一個(gè)速度快、精度高、占用內(nèi)存少的模型,該怎么辦?
為了讓模型跑得更快更省內(nèi)存,我們可以采用模型壓縮,比如模型量化、剪枝和蒸餾技術(shù) ,讓模型輕便地跑起來(lái),在盡可能保證效果的同時(shí)達(dá)到更好的壓縮效果。蒸餾可以簡(jiǎn)單理解為,通過大模型蒸餾小模型,使得小模型具有與大模型接近的效果。而量化、剪枝本質(zhì)都是對(duì)基礎(chǔ)模型在盡量不影響精度的前提下進(jìn)行精簡(jiǎn) , 自然模型小了 , 內(nèi)存占用就少了 , 推理時(shí)間也就短了,功耗也更低。
“持續(xù)跑”——部署并非一勞永逸,AI要自我迭代
模型的部署不是一勞永逸的,我們需要根據(jù)客戶需求或者實(shí)際的業(yè)務(wù)場(chǎng)景進(jìn)行迭代升級(jí),需要在應(yīng)用中收集樣本、不斷更新模型。
其實(shí),最簡(jiǎn)單的模型維護(hù)方式就是不斷添加新數(shù)據(jù),或者在添加的基礎(chǔ)上做進(jìn)一步數(shù)據(jù)增強(qiáng),從而提升模型迭代的精度。比較好操作的方法就是把新的數(shù)據(jù)添加到原有的數(shù)據(jù)集,從而讓模型持續(xù)優(yōu)化。
以上就是朋友做的面試經(jīng)驗(yàn)總結(jié)啦,當(dāng)然他也喜提了百度AI的offer,他很慶幸自己提前做足了功課,尤其是對(duì)百度BML的深入了解,面試問題可謂正中下懷!他也給身邊想學(xué)AI的朋友們安利了百度BML,從AI入門到精通都可以在這個(gè)平臺(tái)上進(jìn)行。講真,靠這個(gè)面試拿到高薪,程序員農(nóng)民工也很知足了。
9月15-16日,邀請(qǐng)您參加百度AI快車道-BML線上課程,百度技術(shù)專家將聯(lián)合英偉達(dá)解決方案專家一起探討如何在端側(cè)高效部署AI模型,誠(chéng)邀您的參與。
參與百度BML線上直播互動(dòng),可抽取Jetson Nano、小度耳機(jī)、智能音箱、體脂秤等好禮。
課程結(jié)束體驗(yàn)產(chǎn)品并完成“產(chǎn)品體驗(yàn)調(diào)研報(bào)告”,可獲得100元京東卡獎(jiǎng)勵(lì)。
?
點(diǎn)擊【閱讀原文】,參與課程直播抽獎(jiǎng)活動(dòng)。
總結(jié)
以上是生活随笔為你收集整理的面了百度AI,新生代农民工炸了的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【NLP】词嵌入基础和Word2vec
- 下一篇: NC代码调试 - 持续更新