NLP技術在金融資管領域的落地實踐

導讀: 在數字化浪潮的大背景下,金融資管行業的先行者正在積極探索將人工智能、大數據等先進技術用於構建面向未來的智能化投資研究平臺。本文將從金融資管領域對於數據智能的需求入手,詳細介紹自然語言處理技術在金融資管領域的典型落地實踐。針對海量文本的信息挖掘場景,我們利用Transformer、CNN等最新研究成果以及團隊自研的 tag2vec 等技術,構建了端到端的文本大數據分析系統,包含了從海量文本智能化採集、文本數據結構化到輔助投資決策的全流程,實現千萬級文本數據的採集和快速分析,進而幫助客戶進行快速精準的行業分析和投資決策。針對少樣本下的文本數據監控場景,我們基於熵簡NLP技術中臺所提供的分層技術架構,利用文本增強技術、少樣本學習、遷移學習等思想,在少樣本場景下構建高效能的金融輿情監控系統,幫助金融資管客戶實現從數據負債到數據資產的跨越,從中獲取前瞻的商業洞察,贏得先機。

本文的主要內容包括:

  • 背景及技術架構
  • 端到端的招標文本分析系統
  • 少樣本場景下的金融輿情監控系統
  • 總結和展望

01 背景及技術架構

1. 非結構化數據快速增長

信息不對稱是金融行業的本質特徵與競爭焦點。如上圖,是一張來自IDC的報告,表明最近幾年全球新增的數據有80%來自非結構化數據。所以大量及時有效的信息分佈在非結構化的文本數據中,如研報、新聞資訊、twitter 中,金融機構需要藉助 自然語言處理技術 從中高效、準確地挖掘出結構化信息,從中獲取前瞻的商業洞察。

我們團隊運用遷移學習、少樣本學習、無監督學習等人工智能領域最新思想和技術,已經構建起完善的自然語言處理技術架構,提供 端到端的海量文本分析和監控系統 ,幫助金融資管客戶跨越非結構化文本到結構化數據的鴻溝,進而輔助客戶進行快速的行業分析、投資決策。

接下來我們看下NLP技術如何嵌入到行業分析和投資決策的:

2. 智能投研流程

智能化的投研流程包括:

  • 數據層:這一階段的核心任務是數據的獲取。包括結構化和非結構化數據兩大類,其中非結構化數據包括如研究報告、新聞資訊等等。
  • 數據中臺:這一階段的核心任務是將原始數據轉化爲投資研究可以直接用的指標類數據。一方面,系統利用NLP技術,將非結構化的文本數據轉化爲結構化的數據。在此基礎上,系統利用大數據、機器學習等技術,將NLP結構化之後的數據以及其他原本就是結構化的數據進行建模分析,進一步將數據淬鍊爲知識。
  • 知識圖譜:這一階段的核心任務是將上一步得到的知識和事實,轉變爲投資建議。機器利用已經沉澱了分析師投研框架的知識圖譜,通過邏輯推理、風險控制等方式,將上一階段獲取的大量知識進行分析和推理,最終形成具有決策參考價值的投研情報。

最終這三個階段形成了一個完整的從數據獲取->數據處理->數據建模->邏輯推理的鏈條。這個鏈條構成了一個完全自動化、工業化、24小時不停機的智能化投研系統。

爲了實現智能投研系統的目標,我們來看下自然語言處理技術的架構是什麼樣的:

3. 自然語言處理技術架構

我們的自然語言處理技術架構分爲:應用層、組件層和預料層。

應用層 :直接對接業務邏輯,目前熵簡科技 30+ 端到端文本分析系統,服務於 20+ 金融資管和諮詢領域的機構,累計 30+ 業務應用場景。

組件層 :提供自然語言處理中的基礎算法組件,包括智能分詞組件、詞性標註、依存語法分析、詞向量、語義相似度、命名實體識別組件。

