從去年下半年ChatGPT橫空出世至今,大模型的熱度一直沒有減弱。AI好不好,基本上就看四點:數據、算力、算法和應用。智愿君決定用幾篇的內容,聊聊這些話題。如果用烹飪來形容的話:數據是原材料柴米油鹽,算力是烹調工具鍋和火力,算法是烹飪的技法,而應用就是如何讓這道菜受歡迎,允許原材料、技法的改良和變化,允許被包裝,最終被普及大眾接受和感知。
最先要聊的必須要有好的數據集。對于深度學習而言,好的數據集是基礎。如果輸入的數據質量較低、不準確或包含錯誤信息,那么即使使用優秀的算法和模型,最終學習出來的結果也可能存在錯誤和不準確性。數據的準確性和質量是確保機器學習模型能夠產生準確和可靠結果的先決條件。正所謂垃圾進,垃圾出。所以要做好大模型,就要從源頭抓起。
1. 高質量的數據資源
想做好數據集,尋找到高質量的數據資源是第一步。AI學習的數據要有一些基本的質量要求,否則后期處理工作量會翻倍。這里面包括:
-
-
數據的準確性和真實性。如果數據存在大量的謊言,那么AI也自然就學會了說謊。
-
數據的邏輯性:如果數據的關聯缺少必要的因果關系和邏輯推理關系,在這種數據上希望訓練成一個邏輯性很強的推理AI也是癡人說夢。
-
數據的平衡和公允性。當然,這個是針對AI大模型最終用戶的預判來決定的。如果一個大模型默認就是簡體中文的群體,那么要在這個群體范圍內做到盡可能的數據公平和公允性,不會刻意制造地域、年齡、職業和能力差別情況下的失衡和不公平。這種數據的多樣性,也是最終模型魯棒性的體現。也會幫助最終的大模型更好地應對現實世界中的變化和挑戰。
-
數據語言文明用語的重要性。要盡可能干凈,不能出現辱罵、偏見、歧視性的用語。
-
不同領域數據資源會有所不同,一些經典的數據資源如下:
Wikipedia:
Wikipedia是一個由志愿者創建和編輯的在線百科全書,它包含了廣泛的知識領域和主題的文章。Wikipedia的數據資源在自然語言處理(NLP)和文本相關的任務中非常有價值。它提供了大量的結構化和非結構化文本數據,包括文章、段落、標題、鏈接等信息。Wikipedia的數據資源可用于語義理解、文本分類、實體識別、關系抽取、問答系統等NLP任務的訓練和評估。Wikipedia數據資源的廣泛性和多樣性使其成為研究和開發NLP模型的重要數據來源。
Common Crawl:
Common Crawl是一個非營利性組織,旨在收集并提供互聯網上的網頁數據。它通過定期抓取互聯網上的網頁并存儲為大規模的數據集,提供了一個公共的、開放的互聯網快照。Common Crawl的數據資源是以網頁的形式提供的,包含了網頁的HTML內容、鏈接、標記等信息。這些數據對于自然語言處理、信息檢索、網頁分析、機器學習等任務非常有價值。研究人員和開發者可以利用Common Crawl的數據資源進行文本抽取、語義分析、信息挖掘等任務的訓練和研究。
World Bank Open Data:
世界銀行開放數據平臺提供了全球范圍內的經濟、社會和發展數據。這些數據涵蓋各種指標,包括國內生產總值(GDP)、人口統計、教育、衛生等。
ImageNet:
ImageNet是一個大規模圖像數據庫,包含數百萬個標記圖像。每個圖像都與一個或多個類別標簽相關聯。ImageNet的數據資源被廣泛用于計算機視覺任務,如圖像分類、目標檢測和圖像分割等。
IMDb:
IMDb(Internet Movie Database)是關于電影、電視節目、演員和其他相關信息的廣泛數據庫。它提供了詳細的影片信息、演員表、評分和評論等。
Kaggle:
Kaggle是一個數據科學競賽和交流平臺,提供大量的公開數據集供數據科學家和機器學習從業者使用。這些數據集涵蓋各個領域,包括圖像識別、自然語言處理、金融、醫療等。
OpenStreetMap:
OpenStreetMap是一個開放的地圖數據項目,由全球志愿者創建和維護。它提供了地理數據和地圖信息,可用于各種導航、地理信息系統(GIS)和位置分析應用。
NASA's Planetary Data System:
NASA的行星數據系統(Planetary Data System)收集和維護了來自太陽系行星探測任務的各種科學數據。這些數據包括行星表面圖像、空間探測器觀測數據、天體物理數據等。該數據資源對于行星科學研究和空間探索具有重要意義。
大家可能發現上述的數據資源大多為美國的資源。這一點,相比之下,我國確實存在一定程度的差距。根據發改委高技術司,我國政府數據資源占全國數據資源的比重超過 3/4,開放的規模卻不足美國的 10%,個人和企業可以利用的規模更是不及美國的 7%,但這類數據的開放共享程度不高,全國開放數據集規模僅約為美國的 11%。而且我們的很多數據都在不同的垂直領域國企大廠,數據有待進一步開放匯集,為開發更符合國內需求的大模型提供基礎。但國際環境復雜多變,數據安全仍是當前的重要考慮因素,所以如何拉通數據資源市場,促進相關公共、企業、個人數據的進一步放開,將為國內 AI 發展提供重要支撐,確實存在很大的挑戰。
2. 數據預處理和準備
盡管數據資源很重要,但要在真正拿來訓練前,還是需要做很多功課的,如果不排除數據中存在前后矛盾的情況,格式不一致的情況,來源不同,導致訓練水土不服的情況。再加上不可避免的噪聲、異常、重復等數據問題,這就需要經過專業化的預處理和數據準備,比如如何從數據資源中采集數據?數據的價值觀設計?是否需要做進一步的數據清洗?如何進行數據標注?如何管理這些數據?等等,接下來,我們就逐一展開聊一下:
數據采集:
數據采集是從數據資源中獲取數據的過程。它涉及到確定數據的來源、采集方法和采集范圍等。數據可以來自各種渠道,如公共數據集、開放API、傳感器、日志文件等。在數據采集過程中,需要考慮數據的可靠性、完整性和合法性,確保采集到的數據符合預期和需求。
數據價值觀設計:
數據的價值觀設計是指在數據采集和使用過程中明確和定義數據的意義和價值。這包括確定數據的目標和目的,定義數據的質量標準和指標。數據的價值觀設計需要結合具體應用場景和業務需求,確保數據的質量和適用性。對于我國在做大模型的一些企業,數據價值觀設計可能尤為重要,大模型生成的結果是否符合社會主義價值觀,是否符合正能量要求,是否避開敏感話題等,在數據預處理的時候,就要把控好。
數據清洗(Data Cleaning):
數據清洗是指對數據進行處理和修正,以去除或糾正數據中的錯誤、缺失、重復或不一致等問題。數據清洗過程包括數據去噪、數據填充、數據一致性檢查和糾正等。通過數據清洗,可以提高數據的準確性和一致性,消除對模型訓練的負面影響。
數據標注(Data Labeling):
數據標注是指給數據附加標簽或注釋,以指示數據的特征、類別或含義。數據標注可以是結構化的,如分類標簽、實體標注等,也可以是非結構化的,如文本摘要、圖像描述等。數據標注需要依賴專業的領域知識和標注指南,并進行質量控制和質量評估,以確保標注結果的準確性和一致性。在數據標注和處理過程中,可以利用眾包平臺或協作工具來進行大規模的數據標注和校對。通過將任務分發給眾多標注人員或協作團隊,可以加快數據處理的速度,并確保數據的準確性和一致性。數據集眾包和協作可以有效應對大規模數據處理的挑戰。
訓練數據預處理:
數據預處理是對原始數據進行轉換、規范化和歸一化等操作,以便于后續的特征工程和模型訓練。常見的數據預處理操作包括特征縮放、特征選擇、特征變換、數據降維等。數據預處理的目標是提高數據的可解釋性、可處理性和模型訓練的效果。除了結構化數據(如表格數據)之外,還存在大量的非結構化數據,如文本、圖像、音頻和視頻等。處理非結構化數據需要使用相應的技術和算法,如自然語言處理(NLP)、計算機視覺(CV)、語音識別等。對于非結構化數據的預處理和準備,需要使用特定的工具和庫,以及領域專業知識。
數據增強:
數據增強是指通過一系列的變換和擴展操作來生成新的訓練樣本,以增加數據的多樣性和豐富性。數據增強可以包括圖像翻轉、旋轉、平移、縮放等操作,或者對文本進行重排、替換、增刪等操作。通過數據增強,可以擴展有限的數據集,減輕過擬合問題,提高模型的泛化能力和魯棒性。
數據質量控制:
數據質量控制是確保數據的準確性、一致性和可靠性的過程。它包括數據異常值的檢測和處理、數據重復項的處理、缺失數據的填充等。數據質量控制還涉及到對標注數據的質量進行評估和審核,以確保標注結果的可信度和一致性。為了評估數據預處理的效果和決策,可以使用一系列評估指標和度量方法。例如,可以使用準確率、召回率、F1分數等指標來評估數據標注的質量。此外,還可以使用數據分布的統計指標、特征選擇的相關性等來評估數據預處理的效果。
數據特征工程:
數據特征工程是對原始數據進行變換、提取和構造特征的過程,以便于模型的學習和表達。這包括對數據進行編碼、離散化、數值化、文本向量化等操作,以生成能夠被機器學習算法理解和處理的特征表示。良好的特征工程可以提高模型的表現和泛化能力。
數據集劃分:
將數據集劃分為訓練集、驗證集和測試集是模型訓練和評估的重要步驟。訓練集用于模型的參數更新和訓練過程,驗證集用于模型的調優和超參數選擇,測試集用于模型的最終評估和性能指標的計算。劃分數據集時需要考慮樣本的分布、類別的平衡以及隨機性等因素,以保證結果的可靠性和泛化能力。在實際應用中,訓練數據集和測試數據集可能存在分布的偏移。這意味著測試數據集與訓練數據集之間的特征分布存在差異,從而可能導致模型在測試集上的性能下降。為了解決這個問題,可以采取數據分布校正的方法,如領域自適應、實例權重調整等,來使測試數據集更加貼近實際應用場景,提高模型的泛化能力。
數據集平衡:
數據集平衡是指在訓練數據中各個類別的樣本數量相對均衡。當數據集存在類別不平衡的情況時,模型往往會偏向于出現樣本數量較多的類別,而忽略數量較少的類別。為了避免這種情況,可以采取過采樣、欠采樣、生成合成樣本等技術來平衡數據集,以保證各個類別的樣本能夠得到充分的訓練和學習。
數據集集成:
數據集集成是將不同數據源的數據整合和融合成一個統一的數據集。在實際應用中,常常需要從多個數據源中收集數據,這些數據可能具有不同的格式、結構和特征。數據集集成的過程包括數據匹配、數據轉換、數據合并等操作,以創建一個更全面、更豐富的數據集來支持模型訓練和應用。
數據管理:
數據管理涉及對數據資源的組織、存儲、訪問和更新等方面。數據應該以適當的方式進行組織和結構化,以便于后續的數據處理和分析。這里的數據管理不是針對某一個數據集或者某一個數據預處理階段的管理,而是指對數據整個生命周期的管理和控制,包括數據策略制定、數據質量管理、數據安全性和合規性等方面。通過數據治理,可以確保數據的一致性、準確性和可信度,提高數據處理和模型應用的可靠性和效果。
數據集并非一成不變,隨著時間的推移和實際應用的需求,數據集可能需要進行更新和迭代。這包括添加新的樣本、修改標注、修正錯誤等操作。因此,在數據管理的過程中,數據的版本控制和追蹤是非常重要的。由于數據可能會經歷多個階段的處理和改動,保留每個階段的數據版本能夠幫助追溯數據的來源、變化和處理過程,提高數據處理的可重現性和可追溯性。數據版本控制還有助于團隊協作和復現研究結果。
對于大規模的數據集和復雜的數據處理流程,數據文檔和元數據管理起著重要的作用。通過記錄和管理數據的文檔、描述、屬性和關系等元數據信息,可以方便地了解數據集的結構、含義和使用方式。數據文檔和元數據管理有助于數據的搜索、索引和共享,減少數據處理的時間和成本。同時,它還可以提供數據的可追溯性和可重復性,支持科學研究和業務決策的透明性。
數據管理還包括數據備份和恢復的問題。數據備份和恢復是保障數據安全性和可用性的重要措施。在數據處理過程中,及時對數據進行備份,并采取合適的存儲和恢復策略,以應對數據丟失、損壞或泄露等風險。數據備份也有助于追溯數據的歷史狀態,支持數據版本控制和數據審計的需求。
數據管理還包括安全性和隱私保護等問題,確保數據的安全性和合規性。這包括對敏感信息的處理、數據脫敏、匿名化和數據訪問權限的控制等。在數據處理和使用過程中,需要確保數據的訪問和權限受到適當的管理和控制。這包括設定數據訪問權限、加密數據傳輸、監控數據訪問和使用情況等措施,以保護數據的安全性和隱私性。
數據的監控和維護也是數據生命周期管理的重要環節。持續地監控數據的質量、準確性和完整性,及時發現和解決數據質量問題,確保數據的可靠性和可用性。數據監控也可以幫助我們評估模型的穩定性和魯棒性,進行模型的迭代和優化。
數據處理自動化
在整個數據預處理過程中,合理采用自動化數據處理會事半功倍。可以建立數據管道和自動化工作流。數據管道是將不同的數據處理步驟和操作串聯起來,形成一個有序的數據處理流程。自動化工作流可以利用腳本、工具或平臺來自動執行數據處理任務,減少手動操作和減輕重復性工作的負擔。在進行數據預處理和數據準備時,可以利用各種工具和技術來簡化和加速工作流程。例如,使用Python編程語言的數據處理庫(如NumPy、Pandas)和機器學習庫(如Scikit-learn、TensorFlow、PyTorch)可以方便地進行數據操作和模型構建。ETL(抽取、轉換、加載)工具可以幫助提取數據、進行轉換和整合,并加載到目標系統中。此外,還有專門用于數據清洗和特征工程的工具(如OpenRefine、Featuretools)、自動化工作流平臺(如Apache Airflow、Kubeflow)等,這些工具可以減少手動操作、減輕人工工作的負擔,并提高數據處理的一致性和準確性。也可以提高數據處理的效率和可靠性。
在數據管理過程中,數據可視化和探索性分析是非常有益的工具。通過可視化方法,可以直觀地展現數據的分布、關系和特征,幫助發現數據中的模式、異常和趨勢。探索性分析可以幫助我們更好地理解數據集,指導后續的數據處理和模型構建。通過繪制圖表、熱力圖、散點圖等可視化方式,可以直觀地展示數據的分布、關系和變化趨勢。常見的數據可視化工具包括Matplotlib、Seaborn、Tableau等。
總結起來,數據預處理和數據準備是數據科學和機器學習領域中不可或缺的環節。通過合理的數據采集、數據清洗、數據標注、數據整合和數據轉換等步驟,可以獲取高質量的數據,并為后續的分析、建模和應用打下堅實的基礎。在處理數據的過程中,需要考慮數據質量、數據隱私、可重復性、資源管理、培訓和知識傳承等方面的問題和挑戰。通過綜合應用適當的技術、方法和工具,可以克服這些挑戰,并獲得可信、高效和可解釋的數據處理結果。
3. 數據預處理的生態企業
專注于數據預處理的公司有很多,大多數都是初創公司。比如:Scale AI、Dataloop、SuperAnnotate、Labelbox、Snorkel、V7、Appen 等。這塊兒的工作在起步階段大量依賴于外包人工標記數據,類似于包工頭的角色,所以有豐富外包管理經驗的公司,轉型做數據預處理,也相對比較容易上手。
這塊兒當前做的最為突出的就是Alexandr Wang的Scale AI。成立于2016 年,當前估值 73 億美金,ARR (年度重復收入)占比不高,只有 3 億美金。Scale AI 核心業務為數據標注,從自動駕駛場景起家,后切入政府、電商、機器人、大模型等場景,分別對應著過去 AI 行業幾次大機會的出現。Scale 從自動駕駛領域的標注起家,在自動駕駛、地圖等行業表現很好,兩年前,公司 80-90% 的訂單都來自自動駕駛(2D、3D、激光雷達等),該比例近年有所下降。Scale AI 在每波大趨勢到來時都能快速捕捉機會,推出相應的產品,在細分領域迅速做到極高的市場份額。
除了專門做數據預處理的創業公司之外,很大大廠都在自建數據標注團隊,或者自建平臺以掌握預處理數據的掌控權。如果這些大廠,在商業模式的運作上,降維打擊這些創業公司,很有可能會擠壓創業公司的市場空間。這個未來存在一定程度的博弈。
數據預處理賽道有規模效應。客戶對數據預處理的關注點主要在“質量”和“效率”兩個方面,由于數據預處理愛很多方面,特別是數據標注領域,不是高技術含量的工作,因此經驗對質量和效率的提升就起到關鍵作用。這里的經驗又包括工人標注數據的經驗,以及 整套流程和管理體系的經驗。規模越大,預處理的數據量越多,經驗就越成熟、越豐富,預處理數據的質量和效率就越高,這里是個正向飛輪。所以誰作為頭部玩家跑的最快,就越容易形成差異化的競爭優勢,這個和OpenAI的路數是一樣的。
4. 數據預處理——充滿生命力的生態系統根據Grand View Research的報告,預計到2028年,全球數據預處理市場的價值將達到1,848億美元。MarketsandMarkets的報告預測,到2026年,全球數據預處理市場的價值將達到1,759億美元,以每年約18.2%的復合年增長率增長。Allied Market Research的報告預測,到2027年,全球數據預處理市場的價值將超過1,500億美元。
不管是哪個市場預測,數據預處理都有著令人振奮的未來前景。數據預處理公司將如忙碌的蜜蜂一樣,不斷采集、清洗、標注和優化海量的原始數據。他們將發揮關鍵作用,為人工智能的成長提供養分,將原始數據轉化為高質量的訓練數據,為深度學習模型提供堅實的基礎。
隨著時間的推移,這個生態系統將變得更加完善和成熟。數據預處理的流程將變得更加高效、精確和可靠,也會更加自動化,甚至也會變得更為智能。相信這個生態系統將激發出更多創新的想法和應用,讓人們更好地利用數據驅動的智能系統來解決現實世界的各種挑戰。讓我們拭目以待吧!
-
開源技術
+關注
關注
0文章
389瀏覽量
7949 -
OpenHarmony
+關注
關注
25文章
3725瀏覽量
16369
原文標題:河套IT TALK 88:(原創)數據預處理:成功AI大模型的基石
文章出處:【微信號:開源技術服務中心,微信公眾號:共熵服務中心】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論