基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng)及方法
【專利摘要】本發(fā)明公開了基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng)和方法,包含預(yù)處理模塊、基于語言模型的詞向量訓(xùn)練模塊、海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊和基于深度人工神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別模塊;通過深度學(xué)習(xí)方法以生成語言模型的概率為優(yōu)化目標(biāo),使用醫(yī)學(xué)文本大數(shù)據(jù)訓(xùn)練初級的詞向量;基于海量醫(yī)學(xué)知識庫,訓(xùn)練第二個深度人工神經(jīng)網(wǎng)絡(luò),通過深度加強(qiáng)學(xué)習(xí),把海量知識庫結(jié)合到深度學(xué)習(xí)的特征學(xué)習(xí)過程中,從而獲取真對醫(yī)學(xué)領(lǐng)域的分布式語義特征;最后使用基于優(yōu)化語句級極大似然概率的深度學(xué)習(xí)方法進(jìn)行中文醫(yī)學(xué)名實體識別。使用大量未標(biāo)注語料來生成詞向量,從而避免醫(yī)學(xué)自然語言處理中的繁瑣的特征選擇和調(diào)優(yōu)過程。
【專利說明】
基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng)及方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明涉及一種基于深度學(xué)習(xí)及分布式語義特征的醫(yī)學(xué)信息抽取系統(tǒng)及其實現(xiàn) 方法。
【背景技術(shù)】
[0002] 廣泛使用的健康信息技術(shù)導(dǎo)致了電子健康記錄(EHR)數(shù)據(jù)的空前膨脹。電子病歷 數(shù)據(jù)不僅已經(jīng)用于支持臨床操作任務(wù)(例如,臨床決策支持系統(tǒng)),同時也可以支持多種臨 床研究任務(wù)。許多重要的病人信息分散在敘述性醫(yī)療文本中,但大部分的計算機(jī)應(yīng)用只能 理解結(jié)構(gòu)化數(shù)據(jù)。因此,可以提取醫(yī)療文本中重要的患者信息臨床自然語言處理(Clinical NLP)的技術(shù)已被引入到醫(yī)療領(lǐng)域,而且在許多應(yīng)用中都表現(xiàn)出極大的效用。
[0003] 根據(jù)第六屆信息理解會議(MUC-6),旨在識別命名實體邊界和類型的命名實體識 另IJ(NER)技術(shù),已經(jīng)成為自然語言處理研究的一個熱門且相對成熟的研究方向。在醫(yī)療文本 處理中,名實體識別(例如,疾病名稱,藥物名稱,檢測名稱等)同樣是最基礎(chǔ)的處理步驟之 一。許多現(xiàn)有的NLP系統(tǒng)使用了基于詞典和規(guī)則的方法來識別醫(yī)學(xué)概念,比如MEDLEE。 MEDLEE是美國哥倫比亞大學(xué)開發(fā)的醫(yī)學(xué)概念抽取系統(tǒng),也是最早和功能最全面的醫(yī)療NLP 系統(tǒng)之一 JetaMap系統(tǒng)是美國國家醫(yī)學(xué)圖書館(National Library of Medicine,NLM)開 發(fā)的面向生物醫(yī)學(xué)文本的信息提取系統(tǒng)。cTAKES是基于非結(jié)構(gòu)化信息管理框架(IHMA)和 OpenNLP自然語言處理開源工具包。近年來,醫(yī)學(xué)信息研究機(jī)構(gòu)先后組織了多個名實體識別 相關(guān)的國際評測。2009年i2b2(the Center of Informatics for Integrating Biology and the Bedside)組織了專注于藥物治療實體識別任務(wù)的評測,2010年,i2b2又組織了專 注于癥狀、治療和醫(yī)療測試實體識別任務(wù)的評測。2013年Share/CLEF,2014年及2015年 Semantic Evaluation(SemEval)等國際評測專注于識別疾病名實體并將其正則化到UMLS 術(shù)語庫上。在2009年i2b2藥物治療實體識別任務(wù)中,大多數(shù)參與隊伍采用了基于醫(yī)學(xué)詞典 和人工規(guī)則的方法,比如美國Vanderbilt Uni vers ity開發(fā)的MedEx系統(tǒng)。在2010年的i2b2 評測中,主辦方提供了一個比較大的標(biāo)注語料集,因而多個參與隊伍以及排名前5的系統(tǒng)都 使用基于機(jī)器學(xué)習(xí)的識別方法。參賽隊伍使用了條件隨機(jī)場(Conditional Random Fields,CRFs),結(jié)構(gòu)化支持向量機(jī)(Structual Support Vector Machines,SSVMs)并探索 了大量的特征表示方法。
[0004] 隨著中國電子病歷實施的快速增長,目前迫切需要從中國的臨床文本中提取重要 的患者信息,以加速國內(nèi)的臨床研究。學(xué)者們已經(jīng)開始研究中文臨床醫(yī)療實體識別任務(wù)。廈 門大學(xué)的王世昆等人采用條件隨機(jī)場對明清古醫(yī)案中癥狀、病機(jī)這類實體進(jìn)行了識別。 2004年徐華等人提出了一種中文分詞和名實體識別的集成方法,在中文醫(yī)學(xué)文本上同步完 成這兩個任務(wù)并提高各自的準(zhǔn)確率。北京大學(xué)的雷健波等人較全面地比較了幾種常用機(jī)器 學(xué)習(xí)算法在使用不同類型的特征時識別現(xiàn)代醫(yī)學(xué)醫(yī)療文本中臨床醫(yī)療實體的性能,比較的 算法包括支持向量機(jī)、最大熵、條件隨機(jī)場和結(jié)構(gòu)化支持向量機(jī)。綜上所述,在中文醫(yī)學(xué)名 實體識別任務(wù)中,目前的努力主要集中在研究不同的機(jī)器學(xué)習(xí)算法和不同類型的特征組合 上。
[0005]近年來,基于深度學(xué)習(xí)(Deep learning)的自然語言處理系統(tǒng)取得了長足的發(fā)展。 這類系統(tǒng)使用無監(jiān)督學(xué)習(xí)(unsupervised learning)技術(shù)從大量未標(biāo)注文本中學(xué)習(xí)更有效 的特征表示方法。深度學(xué)習(xí)是機(jī)器學(xué)習(xí)中一個活躍的研究領(lǐng)域,它使用深層神經(jīng)網(wǎng)絡(luò)以得 到高級別的特征表示方法。在圖像處理,語音識別,機(jī)器翻譯等領(lǐng)域,深度學(xué)習(xí)都取得了相 比于其他方法更優(yōu)的性能。通過深層神經(jīng)網(wǎng)絡(luò),NLP研究人員不再需要花費大量時間針對特 定任務(wù)優(yōu)化特征,轉(zhuǎn)而從大量未標(biāo)注文本中自動獲取有效特征。研究人員還發(fā)現(xiàn),基于深層 神經(jīng)網(wǎng)絡(luò)的詞向量(word embedding)表示不僅可以獲取語法級別的特征,還可以獲得語義 級別的特征,這種特征可以有效的應(yīng)用在通用英文NLP任務(wù)中,取得了明顯的效果。例如, Dr.Ronan Collobert開發(fā)的基于深層神經(jīng)網(wǎng)絡(luò)的NLP系統(tǒng),在詞性標(biāo)注、短語識別、名實體 識別、語義角色標(biāo)注等任務(wù)中,都獲得了相比于已有系統(tǒng)中的最高的準(zhǔn)確率。
[0006]詞向量是目前非常流行的傳統(tǒng)詞袋(bag of words)特征表示方法的替代途徑,將 每一個詞映射成為一個浮點數(shù)組成的數(shù)組。浮點數(shù)組的表示方法相比于傳統(tǒng)途徑可以保存 更多的語義信息。傳統(tǒng)方法使用基于排序的詞向量生成方法。該方法認(rèn)定所有在語料中自 然出現(xiàn)的順序為正例。比如,當(dāng)取詞窗口(window size)為5時,以下詞序列視為一個正例:
[0007] X= {wL2 , WLl ,W0 , WR1 ,WR2}
[0008] 其中,WO是當(dāng)前詞,WL2,WL1是當(dāng)前詞左側(cè)臨近詞,WR1,WR2是當(dāng)前詞右側(cè)臨近詞。 在運行詞向量生成算法時,算法隨機(jī)選擇一個詞替換W0以構(gòu)成一個負(fù)例樣本,即:
[0009] X*= {WL2,WL1,W*,WR1,WR2}
[0010] 而后詞向量生成算法將優(yōu)化以下排序準(zhǔn)則,使其最小:
[0011] MAX{0,1-DNN(X)+DNN(X*)}
[0012] 同時,傳統(tǒng)的深層神經(jīng)網(wǎng)絡(luò)采用隨機(jī)梯度下降算法,應(yīng)用以下公式更新參數(shù)集合:
[0013] 0 = 0-AA0
[0014]其中,A是學(xué)習(xí)比率,而A e是梯度。
[0015] 傳統(tǒng)基于神經(jīng)網(wǎng)絡(luò)的詞向量訓(xùn)練方法,通常使用基于語言模型的優(yōu)化目標(biāo)函數(shù)。 在詞向量的訓(xùn)練過程中,通過不斷最大化合理文字序列在神器網(wǎng)絡(luò)模型中的出現(xiàn)概率,進(jìn) 而調(diào)整神經(jīng)網(wǎng)絡(luò)的參數(shù),通過后向傳遞的方式,逐漸修改訓(xùn)練中的向量,最終得到一個最大 化合理文本序列的詞向量。這中訓(xùn)練方法雖然可以通過優(yōu)化語言模型的概率來獲得一個合 理的詞向量,但是忽略了已有知識庫的作用。由于通用領(lǐng)域的多樣性,目前還沒有一個通用 的知識庫能過涵蓋各個領(lǐng)域的已有知識。因此,無法把領(lǐng)域知識用于詞向量的訓(xùn)練過程。
【發(fā)明內(nèi)容】
[0016] 本發(fā)明的目的是克服現(xiàn)有技術(shù)存在的不足,提供一種基于深度學(xué)習(xí)及分布式語義 特征的醫(yī)學(xué)信息抽取系統(tǒng)及其實現(xiàn)方法。
[0017] 本發(fā)明的目的通過以下技術(shù)方案來實現(xiàn):
[0018]基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng),特點是:包含預(yù)處理模塊、基 于語言模型的詞向量訓(xùn)練模塊、海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊以及基于深度人工神經(jīng)網(wǎng)絡(luò) 的醫(yī)學(xué)名實體識別模塊,所述預(yù)處理模塊,用于對醫(yī)學(xué)文本大數(shù)據(jù)進(jìn)行非法字符清理、中文 字符編碼統(tǒng)一以及生成下一模塊詞向量訓(xùn)練使用的字表,字表是所有文本中出現(xiàn)的文字的 列表;
[0019] 所述基于語言模型的詞向量訓(xùn)練模塊,讀取預(yù)處理過的醫(yī)療文本,根據(jù)預(yù)訂的窗 口,生成正例;同時,使用隨機(jī)替換正例中心字的方式生成負(fù)例,通過訓(xùn)練一個深度神經(jīng)網(wǎng) 絡(luò),以優(yōu)化語言模型的概率作為優(yōu)化目標(biāo),生成初級詞向量;
[0020] 所述海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊,以初級詞向量為出發(fā)點,使用另外一個深度 神經(jīng)網(wǎng)絡(luò),通過優(yōu)化醫(yī)學(xué)知識庫的預(yù)測概率,對初級詞向量進(jìn)行加強(qiáng)學(xué)習(xí),從而生成醫(yī)學(xué)領(lǐng) 域的分布式語義特征;
[0021] 所述基于深度人工神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別模塊,使用海量醫(yī)學(xué)知識庫加強(qiáng)學(xué) 習(xí)模塊中訓(xùn)練的醫(yī)學(xué)領(lǐng)域的分布式語義特征表示,訓(xùn)練一個醫(yī)學(xué)名實體識別的深度神經(jīng)網(wǎng) 絡(luò),識別醫(yī)學(xué)文本中重要的名實體。
[0022] 進(jìn)一步地,上述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng),所述預(yù)處 理模塊包含非法字符過濾模塊、中文編碼統(tǒng)一模塊以及字表生成模塊,
[0023] 所述非法字符過濾模塊,以字符為單位遍歷文本,移出其中無效非可見字符;
[0024]所述中文編碼統(tǒng)一模塊,根據(jù)設(shè)置確定輸入文本的中文字符編碼方式;
[0025] 所述字表生成模塊,以unic〇de字符為單位,生成字表,表中字在后續(xù)詞向量生成 過程中,被映射為浮點數(shù)形式的詞向量。
[0026]更進(jìn)一步地,上述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng),所述基 于語言模型的詞向量訓(xùn)練模塊包含正負(fù)例生成模塊、詞向量深度神經(jīng)網(wǎng)絡(luò)模塊以及網(wǎng)絡(luò)優(yōu) 化及訓(xùn)練誤差監(jiān)控模塊,所述正負(fù)例生成模塊,用于讀取輸入語句,根據(jù)預(yù)設(shè)的窗口,生成 正例,同時,采用隨機(jī)替換正例的中心詞方法,生成相應(yīng)負(fù)例;
[0027]所述詞向量深度神經(jīng)網(wǎng)絡(luò)模塊,將生成的正例負(fù)例輸入網(wǎng)絡(luò),計算概率,并根據(jù)正 負(fù)例的概率調(diào)整網(wǎng)絡(luò);
[0028] 所述網(wǎng)絡(luò)優(yōu)化及訓(xùn)練誤差監(jiān)控模塊,針對全局,優(yōu)化語言模型的概率,并控制訓(xùn)練 過程中的誤差,達(dá)到訓(xùn)練設(shè)置的終止條件時,終止訓(xùn)練,保存模型。
[0029] 更進(jìn)一步地,上述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng),所述海 量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊包含知識庫標(biāo)準(zhǔn)化模塊、加強(qiáng)學(xué)習(xí)深度神經(jīng)網(wǎng)絡(luò)模塊以及網(wǎng)絡(luò) 優(yōu)化和誤差監(jiān)控模塊,所述知識庫標(biāo)準(zhǔn)化模塊,標(biāo)準(zhǔn)化知識庫中實體的表示;
[0030] 所述加強(qiáng)學(xué)習(xí)深度神經(jīng)網(wǎng)絡(luò)模塊,將知識庫中的實體作為輸入,使用初級詞向量 作為特征,在加強(qiáng)學(xué)習(xí)網(wǎng)絡(luò)中預(yù)測,并根據(jù)預(yù)測值與知識庫真實值的情況,加強(qiáng)初級詞向 量;
[0031] 所述網(wǎng)絡(luò)優(yōu)化和誤差監(jiān)控模塊,針對全局,優(yōu)化語言模型的概率,并控制訓(xùn)練過程 中的誤差,達(dá)到訓(xùn)練設(shè)置的終止條件時,終止訓(xùn)練,保存模型。
[0032]更進(jìn)一步地,上述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng),所述基 于深度人工神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別模塊包含醫(yī)學(xué)名實體深度神經(jīng)網(wǎng)絡(luò)模塊以及語句 級極大似然優(yōu)化及溢出控制模塊,所述醫(yī)學(xué)名實體深度神經(jīng)網(wǎng)絡(luò)模塊,讀取輸入的語句,使 用分布式意義特征進(jìn)行特征表示,并輸入名實體識別網(wǎng)絡(luò),根據(jù)小規(guī)模的標(biāo)注語料訓(xùn)練識 別各種醫(yī)學(xué)名實體的識別網(wǎng)絡(luò);
[0033]所述語句級極大似然優(yōu)化及溢出控制模塊,針對深度神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練中出現(xiàn)的 溢出錯誤,進(jìn)行近似計算。
[0034] 更進(jìn)一步地,上述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng),所述語 句級極大似然優(yōu)化及溢出控制模塊采用極大似然算法,避免模型訓(xùn)練中由于計算機(jī)浮點數(shù) 表達(dá)范圍受限而導(dǎo)致模型訓(xùn)練失敗,其算法為:
[0035] 首先,對所有輸入xi找到最大的輸入xmax=MAX(Xi);
[0036]然后,按照以下方式進(jìn)行變換:
[0038]以避免目標(biāo)函數(shù)優(yōu)化過程中的浮點溢出問題,提高魯棒性和模型的精度。
[0039]更進(jìn)一步地,上述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng),采用基 于深層神經(jīng)網(wǎng)絡(luò)的名實體識別算法,深層神經(jīng)網(wǎng)絡(luò)包含一個卷積層、一個基于HardTanh函 數(shù)的非線性變換層和多個線性層;
[0040]計算每一個詞的分類類別分?jǐn)?shù)時,取目標(biāo)詞的一個特定的窗口尺寸范圍內(nèi)的上下 文詞被作為輸入;對于鄰近句子開頭或句子結(jié)束的詞,采用一個偽填充字以保證所有詞的 輸入向量為固定長度;在輸入窗口中的每個詞可被映射到N維向量,N是詞向量維數(shù);然后, 卷積層產(chǎn)生對應(yīng)于隱藏節(jié)點的全局化特征;最后,局部特征和全局特征一并送入一個標(biāo)準(zhǔn) 的放射網(wǎng)絡(luò)以使用反向傳播算法進(jìn)行訓(xùn)練;其中,損失函數(shù)定義為以下語句級對數(shù)似然:
[0042]其中,S(X,T)是標(biāo)簽序列T被賦予輸入X時的句子級似然得分;H(Tt-^Tt)標(biāo)簽Tt-i 到標(biāo)簽Tt全局轉(zhuǎn)移分?jǐn)?shù);DNN(Xt,Tt)標(biāo)簽Tt被賦予輸入Xt時的深層神經(jīng)網(wǎng)絡(luò)得分。
[0043]本發(fā)明基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取方法,包括以下步驟:
[0044] 采用隨機(jī)替換輸入正例的中心詞生成負(fù)例;
[0045] 基于語言模型優(yōu)化的深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練初級詞向量;
[0046] 采用醫(yī)學(xué)知識庫大數(shù)據(jù)進(jìn)行深度加強(qiáng)學(xué)習(xí),獲取針對醫(yī)學(xué)領(lǐng)域的分布式語義表 示;
[0047] 基于優(yōu)化語句級極大似然估計概率的深層神經(jīng)網(wǎng)絡(luò)的中文醫(yī)學(xué)名實體識別;
[0048] 預(yù)防深度神經(jīng)網(wǎng)絡(luò)模型溢出的近似算法;
[0049]通過深度加強(qiáng)學(xué)習(xí),將海量中文醫(yī)學(xué)知識庫結(jié)合到非監(jiān)督學(xué)習(xí)的過程。
[0050] 再進(jìn)一步地,上述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取方法,由預(yù)處 理模塊對醫(yī)學(xué)大數(shù)據(jù)進(jìn)行去噪,編碼統(tǒng)一,以及生成字表;由基于語言模型的詞向量訓(xùn)練模 塊讀取醫(yī)療文本,使用預(yù)先定義的窗口長度,將輸入語句分割為多個輸入窗口的正例,同 時,通過隨機(jī)替換中心詞的的方法生成相應(yīng)負(fù)例,正例和負(fù)例在一個詞向量訓(xùn)練人工神經(jīng) 網(wǎng)絡(luò)中不斷經(jīng)過網(wǎng)絡(luò)概率預(yù)測和挑戰(zhàn)網(wǎng)絡(luò)參數(shù)的循環(huán),最終有最大化語言模型訓(xùn)練出初級 詞向量;由海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊使用初級詞向量進(jìn)行初始化,并使用初級詞向量 預(yù)測海量知識庫中的詞條,通過不斷的加強(qiáng)學(xué)習(xí),調(diào)整初級詞向量,最終得到面向醫(yī)學(xué)領(lǐng)域 的分布式語義特征表示;由基于深度人工神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別模塊讀取新人工標(biāo)注 的少量語料,使用分布式語義特征描述把輸入語句轉(zhuǎn)化為分布式的特征描述,并預(yù)測詞條 的標(biāo)注,通過不斷的調(diào)整網(wǎng)絡(luò)系數(shù),實現(xiàn)基于深度學(xué)習(xí)和分布式語義特征的醫(yī)學(xué)名實體識 別。
[0051] 再進(jìn)一步地,上述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取方法,基于語 言模型的詞向量訓(xùn)練模塊中的正負(fù)例生成模塊使用隨機(jī)替換正例中心詞的方式生成負(fù)例; 詞向量深度神經(jīng)網(wǎng)絡(luò)模塊通過正負(fù)例學(xué)習(xí)訓(xùn)練初級詞向量,網(wǎng)絡(luò)優(yōu)化及訓(xùn)練誤差監(jiān)控模塊 進(jìn)行模型優(yōu)化,監(jiān)控網(wǎng)絡(luò)訓(xùn)練誤差及判斷訓(xùn)練終止條件;
[0052] 海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊中,知識庫標(biāo)準(zhǔn)化模塊讀取醫(yī)學(xué)知識庫詞條,標(biāo)準(zhǔn) 化知識庫描述;加強(qiáng)學(xué)習(xí)深度神經(jīng)網(wǎng)絡(luò)模塊讀取標(biāo)準(zhǔn)化的條目,通過對比網(wǎng)絡(luò)預(yù)測與真實 知識庫標(biāo)記,產(chǎn)生錯誤信號,通過加強(qiáng)學(xué)習(xí),把初級詞向量訓(xùn)練為面向醫(yī)學(xué)領(lǐng)域的分布式語 義特征;
[0053]基于深度人工神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別模塊中,醫(yī)學(xué)名實體深度神經(jīng)網(wǎng)絡(luò)模塊 使用少量人工標(biāo)注的語錄,通過語句級極大似然優(yōu)化及溢出控制模塊訓(xùn)練能夠精確識別醫(yī) 學(xué)名實體的網(wǎng)絡(luò),并進(jìn)行有效的模型訓(xùn)練溢出控制。
[0054]本發(fā)明技術(shù)方案突出的實質(zhì)性特點和顯著的進(jìn)步主要體現(xiàn)在:
[0055] ①基于神經(jīng)網(wǎng)絡(luò)和醫(yī)療文本大數(shù)據(jù)的無監(jiān)督特征學(xué)習(xí),極大減輕了人工特征選擇 的負(fù)擔(dān);無監(jiān)督特征學(xué)習(xí)不需要大量的人工標(biāo)注,避免了耗時的大量人工標(biāo)注過程;
[0056] ②基于醫(yī)學(xué)文本大數(shù)據(jù)的無監(jiān)督特征學(xué)習(xí),提高了模型中特征的覆蓋率,相比傳 統(tǒng)方法在召回率上有較大提升;
[0057] ③使用大量未標(biāo)注語料來生成詞向量,從而避免醫(yī)學(xué)自然語言處理中的繁瑣的特 征選擇和調(diào)優(yōu)過程;充分利用醫(yī)學(xué)領(lǐng)域現(xiàn)有的海量知識庫,把現(xiàn)有知識通過加強(qiáng)學(xué)習(xí)結(jié)合 到深度學(xué)習(xí)算法中,從而有效提高系統(tǒng)性能;
[0058] ④針對醫(yī)學(xué)文本利用基于深層神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別算法,在中文醫(yī)療文本 標(biāo)注語料集上進(jìn)行評估,取得了比傳統(tǒng)的基于序列標(biāo)注的方法更高的性能。
【附圖說明】
[0059]圖1:本發(fā)明系統(tǒng)的架構(gòu)原理示意圖;
[0060]圖2:深層神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)示意圖。
【具體實施方式】
[0061]本發(fā)明通過深度學(xué)習(xí)方法以生成語言模型的概率為優(yōu)化目標(biāo),使用醫(yī)學(xué)文本大數(shù) 據(jù)訓(xùn)練初級的詞向量;基于海量醫(yī)學(xué)知識庫,訓(xùn)練第二個深度人工神經(jīng)網(wǎng)絡(luò),通過深度加強(qiáng) 學(xué)習(xí),把海量知識庫結(jié)合到深度學(xué)習(xí)的特征學(xué)習(xí)過程中,從而獲取真對醫(yī)學(xué)領(lǐng)域的分布式 語義特征;最后使用基于優(yōu)化語句級極大似然概率的深度學(xué)習(xí)方法進(jìn)行中文醫(yī)學(xué)名實體識 別。
[0062]如圖1所示,基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng),包含預(yù)處理模塊 1、基于語言模型的詞向量訓(xùn)練模塊2、海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊3以及基于深度人工神 經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別模塊4,預(yù)處理模塊1,用于對醫(yī)學(xué)文本大數(shù)據(jù)進(jìn)行非法字符清理、 中文字符編碼統(tǒng)一以及生成下一模塊詞向量訓(xùn)練使用的字表,字表是所有文本中出現(xiàn)的文 字的列表;
[0063]基于語言模型的詞向量訓(xùn)練模塊2,讀取預(yù)處理過的醫(yī)療文本,根據(jù)預(yù)訂的窗口, 生成正例;同時,使用隨機(jī)替換正例中心字的方式生成負(fù)例,通過訓(xùn)練一個深度神經(jīng)網(wǎng)絡(luò), 以優(yōu)化語言模型的概率作為優(yōu)化目標(biāo),生成初級詞向量;
[0064]海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊3,以初級詞向量為出發(fā)點,使用另外一個深度神經(jīng) 網(wǎng)絡(luò),通過優(yōu)化醫(yī)學(xué)知識庫的預(yù)測概率,對初級詞向量進(jìn)行加強(qiáng)學(xué)習(xí),從而生成醫(yī)學(xué)領(lǐng)域的 分布式語義特征;
[0065]基于深度人工神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別模塊4,使用海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí) 模塊3中訓(xùn)練的醫(yī)學(xué)領(lǐng)域的分布式語義特征表示,訓(xùn)練一個醫(yī)學(xué)名實體識別的深度神經(jīng)網(wǎng) 絡(luò),識別醫(yī)學(xué)文本中重要的名實體。
[0066]其中,預(yù)處理模塊1包含非法字符過濾模塊101、中文編碼統(tǒng)一模塊102以及字表生 成模塊103,
[0067] 非法字符過濾模塊101,以字符為單位遍歷文本,移出其中無效非可見字符,包括 ascii碼表中的控制字符Ox〇-〇xlF;
[0068] 中文編碼統(tǒng)一模塊102,根據(jù)設(shè)置確定輸入文本的中文字符編碼方式;如輸入文本 為GBK編碼,則將其轉(zhuǎn)換為UTF-8編碼,后續(xù)系統(tǒng)將讀取utf-8形式編碼,并在后續(xù)系統(tǒng)內(nèi)存 中統(tǒng)一使用Unicode;
[0069] 字表生成模塊103,以Unicode字符為單位,生成字表,表中字在后續(xù)詞向量生成過 程中,被映射為浮點數(shù)形式的詞向量。
[0070] 基于語言模型的詞向量訓(xùn)練模塊2包含正負(fù)例生成模塊201、詞向量深度神經(jīng)網(wǎng)絡(luò) 模塊202以及網(wǎng)絡(luò)優(yōu)化及訓(xùn)練誤差監(jiān)控模塊203,所述正負(fù)例生成模塊201,用于讀取輸入語 句,根據(jù)預(yù)設(shè)的窗口,生成正例,同時,采用隨機(jī)替換正例的中心詞方法,生成相應(yīng)負(fù)例;
[0071] 詞向量深度神經(jīng)網(wǎng)絡(luò)模塊202,將生成的正例負(fù)例輸入網(wǎng)絡(luò),計算概率,并根據(jù)正 負(fù)例的概率調(diào)整網(wǎng)絡(luò);
[0072]絡(luò)優(yōu)化及訓(xùn)練誤差監(jiān)控模塊203,針對全局,優(yōu)化語言模型的概率,并控制訓(xùn)練過 程中的誤差,達(dá)到訓(xùn)練設(shè)置的終止條件時,終止訓(xùn)練,保存模型。
[0073]海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊3包含知識庫標(biāo)準(zhǔn)化模塊301、加強(qiáng)學(xué)習(xí)深度神經(jīng)網(wǎng) 絡(luò)模塊302以及網(wǎng)絡(luò)優(yōu)化和誤差監(jiān)控模塊303,所述知識庫標(biāo)準(zhǔn)化模塊301,標(biāo)準(zhǔn)化知識庫中 實體的表不;
[0074]加強(qiáng)學(xué)習(xí)深度神經(jīng)網(wǎng)絡(luò)模塊302,將知識庫中的實體作為輸入,使用初級詞向量作 為特征,在加強(qiáng)學(xué)習(xí)網(wǎng)絡(luò)中預(yù)測,并根據(jù)預(yù)測值與知識庫真實值的情況,加強(qiáng)初級詞向量; [0075]網(wǎng)絡(luò)優(yōu)化和誤差監(jiān)控模塊303,針對全局,優(yōu)化語言模型的概率,并控制訓(xùn)練過程 中的誤差,達(dá)到訓(xùn)練設(shè)置的終止條件時,終止訓(xùn)練,保存模型。
[0076]基于深度人工神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別模塊4包含醫(yī)學(xué)名實體深度神經(jīng)網(wǎng)絡(luò)模 塊401以及語句級極大似然優(yōu)化及溢出控制模塊402,醫(yī)學(xué)名實體深度神經(jīng)網(wǎng)絡(luò)模塊401,讀 取輸入的語句,使用分布式意義特征進(jìn)行特征表示,并輸入名實體識別網(wǎng)絡(luò),根據(jù)小規(guī)模的 標(biāo)注語料訓(xùn)練識別各種醫(yī)學(xué)名實體的識別網(wǎng)絡(luò);
[0077] 語句級極大似然優(yōu)化及溢出控制模塊402,針對深度神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練中出現(xiàn)的 溢出錯誤,進(jìn)行近似計算。
[0078] 語句級極大似然優(yōu)化及溢出控制模塊402采用極大似然算法,避免模型訓(xùn)練中由 于計算機(jī)浮點數(shù)表達(dá)范圍受限而導(dǎo)致模型訓(xùn)練失敗,其算法為:
[0079] 首先,對所有輸入xi找到最大的輸入xmax=MAX(Xi);
[0080] 然后,按照以下方式進(jìn)行變換:
[0082]以避免目標(biāo)函數(shù)優(yōu)化過程中的浮點溢出問題,提高魯棒性和模型的精度。
[0083] 采用基于深層神經(jīng)網(wǎng)絡(luò)的名實體識別算法,深層神經(jīng)網(wǎng)絡(luò)包含一個卷積層、一個 基于HardTanh函數(shù)的非線性變換層和多個線性層,如圖2所示,這種結(jié)構(gòu)因性能良好而被廣 泛用于多種NLP任務(wù)。
[0084]計算每一個詞的分類類別分?jǐn)?shù)時,取目標(biāo)詞的一個特定的窗口尺寸范圍內(nèi)的上下 文詞被作為輸入;對于鄰近句子開頭或句子結(jié)束的詞,采用一個偽填充字以保證所有詞的 輸入向量為固定長度;在輸入窗口中的每個詞可被映射到N維向量,N是詞向量維數(shù);然后, 卷積層產(chǎn)生對應(yīng)于隱藏節(jié)點的全局化特征;最后,局部特征和全局特征一并送入一個標(biāo)準(zhǔn) 的放射網(wǎng)絡(luò)以使用反向傳播算法進(jìn)行訓(xùn)練;其中,損失函數(shù)定義為以下語句級對數(shù)似然:
[0086] 其中,S(X,T)是標(biāo)簽序列T被賦予輸入X時的句子級似然得分;H(Tt-^Tt)標(biāo)簽Tt-i 到標(biāo)簽Tt全局轉(zhuǎn)移分?jǐn)?shù);DNN(Xt,Tt)標(biāo)簽Tt被賦予輸入Xt時的深層神經(jīng)網(wǎng)絡(luò)得分。
[0087] 本發(fā)明基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取方法,包括以下步驟:
[0088]采用隨機(jī)替換輸入正例的中心詞生成負(fù)例;
[0089] 基于語言模型優(yōu)化的深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練初級詞向量;
[0090] 采用醫(yī)學(xué)知識庫大數(shù)據(jù)進(jìn)行深度加強(qiáng)學(xué)習(xí),獲取針對醫(yī)學(xué)領(lǐng)域的分布式語義表 示;
[0091] 基于優(yōu)化語句級極大似然估計概率的深層神經(jīng)網(wǎng)絡(luò)的中文醫(yī)學(xué)名實體識別;
[0092] 有效預(yù)防深度神經(jīng)網(wǎng)絡(luò)模型溢出的近似算法;
[0093]通過深度加強(qiáng)學(xué)習(xí),將海量中文醫(yī)學(xué)知識庫結(jié)合到非監(jiān)督學(xué)習(xí)的過程。
[0094]其中,由預(yù)處理模塊1對醫(yī)學(xué)大數(shù)據(jù)進(jìn)行去噪,編碼統(tǒng)一,以及生成字表;基于語言 模型的詞向量訓(xùn)練模塊2讀取醫(yī)療文本,使用預(yù)先定義的窗口長度,將輸入語句分割為多個 輸入窗口的正例,同時,通過隨機(jī)替換中心詞的的方法生成相應(yīng)負(fù)例,正例和負(fù)例在一個詞 向量訓(xùn)練人工神經(jīng)網(wǎng)絡(luò)中不斷經(jīng)過網(wǎng)絡(luò)概率預(yù)測和挑戰(zhàn)網(wǎng)絡(luò)參數(shù)的循環(huán),最終有最大化語 言模型訓(xùn)練出初級詞向量;海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊3使用初級詞向量進(jìn)行初始化,并 使用初級詞向量預(yù)測海量知識庫中的詞條,通過不斷的加強(qiáng)學(xué)習(xí),調(diào)整初級詞向量,最終得 到面向醫(yī)學(xué)領(lǐng)域的分布式語義特征表示;基于深度人工神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別模塊4 讀取新人工標(biāo)注的少量語料,使用分布式語義特征描述把輸入語句轉(zhuǎn)化為分布式的特征描 述,并預(yù)測詞條的標(biāo)注,通過不斷的調(diào)整網(wǎng)絡(luò)系數(shù),實現(xiàn)基于深度學(xué)習(xí)和分布式語義特征的 醫(yī)學(xué)名實體識別。
[0095]基于語言模型的詞向量訓(xùn)練模塊2中的正負(fù)例生成模塊201使用隨機(jī)替換正例中 心詞的方式生成負(fù)例;詞向量深度神經(jīng)網(wǎng)絡(luò)模塊202通過正負(fù)例學(xué)習(xí)訓(xùn)練初級詞向量,網(wǎng)絡(luò) 優(yōu)化及訓(xùn)練誤差監(jiān)控模塊203進(jìn)行模型優(yōu)化,監(jiān)控網(wǎng)絡(luò)訓(xùn)練誤差及判斷訓(xùn)練終止條件; [0096]海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊3中,知識庫標(biāo)準(zhǔn)化模塊301讀取醫(yī)學(xué)知識庫詞條, 標(biāo)準(zhǔn)化知識庫描述;加強(qiáng)學(xué)習(xí)深度神經(jīng)網(wǎng)絡(luò)模塊302讀取標(biāo)準(zhǔn)化的條目,通過對比網(wǎng)絡(luò)預(yù)測 與真實知識庫標(biāo)記,產(chǎn)生錯誤信號,通過加強(qiáng)學(xué)習(xí),把初級詞向量訓(xùn)練為面向醫(yī)學(xué)領(lǐng)域的分 布式語義特征;
[0097] 基于深度人工神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別模塊4中,醫(yī)學(xué)名實體深度神經(jīng)網(wǎng)絡(luò)模 塊401使用少量人工標(biāo)注的語錄,通過語句級極大似然優(yōu)化及溢出控制模塊402訓(xùn)練能夠精 確識別醫(yī)學(xué)名實體的網(wǎng)絡(luò),并進(jìn)行有效的模型訓(xùn)練溢出控制。
[0098] 作為一個專業(yè)性極強(qiáng)的領(lǐng)域,醫(yī)學(xué)領(lǐng)域有著標(biāo)準(zhǔn)化極高,涵蓋很廣泛的知識庫。開 發(fā)一種創(chuàng)新性的兩步訓(xùn)練方法。在第一步中,使用基于優(yōu)化語言模型概率的方法得到中間 詞向量;在第二步訓(xùn)練中,從第一步的詞向量出發(fā),設(shè)計一神經(jīng)網(wǎng)絡(luò)來通過優(yōu)化已有醫(yī)學(xué)知 識庫來進(jìn)一步訓(xùn)練已有的詞向量。第二步訓(xùn)練使用大規(guī)模的醫(yī)學(xué)知識庫作為監(jiān)督指導(dǎo),進(jìn) 一步優(yōu)化詞向量的醫(yī)學(xué)語意表示,極大的優(yōu)化詞向量矩陣對醫(yī)學(xué)醫(yī)學(xué)語意表達(dá)的能力,使 得到的詞向量能夠更加準(zhǔn)確的描述醫(yī)學(xué)知識。醫(yī)學(xué)詞向量關(guān)鍵技術(shù)區(qū)別于其他通用詞向量 技術(shù)。
[0099]中文醫(yī)學(xué)知識是對詞向量進(jìn)行正確導(dǎo)向的重要資源。整理目前醫(yī)學(xué)領(lǐng)域的一些通 用醫(yī)學(xué)知識庫,如包含常見藥物相關(guān)信息的中華藥典、中文的診斷用語集合、ICD10、以及醫(yī) 學(xué)診斷用語辭典L0INC中文版等。通過整理已有的醫(yī)學(xué)術(shù)語庫,獲得一個包含廣泛使用的醫(yī) 學(xué)術(shù)語的基本知識庫。
[0100]由于中文醫(yī)學(xué)研究的起步較晚,中文的醫(yī)學(xué)知識庫相對有限。整理國外廣泛使用 的30個常用醫(yī)學(xué)知識庫,收集200多萬條相關(guān)的醫(yī)學(xué)詞條,并在多名領(lǐng)域?qū)<业膸椭?,?英文的醫(yī)學(xué)術(shù)語翻譯為中文。
[0101]已有醫(yī)學(xué)術(shù)知識庫的一個問題是覆蓋率不足。醫(yī)學(xué)領(lǐng)域的相關(guān)研究證明,已有的 醫(yī)學(xué)知識庫大概只能涵蓋醫(yī)學(xué)領(lǐng)域常用術(shù)語的60%左右。由于時間的延后,很多新的術(shù)語 和知識不能夠及時更新到術(shù)語庫中。因此,開發(fā)醫(yī)學(xué)信息抽取系統(tǒng),在大規(guī)模的中文醫(yī)學(xué)文 本中抽取大量的臨床廣泛使用的醫(yī)學(xué)術(shù)語。在計算機(jī)算法的輔助下,對抽取的醫(yī)學(xué)術(shù)語進(jìn) 行甄別,糾錯已經(jīng)和已有知識庫的合并等;最后,構(gòu)建一個以已有中文醫(yī)學(xué)知識庫為基礎(chǔ), 國際多種常用醫(yī)療術(shù)語庫為補(bǔ)充,并增加了在臨床中經(jīng)常使用,但是未被涵蓋的醫(yī)療術(shù)語 的全面的醫(yī)學(xué)領(lǐng)域知識庫。
[0102] 醫(yī)學(xué)知識導(dǎo)向的詞向量優(yōu)化方法,收集并整理一個包含三百多萬詞條的全面的中 文醫(yī)學(xué)領(lǐng)域知識庫。知識庫涵蓋醫(yī)學(xué)領(lǐng)域常見的術(shù)語,包括:藥物名稱、疾病名稱、檢測結(jié) 果、手術(shù)操作、治療手段、不良反應(yīng)等。設(shè)計一個深度神經(jīng)網(wǎng)絡(luò),使用知識庫,對上一階段訓(xùn) 練的詞向量進(jìn)行定向優(yōu)化。
[0103] 優(yōu)化神將網(wǎng)絡(luò)的輸入層是醫(yī)學(xué)術(shù)語對應(yīng)的詞向量。輸入層讀取上一階段根據(jù)優(yōu)化 語言模型訓(xùn)練的詞向量,作為醫(yī)學(xué)術(shù)語對應(yīng)的輸入向量。對每一個術(shù)語,神經(jīng)網(wǎng)絡(luò)計算屬于 每個醫(yī)學(xué)類別(上述6中類別)的概率,然后通過優(yōu)化醫(yī)學(xué)術(shù)語類別的預(yù)測概率,對詞向量進(jìn) 行定向優(yōu)化。神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)如下:
[0104] 1)輸入層,使用現(xiàn)有詞向量,將輸入的醫(yī)學(xué)術(shù)語轉(zhuǎn)換為輸入向量;
[0105] 2)卷積層,將輸入向量通過卷積轉(zhuǎn)換,映射到定長的中間層(300個隱含節(jié)點);
[0106] 3)線性變換層,通過線性變換層,將卷積后的中間層映射到第一層隱含層(500個 隱含節(jié)點);
[0107] 4)非線性變換層,使用HardTan函數(shù),將輸入映射到第二層隱含層(500個隱含節(jié) 點);
[0108] 5)線性變換層,根據(jù)第二層隱含層的輸入,映射到最終的輸出層節(jié)點(6個);
[0109] 根據(jù)輸出層的概率,以及真實的醫(yī)學(xué)術(shù)語類別,計算相應(yīng)的錯誤信號,通過后向傳 播算法調(diào)整整個神經(jīng)網(wǎng)絡(luò)參數(shù),并最終調(diào)整相應(yīng)的詞向量。
[0110] 訓(xùn)練方式,在模型訓(xùn)練過程中,從未標(biāo)注訓(xùn)練語料集中抽取5分之一作為驗證集 合。在參數(shù)選擇上,設(shè)置學(xué)習(xí)比率(learning rate)0.01,詞向量煒度為50,隱藏層節(jié)點數(shù)目 設(shè)置為1〇〇(我們測試了隱藏節(jié)點數(shù)從50到150的所有可能,100取得了最好的效果,100以上 已無明顯提高),取詞窗口設(shè)置為5。所有深層神經(jīng)網(wǎng)絡(luò)參數(shù)應(yīng)用隨機(jī)梯度下降算法及反向 傳播算法(back propagation)更新。對于中文醫(yī)學(xué)文本,未使用分詞技術(shù),而是將單個漢字 作一個獨立的詞,生成詞向量。
[0111] 詞向量中不僅包含了語法信息,更包含了語義信息。在得到了詞向量之后,對每一 個詞,使用余弦相似度(cosine similarity)計算了與其相似度最高的詞匯。在下邊的例子 中,第一列顯示了與"一"相似度最高的其他詞匯??梢钥吹?,其主要由數(shù)字和數(shù)量詞組成。 第三列中,主要包含人體器官相關(guān)的醫(yī)學(xué)名詞。
[0113] 綜上所述,本發(fā)明提出了一種基于深度學(xué)習(xí)及分布式語義特征的方法來識別醫(yī)療 文本中的6種重要信息,包括:藥物、檢測、疾病、手術(shù)操作、治療手段以及不良反應(yīng)等信息。 與傳統(tǒng)條件隨機(jī)場(CRF)模型相比,本發(fā)明的特點在于:1)使用大量未標(biāo)注語料來生成詞向 量,從而避免醫(yī)學(xué)自然語言處理中的繁瑣的特征選擇和調(diào)優(yōu)過程;2)充分利用醫(yī)學(xué)領(lǐng)域現(xiàn) 有的海量知識庫,把現(xiàn)有知識通過加強(qiáng)學(xué)習(xí)結(jié)合到深度學(xué)習(xí)算法中,從而有效提高系統(tǒng)性 能;3)針對醫(yī)學(xué)文本利用基于深層神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別算法,在中文醫(yī)療文本標(biāo)注 語料集上進(jìn)行評估,取得了比傳統(tǒng)的基于序列標(biāo)注的方法更高的性能。
[0114] 需要理解到的是:以上所述僅是本發(fā)明的優(yōu)選實施方式,對于本技術(shù)領(lǐng)域的普通 技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以作出若干改進(jìn)和潤飾,這些改進(jìn)和潤 飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
【主權(quán)項】
1. 基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng),其特征在于:包含預(yù)處理模塊 (1)、基于語言模型的詞向量訓(xùn)練模塊(2)、海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊(3)以及基于深度 人工神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別模塊(4),所述預(yù)處理模塊(1),用于對醫(yī)學(xué)文本大數(shù)據(jù)進(jìn) 行非法字符清理、中文字符編碼統(tǒng)一以及生成下一模塊詞向量訓(xùn)練使用的字表,字表是所 有文本中出現(xiàn)的文字的列表; 所述基于語言模型的詞向量訓(xùn)練模塊(2),讀取預(yù)處理過的醫(yī)療文本,根據(jù)預(yù)訂的窗 口,生成正例;同時,使用隨機(jī)替換正例中心字的方式生成負(fù)例,通過訓(xùn)練一個深度神經(jīng)網(wǎng) 絡(luò),以優(yōu)化語言模型的概率作為優(yōu)化目標(biāo),生成初級詞向量; 所述海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊(3),以初級詞向量為出發(fā)點,使用另外一個深度神 經(jīng)網(wǎng)絡(luò),通過優(yōu)化醫(yī)學(xué)知識庫的預(yù)測概率,對初級詞向量進(jìn)行加強(qiáng)學(xué)習(xí),從而生成醫(yī)學(xué)領(lǐng)域 的分布式語義特征; 所述基于深度人工神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別模塊(4),使用海量醫(yī)學(xué)知識庫加強(qiáng)學(xué) 習(xí)模塊(3)中訓(xùn)練的醫(yī)學(xué)領(lǐng)域的分布式語義特征表示,訓(xùn)練一個醫(yī)學(xué)名實體識別的深度神 經(jīng)網(wǎng)絡(luò),識別醫(yī)學(xué)文本中重要的名實體。2. 根據(jù)權(quán)利要求1所述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng),其特征 在于:所述預(yù)處理模塊(1)包含非法字符過濾模塊(101)、中文編碼統(tǒng)一模塊(102)以及字表 生成模塊(103), 所述非法字符過濾模塊(101),以字符為單位遍歷文本,移出其中無效非可見字符; 所述中文編碼統(tǒng)一模塊(102),根據(jù)設(shè)置確定輸入文本的中文字符編碼方式; 所述字表生成模塊(103),以Unicode字符為單位,生成字表,表中字在后續(xù)詞向量生成 過程中,被映射為浮點數(shù)形式的詞向量。3. 根據(jù)權(quán)利要求1所述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng),其特征 在于:所述基于語言模型的詞向量訓(xùn)練模塊(2)包含正負(fù)例生成模塊(201)、詞向量深度神 經(jīng)網(wǎng)絡(luò)模塊(202)以及網(wǎng)絡(luò)優(yōu)化及訓(xùn)練誤差監(jiān)控模塊(203),所述正負(fù)例生成模塊(201),用 于讀取輸入語句,根據(jù)預(yù)設(shè)的窗口,生成正例,同時,采用隨機(jī)替換正例的中心詞方法,生成 相應(yīng)負(fù)例; 所述詞向量深度神經(jīng)網(wǎng)絡(luò)模塊(202),將生成的正例負(fù)例輸入網(wǎng)絡(luò),計算概率,并根據(jù) 正負(fù)例的概率調(diào)整網(wǎng)絡(luò); 所述網(wǎng)絡(luò)優(yōu)化及訓(xùn)練誤差監(jiān)控模塊(203),針對全局,優(yōu)化語言模型的概率,并控制訓(xùn) 練過程中的誤差,達(dá)到訓(xùn)練設(shè)置的終止條件時,終止訓(xùn)練,保存模型。4. 根據(jù)權(quán)利要求1所述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng),其特征 在于:所述海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊(3)包含知識庫標(biāo)準(zhǔn)化模塊(301)、加強(qiáng)學(xué)習(xí)深度 神經(jīng)網(wǎng)絡(luò)模塊(302)以及網(wǎng)絡(luò)優(yōu)化和誤差監(jiān)控模塊(303),所述知識庫標(biāo)準(zhǔn)化模塊(301),標(biāo) 準(zhǔn)化知識庫中實體的表示; 所述加強(qiáng)學(xué)習(xí)深度神經(jīng)網(wǎng)絡(luò)模塊(302),將知識庫中的實體作為輸入,使用初級詞向量 作為特征,在加強(qiáng)學(xué)習(xí)網(wǎng)絡(luò)中預(yù)測,并根據(jù)預(yù)測值與知識庫真實值的情況,加強(qiáng)初級詞向 量; 所述網(wǎng)絡(luò)優(yōu)化和誤差監(jiān)控模塊(303),針對全局,優(yōu)化語言模型的概率,并控制訓(xùn)練過 程中的誤差,達(dá)到訓(xùn)練設(shè)置的終止條件時,終止訓(xùn)練,保存模型。5. 根據(jù)權(quán)利要求1所述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng),其特征 在于:所述基于深度人工神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別模塊(4)包含醫(yī)學(xué)名實體深度神經(jīng)網(wǎng) 絡(luò)模塊(401)以及語句級極大似然優(yōu)化及溢出控制模塊(402),所述醫(yī)學(xué)名實體深度神經(jīng)網(wǎng) 絡(luò)模塊(401),讀取輸入的語句,使用分布式意義特征進(jìn)行特征表示,并輸入名實體識別網(wǎng) 絡(luò),根據(jù)小規(guī)模的標(biāo)注語料訓(xùn)練識別各種醫(yī)學(xué)名實體的識別網(wǎng)絡(luò); 所述語句級極大似然優(yōu)化及溢出控制模塊(402),針對深度神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練中出現(xiàn) 的溢出錯誤,進(jìn)行近似計算。6. 根據(jù)權(quán)利要求1所述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng),其特征 在于:所述語句級極大似然優(yōu)化及溢出控制模塊(402)采用極大似然算法,避免模型訓(xùn)練中 由于計算機(jī)浮點數(shù)表達(dá)范圍受限而導(dǎo)致模型訓(xùn)練失敗,其算法為: 首先,對所有輸入Xi找到最大的輸入Xmx=MAX(Xi); M 始眧丨)丨卞古才進(jìn)好亦施.以避免目標(biāo)函數(shù)優(yōu)化過程中的浮點溢出問題,提高魯棒性和模型的精度。7. 根據(jù)權(quán)利要求1所述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取系統(tǒng),其特征 在于:采用基于深層神經(jīng)網(wǎng)絡(luò)的名實體識別算法,深層神經(jīng)網(wǎng)絡(luò)包含一個卷積層、一個基于 HardTanh函數(shù)的非線性變換層和多個線性層; 計算每一個詞的分類類別分?jǐn)?shù)時,取目標(biāo)詞的一個特定的窗口尺寸范圍內(nèi)的上下文詞 被作為輸入;對于鄰近句子開頭或句子結(jié)束的詞,采用一個偽填充字以保證所有詞的輸入 向量為固定長度;在輸入窗口中的每個詞可被映射到N維向量,N是詞向量維數(shù);然后,卷積 層產(chǎn)生對應(yīng)于隱藏節(jié)點的全局化特征;最后,局部特征和全局特征一并送入一個標(biāo)準(zhǔn)的放 射網(wǎng)絡(luò)以使用反向傳播算法進(jìn)行訓(xùn)練;其中,損失函數(shù)定義為以下語句級對數(shù)似然:其中,S(X,T)是標(biāo)簽序列T被賦予輸入X時的句子級似然得分;!KIV1, Tt)標(biāo)簽IV1到標(biāo)簽 Tt全局轉(zhuǎn)移分?jǐn)?shù);DNN (Xt,Tt)標(biāo)簽Tt被賦予輸入Xt時的深層神經(jīng)網(wǎng)絡(luò)得分。8. 權(quán)利要求1所述系統(tǒng)實現(xiàn)基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取方法,其特 征在于包括以下步驟: 采用隨機(jī)替換輸入正例的中心詞生成負(fù)例; 基于語言模型優(yōu)化的深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練初級詞向量; 采用醫(yī)學(xué)知識庫大數(shù)據(jù)進(jìn)行深度加強(qiáng)學(xué)習(xí),獲取針對醫(yī)學(xué)領(lǐng)域的分布式語義表示; 基于優(yōu)化語句級極大似然估計概率的深層神經(jīng)網(wǎng)絡(luò)的中文醫(yī)學(xué)名實體識別; 預(yù)防深度神經(jīng)網(wǎng)絡(luò)模型溢出的近似算法; 通過深度加強(qiáng)學(xué)習(xí),將海量中文醫(yī)學(xué)知識庫結(jié)合到非監(jiān)督學(xué)習(xí)的過程。9. 根據(jù)權(quán)利要求8所述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取方法,其特征 在于:由預(yù)處理模塊(1)對醫(yī)學(xué)大數(shù)據(jù)進(jìn)行去噪,編碼統(tǒng)一,以及生成字表;由基于語言模 型的詞向量訓(xùn)練模塊(2)讀取醫(yī)療文本,使用預(yù)先定義的窗口長度,將輸入語句分割為多個 輸入窗口的正例,同時,通過隨機(jī)替換中心詞的的方法生成相應(yīng)負(fù)例,正例和負(fù)例在一個詞 向量訓(xùn)練人工神經(jīng)網(wǎng)絡(luò)中不斷經(jīng)過網(wǎng)絡(luò)概率預(yù)測和挑戰(zhàn)網(wǎng)絡(luò)參數(shù)的循環(huán),最終有最大化語 言模型訓(xùn)練出初級詞向量;由海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊(3)使用初級詞向量進(jìn)行初始 化,并使用初級詞向量預(yù)測海量知識庫中的詞條,通過不斷的加強(qiáng)學(xué)習(xí),調(diào)整初級詞向量, 最終得到面向醫(yī)學(xué)領(lǐng)域的分布式語義特征表示;由基于深度人工神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識 別模塊(4)讀取新人工標(biāo)注的少量語料,使用分布式語義特征描述把輸入語句轉(zhuǎn)化為分布 式的特征描述,并預(yù)測詞條的標(biāo)注,通過不斷的調(diào)整網(wǎng)絡(luò)系數(shù),實現(xiàn)基于深度學(xué)習(xí)和分布式 語義特征的醫(yī)學(xué)名實體識別。10. 根據(jù)權(quán)利要求9所述的基于深度學(xué)習(xí)及分布式語義特征醫(yī)學(xué)信息抽取方法,其特征 在于:基于語言模型的詞向量訓(xùn)練模塊(2)中的正負(fù)例生成模塊(201)使用隨機(jī)替換正例中 心詞的方式生成負(fù)例;詞向量深度神經(jīng)網(wǎng)絡(luò)模塊(202)通過正負(fù)例學(xué)習(xí)訓(xùn)練初級詞向量,網(wǎng) 絡(luò)優(yōu)化及訓(xùn)練誤差監(jiān)控模塊(203)進(jìn)行模型優(yōu)化,監(jiān)控網(wǎng)絡(luò)訓(xùn)練誤差及判斷訓(xùn)練終止條件; 海量醫(yī)學(xué)知識庫加強(qiáng)學(xué)習(xí)模塊(3)中,知識庫標(biāo)準(zhǔn)化模塊(301)讀取醫(yī)學(xué)知識庫詞條, 標(biāo)準(zhǔn)化知識庫描述;加強(qiáng)學(xué)習(xí)深度神經(jīng)網(wǎng)絡(luò)模塊(302)讀取標(biāo)準(zhǔn)化的條目,通過對比網(wǎng)絡(luò)預(yù) 測與真實知識庫標(biāo)記,產(chǎn)生錯誤信號,通過加強(qiáng)學(xué)習(xí),把初級詞向量訓(xùn)練為面向醫(yī)學(xué)領(lǐng)域的 分布式語義特征; 基于深度人工神經(jīng)網(wǎng)絡(luò)的醫(yī)學(xué)名實體識別模塊(4)中,醫(yī)學(xué)名實體深度神經(jīng)網(wǎng)絡(luò)模塊 (401)使用少量人工標(biāo)注的語錄,通過語句級極大似然優(yōu)化及溢出控制模塊(402)訓(xùn)練精確 識別醫(yī)學(xué)名實體的網(wǎng)絡(luò),并進(jìn)行模型訓(xùn)練溢出控制。
【文檔編號】G06N3/08GK105894088SQ201610176409
【公開日】2016年8月24日
【申請日】2016年3月25日
【發(fā)明人】吳永輝, 王璟琪
【申請人】蘇州赫博特醫(yī)療信息科技有限公司