語料層 :語料層提供基礎層中各算法組件、應用層中各算法模塊的訓練和測試語料。

  • 基礎組件的通用語料,如通用文本語料、通用命名實體識別語料等;
  • 領域相關的語料,如金融詞典庫、研報分類庫、上市公司信息庫等。

通過這種方式構建的自然語言處理架構有兩個顯而易見的好處:

  • 我們把共用的組件單獨抽離出來,可以快速的構建上層的業務系統
  • 層次分明,各個組件各司其職,對於技術和業務同學都比較友好,容易上手

接下來介紹兩個比較典型的應用場景:招投標文本分析系統和金融輿情監控系統。

其中:

  • 招投標文本分析系統的特點是端到端和海量的文本
  • 金融輿情監控系統對應的場景主要是少樣本的場景

通過這兩個典型的金融應用場景,來分享我們在實際實踐的過程中遇到的一些問題和解決思路。

02 端到端的招投標文本分析系統

什麼是招投標數據?

公司在採購軟硬件時,一般會發佈一個 招標公告 ,供應商看到公告後,撰寫並提交自己的投標書,甲方評估後發佈 中標公告 ,告知大家誰中標。

招投標數據爲什麼重要?

對於一家上市公司而言,如果主營業務是toB的模式,我們可以通過招投標的數據來預測公司的營業收入,比如一家公司中標了一個大單,我們可以通過招投標數據提前預知。

如上圖的案例:

左邊是一家公司披露的中標公告,中標金額6.5億,公告的發佈時間是17年的10月17日;中間是我們在互聯網公開數據中採集到的中標公告,無論是項目名稱、中標單位、中標金額,都和左邊的內容是一致的,唯一不同的是時間,我們採集到數據的時間比公司披露的時間,早了16天,這就可以幫助我們在獲得關鍵信息上佔有優勢。

1. 招投標大數據分析系統技術架構圖

爲了實現全網的招投標數據監控,我們研發了端到端的智能化招投標文本分析系統,實現了千萬級招投標文本的流式處理。主要包括:智能化網頁抽取系統、招投標文本分析服務和數據展示。 首先我們的招投標文本分析系統會從外部海量的招投標網站上採集最原始的招投標標書,接下來用招投標文本分析服務對標書進行結構化的處理,把其中最關鍵的信息提取出來,最終利用數據展示、分析面板對數據進行二次的分析和展示,方便業務人員使用。

下面爲大家介紹其中最核心的兩個算法組件,智能網頁抽取系統和招投標信息抽取模型。

2. 智能網頁抽取系統

常規的數據採集步驟包括

  • 對頁面採集規則進行撰寫
  • 任務下發、下載器實現
  • 根據規則把內容抽取出來

由於需要採集的網站非常多,需要大量的人力,導致成本非常高,效率低下。所以我們需要一套智能化的信息抽取引擎。可以從海量網頁類文本數據中自動化地抽取出特定區域、特定用途的文本片段,即 從招投標網頁數據中抽取標書標題、標書正文

難點

  • 國內的資訊網站 10 萬+ ,網頁類型種類繁多,模板不計其數,無法通過統一化的規則處理;
  • 網頁內容基於 html 標籤以 的方式進行組織和佈局( 二維 ),而傳統文本是一維序列。

網頁抽取的數學模型

每一個網頁可以等價成帶有各類信息的樹, 新聞正文的文本、圖片、超鏈接 分佈在樹上的各個 紅色節點, 因此需要剔除無關節點,再按照節點位置信息進行序列化,這裏的難點是如何高精度的剔除無關節點。

構建 Tag embedding

我們首先要解決的問題是把網頁中的html編碼的標籤和屬性進行數值化的表示。針對這個問題,受到 word2vec 的 Skip-gram 思想啓發,我們提出了 tag embedding 的算法模型,目標函數如上。其 關鍵思想是 用當前節點的 tag 去預測父節點的 tag 和子節點的 tag。

Tag embedding模型的特點

  • 可在大規模數據集上進行無監督訓練,學習出 tag 與 tag 之間的語義關聯、主次關係等
  • 1000 萬+ 原始網頁數據參與訓練
  • 顯著提高後續分類模型的泛化能力
  • 顯著降低分類模型對於標註數據量的需求,僅需幾萬標註數據即可達到很高準確率

