大模型微調,長尾場景下的資料如何清洗?

danny_2018發表於2024-02-01

長尾場景下的資料如何清洗,有哪些方法、措施、注意點?

微調過程中,有很多種種任務,如何收集和標註多種情況的資料,對提升大模型的綜合能力應對有重要意義,希望大家可以針對:長尾場景下的資料如何清洗進行探討,可以從方法,措施,以及注意點方面進行共識交流?

問題來自社群會員@dengjf99 某股份制銀行 軟體開發工程師,以下內容來自社群同行探討

@國金證券 AI演算法工程師:

長尾資料通常包含大量稀有的或者不規則的資料,需要一定處理才能利用,可以採用以下方式:

(1)異常值處理:長尾資料往往存在異常值,可以透過統計學知識處理異常值。確保資料準確。

(2)缺失值處理:長尾資料中缺失值的比例可能較高,需要採用適當的方法填充或處理缺失值,如均值填充、插值法等,以保證資料完整性。

(3)特徵選擇:對於長尾資料,可以採用特徵選擇技術,剔除對建模沒有幫助或影響較小的特徵,以簡化模型並提高建模效率。

(4)資料平滑:對於長尾分佈的資料,可以考慮進行資料平滑處理,如對數轉換、Box-Cox轉換等,使資料更符合正態分佈,有利於建模和分析。

@catalinaspring 金融 副處長:

如果模型基於錯誤的、無意義的資料建立,那麼這個模型也會出錯。因此,如果源資料帶有缺失值(NaN),就需要在資料預處理中進行清洗。缺失值是最常見的資料問題,有很多處理缺失值的方法。保留對於有些缺失值佔比不大或者透過其他資訊可以進行推斷的特徵,去除缺失量太多的資料行或列。強烈建議在清洗的過程中每做一步都備份一下,或者在小規模資料上試驗成功後再處理全量資料,節約時間,也充分留足撤銷操作的餘地。

如果資料是由系統日誌而來的,那麼通常會在格式和內容方面與後設資料的描述保持一致。而如果資料是由人工收集或使用者填寫而來的,則有很大可能會在格式和內容上存在問題。

有時我們擁有多個包含相同資訊的維度特徵,這時就可以進行交叉驗證,修復矛盾內容。比如一個隱去後六位的身份證號,100000199701XXXXXX,而年齡欄位資料為18,這顯然是不合理的,由於身份證號可信度更高,所以我們應該對年齡欄位進行修復。

在真實世界中獲取的資料常常會包含錯誤資訊,有的是人為導致,有的是非人為導致,我們可以透過交叉驗證及時發現並修復矛盾內容,為後期建模提供更高質量的資料資訊。

@先生_許 金融 演算法專家:

在長尾場景下清洗資料是一項挑戰性的任務,因為這類資料通常包含大量稀有或不規則的資料點。有效地清洗長尾資料可以幫助模型更好地理解和處理這些稀有案例,從而提高模型的泛化能力和準確性。以下是一些建議和方法,用於清洗長尾場景下的資料:

異常值處理:長尾資料中常常存在異常值,這可能由感測器故障、資料採集錯誤等原因引起。使用統計學方法可以識別和處理這些異常值,從而確保資料的準確性。

缺失值處理:長尾資料中缺失值的比例可能較高。可以根據具體情況採用適當的方法填充缺失值,例如使用均值填充、插值法或其他統計模型。重要的是要保持資料的完整性,避免隨意刪除含有缺失值的行或列,尤其是當缺失值不多且可以透過其他資訊推斷時。

特徵選擇:長尾資料可能包含許多特徵,但並非所有特徵都對建模有幫助。透過特徵選擇技術,可以剔除與任務無關或影響較小的特徵,這有助於簡化模型和提高建模效率。

資料平滑:長尾分佈的資料可以透過資料平滑方法來改善,如對數轉換、Box-Cox轉換等,使資料更符合正態分佈,有利於建模和分析。

資料標註:對於長尾場景下的資料,可能需要手動標註,因為自動標註演算法可能難以處理稀有案例。多人標註和標註規範化可以提高標註質量。

模型微調:在微調模型時,應特別注重長尾場景下的資料,加強這些資料的訓練,以提高模型在這些場景下的表現。資料增強和遷移學習等技術可用來提高模型的泛化能力。

持續監控與更新:長尾資料可能會隨時間和環境變化而變化,因此需要持續監控資料的分佈和變化,及時發現和處理新的異常值和偏差。

