日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
知識(shí)圖譜數(shù)據(jù)構(gòu)建的“硬骨頭”,阿里工程師如何拿下?

  阿里妹導(dǎo)讀:搜索“西紅柿”,你不但能知道它的營(yíng)養(yǎng)功效、熱量,還能順帶學(xué)會(huì)煲個(gè)牛腩、炒個(gè)雞蛋!搜索引擎何時(shí)變成“暖男”了?原來(lái)背后有“知識(shí)圖譜”這個(gè)強(qiáng)大的秘密武器。

  作為近年來(lái)搜索領(lǐng)域和自然語(yǔ)言處理領(lǐng)域的熱點(diǎn),知識(shí)圖譜正引領(lǐng)著搜索引擎向知識(shí)引擎的轉(zhuǎn)變。在阿里的“神馬搜索”中,知識(shí)圖譜及其相關(guān)技術(shù)的廣泛應(yīng)用不僅能幫助用戶找到最想要的信息,更能讓用戶有意想不到的知識(shí)收獲。

  背景簡(jiǎn)介  

  為了不斷提升搜索體驗(yàn),神馬搜索的知識(shí)圖譜與應(yīng)用團(tuán)隊(duì),一直在不斷探索和完善圖譜的構(gòu)建技術(shù)。其中,開(kāi)放信息抽?。∣pen Information Extraction),或稱通用信息抽取,旨在從大規(guī)模無(wú)結(jié)構(gòu)的自然語(yǔ)言文本中抽取結(jié)構(gòu)化信息。它是知識(shí)圖譜數(shù)據(jù)構(gòu)建的核心技術(shù)之一,決定了知識(shí)圖譜可持續(xù)擴(kuò)增的能力。

  “神馬搜索”界面

  本文聚焦于開(kāi)放信息抽取中的重要子任務(wù)——關(guān)系抽取,首先對(duì)關(guān)系抽取的各種主流技術(shù)進(jìn)行概述,而后結(jié)合業(yè)務(wù)中的選擇與應(yīng)用,重點(diǎn)介紹了基于 DeepDive 的方法,并詳述它在神馬知識(shí)圖譜數(shù)據(jù)構(gòu)建工作中的應(yīng)用進(jìn)展。

  關(guān)系抽取概述

  關(guān)系抽取技術(shù)分類

  現(xiàn)有的關(guān)系抽取技術(shù)主要可分為三種 :

  • 有監(jiān)督的學(xué)習(xí)方法 :該方法將關(guān)系抽取任務(wù)當(dāng)做分類問(wèn)題,根據(jù)訓(xùn)練數(shù)據(jù)設(shè)計(jì)有效的特征,從而學(xué)習(xí)各種分類模型,然后使用訓(xùn)練好的分類器預(yù)測(cè)關(guān)系。該方法的問(wèn)題在于需要大量的人工標(biāo)注訓(xùn)練語(yǔ)料,而語(yǔ)料標(biāo)注工作通常非常耗時(shí)耗力。
  • 半監(jiān)督的學(xué)習(xí)方法 :該方法主要采用 Bootstrapping 進(jìn)行關(guān)系抽取。對(duì)于要抽取的關(guān)系,該方法首先手工設(shè)定若干種子實(shí)例,然后迭代地從數(shù)據(jù)從抽取關(guān)系對(duì)應(yīng)的關(guān)系模板和更多的實(shí)例。
  • 無(wú)監(jiān)督的學(xué)習(xí)方法 :該方法假設(shè)擁有相同語(yǔ)義關(guān)系的實(shí)體對(duì)擁有相似的上下文信息。因此可以利用每個(gè)實(shí)體對(duì)對(duì)應(yīng)上下文信息來(lái)代表該實(shí)體對(duì)的語(yǔ)義關(guān)系,并對(duì)所有實(shí)體對(duì)的語(yǔ)義關(guān)系進(jìn)行聚類。

  這三種方法中,有監(jiān)督學(xué)習(xí)法因?yàn)槟軌虺槿〔⒂行Ю锰卣?,在獲得高準(zhǔn)確率和高召回率方面更有優(yōu)勢(shì),是目前業(yè)界應(yīng)用最廣泛的一類方法。

  遠(yuǎn)程監(jiān)督算法

  為了打破有監(jiān)督學(xué)習(xí)中人工數(shù)據(jù)標(biāo)注的局限性,Mintz 等人提出了遠(yuǎn)程監(jiān)督(Distant Supervision)算法,該算法的核心思想是將文本與大規(guī)模知識(shí)圖譜進(jìn)行實(shí)體對(duì)齊,利用知識(shí)圖譜已有的實(shí)體間關(guān)系對(duì)文本進(jìn)行標(biāo)注。遠(yuǎn)程監(jiān)督基于的基本假設(shè)是:如果從知識(shí)圖譜中可獲取三元組R(E1,E2)(注:R代表關(guān)系,E1、E2 代表兩個(gè)實(shí)體),且 E1 和 E2 共現(xiàn)與句子S中,則S表達(dá)了 E1 和 E2 間的關(guān)系R,標(biāo)注為訓(xùn)練正例。

  遠(yuǎn)程監(jiān)督算法是目前主流的關(guān)系抽取系統(tǒng)廣泛采用的方法,也是該領(lǐng)域的研究熱點(diǎn)之一。該算法很好地解決了數(shù)據(jù)標(biāo)注的規(guī)模問(wèn)題,但它基于的基本假設(shè)過(guò)強(qiáng),會(huì)引入大量噪音數(shù)據(jù)。例如,從知識(shí)圖譜獲取三元組:創(chuàng)始人(喬布斯,蘋果公司),下表句 1 和句 2 正確表達(dá)了該關(guān)系,但句 3 和句 4 并沒(méi)有表達(dá)這樣的關(guān)系,因此對(duì)句 3 和句 4 應(yīng)用基本假設(shè)時(shí)會(huì)得到錯(cuò)誤的標(biāo)注信息。這個(gè)問(wèn)題通常稱為 the wrong label problem。

  出現(xiàn) the wrong label problem 的根本原因,是遠(yuǎn)程監(jiān)督假設(shè)一個(gè)實(shí)體對(duì)只對(duì)應(yīng)一種關(guān)系,但實(shí)際上實(shí)體對(duì)間可以同時(shí)具有多種關(guān)系,如上例中還存在 CEO(喬布斯,蘋果公司)的關(guān)系,實(shí)體對(duì)間也可能不存在通常定義的某種關(guān)系,而僅因?yàn)楣餐婕傲四硞€(gè)話題才在句中共現(xiàn)。

  為了減小 the wrong label problem 的影響,學(xué)術(shù)界陸續(xù)提出了多種改進(jìn)算法,主要包括:

  • 基于規(guī)則的方法:通過(guò)對(duì) wrong label cases 的統(tǒng)計(jì)分析,添加規(guī)則,將原本獲得正例標(biāo)注的 wrong label cases 直接標(biāo)為負(fù)例,或通過(guò)分值控制,抵消原有的正標(biāo)注。
  • 基于圖模型的方法:構(gòu)建因子圖(factor graph)等能表征變量間關(guān)聯(lián)的圖模型,通過(guò)對(duì)特征的學(xué)習(xí)和對(duì)特征權(quán)重的推算減小 wrong label cases 對(duì)全局的影響。
  • 基于多示例學(xué)習(xí)(multi-instance learning)的方法:將所有包含(E1,E2)的句子組成一個(gè) bag,從每個(gè) bag 對(duì)句子進(jìn)行篩選來(lái)生成訓(xùn)練樣本。此類方法最早提出時(shí)假設(shè)如果知識(shí)圖譜中存在R(E1,E2),則語(yǔ)料中含(E1,E2)的所有 instance 中至少有一個(gè)表達(dá)了關(guān)系R。一般與無(wú)向圖模型結(jié)合,計(jì)算出每個(gè)包中置信度最高的樣例,標(biāo)為正向訓(xùn)練示例。該假設(shè)比遠(yuǎn)程監(jiān)督的假設(shè)合理,但可能損失很多訓(xùn)練樣本,造成有用信息的丟失和訓(xùn)練的不充分。為了能得到更豐富的訓(xùn)練樣本,又提出了 multi-instance multi-labels 的方法。該方法的假設(shè)是,同一個(gè)包中,一個(gè) sentence 只能表示(E1,E2)的一種關(guān)系,也就是只能給出一個(gè) label,但是不同的 sentence 可以表征(E1,E2)的不同關(guān)系,從而得到不同的 label。多 label 標(biāo)注的 label 值不是正或負(fù),而是某一種關(guān)系。它為同時(shí)挖掘一個(gè)實(shí)體對(duì)的多種關(guān)系提供了可能的實(shí)現(xiàn)途徑。另一種改進(jìn)的方法是從一個(gè)包中選取多個(gè) valid sentences 作為訓(xùn)練集,一般與深度學(xué)習(xí)方法相結(jié)合,這種方法更詳細(xì)的講解和實(shí)現(xiàn)會(huì)安排在后續(xù)介紹深度學(xué)習(xí)模型的章節(jié)中。

  神馬知識(shí)圖譜構(gòu)建中的關(guān)系抽取方法選擇

  知識(shí)圖譜的數(shù)據(jù)構(gòu)建,就數(shù)據(jù)源而言,分為結(jié)構(gòu)化數(shù)據(jù),半結(jié)構(gòu)化數(shù)據(jù)和無(wú)結(jié)構(gòu)數(shù)據(jù)三類。其中,無(wú)結(jié)構(gòu)數(shù)據(jù)是最龐大、最易獲取的資源,同時(shí)也是在處理和利用方面難度最大的資源。神馬知識(shí)圖譜構(gòu)建至今,已經(jīng)發(fā)展為一個(gè)擁有近 5000 萬(wàn)實(shí)體,近 30 億關(guān)系的大規(guī)模知識(shí)圖譜。在經(jīng)歷了前期以結(jié)構(gòu)化和半結(jié)構(gòu)化數(shù)據(jù)為主的領(lǐng)域圖譜構(gòu)建階段,神馬知識(shí)圖譜的數(shù)據(jù)構(gòu)建重點(diǎn)已經(jīng)逐漸轉(zhuǎn)移為如何準(zhǔn)確高效地利用無(wú)結(jié)構(gòu)數(shù)據(jù)進(jìn)行實(shí)體與關(guān)系的自動(dòng)識(shí)別與抽取。這一構(gòu)建策略使得神馬知識(shí)圖譜在通用領(lǐng)域的建設(shè)和可持續(xù)擴(kuò)增方面有很強(qiáng)的競(jìng)爭(zhēng)力。

  遠(yuǎn)程監(jiān)督算法利用知識(shí)圖譜的已有信息,使得有監(jiān)督學(xué)習(xí)中所需的大規(guī)模文本標(biāo)注成為可能。一方面,遠(yuǎn)程監(jiān)督在很大程度上提升了有監(jiān)督學(xué)習(xí)關(guān)系抽取的規(guī)模和準(zhǔn)確率,為大規(guī)模的知識(shí)圖譜數(shù)據(jù)構(gòu)建和補(bǔ)充提供了可能;另一方面,遠(yuǎn)程監(jiān)督對(duì)現(xiàn)有知識(shí)圖譜的數(shù)據(jù)和規(guī)模有較強(qiáng)的依賴,豐富的標(biāo)注數(shù)據(jù)對(duì)機(jī)器學(xué)習(xí)能力的提升有很大幫助。為了充分利用知識(shí)圖譜規(guī)模和遠(yuǎn)程監(jiān)督學(xué)習(xí)這種相輔相成的特性,在神馬知識(shí)圖譜的現(xiàn)階段數(shù)據(jù)構(gòu)建業(yè)務(wù)中,我們采用了以圖譜現(xiàn)有的大規(guī)模實(shí)體與關(guān)系數(shù)據(jù)為依托,以遠(yuǎn)程監(jiān)督算法為工具的關(guān)系抽取技術(shù)。

  在上一章的綜述中,我們介紹過(guò)多種基于遠(yuǎn)程監(jiān)督思想的改進(jìn)方法。在具體的業(yè)務(wù)實(shí)現(xiàn)中,我們選取了領(lǐng)域內(nèi)與業(yè)務(wù)需求最為契合的兩種代表性方法:基于 DeepDive 的抽取系統(tǒng)和基于深度學(xué)習(xí)抽取算法。兩種方法相輔相成,各有優(yōu)勢(shì):DeepDive 系統(tǒng)較多依賴于自然語(yǔ)言處理工具和基于上下文的特征進(jìn)行抽取,在語(yǔ)料規(guī)模的選擇上更為靈活,能進(jìn)行有針對(duì)性的關(guān)系抽取,且能方便地在抽取過(guò)程中進(jìn)行人工檢驗(yàn)和干預(yù);而深度學(xué)習(xí)的方法主要應(yīng)用了詞向量和卷積神經(jīng)網(wǎng)絡(luò),在大規(guī)模語(yǔ)料處理和多關(guān)系抽取的人物中有明顯的優(yōu)勢(shì)。在下面的章節(jié)中,我們來(lái)更詳細(xì)地了解這兩種方法的實(shí)現(xiàn)與應(yīng)用。

  DeepDive 系統(tǒng)介紹

  DeepDive 概述

  DeepDive (http://deepdive.stanford.edu/) 是斯坦福大學(xué)開(kāi)發(fā)的信息抽取系統(tǒng),能處理文本、表格、圖表、圖片等多種格式的無(wú)結(jié)構(gòu)數(shù)據(jù),從中抽取結(jié)構(gòu)化的信息。系統(tǒng)集成了文件分析、信息提取、信息整合、概率預(yù)測(cè)等功能。Deepdive 的主要應(yīng)用是特定領(lǐng)域的信息抽取,系統(tǒng)構(gòu)建至今,已在交通、考古、地理、醫(yī)療等多個(gè)領(lǐng)域的項(xiàng)目實(shí)踐中取得了良好的效果;在開(kāi)放領(lǐng)域的應(yīng)用,如 TAC-KBP 競(jìng)賽、維基百科的 infobox 信息自動(dòng)增補(bǔ)等項(xiàng)目中也有不錯(cuò)的表現(xiàn)。

  DeepDive 系統(tǒng)的基本輸入包括:

  • 無(wú)結(jié)構(gòu)數(shù)據(jù),如自然語(yǔ)言文本
  • 現(xiàn)有知識(shí)庫(kù)或知識(shí)圖譜中的相關(guān)知識(shí)
  • 若干啟發(fā)式規(guī)則

  DeepDive 系統(tǒng)的基本輸出包括:

  • 規(guī)定形式的結(jié)構(gòu)化知識(shí),可以為關(guān)系(實(shí)體1,實(shí)體2)或者屬性(實(shí)體,屬性值)等形式
  • 對(duì)每一條提取信息的概率預(yù)測(cè)

  DeepDive 系統(tǒng)運(yùn)行過(guò)程中還包括一個(gè)重要的迭代環(huán)節(jié),即每輪輸出生成后,用戶需要對(duì)運(yùn)行結(jié)果進(jìn)行錯(cuò)誤分析,通過(guò)特征調(diào)整、更新知識(shí)庫(kù)信息、修改規(guī)則等手段干預(yù)系統(tǒng)的學(xué)習(xí),這樣的交互與迭代計(jì)算能使得系統(tǒng)的輸出不斷得到改進(jìn)。

  DeepDive 系統(tǒng)架構(gòu)和工作流程

  DeepDive 的系統(tǒng)架構(gòu)如下圖所示,大致分為數(shù)據(jù)處理、數(shù)據(jù)標(biāo)注、學(xué)習(xí)推理和交互迭代四個(gè)流程:

  數(shù)據(jù)處理

  1、 輸入與切分

  在數(shù)據(jù)處理流程中,DeepDive 首先接收用戶的輸入數(shù)據(jù),通常是自然語(yǔ)言文本,以句子為單位進(jìn)行切分。同時(shí)自動(dòng)生成文本 id 和每個(gè)句子在文本中的 index。doc_id + sentence_index 構(gòu)成了每個(gè)句子的全局唯一標(biāo)識(shí)。

  2、 NLP 標(biāo)注

  對(duì)于每個(gè)切分好的句子,DeepDive 會(huì)使用內(nèi)嵌的 Stanford CoreNLP 工具進(jìn)行自然語(yǔ)言處理和標(biāo)注,包括 token 切分,詞根還原、POS 標(biāo)注、NER 標(biāo)注、token 在文本中的起始位置標(biāo)注、依存文法分析等。

  3、 候選實(shí)體對(duì)提取

  根據(jù)需要抽取的實(shí)體類型和 NER 結(jié)果,首先對(duì)實(shí)體 mentions 進(jìn)行定位和提取,而后根據(jù)一定的配對(duì)規(guī)則生成候選實(shí)體對(duì)。需要特別注意,在 DeepDive 中,每一個(gè)實(shí)體 mention 的標(biāo)定都是全局唯一的,由 doc_id、sentence_index 以及該 mention 在句子中的起始和結(jié)束位置共同標(biāo)識(shí)。因此,不同位置出現(xiàn)的同名的實(shí)體對(duì)(E1,E2)將擁有不同的(E1_id,E2_id),最終的預(yù)測(cè)結(jié)果也將不同。

  4、 特征提取

  該步驟的目的是將每一個(gè)候選實(shí)體對(duì)用一組特征表示出來(lái),以便后續(xù)的機(jī)器學(xué)習(xí)模塊能夠?qū)W習(xí)到每個(gè)特征與所要預(yù)測(cè)關(guān)系的相關(guān)性。Deepdive 內(nèi)含自動(dòng)特征生成模塊 DDlib,主要提取基于上下文的語(yǔ)義特征,例如兩個(gè)實(shí)體 mention 間的 token sequence、NER tag sequence、實(shí)體前后的n-gram 等。Deepdive 也支持用戶自定義的特征提取算法。

  數(shù)據(jù)標(biāo)注  

  在數(shù)據(jù)標(biāo)注階段,我們得到了候選實(shí)體對(duì)以及它們對(duì)應(yīng)的特征集合。在數(shù)據(jù)標(biāo)注階段,我們將運(yùn)用遠(yuǎn)程監(jiān)督算法和啟發(fā)式規(guī)則,對(duì)每個(gè)候選實(shí)體對(duì)進(jìn)行 label 標(biāo)注,得到機(jī)器學(xué)習(xí)所需的正例和負(fù)例樣本。

  1、 遠(yuǎn)程監(jiān)督

  實(shí)現(xiàn)遠(yuǎn)程監(jiān)督標(biāo)注,首先需要從已知的知識(shí)庫(kù)或知識(shí)圖譜中獲取相關(guān)的三元組。以婚姻關(guān)系為例,DeepDive 從 DBpedia 中獲取已有的夫妻實(shí)體對(duì)。若候選實(shí)體對(duì)能在已知的夫妻實(shí)體對(duì)中找到匹配映射時(shí),該候選對(duì)標(biāo)記為正例。負(fù)例的標(biāo)注針對(duì)需要抽取的不同關(guān)系有不同的可選方法。例如可以將沒(méi)有在知識(shí)庫(kù)中出現(xiàn)的實(shí)體對(duì)標(biāo)注為負(fù)例,但在知識(shí)庫(kù)收入不完整的情況下該方法會(huì)引入噪音負(fù)例;也可以用知識(shí)庫(kù)中互斥關(guān)系下的實(shí)例來(lái)做負(fù)例標(biāo)注,例如父母-子女關(guān)系,兄弟姐妹關(guān)系,都與婚姻關(guān)系互斥,用于標(biāo)注負(fù)例基本不會(huì)引入噪音。

  2、 啟發(fā)式規(guī)則

  正負(fù)樣本的標(biāo)注還可以通過(guò)用戶編寫啟發(fā)式規(guī)則來(lái)實(shí)現(xiàn)。以抽取婚姻關(guān)系為例,可以定義如下規(guī)則:

  • Candidates with person mentions that are too far apart in the sentence are marked as false.
  • Candidates with person mentions that have another person in between are marked as false.
  • Candidates with person mentions that have words like "wife" or "husband" in between are marked as true.

  用戶可以通過(guò)預(yù)留的 user defined function 接口,對(duì)啟發(fā)式規(guī)則進(jìn)行編寫和修改。

  3、 Label 沖突的解決

  當(dāng)遠(yuǎn)程監(jiān)督生成和啟發(fā)式規(guī)則生成的 label 沖突,或不同規(guī)則生成的 label 產(chǎn)生沖突時(shí),DeepDive 采用 majority vote 算法進(jìn)行解決。例如,一個(gè)候選對(duì)在 DBpedia 中找到了映射,label 為1,同時(shí)又滿足 2 中第 2 條規(guī)則,得到 label 為-1,majority vote 對(duì)所有 label 求和:sum = 1 - 1 = 0,最終得到的 label 為 doubt。

  學(xué)習(xí)與推理

  通過(guò)數(shù)據(jù)標(biāo)注得到訓(xùn)練集后,在學(xué)習(xí)與推理階段,Deepdive 主要通過(guò)基于因子圖模型的推理,學(xué)習(xí)特征的權(quán)重,并最終得到對(duì)候選三元組為真的概率預(yù)測(cè)值。

  因子圖是一種概率圖模型,用于表征變量和變量間的函數(shù)關(guān)系,借助因子圖可以進(jìn)行權(quán)重的學(xué)習(xí)和邊緣概率的推算。DeepDive 系統(tǒng)中,因子圖的頂點(diǎn)有兩種,一種是隨機(jī)變量,即提取的候選實(shí)體對(duì),另一種是隨機(jī)變量的函數(shù),即所有的特征和根據(jù)規(guī)則得到的函數(shù),比方兩個(gè)實(shí)體間的距離是否大于一定閾值等。因子圖的邊表示了實(shí)體對(duì)和特征及規(guī)則的關(guān)聯(lián)關(guān)系。

  當(dāng)訓(xùn)練文本的規(guī)模很大,涉及的實(shí)體眾多時(shí),生成的因子圖可能非常復(fù)雜龐大,DeepDive 采用吉布斯采樣(Gibbs sampling)進(jìn)行來(lái)簡(jiǎn)化基于圖的概率推算。在特征權(quán)重的學(xué)習(xí)中,采用標(biāo)準(zhǔn)的 SGD 過(guò)程,并根據(jù)吉布斯采樣的結(jié)果預(yù)測(cè)梯度值。為了使特征權(quán)重的獲得更靈活合理,除了系統(tǒng)默認(rèn)的推理過(guò)程,用戶還可以通過(guò)直接賦值來(lái)調(diào)整某個(gè)特征的權(quán)重。篇幅關(guān)系,更詳細(xì)的學(xué)習(xí)與推理過(guò)程本文不做展開(kāi)介紹,更多的信息可參考 DeepDive 的官網(wǎng)。

  交互迭代

  迭代階段保證通過(guò)一定的人工干預(yù)對(duì)系統(tǒng)的錯(cuò)誤進(jìn)行糾正,從而使得系統(tǒng)的準(zhǔn)召率不斷提升。交互迭代一般包括以下幾個(gè)步驟:

  1、 準(zhǔn)召率的快速估算

  • 準(zhǔn)確率:在P集中隨機(jī)挑選 100 個(gè),看為 TP 的比例。
  • 召回率:在輸入集中隨機(jī)挑選 100 個(gè) positive case,看有多少個(gè)落在計(jì)算出的P集中。

  2、 錯(cuò)誤分類與歸納

  將得到的每個(gè) extraction failure(包括 FP 和 FN)按錯(cuò)誤原因進(jìn)行分類和歸納,并按錯(cuò)誤發(fā)生的頻率進(jìn)行排序,一般而言,最主要錯(cuò)誤原因包括:

  • 在候選集生成階段沒(méi)有捕獲應(yīng)捕獲的實(shí)體,一般是 token 切分、token 拼接或 NER 問(wèn)題
  • 特征獲取問(wèn)題,沒(méi)能獲取到區(qū)分度高的特征
  • 特征計(jì)算問(wèn)題,區(qū)分度高的特征在訓(xùn)練中沒(méi)有獲得相應(yīng)的高分(包括正負(fù)高分)

  3、 錯(cuò)誤修正

  根據(jù)錯(cuò)誤原因,通過(guò)添加或修改規(guī)則、對(duì)特征進(jìn)行添加或刪除、對(duì)特征的權(quán)重進(jìn)行調(diào)整等行為,調(diào)整系統(tǒng),重新運(yùn)行修改后的相應(yīng)流程,得到新的計(jì)算結(jié)果。

  神馬知識(shí)圖譜構(gòu)建中的 DeepDive 應(yīng)用與改進(jìn)

  在了解了 DeepDive 的工作流程之后,本章將介紹我們?nèi)绾卧谏耨R知識(shí)圖譜的數(shù)據(jù)構(gòu)建業(yè)務(wù)中使用 DeepDive。為了充分利用語(yǔ)料信息、提高系統(tǒng)運(yùn)行效率,我們?cè)谡Z(yǔ)料處理和標(biāo)注、輸入規(guī)模的控制、輸入質(zhì)量的提升等環(huán)節(jié),對(duì) DeepDive 做了一些改進(jìn),并將這些改進(jìn)成功運(yùn)用到業(yè)務(wù)落地的過(guò)程中。

  中文 NLP 標(biāo)注

  NLP 標(biāo)注是數(shù)據(jù)處理的一個(gè)重要環(huán)節(jié)。DeepDive 自帶的 Stanford CoreNLP 工具主要是針對(duì)英文的處理,而在知識(shí)圖譜的應(yīng)用中,主要的處理需求是針對(duì)中文的。因此,我們開(kāi)發(fā)了中文 NLP 標(biāo)注的外部流程來(lái)取代 CoreNLP,主要變動(dòng)如下:

  • 使用 Ali 分詞代替 CoreNLP 的 token 切分,刪除詞根還原、POS 標(biāo)注和依存文法分析,保留 NER 標(biāo)注和 token 在文本中的起始位置標(biāo)注。
  • token 切分由以詞為單位,改為以實(shí)體為單位。在 NER 環(huán)節(jié),將 Ali 分詞切碎的 token 以實(shí)體為粒度重新組合。例如分詞結(jié)果“華盛頓”、“州立”、“大學(xué)”將被組合為“華盛頓州立大學(xué)”,并作為一個(gè)完整的實(shí)體獲得“University”的 NER 標(biāo)簽。
  • 長(zhǎng)句的切分:文本中的某些段落可能因?yàn)槿鄙僬_的標(biāo)點(diǎn)或包含眾多并列項(xiàng)等原因,出現(xiàn)切分后的句子長(zhǎng)度超過(guò)一定閾值(如 200 個(gè)中文字符)的情況,使 NER 步驟耗時(shí)過(guò)長(zhǎng)。這種情況將按預(yù)定義的一系列規(guī)則進(jìn)行重新切分。

  主語(yǔ)自動(dòng)增補(bǔ)

  數(shù)據(jù)處理環(huán)節(jié)的另一個(gè)改進(jìn)是添加了主語(yǔ)自動(dòng)補(bǔ)充的流程。以中文百科文本為例,統(tǒng)計(jì)發(fā)現(xiàn),有將近 40% 的句子缺少主語(yǔ)。如下圖劉德華的百科介紹,第二段中所有句子均缺少主語(yǔ)。

  主語(yǔ)的缺失很多時(shí)候直接意味著候選實(shí)體對(duì)中其中一個(gè)實(shí)體的缺失,這將導(dǎo)致系統(tǒng)對(duì)大量含有有用信息的句子無(wú)法進(jìn)行學(xué)習(xí),嚴(yán)重影響系統(tǒng)的準(zhǔn)確率和召回率。主語(yǔ)的自動(dòng)補(bǔ)充涉及兩方面的判斷:

  • 主語(yǔ)缺失的判斷
  • 缺失主語(yǔ)的添加

  由于目前業(yè)務(wù)應(yīng)用中涉及的絕大多數(shù)是百科文本,缺失主語(yǔ)的添加采用了比較簡(jiǎn)單的策略,即從當(dāng)前句的上一句提取主語(yǔ),如果上一句也缺失主語(yǔ),則將百科標(biāo)題的 NER 結(jié)果作為要添加的主語(yǔ)。主語(yǔ)缺失的判斷相對(duì)復(fù)雜,目前主要采用基于規(guī)則的方法。假設(shè)需要提取的候選對(duì)(E1, E2)對(duì)應(yīng)的實(shí)體類型為(T1, T2),則判定流程如下圖所示:

  具體的主語(yǔ)補(bǔ)充實(shí)例和處理過(guò)程舉例如下:

  以百科文本為例,經(jīng)實(shí)驗(yàn)統(tǒng)計(jì),上述主語(yǔ)自動(dòng)補(bǔ)充算法的準(zhǔn)確率大約在 92%。從關(guān)系抽取的結(jié)果來(lái)看,在所有的錯(cuò)誤抽取 case 中,由主語(yǔ)增補(bǔ)導(dǎo)致的錯(cuò)誤比例不超過(guò)2%。

  基于關(guān)系相關(guān)關(guān)鍵詞的輸入過(guò)濾

  DeepDive 是一個(gè)機(jī)器學(xué)習(xí)系統(tǒng),輸入集的大小直接影響系統(tǒng)的運(yùn)行時(shí)間,尤其在耗時(shí)較長(zhǎng)的特征計(jì)算和學(xué)習(xí)推理步驟。在保證系統(tǒng)召回率的前提下,合理減小輸入集規(guī)模能有效提升系統(tǒng)的運(yùn)行效率。

  假設(shè)需要提取的三元組為R(E1, E2)且(E1, E2)對(duì)應(yīng)的實(shí)體類型為(T1, T2)。DeepDive 的默認(rèn)運(yùn)行機(jī)制是:在數(shù)據(jù)處理階段,提取所有滿足類型為(T1,T2)的實(shí)體對(duì)作為候選,不考慮上下文是否有表達(dá)關(guān)系R的可能性。例如,抽取婚姻關(guān)系時(shí),只要一個(gè)句子中出現(xiàn)大于等于兩個(gè)的人物實(shí)體,該句子就會(huì)作為輸入?yún)⑴c系統(tǒng)整個(gè)數(shù)據(jù)處理、標(biāo)注和學(xué)習(xí)的過(guò)程。以下五個(gè)例句中,除了句1,其它 4 句完全不涉及婚姻關(guān)系:

  尤其當(dāng)句中的兩個(gè)人物實(shí)體無(wú)法通過(guò)遠(yuǎn)程監(jiān)督獲取正例或負(fù)例標(biāo)簽時(shí),此類輸入無(wú)法在學(xué)習(xí)環(huán)節(jié)為系統(tǒng)的準(zhǔn)確率帶來(lái)增益。為減小此類輸入帶來(lái)的系統(tǒng)運(yùn)行時(shí)間損耗,我們提出了以下改進(jìn)算法:

  實(shí)驗(yàn)證明,利用改進(jìn)算法得到的輸入集規(guī)模有顯著的減小,以百科文本的抽取為例,婚姻關(guān)系的輸入集可縮小至原輸入集的 13%,人物和畢業(yè)院校關(guān)系的輸入集可縮小至原輸入集的 36%。輸入集的縮小能顯著減少系統(tǒng)運(yùn)行時(shí)間,且實(shí)驗(yàn)證明,排除了大量 doubt 標(biāo)注實(shí)體候選對(duì)的干擾,系統(tǒng)的準(zhǔn)確率也有較大幅度的提升。

  需要指出的是,雖然在輸入環(huán)節(jié)通過(guò)關(guān)系相關(guān)關(guān)鍵詞進(jìn)行過(guò)濾減小輸入規(guī)模,能最有效地提高系統(tǒng)運(yùn)行效率(因?yàn)樘^(guò)了包含特征提取在內(nèi)的所有后續(xù)計(jì)算步驟),但該環(huán)節(jié)的過(guò)濾是以句子為單位,而非作用于抽取的候選實(shí)體對(duì)。來(lái)看一個(gè)婚姻關(guān)系提取的多人物示例:

  • 除了孫楠、那英等表演嘉賓盛裝出席外,擔(dān)任本場(chǎng)音樂(lè)會(huì)監(jiān)制的華誼兄弟總裁王中磊先生、馮小剛導(dǎo)演和夫人徐帆,以及葛優(yōu)、宋丹丹、李冰冰等演藝明星也一一現(xiàn)身紅毯,到場(chǎng)支持此次音樂(lè)會(huì)。

  因?yàn)楹谢橐鲫P(guān)系相關(guān)的關(guān)鍵詞“夫人”,該句子將被保留為系統(tǒng)輸入。從該句提取的多個(gè)人物候選實(shí)體對(duì)需要依靠更完善的啟發(fā)式規(guī)則來(lái)完成進(jìn)一步的標(biāo)注和過(guò)濾。

  實(shí)體對(duì)到多實(shí)體的擴(kuò)展  

  關(guān)系抽取的絕大部分任務(wù)僅涉及三元組的抽取。三元組一般有兩種形式,一種是兩個(gè)實(shí)體具有某種關(guān)系,形如R(E1, E2),例如:婚姻關(guān)系(劉德華,朱麗倩);另一種是實(shí)體的屬性值,形如P(E,V),例如:身高(劉德華,1.74 米)。DeepDive 默認(rèn)的關(guān)系抽取模式都是基于三元組的。但在實(shí)際應(yīng)用中,有很多復(fù)雜的關(guān)系用三元組難以完整表達(dá),例如,人物的教育經(jīng)歷,包括人物、人物的畢業(yè)院校、所學(xué)專業(yè)、取得學(xué)位、畢業(yè)時(shí)間等。這些復(fù)雜的多實(shí)體關(guān)系在神馬知識(shí)圖譜中用復(fù)合類型來(lái)表示。因此,為使抽取任務(wù)能兼容復(fù)合類型的構(gòu)建時(shí),我們對(duì) DeepDive 的代碼做了一些修改,將候選實(shí)體對(duì)的提取,擴(kuò)展為候選實(shí)體組的提取。代碼修改涉及主抽取模塊中的 app.ddlog、底層用于特征自動(dòng)生成的 DDlib 和 udf 中的 map_entity_mention.py、extract_relation_features.py 等文件。下圖展示了一個(gè)擴(kuò)展后的實(shí)體組抽取實(shí)例,抽取關(guān)系為(人物、所在機(jī)構(gòu)、職位):

  應(yīng)用 DeepDive 的數(shù)據(jù)構(gòu)建工作

  本節(jié)首先給出一個(gè)輸入示例以及該示例在 DeepDive 運(yùn)行過(guò)程中每一步的輸出結(jié)果,如下圖所示。通過(guò)這個(gè)示例,我們可以對(duì) DeepDive 各模塊的功能和輸出有更直觀的認(rèn)識(shí)。

  為了更詳細(xì)地了解 DeepDive 的應(yīng)用和改進(jìn)算法的效果,以下我們給出一個(gè)具體的婚姻關(guān)系抽取任務(wù)的相關(guān)運(yùn)行數(shù)據(jù)。

  下表顯示了該抽取任務(wù)在數(shù)據(jù)處理階段各步驟的的耗時(shí)和產(chǎn)出數(shù)量:

  在數(shù)據(jù)標(biāo)注的遠(yuǎn)程監(jiān)督階段,我們除了使用知識(shí)圖譜中已有的夫妻關(guān)系做正例標(biāo)注,還使用了已有的父母-子女關(guān)系和兄弟姐妹關(guān)系做負(fù)例標(biāo)注,得到正例數(shù)千個(gè),正負(fù)標(biāo)注候選實(shí)體的比例約為1:2。

  在 DeepDive 系統(tǒng)中,遠(yuǎn)程監(jiān)督的 wrong label problem 可以依靠合理編寫的啟發(fā)式規(guī)則得到一定程度的糾正。觀察婚姻關(guān)系的 wrong label 樣例,我們發(fā)現(xiàn)較大比例的 wrong label 是夫妻實(shí)體以某種合作形式(如合作演出、合作演唱、合作著書等)共現(xiàn)在一個(gè)句子中,夫妻實(shí)體有一個(gè)出現(xiàn)在書名號(hào)中時(shí),也容易發(fā)生誤判。例如:

  類似的觀察和總結(jié)可以編寫成啟發(fā)式規(guī)則,依靠從規(guī)則得到的負(fù)標(biāo)注抵償遠(yuǎn)程監(jiān)督得到的正標(biāo)注,減小系統(tǒng)在學(xué)習(xí)和推理時(shí)的偏差。

  雖然啟發(fā)式規(guī)則的編寫大多依靠專家知識(shí)或人工經(jīng)驗(yàn)完成,但規(guī)則的完善和擴(kuò)充可以依靠某些自動(dòng)機(jī)制來(lái)輔助實(shí)現(xiàn)。例如,規(guī)則定義:句中出現(xiàn)“P_1 和P_2 結(jié)婚”,則(P_1,P_2)得到正標(biāo)注。根據(jù)對(duì)“和”和“結(jié)婚”等 token 的擴(kuò)展,我們可以得到“P_1 與P_2 結(jié)婚”、“P_1 和 P2 婚后”、“P_1 和P_2 的婚禮”等類似應(yīng)該標(biāo)注為正的語(yǔ)境。這里,token 的擴(kuò)展可以通過(guò) word2vec 算法加人工過(guò)濾實(shí)現(xiàn)。下表給出了該抽取任務(wù)中用到的規(guī)則和相應(yīng)的統(tǒng)計(jì)數(shù)據(jù)。整個(gè)數(shù)據(jù)標(biāo)注過(guò)程耗為 14m21s。

  學(xué)習(xí)與推理過(guò)程耗時(shí)約 38m50s。我們隨機(jī)截取了部分知識(shí)圖譜未收錄的預(yù)測(cè)實(shí)體對(duì)的輸出結(jié)果展示如下

  對(duì)于系統(tǒng)的準(zhǔn)確率,我們?nèi)?expectation 為 [0.95,1][0.95,1] 區(qū)間內(nèi)的輸出結(jié)果進(jìn)行分段統(tǒng)計(jì),統(tǒng)計(jì)結(jié)果如下列圖表所示:

  對(duì)系統(tǒng)預(yù)測(cè)的錯(cuò)誤樣例進(jìn)行分析,我們總結(jié)了幾種錯(cuò)誤類型,下表按照出現(xiàn)頻率從高到低,給出了錯(cuò)誤描述和錯(cuò)誤示例:

  系統(tǒng)召回率的計(jì)算相比準(zhǔn)確率的計(jì)算更為復(fù)雜,在語(yǔ)料規(guī)模較大的情況下,準(zhǔn)確估算召回率將耗費(fèi)大量的人力。我們采用了抽樣檢測(cè)的方式來(lái)估算召回率,具體實(shí)踐了以下三種方法(統(tǒng)計(jì)中 expectation 均取>=0.95):

  • 抽樣含有某個(gè)指定實(shí)體的所有 sentences,計(jì)算召回:含實(shí)體 “楊冪” 的 sentences 共 78 例,含 (楊冪, 劉愷威)實(shí)體對(duì)的 sentences 共 13 例,人工判斷其中 9 例描述了該實(shí)體對(duì)的婚姻關(guān)系,其中 5 例被召回,召回率為 0.556。
  • 用于遠(yuǎn)程監(jiān)督正例標(biāo)注的知識(shí)圖譜實(shí)體對(duì)超過(guò) 4000 對(duì),統(tǒng)計(jì)表明,其中 42.7% 的實(shí)體對(duì)出現(xiàn)在了語(yǔ)料中,26.5% 的實(shí)體對(duì)被召回,召回率為 0.621。
  • 輸入集隨機(jī)挑選 100 例 positive cases,其中 49 例的 expectation 值>=0.95, 召回率為 0.49。

  基于 DeepDive 的關(guān)系抽取研究目前已較為完整,并已經(jīng)在神馬知識(shí)圖譜的構(gòu)建業(yè)務(wù)中落地。目前在數(shù)據(jù)構(gòu)建中的應(yīng)用涉及人物、歷史、組織機(jī)構(gòu)、圖書、影視等多個(gè)核心領(lǐng)域,已抽取關(guān)系包括人物的父母、子女、兄弟姐妹、婚姻、歷史事件及人物的合稱、圖書的作者、影視作品的導(dǎo)演和演員、人物的畢業(yè)院校和就業(yè)單位等。以百科全量語(yǔ)料為例,每個(gè)關(guān)系抽取任務(wù)候選 sentence 集合的規(guī)模在 80w 至 1000w,經(jīng)改進(jìn)算法過(guò)濾,輸入規(guī)模在 15w 至 200w 之間,生成的候選實(shí)體對(duì)規(guī)模在 30w 至 500w 之間。系統(tǒng)每輪迭代運(yùn)行的時(shí)間在 1 小時(shí)至 8 小時(shí)之間,約經(jīng)過(guò)3-4 輪迭代可產(chǎn)出準(zhǔn)確率和召回率都較高的數(shù)據(jù)給運(yùn)營(yíng)審核環(huán)節(jié)。系統(tǒng)運(yùn)行至今,已累計(jì)產(chǎn)出候選三元組近 3 千萬(wàn)。

  除此之外,基于深度學(xué)習(xí)模型的關(guān)系抽取技術(shù)及其在神馬知識(shí)圖譜數(shù)據(jù)構(gòu)建中的應(yīng)用,我們也在不斷探索和實(shí)踐。明天,阿里妹將繼續(xù)為大家介紹相關(guān)的技術(shù)進(jìn)展和業(yè)務(wù)落地過(guò)程中遇到的一些挑戰(zhàn),敬請(qǐng)關(guān)注哦。

  參考文獻(xiàn)

  [1]. 林衍凱、劉知遠(yuǎn),基于深度學(xué)習(xí)的關(guān)系抽取

  [2]. Daojian Zeng, Kang Liu, Yubo Chen, and Jun Zhao. 2015. Distant Supervision for Relation Extraction via Piecewise Convolutional Neural Networks. In EMNLP. 1753–1762.

  [3]. Guoliang Ji, Kang Liu, Shizhu He, Jun Zhao. 2017. Distant Supervision for Relation Extraction with Sentence-Level Attention and Entity Descriptions. Proceedings of the Thirty-First AAAI Conference on Artificial Intelligence

  [4]. Siliang Tang, Jinjian Zhang, Ning Zhang, Fei Wu, Jun Xiao, Yueting Zhuang. 2017. ENCORE: External Neural Constraints Regularized Distant Supervision for Relation Extraction. SIGIR'17

  [5]. Zeng, D.; Liu, K.; Chen, Y.; and Zhao, J. 2015. Distant supervision for relation extraction via piecewise convolutional neural networks. EMNLP.

  [6]. Riedel, S.; Yao, L.; and McCallum, A. 2010. Modeling relations and their mentions without labeled text. In Machine Learning and Knowledge Discovery in Databases. Springer. 148–163.

  [7]. Ce Zhang. 2015. DeepDive: A Data Management System for Automatic Knowledge Base Construction. PhD thesis.

  [8]. Hoffmann, R.; Zhang, C.; Ling, X.; Zettlemoyer, L.; and Weld, D. S. 2011. Knowledge-based weak supervision for information extraction of overlapping relations. In Proceedings of the 49th Annual Meeting of the Association for Computational Linguistics: Human Language Technologies-Volume 1, 541–550. Association for Computational Linguistics.

  [9]. Surdeanu, M.; Tibshirani, J.; Nallapati, R.; and Manning, C. D. 2012. Multi-instance multi-label learning for relation extraction. In Proceedings of the 2012 Joint Conference on Empirical Methods in Natural Language Processing and Computational Natural Language Learning, 455–465. Association for Computational Linguistics.

  [10]. Shingo Takamatsu, Issei Sato and Hiroshi Nakagawa. 2012. Reducing Wrong Labels in Distant Supervision for Relation Extraction. Proceedings of the 50th Annual Meeting of the Association for Computational Linguistics, pages 721–729

  [11]. Zeng, D.; Liu, K.; Lai, S.; Zhou, G.; Zhao, J.; et al. 2014. Relation classification via convolutional deep neural network. In COLING, 2335–2344.

  [12]. Ce zhang, Cheistopher Re; et al. 2017. Communications of the ACM CACM Homepage archive Volume 60 Issue 5, Pages 93-102

  [13]. Mintz, M.; Bills, S.; Snow, R.; and Jurafsky, D. 2009. Distant supervision for relation extraction without labeled data. In Proceedings of the Joint Conference of the 47th Annual Meeting of the ACL and the 4th International Joint Conference on Natural Language Processing of the AFNLP: Volume 2, 1003–1011. Association for Computational Linguistics.
[14]. http://deepdive.stanford.edu/


分享題目:知識(shí)圖譜數(shù)據(jù)構(gòu)建的“硬骨頭”,阿里工程師如何拿下?
網(wǎng)址分享:http://www.5511xx.com/article/cojsesh.html