效果調(diào)優(yōu)應(yīng)該是算法工程師最基礎(chǔ)的工作了我們需要對(duì)當(dāng)前的現(xiàn)狀有一定了解后,提出有效的效果優(yōu)化方案,為指標(biāo)服務(wù),最終達(dá)到指標(biāo)提升的目標(biāo)。但是,效果調(diào)優(yōu)并不是一個(gè)容易的事,為了讓大家能更快找到有效的解決方案,完成優(yōu)化任務(wù),這里給大家介紹一下我的流程和思路。
算法效果調(diào)優(yōu)的流程
在開始之前,先和大家說清為什么要有這個(gè)流程。所謂流程,在明確的情況下,能讓大家更簡單直接地執(zhí)行,執(zhí)行過程中,更不容易遺漏關(guān)鍵點(diǎn),流暢地流程能讓我們更快更有目的性地做事,所以有這個(gè)流程還是很重要的。效果調(diào)優(yōu)主要是下面幾個(gè)流程,我詳細(xì)介紹下。
明確目標(biāo)和現(xiàn)狀
一個(gè)模型也好,一個(gè)算法模塊也好,他都有自己的功能,他執(zhí)行的怎么樣,有哪些問題,距離預(yù)期差多遠(yuǎn),這都是我們要在最開始明確的,一般情況很簡單,就是看指標(biāo),例如準(zhǔn)確率和召回率,復(fù)雜的,還有一些業(yè)務(wù)角度的指標(biāo),我們必須明確,在開始執(zhí)行,為了方便大家觀測,這里列舉出需要在這步里回答的問題,供大家參考,能回答這些問題,那可以開始進(jìn)行下一步。
這個(gè)模塊的主要功能是什么,預(yù)期的指標(biāo)是多少,計(jì)算和抽樣邏輯是否具有合理性(一定要注意,有些時(shí)候出現(xiàn)的問題就在抽樣和指標(biāo)上,這個(gè)錯(cuò)了,后面的優(yōu)化無從談起)。
當(dāng)前模塊的指標(biāo)是多少,距離目標(biāo)還差多少。
具體使用的技術(shù)方案是什么,這里有沒有做什么權(quán)衡和妥協(xié),這些妥協(xié)有沒有解開的可能。
上面的問題,如果能夠很清楚地回答,說明你對(duì)這個(gè)問題、模塊等都非常明確,在這個(gè)前提下去做效果調(diào)優(yōu),才是有效的。
分析和定位問題
很多新人很容易跳過這個(gè)步驟,但這往往是最重要,而且是最考驗(yàn)算法工程師功力的部分。
分析和定位的過程,核心目標(biāo)是關(guān)注這幾個(gè)問題:
確定當(dāng)前方案的問題點(diǎn)在哪里,哪些位置或者哪些case沒有解決好。
看集中性和case分布,哪些是重點(diǎn)問題,需要優(yōu)先考慮哪些問題。
評(píng)估問題的難度和解決率,從而了解預(yù)期的收益。
這里的分析,我喜歡把它分為兩個(gè)視角,一個(gè)是宏觀,另一個(gè)是微觀。前者更關(guān)注整體數(shù)據(jù)上的問題,通過多個(gè)角度的統(tǒng)計(jì),來發(fā)現(xiàn)目前數(shù)據(jù)和模型的問題,例如在多分類場景,統(tǒng)計(jì)各個(gè)類目的準(zhǔn)確率、召回率甚至各個(gè)類目的數(shù)據(jù)占比,找出類目短板,對(duì)類目短板進(jìn)行針對(duì)性提升是可以很大程度上提升總體指標(biāo)的;后者,則是進(jìn)行case分析,找出bad case的一些共性,并對(duì)共性問題進(jìn)行針對(duì)性解決,當(dāng)然這里也會(huì)考驗(yàn)到不同角度的bad case抽取,這個(gè)可以結(jié)合前面宏觀的分析結(jié)論來抽樣處理。
解決方案的制定
有了前面信息的支撐,我們是可以開始進(jìn)行效果調(diào)優(yōu)了,然而,用什么方法來解決,也是一個(gè)問題,如何去找最合適的方法來解決我們上面分析出的問題。
首先,我們要知道,有哪些可行的解決方案。如果是只會(huì)換模型,調(diào)參數(shù),那招數(shù)屬實(shí)有點(diǎn)少,如果是這種情況,我們就應(yīng)該去調(diào)研,多去看看業(yè)界和科研界的主要方案(平時(shí),也需要),另一方面,我們也看看簡單地,從樣本、模型、規(guī)則上是否有快速的解決方案,增加手里能打的牌,才有可能有好牌,只有儲(chǔ)備的夠多,才更容易從中找出好東西來解決問題。
第二步,就是方案的選擇,要從眾多方案中,找出最優(yōu)的方案,這里大家需要考慮這幾個(gè)問題:
方案對(duì)問題的解決程度是否可以明確,看能解決當(dāng)前多少的問題。
方案的上下限在哪,除了解決問題本身外,還有沒有別的問題可以解決,或者帶來哪些傷害,換言之,方案的優(yōu)缺點(diǎn)是什么,這點(diǎn)要明確。
方案需要投入多少的時(shí)間、人力、機(jī)器、數(shù)據(jù)等資源。
這些問題大家平時(shí)多少都會(huì)考慮到,但是并不一定全,尤其是后者,玩NLP的多少都會(huì)手癢試試BERT,包括我在內(nèi),但是理性思考后其實(shí)很可能不會(huì)當(dāng)做一個(gè)優(yōu)先級(jí)較高的方案了,尤其是問題都很明確的情況下。
調(diào)優(yōu)的難點(diǎn)問題
說到調(diào)優(yōu),其實(shí)難度比較大的,是這么幾個(gè)位置。
首先,是問題的定位難,我們往往很容易通過直觀的指標(biāo)知道我們的方案是有問題,有一定空間的,但是,具體突破口在哪里,這個(gè)會(huì)很困難。這里給大家?guī)讉€(gè)建議吧:
多看case,好的壞的,都多看看,理解業(yè)務(wù)里面常見的用例,只有理解,才能更多地發(fā)現(xiàn)問題。
當(dāng)然,我們也可以多看看很多文章,論文的、技術(shù)分享的等等,很多文章都會(huì)去聊他們面臨的問題以解決方案,這些問題其實(shí)給我們提供思路,例如“我們會(huì)不會(huì)也遇到和他們一樣的問題”。
然后,是解決方案的儲(chǔ)備問題。方案分兩種,一種是針對(duì)性方案,根據(jù)明顯的問題我們可以想到一些快速的解決方案,這個(gè)往往取決于我們對(duì)業(yè)務(wù)的理解能力和方法的熟悉程度。第二種,是一些長期的,依賴儲(chǔ)備的方案,很多業(yè)界的方法會(huì)給我們很多思路,這些思路的內(nèi)化能讓我們很快從中找到解決方案。無論是前者還是后者,其實(shí)都很依賴我們的平時(shí)積累,這個(gè)積累不僅在于量,還在于質(zhì),也就是深度,對(duì)方案理解的越清楚,越能看清本質(zhì),我們用起來其實(shí)會(huì)更加得心應(yīng)手。
第三點(diǎn),是技術(shù)方案的權(quán)衡。權(quán)衡是根據(jù)我們需要面臨的技術(shù)環(huán)境的,例如數(shù)據(jù)、機(jī)器、時(shí)間、人力等,有的方案可能可以很好的解決問題,但是會(huì)花費(fèi)很多成本,例如NLPer最喜歡的預(yù)訓(xùn)練模型,他是很依賴機(jī)器的,后續(xù)即使效果真的會(huì)有提升,也要考慮到性能和機(jī)器的問題最終可能上不了線就功虧一簣了。這個(gè)其實(shí)挺吃經(jīng)驗(yàn),權(quán)衡這個(gè)能力是需要經(jīng)過項(xiàng)目的歷練,逐步形成的,坑才多了才能把坑繞過,這點(diǎn)需要大家在進(jìn)行項(xiàng)目的過程中多思考多總結(jié)。
調(diào)優(yōu)能力
上面聊了很多有關(guān)調(diào)優(yōu)流程的東西,但是,調(diào)優(yōu)本身的能力要求還是比較高的,這里我整理了一些有關(guān)調(diào)優(yōu)能力的能力項(xiàng)和成長的階段,看看對(duì)大家有沒有什么幫助,當(dāng)然,我自己的能力也沒到很高的水平,持續(xù)學(xué)習(xí)和成長吧。
首先是執(zhí)行力,在問題都給清楚了,解決方案也明確了,這個(gè)時(shí)候能編碼實(shí)現(xiàn),這個(gè)應(yīng)該是最基本的能力了。
第二層就是獨(dú)立完成的能力。
首先,能通過多種分析手段,診斷出現(xiàn)有方案的問題。
第二,就是解決方案的提出。這里背后,比較重要的事解決方案和技術(shù)的儲(chǔ)備。這點(diǎn)是需要長期積累的,一方面是對(duì)數(shù)據(jù)、場景的熟悉,另一方面是對(duì)業(yè)界和科研界的技術(shù)的了解,如果儲(chǔ)備不夠,很多問題絕對(duì)是解決不了的。
第三層,其實(shí)除了獨(dú)立完成以外,能有整個(gè)項(xiàng)目的視野。
現(xiàn)狀的理解和未來的規(guī)劃,能帶著規(guī)劃去設(shè)計(jì)解決方案。
能夠跳出問題,結(jié)合業(yè)務(wù)等因素來解決問題和甚至到框架和系統(tǒng)的設(shè)計(jì)。
審核編輯:劉清
-
算法
+關(guān)注
關(guān)注
23文章
4599瀏覽量
92643
原文標(biāo)題:談?wù)勑Ч{(diào)優(yōu)的流程和能力
文章出處:【微信號(hào):zenRRan,微信公眾號(hào):深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評(píng)論請先 登錄
相關(guān)推薦
評(píng)論