(梵高)
隨著人們在虛擬世界的行為數據日趨複雜和豐富,隨著未來物聯網設備數十億數百億級別的增加,數據複雜度將呈指數級增加。在這種情境下,區塊鏈、人工智慧以及物聯網,將會是未來幾十年最重要的技術推動力量,可以說是三駕馬車。
人工智慧的產生源於人類對自身局限的改進。作為生物能的主體,人類無法持續進行大量的運算,難以接近事情的全貌。人工智慧彌補了人類的局限,在極其龐雜的數據中,幫助人們作出更好的決策。
區塊鏈的本質是構建一套無須中介即可自運行的系統。跟中心化的系統不同,要達成自運行的系統,需要達成多方的共識,所以,需要有人記賬,有人驗證,以達成共識。通過這樣的過程,區塊鏈在人類歷史上第一次實現了不依靠單一主體的信任和安全。僅這一點而言,區塊鏈就是具有社會革新性的技術。
區塊鏈和人工智慧有什麼可以結合的地方?兩者是相互賦能的關係。首先,區塊鏈可以賦能人工智慧。人工智慧核心有算力、演算法和數據。但目前少數巨頭佔據絕對優勢。區塊鏈讓人工智慧的發展有了新的路徑選擇。
算力方面,目前有項目利用區塊鏈無須中介信任的特點,試圖構建去中心化的算力市場,聚集閑置的算力,用於人工智慧的計算。當然,目前看還不成熟,但也是值得嘗試的方向。
數據方面,也可利用區塊鏈的去中心化信任,形成數據市場,讓用戶自己控制數據,並獲得回報。區塊鏈的隱私保護技術可以促進數據市場的發展,為人工智慧帶來更多優質數據。而這些數據不再是巨頭們的壟斷,有利於形成更公平的人工智慧市場。
演算法方面,通過區塊鏈也可形成去中心化的模型市場。目前的模型和數據都是相互依存,訓練模型需要數據,數據需要更好的模型。如果能夠形成一個去中心化的模型市場。那麼,在保證數據私密的情況下,能夠帶來更好的智能推斷結果。
總之,區塊鏈之所以能夠賦能人工智慧,主要是基於區塊鏈無須中介的信任特徵。這決定了它在未來能夠幫助到人工智慧。此外,區塊鏈的去中心化特性以及隱私技術的發展,也能帶來更多的安全和隱私保護,這對於後續人工智慧的發展都會有很大的幫助。
同樣,人工智慧也會賦能區塊鏈。通過人工智慧的參與,dApp也有了更多可自演化的特性。從而讓區塊鏈具備更多價值,一個具有機器學習能力的去中心化應用能夠有更多的落地場景。這也是讓區塊鏈證明自己的機會,讓它產生更多的落地價值。
本文闡述人工智慧與區塊鏈的關係,但由於話題比較大,首先會聚焦於去中介化的演算法市場。這是Cortex的突破口。本文以Cortex為案例,分析區塊鏈上人工智慧化的探索,Cortex在去中心化推斷和構建區塊鏈場景下的新型確定性推斷框架方面都取得了進展。Cortex的最終目標是要利用人工智慧和區塊鏈的結合實現去中心化的生產關係設計。
Cortex的鏈上人工智慧的探索
以太坊當前聚焦於2.0的發展,其核心是通過分片、PoS以及eWASM進行擴展,也就是說,基於以太坊公鏈的dApp有可能獲得更高性能,但說到人工智慧的演算法支持方面,它並無優勢。當前以太坊的智能合約不具備自我學習和進化能力。
那麼,能否給智能合約,dApp賦予人工智慧的能力?這正是Cortex在努力探索的地方。Cortex是專註於為智能合約提供人工智慧演算法支持的公鏈,它允許任何人都可以為自己的智能合約增加人工智慧模型。它要賦予區塊鏈人工智慧的能力。
如何給區塊鏈增加人工智慧的能力?Cortex從演算法模型方面進行突破。它試圖讓人們獲得最好的模型。如何才能讓人們獲得最好的模型?Cortex基於區塊鏈提出了演算法模型的市場,也就是任何人都可以提交和優化模型,對模型有貢獻的人可以獲得獎勵。
Cortex兼容EVM智能合約,可以運行現有以太坊智能合約,也可以運行帶有人工智慧演算法模型的合約,也就是具備人工智慧的推斷能力。
在Cortex的系統中,有多種重要的角色,包括提交模型的貢獻者、調用模型的需求者、記賬礦工和運行合約的全節點等。
基於區塊鏈的開源特性,這會加速模型的進化速度,因為基於集體的智慧會促使更多創新的產生。從這一角度,一旦形成足夠多模型的演算法市場,會極大加速人工智慧的進展。
Cortex整個系統圍繞著一個核心問題進行基礎設施的構建:如何給區塊鏈賦予人工智慧的能力。而且,這個能力是能夠不斷進化的。
一旦解決了這個核心問題,它意味著什麼?
它意味著,真正的人工智慧dApp時代的到來。什麼是人工智慧dApp?dApp不再是簡單地根據預設條件執行操作,它還具備人工智慧的能力。它在金融、遊戲、個性化推薦、管理等方面都會有應用。
具體來說,比如金融方面,舉個金融徵信例子,可以形成一個能夠保護用戶隱私,同時還能得到信用評分的可靠徵信,這會極大促進開放金融的發展。當前基於以太坊的開放金融往往採用一刀切的邏輯,如Compound 和Dharma只有單一的借貸利率,如果加入一定的數據和模型,是否能夠形成個性化的借貸利率?這些都是可以考慮和探索的場景。
其他的應用,還包括DEX的反欺詐、遊戲的自動評判、玩家代理、NPC、助教系統、分散式決策、情感分析、智能投顧、鏈上數據挖掘、人臉識別、聊天機器人、自動翻譯、語音合成、個性化信息推薦、搜索引擎、自動駕駛等。
更關鍵的是,這些應用都是基於區塊鏈的,是去中心化的,不可篡改、不可停止的。它跟中心化的人工智慧世界完全不同。
通過區塊鏈,如能實現在算力、數據和演算法上的去中心化的進展,這幾乎是面對巨頭在人工智慧壟斷上唯一可能的制衡,也是人類未來不被完全控制的唯一希望。
那麼,Cortex如何來實現這一切?
Cortex如何給區塊鏈賦於人工智慧的能力
比特幣和以太坊不具備人工智慧的能力。比特幣的核心是通過區塊鏈實現無須中介參與的價值網路,實現價值的可信確認和轉移。以太坊具備簡單合約計算能力,通過區塊鏈的共識和不可篡改實現合約的自動執行,但以太坊還不具備構建人工智慧應用的能力。
機器學習方面,中心化的公司有很大的優勢,大公司在數據和算力、演算法方面都有優勢。像一些大公司擁有用戶的大量真實行為數據,擁有大量的算力,並通過模型不斷迭代升級。
去中心化的模型訓練,要解決更多的問題,比如隱私問題、帶寬問題、數據同步等。有一些方案,比如同態加密能保護用戶隱私,但由於運算量過高,當前落地還不現實。
Cortex要賦能區塊鏈,它的突破口在於提供一批鏈上最好的機器學習模型。有了這些機器學習模型,模型的需求者就可以使用它們來對智能合約進行推斷。更進一步,Cortex的用戶可以在平台上發布對模型的需求,貢獻者根據需求提交模型,通過智能合約調用模型進行推斷,最終形成具有人工智慧能力的dApp。
當然,最終來說,Cortex要賦能區塊鏈,不僅是在模型上實現突破,預計未來會在隱私保護、分散式數據交換市場、分散式算力市場等方面進一步突破。
具體來說,Cortex是如何構建賦予區塊鏈人工智慧的能力的?它有一個全面的解決方案,包括了系統架構、軟體方案、硬體方案等。為了在區塊鏈的智能合約上賦予智能推斷能力,Cortex從兩個方面著手,一是構建模型的市場;二是智能推斷的執行方案。
1. Cortex的去中心化人工智慧模型市場
如果是中心化的模型市場,只要有一個中心化的主體來組織模型的需求者和貢獻者形成市場即可,就像今天的淘寶市場一樣。但是,中心化的模型市場存在信任、安全、隱私保護、費用高等諸多問題。很難保證中心化主體的完全可信任、很難保證數據和模型的足夠安全,另外,一旦形成市場的壟斷,費用方面也會高於去中心化的解決方案。
Cortex的去中心化智能模型市場,涉及到模型的需求者、模型的貢獻者、礦工、全節點等。具體來說,它的基礎流程如下:
模型的貢獻者,全球的任何機器學習從業者都可以將訓練好的模型上傳到Cortex存儲層,而模型的需求者,例如dApp的開發者可以選擇適合自己的模型進行智能推斷,需求者需要支付費用給模型的上傳者和運行的全節點及記賬礦工。在執行推斷時,全節點從存儲層將數據和模型同步到本地,之後節點會通過Cortex的獨有虛擬機CVM(Cortex Virtual Machine)進行推斷,將推斷結果同步到所有全節點,並把結果返回給模型需求者。
(推斷流程)
從上圖可以看出,用戶(模型的需求者)發起交易,也就是將需要預測的數據進行代入計算到所選取的數據模型進行數據推斷。執行帶有數據模型的智能合約和智能推斷都需要支付一定的費用,用Endorphin支付,每次支付的Endorphin數量跟模型運算難度和模型排名等相關,Endorphin價格由市場決定,它反映的是執行智能合約和進行模型推斷的成本。Endorphin類似於以太坊的gas費用,Endorphin和CTXC(Cortex的代幣)存在動態轉換關係。
不過跟以太坊不同的是,Endorphin對應的CTXC會支付給兩部分人,一是該模型的貢獻者,二是礦工和全節點。
已有的智能合約如何獲得Cortex鏈上的模型能力?Cortex在已有的智能合約上添加額外Infer指令,也就是Cortex通過修改和擴展指令集,為智能合約增加人工智慧演算法的支持,從而使得任何人都可以為自己的智能合約增加人工智慧的模型。
上面簡單介紹了智能合約獲得人工智慧能力的基本流程,那麼其中的模型貢獻者是如何實現模型的提交的?
目前看,鏈上的處理能力還不足以進行數據的大規模訓練,基於這種現狀,Cortex提出了鏈下訓練的方案,它提供鏈下訓練的提交介面,也包括模型的指令解析虛擬機。
模型的貢獻者將模型通過Cortex的CVM解析成模型字元串及參數,並上傳到存儲層,發布通用介面,供模型的需求者(如dApp開發者)進行調用。這裡有幾個問題需要解決:一是模型的質量;二是模型的存續;三是模型的防作弊;四是模型的挑選。
(模型提交流程)
為了防止有人泛濫提交模型,模型提交者需要支付一定的費用,同時也是支付其在存儲層存儲的費用,以保證其持續存在。如果模型提交者進行撤回操作,Cortex會根據模型的使用情況進行託管,這也是為了保證調用模型的智能合約能正常工作。Cortex上的模型是公開的,這意味著會存在抄襲和複製的可能,一旦出現明顯抄襲或複製,Cortex會通過介入仲裁的方式進行解決。
模型的挑選方面,Cortex鏈提供的開放的市場,不對模型進行限制。模型的需求者可根據某些數據進行挑選,如被調用次數等。也可以通過自定義的模型排序機制實現甄選,例如召回率、準確率、計算速度、基準排序數據集等。
Cortex除了為自己的用戶提供人工智慧的服務,也為其他鏈提供AI的調用介面。比如,以太坊智能合約也可以調用其AI模型服務。
2. Cortex的模型推斷的執行
上面我們介紹了Cortex演算法模型市場的基本結構和流程,那麼它具體來說,是如何在Cortex鏈上進行推斷的?
(全節點執行推斷流程)
首先,Cortex公鏈本身並不實際存儲數據和和模型,它存儲的是模型和數據的哈希值,模型和數據存儲在鏈下的存儲層。
在Cortex的智能推斷執行中,主要是全節點來執行。當模型的需求者(如智能合約的開發者)發起一筆智能合約的交易,全節點不僅要執行該智能合約代碼,它還涉及到推斷指令的執行。
具體流程來說,首先全節點會查詢模型索引,找到該模型在存儲層的位置,並下載模型的字元串和對應參數。之後,通過Cortex模型表示工具將模型字元串轉換為可執行代碼。然後再通過Cortex的虛擬機CVM執行可執行代碼,得出結果進行全節點共識廣播。
在區塊鏈上進行深度學習的部署並非易事,主要是受制於節點的算力、內存和能耗,且區塊鏈要求嚴格的確定性。這對鏈上的AI推斷實現帶來很大的挑戰。
Cortex提出了區塊鏈場景下的新型確定性推斷框架,它是一種基於MXNet深度學習庫模型的、為嚴格確定性設計的定點化方法。該框架包括了上面提到的兩個主要組件:MRT和CVM。其中MRT(模型表示工具)用於模型定點化、CVM(Cortex虛擬機)用於鏈上推斷。
Cortex首先使用MXNet的NNVM模塊,稱為MRT,也就是模型表示工具用以創建轉換器,以實現量化MXNet模型集。然後,在CVM上運行量化模型。具體的實現過程涉及到重寫、融合等複雜的運算過程。這裡不進行詳述。當前來看,Cortex的定點化方案應用之後,並沒有降低精度。這也是Cortex在技術探索上取得的突破。
Cortex的PoW共識
Cortex採用的是PoW共識,關於PoW共識大家了解比較多,這裡不做詳細闡述。Cortex鏈的主要改進在於試圖讓參與挖礦的礦工在硬體上更公平,這裡的挖礦礦工主要指的是鏈上記賬的礦工。Cortex採用Cuckoo Cycle的PoW試圖縮小CPU和顯卡之間加速比的差距,並發揮智能手機顯卡的效能,甚至讓手機挖礦成為可能。
具體來說,Cuckoo Cycle是一種基於圖論的求解演算法。它要在Siphash隨機生成的Cuckoo二分圖中尋找到固定長度L的環。求解的過程,也就是尋找環的過程。求解的難度跟圖的規模和L值相關,是一種Memory-hard的PoW演算法。
Cortex主鏈採用Cuckoo Cycle的變種演算法CuckARoo30演算法,CuckARoo演算法主要是對二分圖內所有的節點進行分組,每組內的節點存在相互依賴關係,大大增加了求解難度,具有抗ASIC特性。
Cortex的CuckAroo30演算法,將Siphash-2-4替換為Siphash-4-8,通過其抗ASIC的演算法特性,可讓更多普通礦工參與進來,以實現去中心化。Cortex目前的出塊時間大約15秒,每個區塊獎勵7CTXC,每四年減半。同時,為了保證相對穩定的出塊時間,利於防止雙花和記錄被篡改,Cortex的難度是動態調整的。
Cortex的CVM和模型表示工具
關於Cortex的軟體方案和硬體方案,這裡不做過多的介紹,詳細內容可以參考Cortex的白皮書。這裡重點提一下Cortex的CVM,也就是Cortex自己獨有的虛擬機。CVM指令集兼容以太坊的EVM,還提供對推斷指令的支持。Cortex的核心指令集覆蓋主流人工智慧的計算框架操作,支持跨平台的推斷共識。
Cortex的模型表示工具旨在創建靈活開放的標準,實現深度學習框架和工具的互操作。Cortex模型表示工具方便人工智慧開發者根據不同任務選擇合適的框架,框架開發者可專註於創新和升級,硬體供應商可以進行有針對性的優化。
Cortex的代幣經濟模型
Cortex的代幣為CTXC,其主要作用通過激勵形成生態系統的正向循環。Cortex的生態主要參與者包括礦工、全節點、模型貢獻者、模型需求者、Cortex基金會、顧問和社區等。每個角色都需要得到激勵,才能形成去中心化的生態體系。
首先它會激勵模型的貢獻者。模型的貢獻者通過提供模型獲得代幣獎勵,獎勵的多少,取決於模型的受歡迎程度。被模型的需求者調用的次數越多,能夠獲得的代幣獎勵就越多。前面也提到過,模型的需求者在調用合約時,需要支付Endorphin,類似於以太坊的Gas機制,價格根據市場調整。
其次,礦工和全節點也會因為自己挖礦記賬和執行帶有模型的智能合約而獲得獎勵。Cortex的代幣總量中,50.03%的比例用於挖礦獎勵。執行智能推斷的全節點也會獲得來自於合約調用者支付的費用,費用由模型的提供者和全節點及礦工之間分配。
除了模型需求者調用模型需要支付Endorphin費用之外,模型的提供者也需要支付模型的存儲費用,以促使模型貢獻者提交更優秀的模型。
模型的需求者是CTXC代幣的主要消耗者,它調用模型需要支付運算和模型的使用費。
從Cortex的代幣模型看,除了類似於以太坊的挖礦獎勵和交易費用模型之外,它還增加了使用模型相關的獎勵和消耗機制。模型的提交者因為其模型的質量而獲得代幣收益,同時也需要為其存儲付費。模型的需求者則屬於服務受益者,需要用代幣支付服務的相關費用。
最後基金會、顧問和社區也是Cortex生態的重要組成部分。基金會獲得24.95%的代幣分配,主要負責項目的落地和推進。顧問和社區,包括開發者和推廣者,也為項目的發展提供推動力,也會獲得相關的代幣激勵。
Cortex的進展
Cortex是從2018年2月啟動,截止到目前有17個月左右。在這一年多的時間內,它完成了測試網的上線和主網的正式上線。測試網於去年第三季度上線,其中包括了挖礦測試鏈Bernard和AI智能合約測試鏈Dolores。
Cortex的主鏈於2019年6月26日發布,這是區塊鏈上首個實現鏈上人工智慧推斷的項目,不僅要實現在區塊鏈上真正運行人工智慧的計算程序,同時也要實現全網共識來驗證人工智慧推斷的每一步,從而確保去中性化、確定性、公開。
從以上的介紹,我們也可以看出,在區塊鏈上實現人工智慧推斷並不容易,它需要解決分散式計算的性能、不確定性等諸多挑戰。Cortex經過一年多時間,在虛擬機設計、解決AI模型推斷結果的確定性、鏈上AI推斷的確認速度等方面,都取得進展,這在工程上需要解決各種挑戰,比如深度神經網路模型在異構環境中存在不確定性,在區塊鏈上執行時很難達成網路共識。要順利解決這些問題,需要團隊在AI和區塊鏈領域都有較深厚的理解和積累。
根據Cortex的白皮書介紹,創始人陳子祺畢業於清華大學,後獲得加州大學聖克魯斯分校的計算機碩士學位,師從David P. Helmbold研究機器學習理論及演算法應用,曾在SFTC公司擔任主研究科學家,負責有限元網格生成法,同時對區塊鏈的挖礦、共識演算法和公鏈有研究。CTO兼首席科學家田甲同樣畢業於清華大學,曾在百度、阿里擔任過搜索引擎的架構師,在人工智慧和區塊鏈領域都有深入研究。區塊鏈工程總監楊陽同樣也有清華大學背景,具有獨立用C/C ++實現一個資料庫的能力,熟悉分散式資料庫等。
此外,顧問方面Matt Branton、Whitefield Diffie等人。其中,Matt Brandton是分散式計算專家,也是World Financial Desk的創始合伙人;學術顧問Whitefield Diffie是公鑰密碼學的先驅,圖靈獎得主。
結語
區塊鏈和人工智慧的結合,有利於釋放雙方的潛能。它們之間是相互促進和賦能的關係。Cortex通過為區塊鏈智能合約賦予人工智慧的能力,從而擴展了區塊鏈的能力,使去中心化的人工智慧應用成為可能,帶來更多的區塊鏈落地價值。這對於區塊鏈世界進化來說,會有重大的影響,之前的「智能合約」其實並不智能,只是在條件觸發後進行執行,而有了人工智慧之後的「合約」,才能真正稱為「智能合約」。
冷萃財經原創,作者:Awing,轉載請註明出處:https://www.lccjd.top/2019/07/04/%e5%a6%82%e4%bd%95%e8%ae%a9%e5%8c%ba%e5%9d%97%e9%93%be%e8%8e%b7%e5%be%97%e4%ba%ba%e5%b7%a5%e6%99%ba%e8%83%bd%e7%9a%84%e8%83%bd%e5%8a%9b/?variant=zh-tw
文章評論