保護使用者隱私:在處理長尾場景下的資料時,要注意保護使用者隱私,避免洩露敏感資訊,並遵守相關法律法規。

避免過擬合:在模型微調過程中,應注意避免過擬合,尤其是在長尾資料上。過擬合可能導致模型在新場景下的表現下降。

使用預訓練模型:可以利用預訓練模型初始化權重,然後在新資料集上進行微調。這有助於模型更好地泛化到各種資料集。

類別加權損失函式:在長尾資料分佈的情況下,傳統的損失函式可能偏向於最佳化多數類別的預測效能,而忽視了少數類別。使用類別加權損失函式可以平衡不同類別的權重,提高少數類別的預測效能。

資料去重與格式統一:確保資料中沒有重複記錄,並且格式統一,這樣可以減少處理時間和成本,同時提高模型的準確性和效能。

清洗長尾場景下的資料需要綜合考慮多種方法和技術,並注意資料的質量、隱私保護和法律法規的遵循。透過精心的資料清洗和模型微調,可以顯著提高大模型在長尾場景下的綜合應用能力。

@xuyy 秦皇島銀行 資料架構師:

1. 將一個預訓練的模型調整為新的分類任務,然後在新的資料集上進行微調。這種方法可能會幫助減輕長尾分佈的問題,預訓練的模型在處理各種資料集方面都具有一定的泛化能力。

2. 在長尾資料分佈的情況下,傳統的損失函式可能偏向於最佳化大多數類別的預測效能,從而忽略了少數類別的預測效能。為了平衡不同類別的資料,可以使用類別加權損失函式來平衡資料集不同類別的權重,提高少數類別的預測效能。

@朱祥磊 某移動公司 系統架構師:

1. 資料完整性與異常值檢測:長尾場景下的資料通常會存在一些異常值,這些值可能是由於感測器故障、資料採集錯誤等原因導致的。因此,在清洗資料時,需要仔細檢查資料中是否存在異常值,並採取適當的方法進行處理。同時,也要確保資料的完整性,避免出現缺失值或重複值。

2. 資料分類與標籤處理:在長尾場景下,資料的分類和標籤可能存在不平衡的現象,即某些類別的資料量遠遠超過其他類別。這可能會導致模型在訓練時出現偏差。因此,在清洗資料時,需要對資料進行分類和標籤處理,確保各類別的資料量相對均衡。

3. 資料去重與格式統一:在長尾場景下,資料中可能存在重複記錄或格式不統一的情況。這不僅會增加資料處理的時間和成本,還可能影響模型的準確性和效能。因此,在清洗資料時,需要仔細檢查資料中是否存在重複記錄或格式不統一的情況,並採取適當的方法進行處理。

4. 持續監控與更新:長尾場景下的資料可能會隨著時間和環境的變化而發生變化,因此需要持續監控資料的分佈和變化情況,及時發現和處理異常值和偏差。同時,也要定期更新資料清洗規則和方法,以確保資料的準確性和完整性。

@jinhaibo 崑崙銀行 技術管理:

長尾場景下的資料如何清洗我從大致需要注意點來進行談談我個人看法,希望可以給大家有參考。微調過程中,有很多種種任務,如何收集和標註多種情況的資料,對提升大模型的綜合能力應對有重要意義 。

大家在做資料清洗需要注意以下內容:

1、理解業務需求:在進行資料清洗前,要充分了解業務需求和資料背景,以確保清洗後的資料能夠滿足業務需求。

2、保持資料原始性:在進行資料清洗時,應儘可能保持資料的原始性,避免對資料的過度處理或修改。

@soap 申萬宏源證券有限公司 人工智慧演算法工程師:

金融行業經常會面臨一些長尾風險,往往長尾風險會導致很大的損失。自然語言大模型作為泛化能力很強的模型,在長尾場景的表現卻往往不盡人意。但是金融行業作為對長尾非常敏感的行業,不能忽視長尾帶來的巨大風險。我認為,在上線之前要對大模型進行嚴格的測試,確保在極端情況下不會產生極端的錯誤。在這個過程中應該與業務相結合,對之前遇到的對業務產生巨大影響的業務場景進行歸納總結,作為訓練資料,儘可能多的獲取多種型別資料,並透過歷史經驗進行模型的微調和修正。此外,在大模型部署同時,做出對產生回答的過濾,減少產生巨大長尾風險。

來自 “ twt社群 ”, 原文作者:twt社群;原文連結:https://mp.weixin.qq.com/s/2Lm4pjcUYOg__AZnYQHNdA,如有侵權,請聯絡管理員刪除。

相關文章