2020年7月20日 星期一

【AI HUB專欄】人工智慧下一個兵家必爭之地【AI市集】


圖/文 歐尼克斯實境互動工作室 許哲豪 2020/7/9

大家通常買了新手機就會急忙到「應用程式市集(APP Store)」(如Google Play, Apple Store…)去下載常用的通訊、娛樂、新聞、工具等免費應用程式。常然也會到知名遊戲平台「Steam」去下載一些付費的手機遊戲。或者是到影音、知識創作平台(如Youtube, Bilibili, 知乎. 抖音…)去觀賞、評論、贊助這些優秀的創作者。但說到人工智慧應用怎麼好像沒有一個知名的「AI市集(Marketplace)」能讓使用者很方便找到相關應用程式、資料集、模型(算法)並付費(或免費)下載呢?其實並不是沒有,而是現階段仍有許多問題有待克服,導致無法大行其道。那未來是否有機會成為下一個具獲利空間的兵家必爭之地呢?就讓我慢慢為大家道來。


人工智慧從1950年代發展至今,幾經波折、數次大起大落。2012年因Alex Krizhevsky以卷積神經網路(CNN)贏得電腦視覺領域最知名的「ImageNet (ILSVRC)」競賽後,從此開啟了新的人工智慧浪潮,而「深度學習」算法開始橫掃「電腦視覺」、「自然語言」及「數據分析」等領域。如今許多算法已趨於穩定,開始走向工程應用階段,同時推動了「AI市集」的發展,讓更多新創公司或獨立創作者可以上傳自己的資料集、模型、應用程式並收取合理報酬,也讓更多的使用者不用懂太多AI技術就可以簡單的查詢、比較、試用、下載及完成付費手續。

Fig. 1 人工智慧應用組成要素及步驟 (OmniXRI July 2020整理繪製) (點擊圖放大)

為了使人工智慧(深度學習)能順利運作,必須集合「資料集」、「模型(算法)」、「算力(硬體平台)」、「開發框架」及「領域知識」等五大領域內容。「資料集」又分為「通用型」及「專用型」,除了要有巨大的數量(數萬到數億筆)外,其標註品質及各分類數量平衡等問題亦是決定模型訓練成果的好壞。通常要取得大型、公開、免費並有完整標註的通用型資料集並不困難,但專用型的則因數據保密、缺乏領域知識及標註成本(工時)過高等問題,較不易取得及進行標註。更麻煩的是,相同的模型(或稱算法)可能因使用不同的開發框架(Caffe, Tensorflow, Karas, ONNX, PyTorch…)、不同算力(硬體平台)(CPU, GPU, FPGA, NPU, VPU, TPU, ASIC…)、不同模型優化器(Tensorflow-Lite, TensorRT, OpenVINO…)等問題,造成部署到指定工作平台後會出現推論運算精度及速度有很大差異。由此可得知要成功運作一個「AI市集」會遇到比一般APP或手遊更多的麻煩,不是簡單下載就能順利執行。接下來就從「資料集」、「模型(算法)庫」、「營銷金流」、「風險管控」及「運營系統」等方面會遇到的狀況進行簡單說明,最後再提供一些目前常見的「AI市集」供大家參考,以利後續有想要投入這個市場的人能獲得更多啟發。

AI市集─資料集


目前這一波人工智慧的成功,最大變革就是從算法驅動演變至資料驅動,讓以往需要許多專家提供的領域知識,慢慢轉向由巨量資料(影像、語音、數據)中提取出特徵進而完成分類、辨識、理解等應用。在電腦視覺中最知名的公開數據集就是史丹佛大學李飛飛教授團隊貢獻的ImagNet,它包含了1400萬張照片,2萬多個分類,並提供包括影像分類、物件定位、物件分割、姿態分析等各種標註資料檔。相較於以前的公開資料集只有數千到數萬筆資料,明顯大了許多,這非常有利於相關模型(算法)的開發。後來也有許多單位陸續提出免費、巨量、高品質標註的資料集,使得人工智慧得以如此快速發展。

既然有那麼多免費的資料集可用,那大家還需要到AI市集付費下載嗎?這就要看使用者的應用範圍而定了。有時免費資料集僅提供分散在網路的連結,並非真正原始檔,使用者須另外花費更多的時間進行下載。如果需要的資料內容是在特定專業領域時(如工業、醫療、農業…),那肯定是須要付費的,就像美工、影音創作人員為了節省時間,會花錢去買高品質的圖庫、影音片段庫、3D模型庫或動作庫一樣。而資料集整理(多樣性、有效性、標註品質)的好壞亦會影響使用者願意付費金額的高低。