基於全連接網絡的二分類器

有了Tag embedding之後,我們進一步提出了基於三層前饋神經網絡的二分類器,主要用來判斷節點是否保留。

如上圖,輸入特徵主要包括:父節點的標籤信息、子節點的標籤信息、當前節點的標籤信息,以及當前節點在其它方面的特徵,比如當前節點包含文本的長度是多少、超鏈接的數目是多少。

模型性能

  • 訓練數據量:4 萬標註數據,來自 100 個招投標網站
  • 在 1000 個網站上進行了測試,標題提取準確率 98%,正文提取準確率 96%

使用相對簡單的三層前饋神經網絡的原因,主要是:

  • 我們的應用場景要求實時處理海量的網頁資料,所以對計算效率要求是很高的
  • 受到前面Tag embedding的好處,已經在進行無監督的大規模訓練,三層的神經網絡已經可以達到很好的性能

同時,這種模型的思想還可以推廣到其它任務:

  • 網頁類型判定:目錄頁、正文頁、廣告頁、圖片頁
  • 其他關鍵信息:目錄鏈接抽取、作者信息抽取等

目前,我們已經實現了海量招投標文本的採集,接下來我們需要把文本數據進行結構化,得到我們想要的數據字段。

3. 招投標信息抽取模型

① 提取目標

我們招投標信息提取模型的 目標 是從海量的招投標標書中,提取關鍵信息,如 招標單位中標單位中標金額 、產品類型 等等。

這其中的難點是 招投標文件完全由撰寫人來擬定,沒有規範統一的格式,無法通過統一化的規則處理:

  • 中標單位的表述多種多樣:承建商、供應商等;
  • 第一中標單位放棄;
  • 招標單位出現在標題中;
  • 多箇中標價格並存;
  • ……

② 特定實體類抽取方案

我們把這個任務抽象之後,跟命名實體識別非常類似,在我們的處理框架中,把它定義爲特定實體類抽取,其結構包括:預處理層、實體提取層、實體判別層、選舉決策層。這裏重點介紹下實體提取層和實體判別層:

  • 實體提取層:集成了 基於外部實體庫的提取器命名實體識別組件正則實體提取器,來提取 機構金額 兩類實體,最終得到實體集合及上下文特徵。
  • 實體判別層:根據其上下文特徵判斷該實體是否爲目標實體,這裏我們集成了 基於人工規則的實體判斷、基於關鍵詞匹配的實體判斷以及基於卷積神經網絡的實體判斷。

通過這種兩階段處理,多模型融合。第一階段不依賴於領域語料,採用通用命名實體識別語料訓練。第二階段在少量招投標專業語料訓練即可。同時實現了 高召回高精度

接下來詳細介紹下這兩階段中的核心模塊,通用命名實體識別和CNN判別器。

③ 基於改進Transformer的命名實體識別

對於通用命名實體識別組件,我們團隊先後迭代了幾個版本,目前最新的方案參考了復旦大學邱老師團隊在19年提出的模型。在這個模型中我們主要是以改進的Transformer模型爲主要的特徵提取器,再結合CRF層,引入全局約束信息來實現命名實體識別任務。左圖爲整個方案的結構圖,右圖爲原生的Transformer結構,用來做對比。

我們的方案相對於原生的Transformer主要做了兩個方面改進:

  • Embedding層:原生Transformer只採用了token embedding,而在我們的方案中同時採用了單個字的嵌入和bigram embedding,有效的增加了輸入文本的表達能力。目前已經有很多文獻表明,bi-gram embedding 一般可以提高命名實體識別模型的表現。詳細的實驗,大家可以參考上圖中18年的文章。
  • 改進了Transformer結構原有的自注意力層,通過調整原生結構位置的座標點,可以同時捕捉到方向信息和相對位置信息的特徵。

具體的實驗效果如下:

④ 基於卷積神經網絡的實體判決

這裏我們採用TextCNN作爲核心組件,整個網絡由Embedding層、卷積層和前向網絡層構成。

  • Embedding層:我們採用了表徵詞彙語義信息的Word Embedding和代表每個詞相對位置信息的Position Embedding,可以有效的捕捉上下文位置信息。
  • 卷積層:在卷積層我們採用了不同大小的卷積窗口,來捕捉不同距離的特徵;同時我們把最大池化改成了top k pooling,通過保留一些模型弱的特徵,來保證模型的魯棒性。

招投標信息抽取模型的測試結果:

我們在5000條招投標數據上的測試結果如上,簡單總結如下:

  • 高召回實體提取器 :採用基於 TENER 的命名實體識別 + 基於外部信息庫的實體提取+消歧模型 的混合架構,使得三類實體的平均召回率爲 0.97
  • 高精度實體判別器: 基於 CNN + 人工規則 + 關鍵詞匹配的聯邦競選架構,實現高魯棒性,平均精確率爲 0.96
  • 並行計算,模型輕量,計算效率高 。比BERT模型F1值高兩個百分點,同等硬件條件下,預測速率是BERT的 20倍 ,計算效率很高。

4. 端到端招投標大數據分析系統

基於前面的成果,我們可以構建起招投標大數據分析系統,這一系統 包含了從海量標書智能化採集、文本數據結構化到輔助投資決策的全流程,實現千萬級文本數據的採集和快速分析,幫助客戶預測跟蹤 toB行業與公司的發展狀況及競爭格局。

  • 海量標書智能採集 :覆蓋 700+ 招投標網站, 5000+ 萬份標書,其中60%爲政府網站,20%爲央企及國企網站,20%爲醫院、學校等事業單位及細分行業招投標公示平臺。
  • 文本數據結構化 :對於海量標書進行實時處理,從中提取 中標金額招標單位中標單位 等關鍵信息,提供客戶、地域、時間等多維度分析。

5. 招投標大數據分析系統部分功能展示

這裏展示瞭如何運用招投標數據對海康威視進行公司發展狀況分析和業績預測。比如,通過歷史數據回測,我們發現中標數據與公司定期公佈的季度收入高度相關,因此這一數據可以作爲未來業績預測的一項重要參考基準。另外,利用地域分析,我們可以瞭解到海康威視在不同地區的競爭格局和營收狀況,從而更深入地瞭解這家公司的經營狀況。

6. 小節

  • 提出了一種 Tag embedding 的算法,實現了 html 標籤的分佈式表示。在此基礎上,結合網頁其他特徵,我們構建了一種基於 前饋神經網絡 的網頁內容 自動化抽取系統 ,實現了 700+ 招投標網站、千萬級標書的 自動化採集
  • 構建了一種兩階段思想的 招投標信息提取系統 。在第一階段,以改進的Transformer網絡爲核心實現了F1達到 0.97 的實體提取。在第二階段,以帶有 Position embedding 的CNN 網絡爲核心,最終實現了F1值接近 0.96 的整體系統表現。
  • 構建了一種以網頁內容自動化抽取、招投標信息提取模型爲核心的 端到端招投標大數據分析系統 ,實現了5000萬+文本數據的採集和快速分析,可幫助客戶預測跟蹤 to B行業與公司的發展狀況及競爭格局。

03 少樣本場景下的金融輿情監控系統

1. 金融輿情監控系統

在金融領域,存在兩類機構,一類是買方,一類是賣方。買方一般直接操作股票的買賣,如公募基金、私募基金等;賣方主要進行股票的分析和研究,爲買方提供諮詢和建議,主要包括券商和獨立的研究機構等。通常一家買方機構,往往會對接多家賣方機構爲其服務。我們知道,微信已經成爲了一個工作平臺,因此微信羣成了賣方服務的重要場景,一個分析師往往會有幾十個賣方服務羣,每時每刻都可能收到來自這些羣的信息轟炸。這一場景主要面臨的痛點有:

  • 消息遺漏 :微信羣數量衆多,無法及時查看消息,一些文件超過有效期無法查看
  • 噪音過多 :羣內消息類型各異,信息噪音過多,尋找有用信息困難
  • 信息零散 :無法彙總全部信息,瞭解賣方觀點的全局趨勢

