主頁 >  其他 > 大咖分享| 百度語意技術及應用全解

大咖分享| 百度語意技術及應用全解

2020-09-17 04:00:29 其他

分享嘉賓:孫宇,百度NLP主任研發架構師、語意計算技術負責人,

本文根據作者在“2019自然語言處理前沿論壇”語意理解主題的特邀報告整理而成,

本報告提綱分為以下3個部分:

·    語意表示

·    語意匹配

·    未來重點作業

語意計算方向在百度NLP成立之初就開始研究,研究如何利用計算機對人類語言的語意進行表示、分析和計算,使機器具備語意理解能力,相關技術包含語意表示、語意匹配、語意分析、多模態計算等,

本文主要介紹百度在語意表示方向的技術發展和最新的研究成果艾尼(ERNIE),同時也會介紹工業應用價值很大、百度積累多年的語意匹配SimNet的相關內容,最后再談談未來的重點作業,

 一、語意表示

 計算機理解語言是一個具有很大挑戰的問題,人類在理解語言的程序中,除了語言符號本身的識別,還包含符號背后的語意和知識,舉個例子,當人看到“計算機”這個符號時,腦子里能迅速浮現出計算機的畫面以及和計算機相關的知識和概念,但是這對于計算機就比較困難,所以如何讓計算機能夠表示語言是研究的重點,讓其既能夠蘊含語意資訊又可以計算,

當前主要有兩類方法,一是基于形式化規則的方法,如通過構建語意關系網路來描述語意的資訊;二是基于統計的方法,包括主題模型、Word Embedding等技術,

1、百度早期語意表示技術:基于檢索的表示方法

 

2007年百度便開始語意表示研究,最開始的思路是利用搜索引擎來完成,通過搜索引擎把要表示的句子或者詞語檢索出來,再根據檢索的結果通過Term的分析以及網頁的分析,把相關的詞、資訊抽取出來,做成語言符號的表示,但是這個表示實際上停留在原始詞匯空間,表示的空間大小依然是詞表的維度,只是相對于One-Hot的表示來說更精細,這個方法是基于1954年Harris提出來的“背景關系相似的詞,其語意也相似”的假設,

2、百度早期語意表示技術:Topic Model

 

此后,百度又研究了Topic Model的語意表示技術,這種方法的核心思路是把檔案詞匯空間降維,將檔案映射到淺層主題的分布上,而這種主題空間要比詞的分布空間更小一些,通過降維的方法,可以得到每個詞到主題的映射,通過這種主題的方法做語意的表示,

當時百度主要解決的問題是怎樣做這種新檔案的表示,難點是超大規模語料訓練、Online EM、MPI并行化,此外,百度還將自研的主題模型以及一些主流的主題模型整理為工業應用工具,對外開源了百度NLP主題模型工具包FAMILIA,

3、基于DNN的語意表示技術:Word Embedding

 

深度學習技術興起,基于Word Embedding的表示占了主流,此類技術在各種NLP任務中也表現出色,從NNLM到現在BERT的技術,取得了很多進展,2013年的Word2vec成為NLP標配性的初始化向量,2018年有了背景關系相關的詞向量ELMo等,

 

從2013年到2016年,百度也大力投入到Word Embedding的研究,主要研究作業是在工業界如何用大規模分布式從海量資料中計算詞向量,比如,怎么才能高效訓練規模為1T的語料?如何構建大規模分布式文本計算?此外,演算法上我們也有一些研究,比如,如何在一百萬超大規模的詞表里完成Softmax分類?我們通過一些策略和技術,做成啟發式Hierarchical Softmax的方法,從而有效地提升分類的效率,2016年,百度把訓練的1T的網頁資料和100萬詞表規模的詞向量對業界進行了開放,

4、多特征融合的表示模型

 

BERT的核心思路還是大力出奇跡,它利用了大規模的無監督資料,同時借助Transformer這種高性能的Encoder的能力,在MASK建模任務上做了一些優化,導致這個效果能夠在各個任務上顯著提升,

百度實際在2017年進行了這方面的探索,當時是研究基于對話的口語理解問題,這個問題的核心是做意圖的分類和槽位的標注,難點在于口語理解的問題標注語料非常少,當時想能不能利用海量的搜索語料做Pre-Training,把這個Model作為初始化模型用到下游的SLU任務里,