通常這些資料集都非常巨大,所以提供者還須額外負擔儲存空間及下載流量費用問題,需要轉嫁到使用者下載費用上。另外由於這些資料通常是單純的影像、視頻、聲音及數據,所以難以加密或加上數位版權(浮水印)保護,僅能宣告性的警告,導致很容易被盗用、轉賣,大幅減低開發者上傳到AI市集的意願。另外利用下載到的資料集再加上自己的資料集進行重新訓練或遷移學習也是常見的作法,所以是否使用特定通用標註格式也成為提供資料集的選項之一。

有鑑於此,目前正在發展的「聯盟式學習(Federated Learning)」或許有機會解決這一類問題。這種方式不須要將資料集上傳到訓練用的雲端伺服器上,資料可留存在各自區域端的機器中。中央雲端伺服器首先將一個不完美的模型部署到各地區域端機器中並執行推論,再回收結果到雲端,並重新調整模型參數再次部署,如此反覆多次直到模型收歛,即達成不須原始資料集也能訓練模型的功效。這樣的作法好處是可以大幅減少資料的傳遞流量,但缺點就是各節點必須有統一的標註方式及水準。另一項缺點即當訓練難以收歛時,因看不到原始資料會造成很難分析問題的困境。

小結:
  • 資料集需提供完整標註及不同通用格式方便二次開發。
  • 高品質及專用性已標註之資料集具有高價值。
  • 資料集提供者產生的儲存空間費及下載流量費用需轉嫁使用者。
  • 數位版權不易克服,「聯盟式學習」或許有機會解決。

AI市集─模型(算法)庫


一個成功人工智慧(深度學習)的應用,模型(算法)是決定性的關鍵,而這些模型網路(Net)結構多半來自學者不斷的研究改進後提出。但有趣地是同一個模型在不同內容及數量的資料集、開發框架(Caffe, Tensorflow, Karas, ONNX, PyTorch…)、硬體平台(CPU, GPU, FPGA, NPU, VPU, TPU, ASIC…)或特定開發板(Nvidia Xavier, Jetson Nano, Google Coral, Edge TPU, Raspberry Pi, Intel Neural Compute Stick…)、批量取樣數(Batch Size)、數值精度(F32, F16, INT8)及超參數設定都會影響訓練出來的權重值(Weight),甚至重新訓練兩次都會得到有些許差異的結果。若再考慮推論時受限硬體儲存空間、記憶體大小、數值精度及模型優化工具(Tensorflow-Lite, TensorRT, OpenVINO…)造成的損失,那一個模型的可用性及可靠度就變得更難評估了。

由上述可知一般模型分為二部份「網路結構」及「權重值」,前者不太會變動,而後者會受上述問題有很大變動,尤其是在訓練和推論不在同一種平台上執行時。這兩種檔案大多是二進制(Binary)格式檔案,通常可透過一些工具轉換到不同框架上執行,但其推論結果則無法保證精度、效能一致。另外由於這類檔案都是單純數值檔案,所以同樣很難直接加上數位版權(浮水印)進行保護,避免複製、盗用、轉售。

有鑑於此,有幾種做法可進行保護。首先是採用雲端「應用程式介面(API)」方式進行連結,將所有要執行的AI服務都部署在雲端,那就可確保訓練和推論都在相同平台上,可得到一致的執行結果,且不受執行端硬體平台的限制。使用者完全無法得知原始模型網路及權重值,有較佳的保護性。

其次是「軟體開發套件(SDK)」方式,這種方式是提供數種特定程式語言(C, C++, Python, Java…)封裝過的函式庫,使用者可搭配自家程式開發出一個整合度較高可在特定硬體平台(含智慧型手機)及作業系統(Windows, Linux, Android, iOS, Debian…)上執行的應用程式或APP。這種SDK可透過特定的雲端認證啟動機制或序號進行保護,同樣地這類方式也具有極佳的保護能力。

再來還可以對模型進行一次性或區塊鏈「模型加密」,再提供使用者一組解密金鑰,啟動執行推論工作。若該模型被惡意外流,則很容易追查出是由那一位使用(下載)者釋出,進而可追回相關損失,如此使用者就不敢輕易外流。話雖如此「道高一尺,魔高一丈」後兩種方式還是存在一定程度被盗用的風險。

