哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何成為一名自然語言處理工程師

人工智能精選 ? 2018-08-27 09:43 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

自然語言處理和大部分的機器學(xué)習或者人工智能領(lǐng)域的技術(shù)一樣,是一個涉及到多個技能、技術(shù)和領(lǐng)域的綜合體。

所以自然語言處理工程師會有各種各樣的背景,大部分都是在工作中自學(xué)或者是跟著項目一起學(xué)習的,這其中也不乏很多有科班背景的專業(yè)人才,因為技術(shù)的發(fā)展實在是日新月異,所以時刻要保持著一種強烈的學(xué)習欲望,讓自己跟上時代和技術(shù)發(fā)展的步伐。本文作者從個人學(xué)習經(jīng)歷出發(fā),介紹相關(guān)經(jīng)驗。

一些研究者將自然語言處理(NLP,Natural Language Processing)和自然語言理解(NLU,Natural Language Understanding)區(qū)分開,在文章中我們說的NLP是包含兩者的,并沒有將兩者嚴格分開。

圖1 自然語言處理工程師技能樹

自然語言處理學(xué)習路線

數(shù)學(xué)基礎(chǔ)

數(shù)學(xué)對于自然語言處理的重要性不言而喻。當然數(shù)學(xué)的各個分支在自然語言處理的不同階段也會扮演不同的角色,這里介紹幾個重要的分支。
代數(shù)

代數(shù)作為計算數(shù)學(xué)里面很重要的一個分支,在自然語言處理中也有舉足輕重的作用。這一部分需要重點關(guān)注矩陣處理相關(guān)的一些知識,比如矩陣的SVD、QR分解,矩陣逆的求解,正定矩陣、稀疏矩陣等特殊矩陣的一些處理方法和性質(zhì)等等。

對于這一部分的學(xué)習,既可以跟著大學(xué)的代數(shù)書一起學(xué)習,也可以跟著網(wǎng)上的各種公開課一起學(xué)習,這里既可以從國內(nèi)的一些開放學(xué)習平臺上學(xué),也可以從國外的一些開放學(xué)習平臺上學(xué)。這里放一個學(xué)習的鏈接,網(wǎng)易公開課的鏈接:https://c.open.163.com/search/search.htm?query=線性代數(shù)#/search/all。(其他的資料或者平臺也都OK)。

  • 概率論

在很多的自然語言處理場景中,我們都是算一個事件發(fā)生的概率。這其中既有特定場景的原因,比如要推斷一個拼音可能的漢字,因為同音字的存在,我們能計算的只能是這個拼音到各個相同發(fā)音的漢字的條件概率。也有對問題的抽象處理,比如詞性標注的問題,這個是因為我們沒有很好的工具或者說能力去精準地判斷各個詞的詞性,所以就構(gòu)造了一個概率解決的辦法。

對于概率論的學(xué)習,既要學(xué)習經(jīng)典的概率統(tǒng)計理論,也要學(xué)習貝葉斯概率統(tǒng)計。相對來說,貝葉斯概率統(tǒng)計可能更重要一些,這個和貝葉斯統(tǒng)計的特性是相關(guān)的,因其提供了一種描述先驗知識的方法。使得歷史的經(jīng)驗使用成為了可能,而歷史在現(xiàn)實生活中,也確實是很有用的。比如樸素貝葉斯模型、隱馬爾卡模型、最大熵模型,這些我們在自然語言處理中耳熟能詳?shù)囊恍?a href="http://m.greenbey.cn/v/tag/2562/" target="_blank">算法,都是貝葉斯模型的一種延伸和實例。

這一部分的學(xué)習資料,也非常豐富,這里也照例對兩種概率學(xué)習各放一個鏈接,統(tǒng)計學(xué)導(dǎo)論http://open.163.com/movie/2011/5/M/O/M807PLQMF_M80HQQGMO.html,貝葉斯統(tǒng)計:https://www.springboard.com/blog/probability-bayes-theorem-data-science/。

信息論作為一種衡量樣本純凈度的有效方法。對于刻畫兩個元素之間的習慣搭配程度非常有效。這個對于我們預(yù)測一個語素可能的成分(詞性標注),成分的可能組成(短語搭配)非常有價值,所以這一部分知識在自然語言處理中也有非常重要的作用。

同時這部分知識也是很多機器學(xué)習算法的核心,比如決策樹、隨機森林等以信息熵作為決策樁的一些算法。對于這部分知識的學(xué)習,更多的是要理解各個熵的計算方法和優(yōu)缺點,比如信息增益和信息增益率的區(qū)別,以及各自在業(yè)務(wù)場景中的優(yōu)缺點。照例放上一個鏈接:http://open.163.com/special/opencourse/information.html。

數(shù)據(jù)結(jié)構(gòu)與算法

這部分內(nèi)容的重要性就不做贅述了。學(xué)習了上面的基礎(chǔ)知識,只是萬里長征開始了第一步,要想用機器實現(xiàn)對自然語言的處理,還是需要實現(xiàn)對應(yīng)的數(shù)據(jù)結(jié)構(gòu)和算法。這一部分也算是自然語言處理工程師的一個看家本領(lǐng)。這一部分的內(nèi)容也是比較多的,這里就做一個簡單的介紹和說明。

首先數(shù)據(jù)結(jié)構(gòu)部分,需要重點關(guān)注鏈表、樹結(jié)構(gòu)和圖結(jié)構(gòu)(鄰接矩陣)。包括各個結(jié)構(gòu)的構(gòu)建、操作、優(yōu)化,以及各個結(jié)構(gòu)在不同場景下的優(yōu)缺點。當然大部分情況下,可能使用到的數(shù)據(jù)結(jié)構(gòu)都不是單一的,而是有多種數(shù)據(jù)結(jié)構(gòu)組合。比如在分詞中有非常優(yōu)秀表現(xiàn)的雙數(shù)組有限狀態(tài)機就使用樹和鏈表的結(jié)構(gòu),但是實現(xiàn)上采用的是鏈表形式,提升了數(shù)據(jù)查詢和匹配的速度。在熟練掌握各種數(shù)據(jù)結(jié)構(gòu)之后,就是要設(shè)計良好的算法了。

伴隨著大數(shù)據(jù)的不斷擴張,單機的算法越來越難發(fā)揮價值,所以多數(shù)場景下都要研發(fā)并行的算法。這里面又涉及到一些工具的應(yīng)用,也就是編程技術(shù)的使用。例如基于Hadoop的MapReduce開發(fā)和Spark開發(fā)都是很好的并行化算法開發(fā)工具,但是實現(xiàn)機制卻有很大的差別,同時編程的便利程度也不一樣。

當然這里面沒有絕對的孰好孰壞,更多的是個人使用的習慣和業(yè)務(wù)場景的不同而不同。比如兩個都有比較成熟的機器學(xué)習庫,一些常用的機器學(xué)習算法都可以調(diào)用庫函數(shù)實現(xiàn),編程語言上也都可以采用Java,不過Spark場景下使用Scala會更方便一些。因為這一部分是偏實操的,所以我的經(jīng)驗會建議實例學(xué)習的方法,也就是跟著具體的項目學(xué)習各種算法和數(shù)據(jù)結(jié)構(gòu)。最好能對學(xué)習過的算法和數(shù)據(jù)結(jié)構(gòu)進行總結(jié)回顧,這樣可以更好的得到這種方法的精髓。因為基礎(chǔ)的元素,包括數(shù)據(jù)結(jié)構(gòu)和計算規(guī)則都是有限的,所以多樣的算法更多的是在不同的場景下,對于不同元素的一個排列組合,如果能夠融會貫通各個基礎(chǔ)元素的原理和使用,不管是對于新知識的學(xué)習還是對于新解決方案的構(gòu)建都是非常有幫助的。

對于工具的選擇,建議精通一個,對于其他工具也需要知道,比如精通Java和MapReduce,對于Spark和Python也需要熟悉,這樣可以在不同的場景下使用不同的工具,提升開發(fā)效率。這一部分實在是太多、太廣,這里不能全面地介紹,大家可以根據(jù)自己的需求,選擇合適的學(xué)習資料進行學(xué)習。這里給出一個學(xué)習基礎(chǔ)算法(包含排序、圖、字符串處理等)的課程鏈接:https://algs4.cs.princeton.edu/home/

語言學(xué)

這一部分就更多是語文相關(guān)的知識,比如一個句子的組成成分包括:主、謂、賓、定、狀、補等。對于各個成分的組織形式也是多種多樣。比如對于主、謂、賓,常規(guī)的順序就是:主語→謂語→賓語。當然也會有:賓語→主語→賓語(飯我吃了)。這些知識的積累有助于我們在模型構(gòu)建或者解決具體業(yè)務(wù)的時候,能夠事半功倍,因為這些知識一般情況下,如果要被機器學(xué)習,都是非常困難的,或者會需要大量的學(xué)習素材,或許在現(xiàn)有的框架下,機器很難學(xué)習到。如果把這些知識作為先驗知識融合到模型中,對于提升模型的準確度都是非常有價值的。

在先期的研究中,基于規(guī)則的模型,大部分都是基于語言模型的規(guī)則進行研究和處理的。所以這一部分的內(nèi)容對于自然語言處理也是非常重要的。但是這部分知識的學(xué)習就比較雜一些,因為大部分的自然語言處理工程師都是語言學(xué)專業(yè)出身,所以對于這部分知識的學(xué)習,大部分情況都是靠碎片化的積累,當然也可以花一些精力,系統(tǒng)性學(xué)習。對于這部分知識的學(xué)習,個人建議可以根據(jù)具體的業(yè)務(wù)場景進行學(xué)習,比如在項目處理中要進行同義詞挖掘,那么就可以跟著“百科”或者“搜索引擎”學(xué)習同義詞的定義,同義詞一般會有什么樣的形式,怎么根據(jù)句子結(jié)構(gòu)或者語法結(jié)構(gòu)判斷兩個詞是不是同義詞等等。

深度學(xué)習

隨著深度學(xué)習在視覺和自然語言處理領(lǐng)域大獲成功,特別是隨著AlphaGo的成功,深度學(xué)習在自然語言處理中的應(yīng)用也越來越廣泛,大家對于它的期望也越來越高。所以對于這部分知識的學(xué)習也幾乎成為了一個必備的環(huán)節(jié)(實際上可能是大部分情況,不用深度學(xué)習的模型,也可以解決很多業(yè)務(wù))。

對于這部分知識,現(xiàn)在流行的幾種神經(jīng)網(wǎng)絡(luò)都是需要學(xué)習和關(guān)注的,特別是循環(huán)神經(jīng)網(wǎng)絡(luò),因為其在處理時序數(shù)據(jù)上的優(yōu)勢,在自然語言處理領(lǐng)域尤為收到追捧,這里包括單項RNN、雙向RNN、LSTM等形式。同時新的學(xué)習框架,比如對抗學(xué)習、增強學(xué)習、對偶學(xué)習,也是需要關(guān)注的。其中對抗學(xué)習和對偶學(xué)習都可以顯著降低對樣本的需求,這個對于自然語言處理的價值是非常大的,因為在自然語言處理中,很重要的一個環(huán)節(jié)就是樣本的標注,很多模型都是嚴重依賴于樣本的好壞,而隨著人工成本的上升,數(shù)據(jù)標注的成本越來越高,所以如果能顯著降低標注數(shù)據(jù)需求,同時提升效果,那將是非常有價值的。

現(xiàn)在還有一個事物正在如火如荼地進行著,就是知識圖譜,知識圖譜的強大這里就不再贅述,對于這部分的學(xué)習可能更多的是要關(guān)注信息的鏈接、整合和推理的技術(shù)。不過這里的每一項技術(shù)都是非常大的一個領(lǐng)域,所以還是建議從業(yè)務(wù)實際需求出發(fā)去學(xué)習相應(yīng)的環(huán)節(jié)和知識,滿足自己的需求,鏈接http://www.chinahadoop.cn/course/918。

自然語言處理現(xiàn)狀

隨著知識圖譜在搜索領(lǐng)域的大獲成功,以及知識圖譜的推廣如火如荼地進行中,現(xiàn)在的自然語言處理有明顯和知識圖譜結(jié)合的趨勢。特別是在特定領(lǐng)域的客服系統(tǒng)構(gòu)建中,這種趨勢就更明顯,因為這些系統(tǒng)往往要關(guān)聯(lián)很多領(lǐng)域的知識,而這種知識的整合和表示,很適合用知識圖譜來解決。隨著知識圖譜基礎(chǔ)工程技術(shù)的完善和進步,對于圖譜構(gòu)建的容易程度也大大提高,所以自然語言處理和知識圖譜的結(jié)合就越來越成為趨勢。

語義理解仍然是自然語言處理中一個難過的坎。目前各項自然語言處理技術(shù)基本已經(jīng)比較成熟,但是很多技術(shù)的效果還達不到商用的水平。特別是在語義理解方面,和商用還有比較大的差距。比如聊天機器人現(xiàn)在還很難做到正常的聊天水平。不過隨著各個研究機構(gòu)和企業(yè)的不斷努力,進步也是飛速的,比如微軟小冰一直在不斷的進步。