我們采用20億搜索的Query,通過LSTM模型做單向Language Model的預訓,我們發現在SLU任務上,在各個垂類上樣本數的增加非常顯著,從10個樣本到2000個樣本,但遺憾的是,當時研究的是一個超小規模資料上效果,即2000的資料,在2萬甚至是20萬的資料上的表現并沒有研究,同時在其他應用的通用性上的研究也不夠充分,

5、知識增強的語意表示模型

 BERT提出后,我們發現一個問題,它學習的還是基礎語言單元的Language Model,并沒有充分利用先驗語言知識,這個問題在中文很明顯,它的策略是MASK字,沒有MASK知識或者是短語,在用Transformer預測每個字的時候,很容易根據詞包含字的搭配資訊預測出來,比如預測“雪”字,實際上不需要用Global的資訊去預測,可以通過“冰”字預測,基于這個假設,我們做了一個簡單的改進,把它做成一個MASK詞和物體的方法,學習這個詞或者物體在句子里面Global的信號,

 

基于上述思想我們發布了基于知識增強的語意表示ERNIE(1.0),

 

我們在中文上做了ERNIE(1.0)實驗,找了五個典型的中文公開資料集做對比,不管是詞法分析NER、推理、自動問答、情感分析、相似度計算,ERNIE(1.0)都能夠顯著提升效果,

 

英文上驗證了推廣性,實驗表明ERNIE(1.0)在GLUE和SQuAd1.1上提升也是非常明顯的,為了驗證假設,我們做了一些定性的分析,找了完形填空的資料集,并通過ERNIE和BERT去預測,效果如上圖,

 

我們對比了ERNIE、BERT、CoVe、GPT、ELMo模型,結果如上圖所示,ELMo是早期做背景關系相關表示模型的作業,但它沒有用Transformer,用的是LSTM,通過單向語言模型學習,百度的ERNIE與BERT、GPT一樣,都是做網路上的Transformer,但是ERNIE在建模Task的時候做了一些改進,取得了很不錯的效果,

 