最後為了讓不太懂技術的使用者也能做到即載即用,必要時可直接提供映像檔(Image)、容器檔(Docker, K8S…)、已封裝完成的執行程式或APP,並可直接下載到指定硬體平台(含智慧手機),此種做法亦具有很好的保護性及方便性。事實上目前很多人工智慧應用(如美顏、虛擬彩妝、變臉、即時翻譯、語音助理等)都已變相成為一般普通的APP放到市集上供大家使用而不自知。

除開發者防止盗用外,使用者更關心的是,能否利用此模型權重值進行二次開發或遷移學習。若採用API或APP方式則無法實行,若採SDK及模型加密兩種方式則較有機會達成。因此一個模型要能順利讓使用者下載後就能使用,那就必須說明基本功能,完備操作文件,提供範例程式,指定可運行工作平台(作業系統、硬體要求)。API型式的最好還能提供線上測試,如此就能讓使用者像下載APP一樣沒有使用壓力。

小結:
  • 模型具有網路及權重二種屬性。
  • 相同模型可能受資料集、開發框架、硬體平台、批樣取量數、數值精度、超參數及模型優化器影響得到不同訓練結果。
  • 模型檔為單純數值檔不易透過數位版權保護。
  • 模型可透過API, SDK, 加密或APP化達到防盗用保護。
  • 須提供完整文件、範例並指定工作平台方便使用者了解模型用法。
  • API式模型要提供線上測試。
Fig. 2 人工智慧市集(AI Marketplace)系統架構 (OmniXRI July 2020整理繪製)(點擊圖放大)
 

AI市集─營銷金流


作為一個好的AI市集當然少不了要有完整金流服務,讓使用者容易付費、開發者及平台方容易拆帳分潤。常見方式有「中央管理式」及無平台方的「去中央管理式」。

中央管理式」又可分為「直接付款」、「論次計費」、「訂閱制」、「會員點數制」等方式。「直接付款」方式類似一般APP市集,訂好一個單價,使用者直接以信用卡或行動支付等方式一次付清,較適合SDK, 加密模型、映像檔及容器檔方式內容。通常API式的AI服務都採用「論次計費」,每使用一次費用可能只要幾毛台幣,其目的是希望越多人使用來分擔這個開發費用,同時可讓開發者獲得更多的收入。為方便計算,通常採用信用卡月結方式處理。「訂閱制」和「會員點數制」有點類似,都是基於論次計費基礎上發展出來的。前者採每月(或每季/每年)一次性支付,然後就給予一定額度的使用量,超用則另外收費,或是有吃到飽方案不另外收費。而後者則是先付一筆金額,每使用一次AI API服務就扣一定點數直到扣完為止。對於消費者可依不同使用量、頻度可選擇不同方式支付。

有平台方會有較好的管理機制,所以開發者就需要支付一定比例管理費。但有些平台方效法區塊鏈作法採用「去中央管理式」,將平台管理機制降至只剩金流,收取極低的交易費,讓開發者和使用者可進行點對點(P2P)交易,為求方便其支付方式通常也會搭配虛擬幣交易,對於不熟悉或沒有虛擬幣帳戶的開發者及使用者來說會造成進入障礙。

小結:
  • 金流可採「中央管理式」及無平台方的「去中央管理式」。
  • 「中央管理式」又可分「直接付款」、「論次計費」、「訂閱制」、「會員點數制」等方式。
  • 「去中央管理式」效法區塊鏈作法,採點對點交易,虛擬幣支付。
Fig.3 AI市集營銷金流形式 (OmniXRI July 2020整理繪製)(點擊圖放大)

AI市集─風險管控


由於現階對大家對AI的可信任度仍存在一定疑慮,部份應用可能還存在AI偏見問題。對於執行後的結果若涉及人命(如醫療影像判讀等)、財產(金融交易預測等)、安全(交通管制、智慧製造、自駕車操控等)等重要議題時,其法律責任歸屬問題更是難以釐清,所以使用者須大量測試並吸收部份風險,不能完全仰賴究責回溯。

對於開發者而言,使用的資料集和模型可能是中性的,但其訓練及推論正確性可能因使用者不當使用,或使用了超出資料集範圍過多的內容,或者使用較差的硬體平台導致推論錯誤率上升,這些責任又該歸誰,目前無一定論,存在著很多爭論。那就更不要說是拿著下載到的資料集或模型進行二次開發或遷移學習的結果了。另外對於資料集而言,是否有去除個人隱私資訊,是否嚴重不平衡等問題,亦是近來大家討論焦點,所以不管是開發者或使用者都必須注意。