對于新的深度學(xué)習框架,目前在自然語言處理中的應(yīng)用還有待進一步加深和提高。比如對抗學(xué)習、對偶學(xué)習等雖然在圖像處理領(lǐng)域得到了比較好的效果,但是在自然語言處理領(lǐng)域的效果就稍微差一些,這里面的原因是多樣的,因為沒有深入研究,就不敢妄言。

目前人機對話、問答系統(tǒng)、語言翻譯是自然語言處理中的熱門領(lǐng)域,各大公司都有了自己的語音助手,這一塊也都在投入大量的精力在做。當然這些上層的應(yīng)用,也都依賴于底層技術(shù)和模型的進步,所以對于底層技術(shù)的研究應(yīng)該說一直是熱門,在未來一段時間應(yīng)該也都還是熱門。之前聽一個教授講過一個故事,他是做parser的,開始的時候很火,后來一段時間因為整個自然語言處理的效果差強人意,所以作為其中一個基礎(chǔ)工作的parser就隨之受到冷落,曾經(jīng)有段時間相關(guān)的期刊會議會員銳減,但是最近整個行業(yè)的升溫,這部分工作也隨之而受到重視。不過因為他一直堅持在這個領(lǐng)域,所以建樹頗豐,最近也成為熱門領(lǐng)域和人物。

所以在最后引用一位大牛曾經(jīng)說過的話:“任何行業(yè)或者領(lǐng)域做到頭部都是非常有前途的,即使是打球,玩游戲。”(大意)

個人經(jīng)驗

筆者是跟著項目學(xué)習自然語言處理的,非科班出身,所以的經(jīng)驗難免會有偏頗,說出來僅供大家參考, 有不足和紕漏的地方敬請指正。

知識結(jié)構(gòu)

要做算法研究,肯定需要一定的知識積累,對于知識積累這部分,我的經(jīng)驗是先學(xué)數(shù)學(xué)理論基礎(chǔ),學(xué)的順序可以是代數(shù)→概率論→隨機過程。當然這里面每一科都是很大的一個方向,學(xué)的時候不必面面俱到,所有都深入理解,但是相對基礎(chǔ)的一些概念和這門學(xué)科主要講的是什么問題一定要記住。

在學(xué)習了一些基礎(chǔ)數(shù)學(xué)知識之后,就開始實現(xiàn)——編寫算法。這里的算法模型,建議跟著具體的業(yè)務(wù)來學(xué)習和實踐,比如可以先從識別垃圾郵件這樣的demo進行學(xué)習實驗,這樣的例子在網(wǎng)上很容易找到,但是找到以后,一定不要看看就過去,要一步一步改寫拿到的demo,同時可以改進里面的參數(shù)或者實現(xiàn)方法,看看能不能達到更好的效果。個人覺得學(xué)習還是需要下苦功夫一步一步模仿,然后改進,才能深入的掌握相應(yīng)的內(nèi)容。對于學(xué)習的資料,上學(xué)時期的各個教程即可。

工具

工欲善其事必先利其器,所以好的工具往往能事半功倍。在工具的選擇上,個人建議,最高優(yōu)先級的是Python,畢竟其的宣傳口語是:人生苦短,請用Python。第二優(yōu)先級的是Java,基于Java可以和現(xiàn)有的很多框架進行直接交互,比如Hadoop、Spark等等。對于工具的學(xué)習兩者還是有很大的差別的,Python是一個腳本語言,所以更多的是跟著“命令”學(xué),也就是要掌握你要實現(xiàn)什么目的來找具體的執(zhí)行語句或者命令,同時因為Python不同版本、不同包對于同一個功能的函數(shù)實現(xiàn)差別也比較大,所以在學(xué)習的時候,要多試驗,求同存異。

對于Java就要學(xué)習一些基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu),然后一步一步的去編寫自己的邏輯。對于Python當然也可以按照這個思路,Python本身也是一個高級編程語言,所以掌握了基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu)之后,也可以一步一步的實現(xiàn)具體的功能,但是那樣好像就失去了slogan的意義。

緊跟時代

