「文本信息抽取與結構化」目前NLP領域最有應用價值的子任務之一

2020-02-03     有三AI

常常在想,自然語言處理到底在做的是一件什麼樣的事情?到目前為止,我所接觸到的NLP其實都是在做一件事情,即將自然語言轉化為一種計算機能夠理解的形式。這一點在知識圖譜、信息抽取、文本摘要這些任務中格外明顯。不同的任務的差異在於目標的轉化形式不一樣,因而不同的任務難度、處理方式存在差異。

這個系列文章【文本信息抽取與結構化】,在自然語言處理中是非常有用和有難度的技術,是文本處理與知識提取不可或缺的技術。

作者&編輯 | 小Dream哥

1 概述

之前筆者在公眾號中介紹過實體識別、關係抽取等常用的信息抽取技術。在這個系列文章中,我們不再局限於某一個具體的技術,而是聚焦在如何將一些「自然」的文本轉化為結構化的文本;如何從大規模的語料中提取出感興趣的內容。我們定義類似的任務為文本信息抽取與結構化。

這樣的任務是有非常廣泛的應用場景的,任何你需要從文本中提取信息的場景或者像知識圖譜這種需要大規模信息抽取的場景都需要這樣的技術。

這次的系列文章,我們從兩個方面來講述這個話題,文本的結構化以及大規模語料的知識抽取

2 文本的結構化

文本的結構化是比文本分類等任務要更細緻化的一項任務,在實際應用中,對文本的結構化的需求是非常旺盛的。例如,在招投標的場景中,需要對招標書進行結構化,以完成投標書的自動化生成、投標任務提醒等功能;在一些智能審核的場景中,需要將申請文件結構化,才能進行後續的判定。

下面舉一個文本結構化的例子,讓讀者感受一下,文本的結構化是一個什麼樣的任務?大概是一個什麼樣的過程?需要用到哪些技術?

例如,保險公司在接受客戶報案之後,要進行理賠和賠付。在人工智慧時代,保險公司都在推進智能理賠,即通過NLP技術,對報案材料進行審閱,結合保險條款,判定是否要賠付給客戶。在大型保險公司里,客戶數以億計的小額賠付場景中,這種智能理賠的能力是可以提供非常大的效益的。

對報案材料進行審閱的過程,就需要將報案信息進行提取,也就是將材料進行結構化。

如下是一段報案材料:

我是深圳市天藍電子科技有限公司的行政人員,我司一名員工,在上班時突發心臟病,送至深圳市第三人民醫院醫治無效後死亡。遂來報案,我們的保單號是12345678901234,我的聯繫電話是123456780。附件1是我們的醫院治療證明。

我們需要運用NLP技術對其進行結構化:

被保險人:深圳市天藍電子科技有限公司

出險原因:突發心臟病

治療醫院:深圳市第三人民醫院

出險時間:上班時

保單號:12345678901234

聯繫電話:123456780

醫院治療證明:附件1

通過對報案材料的結構化,我們得到了「被保險人」,「出險原因」以及「保單號」等信息,後續可以調用相關的系統核實信息,做出理賠決策。

由此可知,文本結構化用到的最關鍵的技術是信息抽取技術。此外,通常文本會是PDF或者word格式,很多時候,需要引入OCR技術,將PDF或者word轉化成JSON格式,而沒有丟失掉文檔結構的信息。

這裡先做一個概述,我們後續再詳細的介紹文本結構化的技術。

3 大規模語料的知識抽取

知識圖譜的搭建是大規模語料知識抽取技術應用的最主要場景之一。例如,某保險公司需要構建保險理賠過程的知識圖譜。假設其採用自頂向下的方法,先人工構建了保險理賠過程的shcema,進一步需要找到實例,充實schema。這就需要基於其常年積累下來的理賠及報案材料,運用NLP技術,抽取到大量的實例及屬性,豐富該知識圖譜。

我們對比來看,相對於上一節介紹的文本的結構化的任務,知識抽取的任務在於從海量的語料中抽取信息。相對來講,抽取的類別會更多,難度更大。需要一種無監督或者半監督的方式,來高效的完成這個任務。

自動化的知識抽取,是一個艱難但意義重大的任務,後續我們會介紹一些在這方面進行探索的工作。

總結

文本信息抽取與結構化是目前NLP中最為實際且效益最大的任務,熟悉這個任務是一個NLP算法工程師必需要做的事情。

讀者們可以留言,或者加入我們的NLP群進行討論。感興趣的同學可以微信搜索jen104,備註"加入有三AI NLP群"

下期預告:文本的結構化方法

文章來源: https://twgreatdaily.com/zh/mqHzDHAB3uTiws8KGcEf.html