針對這些痛點,我們提出了金融輿情監控系統的解決方案,可以做到:

  • 無遺漏 :自動彙總賣方羣中的全部研究資料,包括各類調研邀請、文章分享、微信消息和PDF文件
  • 高效率 :可進行行業、公司、消息類別在內的多維篩選,精準定位有用信息
  • 可持續 :能夠按照微信羣或發言人的方式進行信息訂閱,持續關注特定券商、特定團隊的信息
  • 可分析 :聚合特定時段的全部信息,進行多維度熱點分析,爲用戶推送熱門信息

金融輿情監控系統的流程:

首先把微信羣中的信息,如文本信息、鏈接、文件等抽取成公司、行業、機構等3類標籤,然後進行業務分類,目前有4個大類,11個小類,同時我們的系統還會把結構化的文本提取出來,如文章作者、會議時間等等。這樣就可以做很多有價值的應用:如熱點追蹤、分類彙總、報告檢索、事件發現、投研日曆等等。

2. 金融輿情監控系統技術架構圖

金融輿情監控系統技術架構包括3層服務: 金融輿情文本分析服務 、數據清洗服務、展示服務。

其中,金融輿情文本分析服務最關鍵的三個組件是:信息類型分類、一級行業分類和特定實體提取。

3. 少樣本困境

在實踐中,很多與金融領域內的問題都與特定的場景相關,金融公司通常面臨的少樣本困境主要包括:

  • 數據蒐集成本高:與業務場景相關,可蒐集的數據量少,數據蒐集的時間成本很高。
  • 數據標註難度高:金融領域的問題,需要業務人員甚至金融分析師參與標註。

針對少樣本困境,常用的路徑有:遷移學習、數據增強、無監督學習、半監督學習。接下來,我們通過介紹金融輿情中兩類主要算法組件的實現方式,來分享我們解決少樣本問題的思路。

4. 微信信息分類模型

微信信息分類模型的目標: 對微信羣裏的 文本信息、文件、鏈接消息 等消息進行分類,分爲公司深度、公司點評、行業深度、行業點評、宏觀策略報告、固收報告、調研紀要、會議紀要、調研邀請、會議邀請及其他,共11個類別。

整個模型是以TextCNN網絡和Fasttext作爲兩個基本模型,再通過XGBoost將兩個模型集成起來。這裏用到的TextCNN網絡與前面的招投標網絡基本是一致的,除了在Embedding層,我們把位置向量去掉了。其好處有:

  • 高魯棒性 :採用 XGBoost 將多層CNN網絡和Fasttext網絡集成,融合深層模型與淺層模型的長處,提供算法 魯棒
  • 模型輕量,計算效率高。

5. 文本增強技術

文本增強技術 是一類低成本的數據槓桿,可以在不引入新數據下,有效撬動模型性能,尤其在少樣本場景下。

常用的場景包括:

  • 少樣本場景:擴充原始樣本集,性價比高,又快又省。
  • 樣本不均衡:擴充小比例類別,平衡樣本集,提升模型性能。
  • 提高魯棒性:在訓練集中引入噪聲,提升模型魯棒性。
  • 半監督訓練:用於無標籤數據,構造半監督訓練的樣本對。

總的來說,由於文本增強技術可以提高模型的魯棒性,除非數據量非常豐富,通常可以採用文本增強技術進行嘗試,一般都有正向的效果。

典型的文本增強技術有:

  • 回譯: 基本思想 是原始語種1 -> 語種2 -> 語種3 -> 原始語種1。
  • EDA: 基本思想 是對原始文本進行四類隨機操作,分別包括 同義詞替換、隨機插入、隨機交換隨機刪除
  • 非核心詞替換: 基本思想 是利用TF-IDF評估句子中每個單詞的重要性,用詞典中非核心詞去替換句子中的不重要詞。

