如何走過人工智能轉(zhuǎn)型的轉(zhuǎn)折點
Milvus是一個開源項目,可以為開源人工智能生態(tài)系統(tǒng)提供數(shù)據(jù)服務功能。人們需要了解如何從中受益。
在談到開源人工智能項目時,人們通常會想到Google TensorFlow、PyTorch等模型框架項目,由于模型框架是訓練人工智能模型的關(guān)鍵組成部分,因此這些項目通常最受關(guān)注。但是人工智能并不是一種單一的技術(shù),而是一個復雜的技術(shù)領(lǐng)域,涉及多個子領(lǐng)域和許多不同的組成部分。
向人工智能轉(zhuǎn)型的轉(zhuǎn)折點
一般而言,技術(shù)升級的轉(zhuǎn)折點是其回報遠遠超出成本。當將其應用于人工智能轉(zhuǎn)型時,它將涉及一些基本因素,其中包括模型(算法)、模型推斷和數(shù)據(jù)服務。
在談論模型時,人們需要了解利用人工智能技術(shù)的期望值。如果希望采用人工智能技術(shù)來擊敗和取代人類,例如采用人工智能驅(qū)動的對話機器人取代所有的客戶支持專家,那么對人工智能模型的需求將相當高,并且在短期內(nèi)無法實現(xiàn)。
如果企業(yè)想讓客戶支持專家從單調(diào)繁瑣的日常工作中解脫出來,這意味著計劃利用人工智能技術(shù)提高人類的生產(chǎn)力和能力,那么現(xiàn)在的模型在許多情況下都能實現(xiàn)。
這聽起來令人鼓舞。但是關(guān)于模型的激烈爭論是,盡管一些模型可供使用,但卻沒有一個最佳的模型。那些雇傭人工智能科學家擁有這些技術(shù)發(fā)展水平(SOTA)模型的公司。如果只使用公共模型,那么會失去競爭優(yōu)勢嗎?人們對此感到困惑,因為他們認為效率更高的模型會帶來更高的業(yè)務價值,但這種想法可能是錯誤的。在大多數(shù)情況下,模型有效性與商業(yè)價值之間的關(guān)系既不是線性的,也不是單調(diào)遞增的。這一函數(shù)的圖形如下所示。
這是一個分段函數(shù)。在第一階段,在該模型在應用程序場景中實現(xiàn)實用之前,沒有任何業(yè)務價值。在第二階段,盡管理論上更好的模型應該具有更好的性能(響應時間和有效性等),但在實際場景中它可能并不那么明顯。以下進行一下了解。
在醫(yī)生確認患者是否患有肺部感染之前,需要對其肺部進行CT檢查,將生成約300張CT圖像。而經(jīng)驗豐富的醫(yī)生將不得不花費5~15分鐘來研究這些CT圖像。在通常情況下,如果治療的患者數(shù)量不多不會有什么問題。但是,在極端情況下(例如持續(xù)蔓延的冠狀病毒疫情),患者數(shù)量激增將讓醫(yī)生不堪重負。
一個好消息是,數(shù)據(jù)科學家致力通過計算機視覺技術(shù)幫助醫(yī)生。他們訓練的模型可以在幾秒鐘內(nèi)處理成百上千的CT圖像并提供診斷建議。因此,醫(yī)生只需花費1分鐘的時間就可以查看模型生成的結(jié)果。因此,在采用機器學習技術(shù)之前,醫(yī)生平均需要花費10分鐘的時間才能查看一次CT掃描生成的結(jié)果,而現(xiàn)在大約需要1分鐘。生產(chǎn)率提高了近90%。
如果有一個更快的模型,只需要3秒鐘就可以生成結(jié)果,那會怎么樣?如果有一個更有效的模型可以將準確度從80%提高到90%會怎么樣?醫(yī)生檢查的結(jié)果會更少嗎?其答案是否定的,這是因為該模型中,如果十分之一將會出錯,但并不知道哪個是錯誤的,醫(yī)生必須審查所有結(jié)果。因此不會節(jié)省更多的診斷時間。
此外,為了降低模型推理服務的成本,有時需要犧牲模型有效性。例如一個擁有5500萬張商標圖片的商業(yè)智能平臺提供商,該公司希望提供一項服務,允許用戶搜索這些商標的所有者。用戶通過上傳商標圖像作為輸入查詢而不是給出關(guān)鍵字來執(zhí)行搜索。
其背后的技術(shù)是計算機視覺,例如VGG模型。如果企業(yè)在后端服務器上運行模型推理,則必須分配和預留數(shù)據(jù)中心的硬件資源。另一個選擇是部署一個規(guī)模更小的模型,這樣企業(yè)就可以把模型推理放在邊緣計算設備上(大多數(shù)情況下是智能手機)。它肯定會降低像GPU這樣昂貴的模型推理硬件的成本。這是另一個例子,SOTA模型不可能在所有場景中都具有競爭力。
人們已經(jīng)處在人工智能轉(zhuǎn)型的轉(zhuǎn)折點。接下來的問題是,如何走過這一轉(zhuǎn)折點,并采用人工智能技術(shù)來增強業(yè)務能力。
可用模型是先決條件。但是,如果只具有模型,也無法輕松開發(fā)人工智能程序。像傳統(tǒng)應用程序一樣,數(shù)據(jù)服務始終是至關(guān)重要的部分。可以看到,它已成為當今采用人工智能的重要組成部分。這就是為什么啟動開源項目Milvus來加速采用人工智能的原因。
采用人工智能的數(shù)據(jù)挑戰(zhàn)
一些企業(yè)嘗試通過人工智能技術(shù)處理的大多數(shù)數(shù)據(jù)都是非結(jié)構(gòu)化的,因此期望Milvus項目為非結(jié)構(gòu)化數(shù)據(jù)服務提供堅實的基礎。
人們通常將數(shù)據(jù)分為結(jié)構(gòu)化數(shù)據(jù)、半結(jié)構(gòu)化數(shù)據(jù)、非結(jié)構(gòu)化數(shù)據(jù)這三種。結(jié)構(gòu)化數(shù)據(jù)包括數(shù)字、日期、字符串等。半結(jié)構(gòu)化數(shù)據(jù)通常包括特定格式的文本信息,例如各種計算機系統(tǒng)日志。非結(jié)構(gòu)化數(shù)據(jù)包括圖片、視頻、語音、自然語言和任何其他不能由計算機直接處理的數(shù)據(jù)。
據(jù)估計,非結(jié)構(gòu)化數(shù)據(jù)至少占數(shù)字數(shù)據(jù)世界的80%。例如,人們可能每天與其家人、朋友或同事發(fā)送和接收數(shù)kB的短信。但即使只在移動設備上拍一張照片,例如采用具有1200萬像素的攝像頭iPhone 11,一張照片高達幾兆字節(jié)。那么如果拍攝720p分辨率的視頻呢?
一些企業(yè)開發(fā)了關(guān)系數(shù)據(jù)庫、大數(shù)據(jù)等技術(shù)來高效地處理結(jié)構(gòu)化數(shù)據(jù)。而半結(jié)構(gòu)化數(shù)據(jù)可以通過基于文本的搜索引擎Lucene、Solr、Elastic search等進行處理,但是對于大量的非結(jié)構(gòu)化數(shù)據(jù),在以往并沒有有效的分析方法。直到深度學習技術(shù)在近年來興起,非結(jié)構(gòu)化數(shù)據(jù)處理技術(shù)得到了快速的發(fā)展。
非結(jié)構(gòu)化數(shù)據(jù)服務
嵌入是深度學習的一個術(shù)語,是指通過模型將非結(jié)構(gòu)化數(shù)據(jù)轉(zhuǎn)換為特征向量。由于特征向量是數(shù)字數(shù)組,因此很容易由計算機處理。因此,非結(jié)構(gòu)化數(shù)據(jù)的分析可以轉(zhuǎn)換為矢量計算。
一個最普遍的論點是特征向量似乎是非結(jié)構(gòu)化數(shù)據(jù)處理的中間結(jié)果。那么是否有必要建立通用的矢量相似度搜索引擎?是否應將其包括在模型中?
專家認為,特征向量不僅僅是中間結(jié)果。它是深度學習場景中非結(jié)構(gòu)化數(shù)據(jù)的知識表示。這也稱為特征學習。
另一個論點是,由于特征向量還包含數(shù)值,為什么不對現(xiàn)有的數(shù)據(jù)處理平臺(例如數(shù)據(jù)庫)或計算框架(例如Spark)執(zhí)行向量計算。
確切地說,向量由數(shù)字列表組成。這導致矢量計算和數(shù)值運算之間的兩個重大區(qū)別。
- 首先,向量和數(shù)字最頻繁的運算是不同的。對于數(shù)字來說,加減乘除是最常見的運算。但是對于向量,最常見的要求是計算相似度。人們會看到,在這里給出了計算歐幾里德距離的公式,向量的計算比普通的數(shù)值計算要高得多。
- 其次,數(shù)據(jù)的索引組織不同。在兩個數(shù)字之間,可以互相比較數(shù)值。這樣就可以像B樹那樣根據(jù)算法來創(chuàng)建數(shù)字索引。但是在兩個向量之間,無法進行比較。只能計算它們之間的相似性。因此矢量索引通常是基于近似最近鄰神經(jīng)網(wǎng)絡算法。
由于這些顯著的差異,傳統(tǒng)的數(shù)據(jù)庫和大數(shù)據(jù)技術(shù)很難滿足矢量分析的要求。他們支持的算法和他們關(guān)注的場景都是不同的。