自然語言處理領(lǐng)域也算是一個知識密集型的行業(yè),所以知識的更新迭代非常的快,要時刻關(guān)注行業(yè)、領(lǐng)域的最新進展。這個方面主要就是看一些論文和關(guān)注一些重要的會議,對于論文的獲取,Google Scholar、arxiv都是很好的工具和資源(請注意維護知識產(chǎn)權(quán))。會議就更多了KDD、JIST、CCKS等等。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 人工智能
    +關(guān)注

    關(guān)注

    1820

    文章

    50335

    瀏覽量

    266976
  • 深度學(xué)習
    +關(guān)注

    關(guān)注

    73

    文章

    5608

    瀏覽量

    124637
  • nlp
    nlp
    +關(guān)注

    關(guān)注

    1

    文章

    491

    瀏覽量

    23345
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    如何成為一名高薪嵌入式工程師?

    學(xué)嵌入式,也可以輕松入門。 如果你已經(jīng)明確好,想要從事嵌入式開發(fā),想要成為一名高薪的嵌入式工程師,那下面這幾點建議請好好看看: 、夯實技術(shù)基礎(chǔ) ?編程
    發(fā)表于 04-09 09:03

    電子工程師的雙標瞬間 #電子 #電子愛好者 #電子工程師 #揚興科技 #雙標

    電子工程師
    揚興科技
    發(fā)布于 :2026年03月02日 18:04:13

    電子工程師設(shè)計要點與經(jīng)驗分享

    電子工程師設(shè)計要點與經(jīng)驗分享 作為一名資深電子工程師,在硬件設(shè)計開發(fā)領(lǐng)域摸爬滾打多年,積累了不少寶貴的經(jīng)驗和見解。今天就和大家分享些電子工程師
    的頭像 發(fā)表于 02-03 11:10 ?327次閱讀

    自然語言處理NLP的概念和工作原理

    自然語言處理 (NLP) 是人工智能 (AI) 的個分支,它會教計算機如何理解口頭和書面形式的人類語言。自然語言
    的頭像 發(fā)表于 01-29 14:01 ?600次閱讀
    <b class='flag-5'>自然語言</b><b class='flag-5'>處理</b>NLP的概念和工作原理

    什么是BSP工程師

    屬于BSP工程師最具有價值含量的工作之,因為它對BSP工程師所掌握的知識的廣度和深度都有定要求。其中會涉及到計算機原理、操作系統(tǒng),處理
    發(fā)表于 01-13 06:54

    電子工程師設(shè)計要點與經(jīng)驗分享

    電子工程師設(shè)計要點與經(jīng)驗分享 作為一名資深電子工程師,在多年的硬件設(shè)計開發(fā)工作中,積累了不少寶貴的經(jīng)驗和見解。下面就和大家分享些電子設(shè)計方面的關(guān)鍵要點和實際案例。 文件下載
    的頭像 發(fā)表于 01-07 13:55 ?527次閱讀

    云知聲論文入選自然語言處理頂會EMNLP 2025

    近日,自然語言處理(NLP)領(lǐng)域國際權(quán)威會議 ——2025 年計算語言學(xué)與自然語言處理國際會議(EMNLP 2025)公布論文錄用結(jié)果,云知
    的頭像 發(fā)表于 11-10 17:30 ?904次閱讀
    云知聲論文入選<b class='flag-5'>自然語言</b><b class='flag-5'>處理</b>頂會EMNLP 2025

    作為一名PCB質(zhì)檢工程師,我為什么在用手持式面銅測試儀?

    在PCB行業(yè),銅厚直是決定阻抗、散熱與可靠性的關(guān)鍵指標。過去,工程師把板子搬到實驗室、等待臺式銅厚儀出結(jié)果;作為一名PCB質(zhì)檢工程師,如今,我更愿意把“實驗室”揣進口袋——手持式面銅
    發(fā)表于 08-11 11:59

    測試工程師都在用的Linux命令清單(建議收藏)

    作為一名工程師,熟練掌握Linux命令是基本功中的基本功。無論是日常工作中的系統(tǒng)維護,還是面試時的技術(shù)考核,Linux命令都是繞不開的核心技能。本文將從實戰(zhàn)角度出發(fā),系統(tǒng)梳理工程師必須掌握
    的頭像 發(fā)表于 08-08 10:06 ?836次閱讀
    測試<b class='flag-5'>工程師</b>都在用的Linux命令清單(建議收藏)
    镇坪县| 白城市| 滁州市| 政和县| 金湖县| 邢台县| 波密县| 永平县| 凤凰县| 顺昌县| 西青区| 西充县| 广饶县| 中超| 乐都县| 梁平县| 绥芬河市| 柳河县| 乌兰县| 古丈县| 北辰区| 宣恩县| 冀州市| 黄梅县| 巴里| 阜宁县| 泾源县| 横峰县| 延长县| 安吉县| 永昌县| 龙江县| 永仁县| 榆社县| 黄梅县| 大荔县| 台安县| 古蔺县| 乌鲁木齐县| 子长县| 固安县|