關於文本增強技術的詳細介紹,可參考我們團隊之前的一篇文章:

https://zhuanlan.zhihu.com/p/111882970

6. 數據增強的實驗結果

樣本集情況:

  • 樣本集: 數據集共包含約 2200 條有效樣本。其中,公司點評類樣本最多,約 500 條。固收報告和調研邀請最少,在 150~200 條之間。
  • 測試集: 隨機選擇各類別約 100 條數據,共約 900
  • 訓練集: 除測試集外的剩餘樣本數據,共約 1300 條,各類別樣本約 150

實驗結果見右圖,總結如下:

  • 數據槓桿: 採用回譯、EDA、非核心詞替換等多維度文本數據增強方法,三類技術均可以帶來 6~9 個百分點的提升。
  • 小樣本場景下效果顯著: 在20%的小樣本下(各類樣本平均30條),文本增強技術效果最爲顯著,可以實現約 9 個百分點的提升。
  • 三類方法效果相近 :三類方法均可以有效提升模型性能,在全數據集下,三類方法均可以提升 5 個百分點左右。

最終的實驗結果見上圖,通過本文增強技術以及一些其它方法,我們基本解決了少樣本問題。

文本增強技術爲什麼可以在沒有引入額外數據的情況下,起到這麼好的效果?

這裏給大家分享下我們的思考:

  • 正則化: 本質上都是設計者表達了一種模型偏好,或者對於模型的分佈施加了較強的先驗分佈假設。例如,EDA表達的偏好是,模型應該對於文本局部噪聲不敏感。
  • 遷移學習: 回譯的有效性來源於外部預訓練好的翻譯模型。可以理解爲將外部預訓練好的模型從其他地方所學習到的信息或者知識遷移到了當前的任務中,提高了整體數據的信息容量,進而更好地指導當前模型的學習。
  • 提高模型魯棒性: EDA、非核心詞替換等技術除了可以從語義層面的噪聲來看待,同時還可以看作是對於輸入數據施加一般化噪聲(與具體任務無關的),實現類似於 dropout 層的功能,而這一思路已經被各個研究證明,可以一定程度提高模型的魯棒性。
  • 流形: 根據流形分佈定律,同一類標籤的文本,往往集中在高維文本空間上,某一個低維流形上,因此有效的文本增強技術應該保證新生成的文本仍然是該流形上的一點。

7. 微信行業分類模型

① 初版

模型目標: 對微信羣裏的 文本信息、文件、鏈接 消息等消息進行行業分類,以中信一級行業分類作爲分類基準,包括餐飲旅遊、商貿零售、紡織服裝、農林牧漁、建築、石油石化、通信、計算機等 29 個行業類別。這裏我們仍然以TextCNN作爲baseline嘗試解決,只要樣本足夠,就能得到很好的效果。

但是問題恰恰是樣本量太少了:

  • 樣本集: 數據集共包含約 1200 條有效樣本
  • 測試集: 隨機選擇 600 條,各類別在 10~30 條之間
  • 訓練集: 除測試集外的剩餘樣本數據,共約 600 條,各類別在 10~25 條之間

對這個問題,我們提出了三階段訓練的模型優化算法。整個流程如下

  • Step1: 詞向量預訓練。在數十億級海量語料上預訓練,在10萬研報數據上進行二次訓練,提升領域相關詞彙的 embedding 分佈。
  • Step2: 在原始樣本上訓練初版模型,利用這個模型對10萬研報數據進行行業分類,保留類別置信度大於某個閾值的研報樣本。用這些研報樣本二次訓練模型。多次迭代這個過程。
  • Step3: 將 step2 中的模型參數作爲初始值,在原始樣本上進行訓練,獲得最終模型。

整個過程可以類比爲:第一階段是高中學習,主要掌握通識知識。第二階段是大學本科,主要掌握專業內的基礎知識。第三階段是研究生學習,主要解決專業領域內某一類細分問題。

