python爬蟲的出路有哪些?NLP算法工程師算一個

文/IT可達鴨

圖/IT可達鴨、網絡


前言


小編在很久以前是做Java爬蟲的,在身邊同事的鼓勵下,慢慢轉向了NLP算法工程師。以前做爬蟲的時候,每天就接任務,爬網站,抓取信息(有文本信息、圖片信息)。雖然,經手的數據也有上百G了,但是從來沒去想過該怎麼去分析這些數據。

如果僅僅幹一份爬蟲的工作,那也僅僅只是一個爬蟲工程師,只是一個數據的採集者。而且,隨著科技的不斷進步,很多智能化的爬蟲工具相繼出現,很多網站對爬蟲越來越不友好,爬蟲工程師的出路也越來越窄了。同時地,企業在招爬蟲工程師的時候,要求也越來越多,不僅要會抓取數據,還要有一定的數據分析能力。


那麼,作為一個不想時代淘汰的爬蟲工程師,該如何在技術上尋找出路呢?

答案是:NLP算法工程師。


python爬蟲的出路有哪些?NLP算法工程師算一個

什麼是NLP


自然語言處理,Natural Language Processing 下文簡稱 NLP,是計算機科學領域以及人工智能領域的一個重要的研究方向。簡單的說,自然語言處理技術,就是可以幫用戶使用自然語言與機器交流。為了方便計算機處理,自然語言通常被定義為一組規則或者符號的集合。

從大方向上看,自然語言分為兩個部分:自然語言處理和自然語言生成,對應任務是自然語言理解和生成文本。


python爬蟲的出路有哪些?NLP算法工程師算一個

NLP的研究任務

NLP可以被應用與很多領域,這裡大概總結出一下幾種通用的應用:

  • 2.1 機器翻譯

機器翻譯是NLP中最為人熟知的場景,國內外有很多比較成熟的機器翻譯產品,比如有道翻譯、google翻譯、科大訊飛翻譯機(語音類翻譯)。


python爬蟲的出路有哪些?NLP算法工程師算一個

  • 2.2 情感分析

情感分析在NLP工程師的日常工作中,經常會用到。主要業務場景是,例如想了解某電商網站中某一個商品是否被用戶所喜歡,可以採集該商品下的所有評論,通過NLP技術進行情感分析,分析出積極和消極的評論佔比是多少、分析出哪些是水軍的評論。


python爬蟲的出路有哪些?NLP算法工程師算一個


  • 2.3 智能問答

在一些電商網站有非常實用的價值,比如代替人工充當客服角色,有很多很基本而且重複的問題,其實並不需要人工客服來解決,通過智能問答系統就能處理大量重複問題,使得人工客服能更好的服務客戶。

目前這塊在市場上需求很大,針對智能問答這塊,有一個非常不錯的開發框架Rasa,它是基於tensorflow開發的。適用於模板問答、多輪對話、閒聊等多種會話場景。感興趣的小夥伴,可以研究一下這個框架。


python爬蟲的出路有哪些?NLP算法工程師算一個


我之前也有一篇介紹智能對話的文章《我用了100行Python代碼,實現了與女神尬聊微信(附代碼)》,不過,這是一個簡單的問題模版匹配,索引答案進行回答。可以說是初學版的智能對話,但是距離真正的智能對話還很遠很遠。剛入門的小夥伴可以先看一下,再回過頭來研究上面的智能對話開源框架。

  • 2.4 文本摘要生成

利用NLP技術從原始文章中摘取文摘,全面準確地翻譯某一文章的中心內容。這個算法可以幫助人們在閱讀大量文章的時候,節約時間成本,從而提升工作效率。

  • 2.5 文本分類

利用NLP技術,按照一定的分類體系自動標註類別。像在今日頭條發圖文,它是有一個自動類的算法,根據文章的關鍵詞、主題以及作者所擅長的領域給文章進行分類。

目前,基礎的分類算法有KNN,文本主題模型算法LDA,Doc2Vec(這個我用過,感覺沒有KNN簡單好用,可能是我使用方式不對。)


python爬蟲的出路有哪些?NLP算法工程師算一個


除了以上五個方向,還有輿論分析、知識圖譜等等。它們都不是獨立分開的,在進行項目研發的時候,經常多個NLP技術有機組合在一起使用。

結語

NLP在大的方向上基本就這些,每個方向研究下去都有很多東西可以搗鼓。不知,你想好往NLP哪個方向發展了沒?在考慮用什麼編程語言?編程語言不是問題,Java,C++ , python都行,它們都有各自的算法框架可以學習,這裡小編建議當然是python,python爬蟲轉 NLP算法有天然的語言優勢。

持續關注"IT可達鴨" ,每天除了分享有趣Python源碼,還會介紹一些NLP算法。如果覺得我的文章有意思,就順手點個贊吧。最後,感謝大家的閱讀,祝大家工作生活愉快!


分享到:


相關文章: