在開始正文之前,首先來介紹一下九章云極DataCanvas。
九章云極DataCanvas主要致力于人工智能基礎軟件的研發(fā),為企業(yè)的AI建設提供平臺產品和配套的解決方案,幫助企業(yè)完成數(shù)智化轉型。目前在政府、金融、通信、制造、能源、交通、航空等多個領域都有著非常多的成功案例。
一、AIGC用于結構化數(shù)據(jù)合成
依賴于大模型的參數(shù)量的增長,自去年11 月份ChatGPT發(fā)布以來,大語言模型涌現(xiàn)出了非常優(yōu)秀的能力,包括對文本語義的理解、語義的搜索和語言組織的能力。并且開放給終端用戶,為大眾提供了更多AI發(fā)展的想象空間。
ChatGPT 在AIGC里面更多是以文本的內容生成為主,這兩年我們實驗室主要是在因果推斷方面投入了大量的精力進行研究和落地。
因果推斷主要指如何去科學地識別變量之間的因果關系,以及量化變量之間的因果影響。目前主流的研究方向一是潛在結果框架,二是結構因果模型。
AIGC目前主要是面向于非結構化內容生成,包括文本、圖片、音頻、視頻等。如何將因果學習和AIGC連接起來是一個值得思考的問題。我們發(fā)現(xiàn)可以借助數(shù)據(jù)合成這一橋梁,讓 AIGC 的能力拓展到結構化數(shù)據(jù)合成,從而實現(xiàn)因果推斷和AIGC兩個方向研究的相互助力。
Gartner 提出了合成數(shù)據(jù)的趨勢報告,預計到2030 年,在 AI、機器學習領域,合成數(shù)據(jù)將會完全超越真實數(shù)據(jù)。圖表中可以看到,未來合成數(shù)據(jù)將會呈指數(shù)級增長,成為一個大的發(fā)展方向。
對于企業(yè)來說,數(shù)據(jù)是智能化建設的生命線,企業(yè)獲取高質量的數(shù)據(jù)往往存在比較大的挑戰(zhàn)。比如部分業(yè)務場景受限于成本的約束,很多數(shù)據(jù)無法收集;在金融、醫(yī)療領域,出于隱私保護的要求,很多數(shù)據(jù)也是受限使用的;在計算機視覺中,正樣本比較少,往往需要通過數(shù)據(jù)增強補充樣本;新興AI 用例產生時沒有歷史數(shù)據(jù)積累,這時如何進行場景的驗證也是一大挑戰(zhàn)。針對這些挑戰(zhàn),合成數(shù)據(jù)在企業(yè)的AI 能力建設當中,會發(fā)揮非常大的補充作用和優(yōu)勢。
合成數(shù)據(jù)主要有兩類方法,一類是以數(shù)據(jù)驅動為主,包括對抗生成網絡、VAE方法、貝葉斯網絡、ML-base等;另外一類是以過程驅動,包括Agent-based modeling、離散事件模擬、數(shù)值模擬和蒙特卡羅方法等。其中Agent-based modeling非常適合作為橋梁,幫助我們完成AIGC向結構化數(shù)據(jù)的轉化。
ABM是一種用來模擬具有自主意識的智能體的行動和相互作用的計算模型,評估智能體在系統(tǒng)當中的作用。它的任務主要有兩種,一種是分析宏觀發(fā)生的現(xiàn)象的原因;一種是推演,基于微觀干預的手段預期表現(xiàn)的基礎上,推演未來宏觀方面的表現(xiàn)。ABM有不少別名,比如 IBM、MAS都屬于ABM 的范式,只是在不同時間點和領域的不同名稱。
ABM建模范式首先是對系統(tǒng)組件、操作、交互和環(huán)境的抽象,形成仿真系統(tǒng),其中agent 智能體是核心組成單元。比如在金融行業(yè)agent仿真系統(tǒng),對公對私客戶都可以作為agent 的單元。第二個抽象是大環(huán)境,可以想象在金融環(huán)境的整體下,總的市場規(guī)??蛻簟⑷司杖胨?,都可以視為環(huán)境內部實際要素。另外一個關鍵點是在個體之間有相應的連接和交互,譬如有個體和個體之間的交互,也有個體和環(huán)境之間的交互,也是 ABM 研究的關鍵步驟之一。
ABM很多優(yōu)秀特性,這里只列出了最重要的三點。
首先是強大的仿真性,不管是社會、生態(tài)還是組織都是非常復雜的,ABM可以承載復雜的表達,曾有學者提出ABM可以仿真一座完整城市,它為整個數(shù)據(jù)基礎和研究提供了非常好的可靠性空間。
第二ABM具有涌現(xiàn)屬性,其主要目的是解釋涌現(xiàn)現(xiàn)象的原因,比如搶購效應會加劇客戶購買意愿,這就屬于ABM的研究范式和目標場景。
第三個重要的特性就是解釋性。在機器學習、因果學習中,很多專家都非常關注解釋性,ABM 研究范式是從業(yè)務經驗假設基礎出發(fā),所以解釋性非常強。
綜上來看,ABM適合作為AI 載體,實現(xiàn) AIGC 對結構化數(shù)據(jù)生成的拓展。接下來將介紹我們已經做的一些嘗試和探索。
二、結構化數(shù)據(jù)合成助力因果推斷
回顧因果推斷的常見任務,主要包括因果發(fā)現(xiàn)、因果量的識別、因果效應估計、反事實推斷以及策略學習等方面。在企業(yè)宏觀經濟分析當中,有很多實際案例,比如電商領域異質化產品推薦,就是因果效應估計的一種常見場景。工業(yè)界落地比較有代表性的算法包括 Meta Learner 、DML ,以及 Causal Forest 等算法。另外一個比較大的研究方向是因果發(fā)現(xiàn),主要思想是尋找發(fā)生結果的原因,目前該方向更偏向于因果定性的研究范式。合成數(shù)據(jù)可以應用在上面提到的所有任務當中,并且有更廣泛的應用方向,后面將著重介紹幾個在因果發(fā)現(xiàn)和因果效應估計方面增強驗證上的示例。
在因果推斷任務里比較大的一項挑戰(zhàn)是反事實問題。干預策略實施后,我們僅能觀測到實施狀態(tài)下的結果,未干預狀態(tài)下的潛在結果是無法觀測的,無法觀測到的潛在結果,通常稱為反事實結果。比如商店給客戶發(fā)優(yōu)惠券的場景,假如給一位用戶發(fā)了優(yōu)惠券,我們只能知道他收到優(yōu)惠券之后的反應,沒有辦法再去知道他沒有收到優(yōu)惠券的反應,這就是反事實不可觀測問題,該問題為因果效應的度量帶來了一定的影響。應對該問題,目前主要手段是隨機實驗AB-test;另外,在觀測樣本上,受限于沒法看到反事實的真實值,因此對于因果效應的估計目標,潛在結果和現(xiàn)在真實結果之間的差值是沒有辦法獲得的,導致我們通常用的MSE 指標沒有辦法應用在這種任務上,因此會采用AUUC指標去替代因果效應度量,但會有一定的局限性。
這里可以思考兩個問題,第一個問題,是否可以獲取反事實樣本,第二個問題,如果可以獲取反事實樣本,我們可以做些什么。ABM 多智能體系統(tǒng)建模中,它的運行模式就是在不同參數(shù)組合下去進行仿真運行,運行過程當中就可以輸出數(shù)據(jù)。比如外呼團隊 ABM 系統(tǒng),它可以輸出類似于外呼記錄、成交記錄、TSR 屬性、客戶屬性等等各種業(yè)務上的記錄表,這些數(shù)據(jù)可以存儲下來形成數(shù)據(jù)集,甚至可以按照數(shù)倉模式去構建完整的數(shù)據(jù)體系。另外,ABM在不同參數(shù)組合下運行時,本身是一種反事實運行模式,因此可以將反事實運行模式結果保存下來。
從圖中可以看到,通過系統(tǒng)以及產出數(shù)據(jù),首先,可以獲取反事實數(shù)據(jù);其次,可以從系統(tǒng)里面拿到完整的預置因果關系;再次,可以獲取全部因子特征;最后,還可以獲得時序類反事實數(shù)據(jù),比如模擬業(yè)務運行一兩年后的因果效應影響。
綜上所述,ABM具有很多優(yōu)質特性,最重要的三點就是反事實可獲取、仿真性和特征完整性。同時它的可控制性也比較強,可以有一些宏觀干預和微觀干預,比如為所有用戶提供折扣,或者為某些客戶提供折扣。也可以支持在這個環(huán)境下去模擬A/B test的運行。因此,ABM可以提供非常優(yōu)質的數(shù)據(jù)基礎,為因果推斷研究起到助力作用。
上圖是我們目前在做的相關研究。這是一個 ABM 范式的金融系統(tǒng),左圖是系統(tǒng)整體的抽象,右圖是運行狀態(tài)。左邊系統(tǒng)內將銀行、儲戶、企業(yè)抽象成為智能體代理。環(huán)境主要包括銀行數(shù)量、人口數(shù)量、企業(yè)數(shù)量以及監(jiān)管管控策略。宏觀監(jiān)管參數(shù)包括最低準備金率、無風險收益率、杠桿率來限制銀行經營指標。交互行為主要是儲戶和銀行之間的存款與取款行為,以及企業(yè)和銀行之間的貸款行為。
右圖是系統(tǒng)的運行態(tài),首先它可以在不同宏觀參數(shù)情況下去運行和仿真模擬,ABM的一種研究范式是做涌現(xiàn)分析,比如最下邊是我們驗證的一組參數(shù),在資本充足率要求比較低的情況下,很容易會涌現(xiàn)系統(tǒng)性金融風險,比如銀行擠兌。當然,這屬于負向的涌現(xiàn)分析,實際業(yè)務中更常見的是正向的涌現(xiàn)分析。
另外一種研究模式是校準,如何去通過找出相應因子或因子范圍,能還原更真實的業(yè)務場景。并在這種參數(shù)情況下去進行干預和推演,形成本身的研究范式??梢钥吹?,所有數(shù)據(jù)都可以存下來,可實現(xiàn)上面提到的反事實數(shù)據(jù)獲取、特征完整性等特性。
下面來介紹一些數(shù)據(jù)合成與因果學習結合的應用場景。
第一個場景是因果發(fā)現(xiàn)方向。上圖中左邊部分是從系統(tǒng)里面獲取預置因果關系,右邊是結合了三種因果發(fā)現(xiàn)算法。我們能夠直觀感覺到這兩者有一定差異。因此當前因果發(fā)現(xiàn)算法,還有一定提升空間。從數(shù)據(jù)中,我們觀測到幾點,首先,在業(yè)務上有些事情不會發(fā)生,它會一直處于一個狀態(tài)即常量值,對于常量值目前沒辦法去學習其間的因果關系;其次,算法識別的因果關系,會出現(xiàn)一些因果關系的缺失或因果反向或錯誤因果關系等情況,如果采用單一算法去做因果發(fā)現(xiàn)的話,有一定局限性,因此建議采用多種因果發(fā)現(xiàn)算法相融合,才能最大限度地學到真實的因果關系。
應用多智能體建模數(shù)據(jù)合成的優(yōu)勢在于,首先成本可控,可以獲取預置因果關系,同時也可以獲取完整特征,不存在不可觀測的特征。在應用領域上可以驗證各種算法精度,可以論證算法融合的最佳模式,并在未來應用在真實場景上。綜上,合成數(shù)據(jù)可以為因果發(fā)現(xiàn)提供非常好的研究數(shù)據(jù)基礎。
第二個方向是因果效應估計方向研究。在沒有反事實情況下,我們往往用一些替代方法去評價因果效應精度,比如A/B test。但實際業(yè)務,并不允許所有場景企業(yè)都會去做 A/B test,一方面原因是A/B test有一定的現(xiàn)實成本問題,某些場景甚至是倫理問題;另一方面,A/B test僅能評估群體效應,無法評估個體效應,具有較強的局限性。
通過ABM可以獲取反事實樣本,基于反事實樣本的評價指標具有以下優(yōu)勢:
可以采用 MSE等常見指標來論證算法有效性。
可以突破性地去驗證個體治療效果。
可以論證 A/B test、AUUC、Qini等方法的有效性。
同時,在環(huán)境中也具有比較高的可控性,甚至可以去仿真模擬一些有偏無偏的數(shù)據(jù)場景。
我們在帶有反事實的公開數(shù)據(jù)集上去做了一些驗證,主要是評估AUUC 、Qini以及 RLoss三個指標的有效性。發(fā)現(xiàn)在連續(xù)型 outcome 場景下, RLoss指標有更高的穩(wěn)定性。多智能體系統(tǒng)產生的反事實數(shù)據(jù)可以指導因果推斷的研究,也可以助力場景落地。
在算法應用和研發(fā)當中,獲取到這些智能體合成數(shù)據(jù)后,該如何去應用呢?以因果效應估計場景為例。圖中第一行,是常見模式(沒有考慮拆驗證集),在訓練階段用 train data 做訓練,在評估階段用test data去做評估驗證。沒有反事實樣本情況下,對于因果效應估計的評估方法只能才用AUUC、Qini、RLoss 等指標;第二行,是一個有反事實樣本的例子,首先在評估階段,可以加入反事實樣本,評價指標可以擴展到MSE、RMSE等常用評價指標;第三行,甚至可以在訓練階段加入反事實樣本,這對整個因果方法研發(fā),提供了幾乎完美的數(shù)據(jù)基礎。ABM提供的數(shù)據(jù)資產,不僅在因果推斷領域,在其他領域研究也同樣具有適用性,包括深度學習、機器學習,還有譬如因果里面的IV方法。
三、如何利用因果推斷幫助Agent-Based Modeling
利用因果推斷去幫助 Agent-based modeling多智能體建模有著比較廣泛的應用領域,這里列出了其中幾個常見的場景。比如內部數(shù)據(jù)使用有限制,歷史數(shù)據(jù)缺乏等情況,可以進行數(shù)據(jù)補充和增強;可以進行宏觀涌現(xiàn)的原因分析,以銀行或者保險外呼團隊場景為例,希望分析譬如團隊規(guī)模、小組人數(shù)、員工流失情況,對于整個業(yè)務部門指標的影響,進而形成對應薄弱環(huán)節(jié)的改進建議。這些都是 ABM 研究范式在業(yè)務場景落地的模式。
在任務目標上,分析任務和推演任務是ABM兩大主要方向。從層次上來說,它既能涵蓋微觀,也能涵蓋宏觀。比如,外呼團隊場景,微觀層面包含了客戶、外呼員,以及他們之間的交互行為(之間的通話)。宏觀層面拆分,有多個 agent 組成小組存在,宏觀層面也有相應的參數(shù)和指標,更注重解釋涌現(xiàn)發(fā)生的原因。ABM既支持宏觀分析,也支持微觀分析。從宏觀視角來看,進行一些干預,比如按照小組模式去整體采取不同名單分派策略,看一下外呼團隊整體業(yè)績效益;從微觀視角來看,比如做一些差異化激勵政策,推演團隊整體業(yè)績效益。
應用因果發(fā)現(xiàn)方法,助力ABM涌現(xiàn)分析任務。上圖展示了ABM 建模流程,包含模型定義、仿真運行、校準和數(shù)據(jù)生成,以及相應參數(shù)分析和涌現(xiàn)分析。首先可以將因果圖方法應用到參數(shù)分析上,并且可以融合敏感性分析、機器學習方法等,對參數(shù)和關注指標原因進行量化,以及相應解釋。輔助用戶進行更好的做校準,以及涌現(xiàn)分析相應解釋。
應用因果效應估計,助力并加速ABM任務校準過程。校準過程在 ABM 整個運行參數(shù)空間也是非常龐大的。譬如100 個不同參數(shù),它們當中有大量連續(xù)性參數(shù),空間是非??植赖模颐恳淮芜\行過程都非常耗時,尋求最優(yōu)組合空間也是一個相當耗時的過程。如果應用因果效應估計,首先可以在已經運行過的參數(shù)空間空間之上,去訓練因果效應估計模型,基于此基礎之上,進行類似于進化方法,在里面去相應地調整一些變量,讓目標指標更接近于校準參數(shù)指標。另外可以通過反事實方法,抽樣一批新參數(shù)出來,基于模型基礎上,對新抽樣參數(shù)組合空間里面去做反事實推斷,判斷哪些參數(shù)組合更有效,之后再去做運行和校準過程。
目前我們團隊更關注的是AIGC對結構化數(shù)據(jù)的生成和對因果推斷的助力,當然因果推斷其實也可以反過來助力 AIGC對結構化數(shù)據(jù)的生成。
四、YLearn介紹
最后分享一下YLearn因果學習軟件。
YLearn倒過來是learn why,這正是它的初衷和含義。框架核心目標是提供簡單易用的一站式因果推斷框架。YLearn的模塊覆蓋了基本全部因果推斷主流任務類型,包括因果發(fā)現(xiàn)、因果圖、因果效應估計、策略學習、Interpreter以及反事實預測。其中因果效應估計包含了現(xiàn)在常見的主流算法,比如Meta Learner、Causal Tree, Causal Forest等等。同時也做了整體封裝的統(tǒng)一接口,可以一站式地完成大部分因果建模任務。
這是一個因果效應估計的例子。對于給定的數(shù)據(jù)集,定義treatment 是哪個變量, outcome 是哪個變量,調用對應的 feed 方法,進行模型訓練,就可以做因果效應評估。
第二個是因果圖方向,比如左邊代碼,用戶只需要加載數(shù)據(jù)集,通過 Causal Discovery 接口就可以進行因果發(fā)現(xiàn)??蚣苤С志€性、非線性的多種因果發(fā)現(xiàn)算法。右邊部分,提供了因果圖的功能,包括因果圖的定義、可視化,以及因果量識別方法。
下方案例主要是通過后門調整去識別 treatment x,以及outcome y的因果效應,結果可以輸出后門變量。
最后介紹一下統(tǒng)一接口why。這個接口是對 YLearn 內部組件的統(tǒng)一封裝,覆蓋了因果推斷相關的所有任務,僅需要通過一個why的實例,就可以去實現(xiàn)因果發(fā)現(xiàn)、因果效應估計、whatif反事實推斷,interpreter因果解釋等因果推斷任務。
YLearn的核心目標就是幫助建模人員在一個工具內完成因果推斷的全部任務,避免使用多個框架的切換。