其中的核心思想是,通過這種三階段訓練的方式,將外部海量研報中關於行業類別的分佈信息遷移到微信這個任務中。

實驗結果見上圖右邊部分:

  • 三階段訓練法效果顯著: 三階段訓練法有效提升模型性能,尤其在在小樣本小(約每個類別 5~8 條),得益於遷移學習,可以提升模型 F1 值 48 個百分點。
  • 有效降低樣本需求: 即使在數據量只有 60% 的情況,模型的表現超過 100% 數據下的 baseline 3 個百分點。

② 行業記憶網絡

既然3階段的訓練方式是有效的,我們是不是可以把從外部研報學習到的知識用網絡單獨固化下來?基於這樣的一種想法,我們提出了行業記憶網絡結構,與TextCNN網絡一起構成了混合模型。對於輸入的文本,一方面會進行卷積運算和特徵提取,另一方面會送入記憶網絡中,這個網絡首先對原始的文本用網絡中學到的industry embedding進行編碼,運用 多層注意力機制 ,有效捕獲文本中的行業屬性,最終在 30種 不同領域的樣本集下訓練,捕獲了同一個詞彙在多種場景下的行業特性。

整個混合模型的遷移學習思想包括:

  • 採用海量通用語料預訓練的 word embedding ,學習到詞的共現信息,即詞義信息
  • 採用10萬研報上預訓練的 industry embedding ,學習到詞的行業信息

實現原理

基本思想是運用外部海量語料,學習詞彙的行業領域信息

Step1 :將 10萬 的研報語料庫按照行業特性,分成 29 個 樣本集。每個樣本集包含 1 類行業研報,作爲正例。其他 28 類研報隨機採樣,構成反例。

Step2 :針對 29 個樣本集,訓練 29 個 SVM 模型,目標任務是對研報進行二分類,判斷是否屬於目標行業。

Step3 :將每個詞彙在 29 個 SVM 模型的係數抽離出來,構成詞彙的 industry embedding:

Vword=[w1,w2,w3,...,w29]

最終實現對於詞彙行業信息的分佈式表示右圖是 industry embedding的可視化效果。右邊這張圖是 industry embedding 降維之後的可視化的效果。最下面紅圈中的詞彙包含了海天、啤酒、食品飲料。經常下廚房的同學都知道,海天是國內知名的調味料生產企業,在行業屬性上確實應該與啤酒、食品飲料同屬一個行業。從這個可視化結果可以看來,industry embedding 的算法已經學習到詞彙的行業信息。

行業記憶網絡的實驗結果

最後,我們綜合運用了 行業記憶網絡和文本增強這兩項技術,其中的細節如下:

樣本集情況:

  • 樣本集: 數據集共包含約 1200 條有效樣本
  • 測試集: 隨機選擇 600 條,各類別在 10~30 條之間
  • 訓練集: 除測試集外的剩餘樣本數據,共約 600 條,各類別在 10~25 條之間

實驗結果(見左圖):

  • 行業記憶網絡效果顯著: 行業記憶網絡可以有效提升模型性能,尤其在在小樣本小(約每個類別 5~8 條),結合數據增強技術,可以提升模型 F1 值 50 個百分點。
  • 有效降低樣本需求: 結合行業記憶網絡和數據增強技術,即使在數據量只有 60%的情況,模型的表現超過 100% 數據下的 baseline 6 個百分點
  • 並行計算,模型輕量,計算效率高: 模型由 CNN 網絡和行業記憶網絡構成。其中,CNN 網絡和行業記憶網絡均支持並行運算,且模型輕量,因此計算效率高。

值得一提的是,相對於前面的三階段訓練算法,行業記憶網絡的一個優勢是,這個網絡是與具體任務無關的。由於它本質上是存儲了詞彙的行業信息,因此它可以很方便地用到其他涉及到行業分析相關的自然語言處理任務中。

8. 特定實體提取模型

這裏的特定實體提取模型和前面招投標的實體提取模型基本是一致的,唯一不同的是我們在實體提取層引入了實體消歧模塊。