另外採用雲端API式的AI服務還會存在另一個問題,就是平台方或開發者是否藉此在收集更多的資料集及額外具私密性資訊,目前仍無法得知,因此建議只能從較具知名的開發者(供應商)處下載。

小結:
  • AI服務仍存一定風險,使用者須自己承擔部份風險。
  • 相同模型可能存在不同推論結果正確性,使用者須了解其風險。
  • 資料集可能存在隱私及偏見問題,使用者須注意。
  • 雲端API式AI服務可能存在上傳資料被挪用問題。

AI市集─運營系統


一個好的AI市集,運營平台不是只是單純提供上傳、下載和收支金流而已,還須像APP市集一樣提供功能簡介、操作說明、應用範例、使用評等(星級)、問題反應、價格標定等功能。

若要取得更多的信任度,可能需要建立具有公信力的評測機制,通俗來說就是跑分機制,讓使用者一眼就能知道這個模型在不同平台上表現效能如何。以AI-Benchmark [1] 舉例來說,這個平台雖然是對智慧手機及AI晶片進行評測,但它使用了多種不同的模型對每一個AI晶片進行比較再給出分數,是一種較為公平的作法。這樣的作法亦可反過來操作,讓市集中的模型對指定的硬體平台進行推論,再比較其推論的精度和速度,如此就不會完全受開發者提供的參考數值所影響。同理可知,若有不同開發者提出類似模型或相同開發者提出更新模型,則此一機制亦可看出效能差異,進而可定出不同售價供使用者參考。當然目前很難對所有硬體平台進行評測,但若能以常用平台評測,相信對使用者下載意願會更加提高。

另外行銷策略上,若運營平台能適時提出排行榜、推薦系統或各種邊緣計算平台(含智慧手機)的電商廣告,甚至建立AI討論區、技術論壇,讓更多開發者及使用者進行交流,那就更能增加市集的活躍度,變成大家關注的焦點。

小結:
  • AI市集必須像APP市集一樣具備產品說明、應用範例、使用評等(星級)、問題反應、價格標定等功能。
  • AI市集需提供具公信力評測機制。
  • 可提供討論區、推薦系統、電商廣告整合供需並提升市集曝光度。

現有AI市集


目前現有AI市集主要分為「單向服務」及「雙向服務」兩大類型。前者大多是大廠或特定供應商提供各類型API接口的AI服務,原則上不接受一般開發者上傳資料集或模型,而收費方式大多採計次計價方式,性質較為單純,且因相關運算都是依靠雲端計算,所以較不受執行端硬體運算能力限制。而後者較接近本文討論的「AI市集」範圍,和一般APP市集無異,只要滿足平台方規定格式,開發者就能自行上傳,使用者就能依需求下載AI服務甚至可直接部署到特定硬體,同時可支付對應費用,而平台方就會依拆帳比例將費用支付給開發者。以下就簡單列舉幾個較知名具有金流服務(付費型)的AI市集平台。

單向服務式:

雙向服務式:


結論


「AI市集」目前仍在起步中,雖然已有大廠甚至國內資策會AI-Hub在推動,也有相關論文[2]在討論,但還不像一般APP市集那樣活絡。主要原因可歸究於「資料集」、「模型(算法)庫」、「營銷金流」、「風險管控」及「運營系統」等問題尚未完美整合。相信不久的將來隨著供需逐漸成長,開發和應用隨之分流,這個市場就會成為下一個兵家必爭的淘金勝地。

*致謝:感謝2020/6/30 ~2020/7/3各大FB AI相關社團提供的協助,此次共有46人次參與意見調查及獲得287個讚,謹以此文回饋給大家。

*本文同步發行於歐尼克斯實境互動工作室部落格AI HUB,歡迎連結至AI HUB網站【社群互動】下【AI技術交流區】瀏覽更多精采文章*

參考文獻


[1] AI Benchmark
http://ai-benchmark.com/

[2] Abhishek Kumar et al., “Marketplace for AI Models”
https://arxiv.org/abs/2003.01593

沒有留言:

張貼留言

【頂置】簡報、源碼、系列文快速連結區

常有人反應用手機瀏覽本部落格時常要捲很多頁才能找到系列發文、開源專案、課程及活動簡報,為了方便大家快速查詢,特整理連結如下,敬請參考! Edge AI Taiwan 邊緣智能交流區 全像顯示與互動交流區 台科大(NTUST) 人工智慧與邊緣運算實務 開南大學...