天天看點

Xintell——全生命周期的模型建設+智能資料中台

作者:業務安全專家

在業務反欺詐、營運及資料分析上,經常會涉及到模型。模型就是基于目标群體的大規模采樣資料,挖掘出某個實際問題或客觀事物的現象本質及運作規律,利用抽象的概念分析存在問題或風險,計算推演出減輕、防範問題或風險的對策過程,并形成一套體系化的政策或規則集。

模型建設是一個複雜的過程,一般需要幾個或十幾個專業開發人員,耗費幾個月乃至大半年才能夠完成一個模型建設。如果有新的資料、樣本更新,就需要重新計算分析才能完成。此外很多公司和機構并不具備獨立建設模型的能力,是以會委托第三方機構幫助其建立模型或者直接使用一些通用标準模型。然而不同企業機構的業務場景不同,流程标準和需求目标有差異,直接使用通用标準模型往往不盡如人意。

越來越多的企業希望從積累的海量資料中挖掘出業務價值,是以開始組建自己的算法團隊。一方面,避免模型建設外包時,帶來的隐私資料洩露的風險;另一方面,能夠建構專屬業務的模型,并且可以根據業務、需求以及資料的更新及時進行更疊。

為了助力企業解決模組化難、更新更新慢、模型管理複雜的問題,包含頂象等多家公司推出了專業模型解決方案。

以頂象Xintell智能模型平台為例。基于關聯網絡和深度學習技術,結合Hadoop生态和自研元件,将複雜的資料處理、挖掘、機器學習過程标準化,提供從資料處理、特征衍生、模型建構到最終模型上線的一站式模組化服務,結合拖拉拽式操作大幅降低模組化門檻,提升模組化工程師、資料科學家的工作效率,讓營運人員和業務人員也能直接上手操作實踐,幫助企業通過對大資料的模型訓練在反欺詐、風控、營銷、客戶分群等場景提供模型支援,并能夠根據時間變化進行動态更新與優化,極大降低模組化門檻。

Xintell——全生命周期的模型建設+智能資料中台

模組化靈活。支援HiveSQL腳本、Python腳本(Jupyter Notebook)和可視化模組化三種開發方式,均可以釋出為排程任務并可任意進行組合,實作強大的自動化流程。

可視化。可視化的模組化方式,讓不懂技術的業務人員,以拖拉拽的方式在畫布上連接配接成流程圖,不需要寫代碼或僅僅寫少量的代碼,能夠以設定元件參數的方式訓練出一個完整的模型。

部署快。Xintell基于企業本身的大資料平台,支援導入PMML格式和Python源碼的任何第三方模型,能夠能靈活地與企業已有的系統對接;一鍵式部署友善快捷,比同類模組化産品的部署速度減少80%。

可解釋性強。Xintell内置自研的一整套評分卡模組化元件,适用于各種對可解釋性要求高的模組化場景。

全生命周期的模型開發與管理平台

在軟體工程領域,軟體開發生命周期(Software Development Life Cycle,SDLC)包含了軟體從開始到釋出的不同階段:需求收集、設計、軟體開發、測試和品質保證、部署、維護。機器學習模組化,作為軟體開發的一個分支,同樣遵循着這樣的流程,而模型的開發僅僅是其中的一個環節。

模組化人員有喜歡程式設計寫代碼的,也有喜歡可視化模組化的。就提供模型開發功能而言,不同的模組化平台之間大同小異,甚至作為一個以私有化部署方式為主的輕量級模組化平台,Xintell在某些方面的功能和其他開放的資料科學平台相比是不足的,比如不提供常見的公共資料集和預訓練模型、沒有可以提供學習資源和交流的開發者社群。但Xintell的優勢在于其覆寫了模型全生命周期的管理功能,在對模型工程化的支援方面,目前是領先于其他競品的。

Xintell——全生命周期的模型建設+智能資料中台

Python 模組化

Xintell——全生命周期的模型建設+智能資料中台

“低代碼”模組化

所謂工程化,至少包含以下環節:部署開發好的模型,實時或定期采集資料,調用模型,然後将模型的輸出結果進行展示或對接下遊業務系統,并監控模型的性能、定期評估模型的效果,必要時對模型進行疊代更新。

使用Xintell平台開發模型,可以保證整個工程化的過程是便捷、高效的。例如:支援一鍵将模型部署為線上模型(可指定部署的執行個體個數),以API的形式對外提供模型調用服務;自帶對線上模型服務的監控功能;可将整套操作流程配置為定期自動運作的排程任務。是以,Xintell不僅僅是一個模型開發平台,更是一個模型管理平台,其功能覆寫了模組化的全生命周期。

狹義的模型管理

狹義而言,模型管理分為兩個方面:管理同一個模型的多個版本;管理多個不同的模型。

前者,部署在Xintell上的線上模型,可以一鍵切換版本。

後者,Xintell支援導入任意Python源代碼或PMML格式的外部模型,然後進行批量預測,或部署為線上模型供實時調用。具體的功能介紹可參閱相關文檔,在此不詳細展開介紹。

Xintell——全生命周期的模型建設+智能資料中台

“融合式”模型開發

廣義的模型管理

廣義而言,除了管理不同模型和模型的不同版本外,模型管理還包括:

資料管理。Xintell采用Hive表管理所有的資料,支援與常見的資料庫進行對接,包括但不限于Hive、Oracle、MySQL、ES、MongoDB、Kafka、Cassandra等。可釋出成資料同步任務,內建到排程任務中實作定時自動運作。Xintell也支援往Hive表中直接導入csv、txt、log等常見類型的資料檔案。

各個表從不同的資料源彙總到Hive表中後,或進一步經過關聯、清洗、加工,形成資料集市,供後續的模組化等任務使用。

特征管理。不同的模組化場景可能用到相同的業務資料,如果不進行集中管理,可能造成特征的重複加工。為了增加特征的可複用性,特别是存在資料加勞工員和模組化人員兩個角色時,有必要對特征進行管理,輔以相關的特征說明。在特征管理方面的功能Xintell正在不斷完善。目前已有二代征信特征庫,未來計劃開發更多場景的特征庫,并提供通用的特征管理功能。

代碼管理。不同項目空間的代碼互相隔離,進而可以支援多個項目同時開發。支援将HiveSQL腳本和Python腳本釋出版本,支援版本回溯,進而實作代碼的版本管理。在排程任務中可以排程指定版本的腳本檔案。

文檔和資源管理。模型的代碼目錄下可以建立Markdown文檔,記錄模型的需求設計、代碼說明等相關資訊。除此之外,Xintell平台提供了檔案資源管理功能,可以視作是一個簡易的FTP,模組化團隊成員可以上傳模型相關的檔案資料(如測試報告、bad case、第三方庫、資料字典等),與其他成員共享。

模型運維。Xintell提供了線上模型服務的儀表盤,可以便捷地檢視曆史上模型的調用量和平均耗時,及時發現模型的異常。通過将模型輸出的結果和真實的标簽按一定規範寫入指定的表中,還可以監控模型的KS、PSI等名額,用于評估模型性能是否發生衰退。

權限管理。這是比較容易被忽視的一點,但對于團隊協作是必不可少的。通常同一個項目空間下,有項目管理者和模型開發人員兩種角色,可以配置不同角色的操作權限。特别地,團隊成員之間可以互相檢視代碼,進行code review或互相學習;而通過加鎖的功能,可以防止自己的代碼或已釋出的排程任務被他人誤修改。

團隊協作平台

軟體工程中有一個名詞叫“協同開發”,相關領域的專家們設計了各種協同開發工具,來幫助軟體開發團隊更好、更快地進行協作和開發,最為典型的代表之一就是Git,一個代碼協作和管理工具。正因為其健全的模型管理功能,Xintell也可視為一個模組化團隊的協同開發平台。

一個典型的使用場景就是高校實驗室。一位導師可能需要指導多個學生撰寫數人工智能領域的論文,或是帶領多個學生參與一個模型項目的開發。如果能有一套像Xintell這樣的平台,給學生提供基本的模型開發和代碼管理工具,給團隊提供代碼、資源共享的管道,能大大提高協同開發的效率,減輕導師指導和管理的難度。

Xintell也是一個智能資料中台

從資料中挖掘價值,隻有通過訓練機器學習模型這一種方式嗎?顯然不是。模型隻是資料應用的一種方式而已,其他常見的需求還有制作統計報表、建構關聯網絡并展示、輸出資料處理與分析結果等。那麼,Xintell平台的使用也不僅僅局限于需要模組化的場景。

資料報表

業務人員往往需要将過往一段時間的業務資料從各個次元進行統計分析,然後做成報表,以便發現業務或客群的變化趨勢,進而為更好地開展未來的業務提供決策依據,這就是BI。Xintell也提供了簡易的報表制作的功能,相比常見的BI工具,Xintell的優勢在于能夠整合來着不同資料源的資料;可以實作複雜的資料分析與處理;以及可以通過排程任務實作定期自動生成報表。

當然,如果覺得Xintell中生成的報表不夠美觀、靈活,還可以通過資料同步的方式,将處理好的資料同步到其他專業的BI工具進行可視化。

知識圖譜

事物之間普遍存在着紛繁複雜的聯系的,模型利用的往往是個體的特征,無法刻畫出個體之間的關聯。而通過建構關聯網絡或圖譜,進而劃分團夥計算團夥名額或應用各類圖算法,能夠彌補這一短闆。

Xintell平台內建了圖資料庫ArangoDB,并封裝了常見的圖算法。關聯網絡技術常用于檢測團夥欺詐風險(直播回顧|關聯網絡如何反團夥欺詐——标準答案版),如代理人欺詐、信用卡套現檢測、信貸申請反欺詐、營銷反欺詐等場景。利用內建的圖資料庫,Xintell可以實作具有關聯關系的資料(如團夥)的展示與查詢。事實上,很多時候也有必要在圖譜中展示模型預測的結果,如可以在代理人團隊中展示對代理人欺詐風險的預測,以便進一步識别一些團隊中的異常。

類似地,如果已經有或需要用其他圖譜工具展示關聯網絡的話,可以在Xintell上完成節點表和關系表的加工,然後再同步到其他資料庫中。

資料服務

Xintell支援配置資料服務,通過"導入字段",可以快速将Hive表的字段結構複制到資料服務中。業務方通過發起Http請求,提供查詢參數通路資料服務。

常見的應用場景包括對外部系統提供使用者畫像、模型預測結果等的查詢。

資料樞紐

排程任務這一功能是Xintell的一大靈魂。在私有化部署的Xintell平台上,當模組化團隊完成模型傳遞之後,客戶未必會使用Xintell開發新的模型,但通常會建立新的排程任務,實作與模型并不直接相關的其他任務,比如資料集市的建構、名額的計算、報表的制作等。毫不誇張地說,排程任務可能比模型開發和管理更常用。

排程任務之是以強大,是因為其靈活。在Xintell平台上,可以将資料同步、HiveSQL腳本、Python腳本和可視化模組化這四類釋出成任務,然後通過連線的方式,在調用任務的畫布中建構為任務流,并可以進一步指定任務流的運作時間和周期,實作任務流的定期定時自動運作。

當然,想要定期定時自動執行一段腳本,并非隻能依賴于Xintell平台,但利用Xintell平台,可以對排程任務進行便捷地管理,如開啟/關閉任務、任務錯峰排期、配置任務預警等。事實上,在私有化部署的Xintell平台上,同時配置了幾十個排程任務是非常常見的。

在某種意義上,可以将Xintell視為一個資料樞紐,而不是僅僅是模型平台。通過排程任務,可以實作從資料同步、資料處理、資料應用(資料統計分析,調用模型,建構關聯網絡,運用圖算法)、資料可視化(圖譜展示、報表生成)、資料價值輸出(圖譜查詢,線上模型服務,資料服務,同步到其他業務系統)等一整套流程,其核心便是對資料的排程,故稱之為樞紐,資料樞紐。而Xintell的價值也不僅僅在提供模型開發和管理的工具,更在于賦能客戶,幫助客戶更便捷地從自身的業務資料中挖掘出價值,并加以充分利用,反哺于其業務。

哪些企業适合選用Xintell?

毫無疑問,需要進行模組化的團隊肯定是Xintell的企業群組織,因為他們需要一個模型的協同開發、管理和運維平台。這個團隊可以隸屬于高校的實驗室,可以隸屬于某個企業甚至某個業務部門。但在筆者看來,任何一個擁有資料、希望從資料中挖掘價值進而為業務助力的企業,都是Xintell的潛在客戶。特别是正在經曆、或有計劃進行數字化轉型的傳統行業的企業。他們在組建自己算法團隊的同時,也亟需一套Xintell平台幫助他們管理包括模型在内的資料應用,特别是在對工程化的支援方面,Xintell是不二的選擇。無論是組建自己的模組化團隊,還是希望将已有的模型進行集中管理,亦或進行其他資料應用的開發(如建構關聯網絡,提供圖譜展示與查詢),Xintell都有用武之地。

目前,采購Xintell平台的更多的是銀行等金融行業的機構,顯然,Xintell的市場潛力很大,機會遠遠沒有被發掘。因為Xintell不僅僅是一個模型開發平台,更是一個模型管理平台、團隊協作平台;不僅僅是一個資料服務平台,更是一個智能資料中台。

繼續閱讀