9. 金融輿情監控系統功能展示

最後,簡單展示一下金融輿情監控系統的一些功能,如熱點追蹤和列表視圖。在熱點追蹤頁面,用戶可以第一時間獲取機構的關注焦點,瞭解賣方的研究熱點和公司線索。在列表視圖頁面,我們可以按照事件、公司、行業、消息類型等等,多維度的查看歷史信息。

10. 小節

  • 提出了一種基於 行業記憶網絡 的遷移學習算法,實現了詞彙行業信息的分佈式表示。該算法幫助微信行業分類模型在僅有 200 條數據的少樣本場景下,實現了 25 個百分點的提升。
  • 提出了一種 三階段模型優化算法 ,完成了行業知識從外部海量研報到微信行業分類任務的遷移,在僅有120條少樣本場景下,實現了 48 個百分點的提升。
  • 回顧了當前幾類典型的 文本增強技術 ,證明了文本增強技術是一類低成本的數據槓桿,可以在原有數據集的基礎上有效提升模型性能。基於文本增強技術,我們實現了微信類型分類模型 6~9 個百分點的提升,微信行業分類模型 3~30 個百分點的提升。
  • 基於熵簡NLP的 層次化技術架構 ,我們構建了一種金融輿情監控系統,用於對賣方微信羣消息進行多維度的信息提取和分析,可幫助金融資管客戶實現從數據負債到數據資產的跨越,獲取前瞻的商業洞察,贏得先機。

04 總結和展望

1. 總結

  • 信息不對稱是金融業的競爭焦點。大量及時有效的信息都隱藏在非結構化的文本中,金融機構需運用NLP技術理解內容、挖掘信息,從而贏取在關鍵信息上的競爭優勢。
  • 自然語言處理屬於認知層面的技術,更是人工智能領域的明珠。目前,這一領域還有很多關鍵問題和理論沒有突破,遠遠達不到人們期望的水平。我們的經驗是,當前的NLP技術不適合做成泛化的工具。技術專家+業務專家,共同挖掘最能發揮技術優勢的業務場景。例如,招投標大數據分析系統,金融輿情監控系統。

2. 展望

  • 與業務專家深度碰撞,挖掘出更多可以紮實落地的場景。
  • 嘗試更多前沿的技術和思想。比如,嘗試基於GPT類生成模型的文本增強技術,嘗試將CV領域的新思想、新算法引入進來。

05 互動環節

Q: 車的消費貸場景,貸後催收預警一般樣本量較小,小樣本如何學的靠譜? ( baseline是規則 )

A

  • 數據增強:回譯、EDA、非核心詞替換、上下文替換,對於文本分類效果明顯
  • 遷移學習:其他場景下,具有相似的文本分佈的語料。三階段學習、領域詞彙遷移等等

Q: nlp 如今較好的模型資源需求量很大,如bertlarge,xlnet,實際落地時,是堆資源保證效果,還是簡化模型呢?

A: 對於絕大部分問題,沒必要堆資源,因爲輕量模型上同樣可以實現與BERT類模型相當的表現,甚至更好。

  • 神經網絡的近似理論已經說明了,只要網絡足夠寬,兩層的神經網絡,也能夠無限的逼近於任何連續的函數。大部分情況下,我們其實並不需要BERT這一類重型的模型。
  • 在實際情況下,有一部分金融客戶需要私有化部署,BERT對於他們來說負擔比較重
  • 可以用BERT訓練後的結果作爲baseline,用來優化輕量級模型

今天的分享就到這裏,謝謝大家。

本文來自 DataFunTalk

原文鏈接

https://mp.weixin.qq.com/s?__biz=MzU1NTMyOTI4Mw==&mid=2247499894&idx=1&sn=ec0158cbfee90931646ff7cd8ba9e2b2&chksm=fbd7721acca0fb0c65adbca3e973bbf6dc4de03e823e85fcbcf9b16c789bcc33591882df50a9&scene=27#wechat_redirect

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章