俞鑫 吳明暉



摘? 要: Web網頁中包含了大量異構的半結構化或非結構化數據,如何準確地從這些網頁中提取有價值的信息顯得極其重要。文章基于深度學習,結合BERT構建了一種新型的BERT+BiLSTM+CRF信息抽取模型,實驗結果表明了該方法的有效性。
關鍵詞: 深度學習; 信息抽取模型; Web; BERT+BiLSTM+CRF
中圖分類號:TP391? ? ? ? ? 文獻標志碼:A? ? ?文章編號:1006-8228(2019)09-30-03
Research and application of deep learning based Web information extraction model
Yu Xin, Wu Minghui
(Computer and Computing Science School, Zhejiang University City College, Hangzhou 310015, China)
Abstract: Web pages contain large amount of heterogeneous semi-structured or unstructured data, and how to accurately extract valuable information from web pages is extremely important. With the help of deep learning, this paper proposes a new BERT+BiLSTM+CRF information extraction model. The experimental results show the effectiveness of the proposed method.
Key words: deep learning; information extraction model; Web; BERT+BiLSTM+CRF
0 引言
伴隨著互聯技術的迅猛發展,網上的數據總量呈指數增長。互聯網Web網頁中的海量數據包含了大量有價值的信息。因此,如何準確地從網頁中抽取有價值的信息變得越來越重要。然而,由于不同網頁的結構差異和數據格式不同,大多數網頁都顯示半結構化或非結構化的數據。如何有效地從網頁中提取所需信息一直是互聯網數據處理行業的關鍵問題之一。
信息抽取是自然語言處理領域的一個子領域。近年來,深度學習也在被大量應用到自然語言處理(NLP)相關領域,并取得了重大突破。使用深度學習的方法,可以自動地學習合適的特征與多層次的表達與輸出。
本文提出了一種基于深度學習的BERT+BiLSTM+CRF的Web信息抽取模型,并在高校教師的個人主頁信息抽取中得到應用。
1 Web信息抽取模型及實現
1.1 模型概況
首先通過網絡爬蟲獲取教師個人主頁內容,對內容按一定規則進行處理,對部分教師簡介的標記,制作成訓練集和驗證集,經過深度學習模型訓練,實現自動對同類型的其他Web頁面進行結構化目標信息抽取。
圖1是一個非結構化的教師個人主頁簡介,頁面中目標信息字段有教師姓名,性別,職務,學歷,人才層次,榮譽和獲得獎勵等。目標是將這些目標信息準確地提取出來。
1.2 數據預處理和實體定義
通過網絡爬蟲抓取數據之后需要對數據預處理,去除文本中大量無意義的空格和空行。將文本按句劃分,每句一行,長度不超過LSTM設置的最大長度。
下一步進行數據標注。通過標注數據明確哪些信息需要被抽取和數據之間的聯系,構建出用于模型訓練的數據集。
本文使用BIO標注:將每個字標注為“B-X”、“I-X”或者“O”。其中,“B-X”表示該字是實體X的開頭,“I-X” 表示該字是實體X的中間部分,“O”表示不是需要識別實體。例如:教授標記為“教 B-TIT 授 I-TIT”。具體實體標簽定義見表1。待抽取網頁如圖1。
1.3 模型構建
所構建的BERT+BiLSTM+CRF模型,包括一個BERT Embedding層,一個BiLSTM層和一個CRF層,模型結構如圖2所示。
⑴ BERT Embedding層,將輸入的句子通過Tokenize轉化成數字id,輸入BERT Embedding層提取特征,生成輸入向量。BERT是Devlin等人提出了一種新語言表示模型[1],其目標是通過聯合調節所有層中的左右上下文來預訓練深度雙向表示。在實際使用中需要一個額外的輸出層來微調預先訓練的BERT表示。
⑵ BiLSTM層,輸入為了BERT Embedding層生成的輸入向量。將向量序列一個向前的LSTM和一個向后的LSTM,把這兩個LSTM在隱藏層進行拼接成為BiLSTM[2],經過全連接輸出一個長度為標簽數量的一個向量。BiLSTM綜合考慮了過去的特征(正向過程提取)和未來的特征(逆向過程提取),避免了僅僅使用單向LSTM在對語句進行建立模型時會遇到無法獲取從后到前信息的問題,通過BiLSTM可以更好的捕捉雙向的語義依賴。
⑶ CRF層,使用crf_log_likelihood對LSTM輸出向量進行序列標記,計算標簽概率值。因為不同字之間存在相互關聯,標記符號之間也會相互作用,比如O后面就不能接I等。CRF[3]可以使用句子級標記信息,并對兩個不同標記間的關聯進行建模。
2 實驗
2.1 模型實現與訓練
基于TensorFlow框架對該模型進行了算法實現。
數據集包括2384條句子,按6:4劃分成訓練集和測試集。參數設置為:單向LSTM 長度為100,BiLSTM的長度為200,LSTM的Cell使用CoupledInputForgetGateLSTMCell[4];學習率為0.001,Dropout為0.5;優化器選擇Adam;Batch size為128,在GPU上訓練200輪。
2.2 模型應用
訓練好模型后,使用該模型來對網頁信息進行目標數據抽取,應用案例如圖3所示。
2.3 實驗結果對比分析
為了驗證所提出模型的效果,與一般的BiLSTM+CRF模型[5]進行了對比實驗,采用Precision(P)、Recall(R)和F1 Score(F1)作為模型效果評價標準。
模型1為本文所研究的BERT+BiLSTM+CRF模型,模型2為一般的BiLSTM+CRF模型。在模型2中沒有模型1的BERT Embedding層,而是傳統的Char Embedding,字向量使用隨機初始化的方式獲得。兩種模型實驗結果如表2所示。
由表2可以看出,除LVL和EDU標簽之外,其余7種標簽在BERT+BiLSTM+CRF模型中F1值更高,且EDU標簽F1值相差僅1.02%。整體上使用Bert模型能夠有效提高信息抽取率,F1整體提高約3%。
3 結束語
本文提出了一種基于深度學習的BERT+BiLSTM+CRF的Web信息抽取模型,并使用TensorFlow框架和BERT對該模型進行了算法實現。通過實驗對比分析,驗證了模型的有效性,并在高校教師個人主頁信息抽取中得到了實際應用。
參考文獻(References):
[1] Devlin J,Chang M,Lee K,et al. Bert: Pre-training of deep bidirectional transformers for language understanding. arXiv preprint arXiv:1810.04805.2018.
[2] Hochreiter S,Schmidhuber J.Long short-term memory[J]. Neural Computation,1997.9(8):1735-1780
[3] Lafferty J D,Mccallum A,Pereira F,et al.Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data[C].international conference on machine learning,2001: 282-289
[4] Greff K,Srivastava R K,Koutnik J,et al. LSTM:A Search Space Odyssey[J]. IEEE Transactions on Neural Networks. 2017.28(10):2222-2232
[5] Huang Z, Xu W, Yu K. Bidirectional LSTM-CRF models for sequence tagging[J].arXiv preprint arXiv:1508.01991, 2015.