在應用上,ERNIE在百度發布的面向工業應用的中文NLP開源工具集進行了驗證,包括ERNIE與BERT在詞法分析、情感分類這些百度內部的任務上做了對比分析,同時也有一些產品已經落地,在廣告相關性的計算、推薦廣告的觸發、新聞推薦上都有實際應用,目前模型已經開源(http://github.com/PaddlePaddle/ERNIE),歡迎大家去下載,

7月31日,百度艾尼(ERNIE) 再升級,發布了持續學習語意理解框架ERNIE 2.0,同時借助飛槳(PaddlePaddle)多機多卡高效訓練優勢發布了基于此框架的ERNIE 2.0 預訓練模型,該模型在共計16個中英文任務上超越了BERT 和XLNet,取得了SOTA 效果,

二、語意匹配

1、文本語意匹配及挑戰

 

語意匹配在工業界具有非常大的技術價值,它是一個很基礎的問題,很多產品、應用場景都會用到它,很多問題也可以抽象為語意匹配問題,比如,搜索解決的是Query和Document相關性的問題,推薦解決的是User和Item關聯度、興趣匹配度的問題,檢索式問答解決的是問題與答案匹配度,以及檢索對話Query和Response的匹配問題,由于語言比較復雜,匹配靠傳統的方法是比較難的,

 

百度搜索在匹配相似度計算方面做了較多作業,包括挖掘同義詞、詞級別泛化、語意緊密度、對齊資源挖掘、共線關聯計算等,

 

2、神經網路語意匹配模型:SimNet

2013年百度提出SimNet技術,用于解決語意匹配的問題,這個技識訓于DNN框架,沿襲Word Embedding的輸入,基于End-to-End的訓練做表示和匹配,并結合Pairwise訓練,當時,微軟也提出了DSSM,中科院、CMU等研究機構也做了很多語意匹配研究作業,

 

這幾年,百度整體上從語意匹配的框架上做了升級,抽象了三個層次,改進了基礎演算法,包括擴展針對不同場景的模型,比如字和語意的匹配模型;在不同的應用場景,針對問題網頁和問題答案的匹配情況分別做了針對性地優化,集成到了匹配框架里,

 

匹配演算法主要有兩種范式,一種是基于表示的匹配,首先把自然語言表示成向量,然后再進行相似度計算,這方面也有一些改進,主要是做一些Attention;另一種新匹配范式Interaction-based Model,強調更細的匹配,即一個句子的表示不再是一個向量,而是原來的Term,并把原來的位置資訊保留,最后以Attention的方式表示,讓匹配更加充分和精細,

 

關于SimNet技術前瞻性作業,2019年百度在IJCAI上發表了一篇論文“RLTM:An Efficient Neural IR Framework for Long Documents”,其中長文本匹配有一個很大的挑戰,就是讓Document直接做表示,如果文本太長,很多資訊會丟失,計算效率也非常低,但如果我們先做一個粗匹配,選擇好相關的句子以后再做精細化的匹配,效果就比較不錯,

3、SimNet的應用

 

SimNet技術在百度應用非常廣泛,包括搜索、資訊推薦、廣告、對話平臺都在使用,

 

搜索是百度非常重要的產品,搜索有兩個核心功能,下圖的左側上方是搜索的精準問答,通過問答技術把精準答案直接呈現出來;下方是自然排序,主要采用LTR框架和相關性、權威性、時效性等Features,

SimNet在百度搜索的發展可以分為三個時期,萌芽期,上線了BOW Model,這是業界第一次在搜索引擎上線DNN模型;發展期,做了CNN、RNN,并把知識融合進RNN,在語意相關性計算中,除了標題很多其他文本域在相關性建模中也很重要,所以,我們還做多文本域融合匹配的Model;拓展期,除了相關性,在權威性、點擊模型和搜索問答上都有推廣和使用,

 

在搜索中,SimNet是用超大規模用戶反饋資料訓練,那么如何依靠海量資料來提升效果?頻次如何選?我們發現模型應用效果并不是靜態的,而是動態變化的,特別是搜索反饋的資料,隨著時間的推移,網民在搜索的時候,Term的分布、主題的分布會發生變化,所以資料的時效性影響還是非常大的,

 

除了模型上的融合,我們把Bigram知識也融入了進去,盡管RNN已經很厲害了,但加入知識、模型還是會有很大地提升,

4、新模型:SimNet-QC-MM

 

另外,我們還做了Query和網頁正文的建模,由于Query中每個詞都有一定的用戶意圖,所以在模型建模時,會考慮Query中每個詞被Title和正文覆寫的情況,并基于Matching Matrix匹配方法計算,此外,搜索架構也做了配合改進,搜索也上線了基于GPU和CPU的異構計算架構,

 

上圖是一個案例,“羋殊出嫁途中遇到危險”,我們后來做了一些分析,發現“危險”和“投毒”有很強的語意關聯,就把這個結果排了上去,

5、語意模型壓縮技術

 

在模型裁減壓縮上,我們也做了很多作業,包括量化的壓縮和哈希技術的壓縮,整個語意的模型基本上已經從依靠一個Embedding 32bits來存,到現在達到Embedding一維僅需4bits,節省線上DNN匹配模型87.5%的記憶體消耗,這項技術,除了搜索的使用,移動端的使用也有非常大的價值,

 

SimNet技術除了百度搜索,包括Q&A,Query和Answer的匹配等方面都有一些嘗試,

三、未來重點作業

接下來我們會在通用語意表示方面進一步研究與突破,除了如何充分地利用先驗知識,利用一些弱監督信號外,模型方面也會進一步探索創新,技術拓展上,跨語言、多語言表示,面向生成、匹配等任務的表示,面向醫療、法律等領域的表示,多模態表示等都是我們的一些重點方向,

RLTM論文地址:

https://arxiv.org/abs/1906.09404

至此,“2019自然語言處理前沿論壇”語意計算主題《百度語意計算技術及其應用》的分享結束,如果大家想更深入地了解百度持續學習語意理解框架艾尼(ERNIE),歡迎加入ERNIE官方交流群(QQ群號:760439550),

-------------------

劃重點!!!

掃碼關注百度NLP官方公眾號,獲取百度NLP技術的第一手資訊!

加入ERNIE官方技術交流群(760439550),百度工程師實時為您答疑解惑!

立即前往GitHub( github.com/PaddlePaddle/ERNIE )為ERNIE點亮Star,馬上學習和使用起來吧! 

 

最強預告!!!

11月23日,艾尼(ERNIE)的巡回沙龍將在上海加場,干貨滿滿的現場,行業A級的導師,還有一群志同道合的小伙伴,還在等什么?感興趣的開發者們趕緊掃描下方“二維碼”或點擊“鏈接”報名參加吧!

 

報名鏈接:https://iwenjuan.baidu.com/?code=vc78lp

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/62225.html

標籤:其他

上一篇:我要獲取積分

下一篇:深入理解泛化

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more