System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及人工智能,尤其涉及一種模型微調訓練方法、裝置、設備及介質。
技術介紹
1、隨著人工智能技術的發展,越來越多的模型應用到各行各業,尤其是近年來以聊天生成式預訓練轉換器(chat?generative?pre-trained?transformer,chatgpt)模型為代表的生成式自然語言模型,更是引發了人們廣泛的關注。chatgpt模型等技術背后的核心原理是大規模語言模型,大規模語言模型通常以轉換器模型(transformer)為基本結構,涉及到了上百億到上千億規模的參數,而訓練如此大規模參數的模型,需要極大的計算資源,如1000余顆顯卡,訓練時間高到1-2個月。
2、為了降低模型開發成本,本領域的技術人員探索各種各樣高效的模型參數微調方案,即在已有的大模型基礎上,通過調節模型的部分參數,對模型進行微調訓練,使大模型適用到特定的下游任務。
3、相關技術中,通常使用重參數化技術對已訓練完成的模型的部分參數進行微調訓練。在大規模語言模型中,通常需要調整的參數為矩陣,重參數化技術即對待調整矩陣增加增量矩陣,在對模型進行微調訓練時,不對該待調整矩陣進行調整,而是只調整所增加的增量矩陣,進而達到高效微調的目的。
4、相關技術中,通常基于低秩適應(low-rank?adaptation,lora)確定為待調整矩陣所增加的增量矩陣,但是,在實踐中發現,由于基于lora確定的增量矩陣與待調整矩陣之間完全獨立,即在確定增量矩陣時沒有考慮待調整矩陣所蘊含的知識,導致微調訓練時間長、效果差。
技術實現思路
1、本申請實施例提供了一種模型微調訓練方法、裝置、設備及介質,用以解決現有技術中模型的微調訓練時間長、效果差的問題。
2、本申請提供了一種模型微調訓練方法,所述方法包括:
3、獲取微調模型中的待調整矩陣;
4、基于奇異值分解算法對所述待調整矩陣進行分解,得到多個分解矩陣;基于所述多個分解矩陣,確定目標數量;
5、基于所述目標數量和所述多個分解矩陣構建增量矩陣;將所述增量矩陣添加到所述微調模型中得到目標模型,對所述目標模型進行微調訓練。
6、進一步地,所述基于所述多個分解矩陣,確定目標數量包括:
7、基于所述多個分解矩陣,確定奇異值,將奇異值按照大小順序排序,確定最大奇異值與其相鄰的其他奇異值的第一和值大于預設閾值時的最小和值,包含的目標奇異值的目標數量。
8、進一步地,所述確定最大奇異值與其相鄰的其他奇異值的第一和值大于預設閾值時的最小和值,包含的目標奇異值的目標數量包括:
9、確定所述奇異值矩陣中包括的奇異值的目標和值;
10、在排序后的奇異值中,逐一確定最大奇異值與其相鄰的至少一個其他奇異值的第二和值;并依次判斷所述第二和值與所述目標和值的比值是否大于所述預設閾值;
11、當識別到與所述目標和值的比值大于所述預設閾值的第二和值時,將該第二和值作為目標和值,確定得到所述目標和值的奇異值,將確定的奇異值作為目標奇異值,將所述目標奇異值的數量確定為目標數量。
12、進一步地,所述預設閾值為大于0小于1的任意數值。
13、進一步地,所述基于所述目標數量和所述多個分解矩陣構建增量矩陣包括:
14、使用所述目標數量的奇異值構造對角矩陣;
15、在所述多個分解矩陣中的第一目標矩陣中,選取所述目標數量的行和/或列數據,得到第二目標矩陣;
16、使用所述對角矩陣和所述第二目標矩陣構建增量矩陣。
17、進一步地,所述在所述多個分解矩陣中的第一目標矩陣中,選取所述目標數量的行和/或列數據,得到第二目標矩陣包括:
18、獲取所述多個分解矩陣中的第一目標矩陣,其中,所述第一目標矩陣包括左奇異值向量矩陣和右奇異值向量矩陣;
19、在所述左奇異值向量矩陣中選取前所述目標數量的列數據,作為第一矩陣;并在所述右奇異值向量矩陣中選取前所述目標數量的行數據,作為第二矩陣;將所述第一矩陣和所述第二矩陣確定為所述第二目標矩陣。
20、進一步地,所述使用所述對角矩陣和所述第二目標矩陣構建增量矩陣包括:
21、將所述第一矩陣、所述對角矩陣和所述第二矩陣相乘得到的矩陣確定為所述增量矩陣。
22、本申請實施例還提供了一種模型微調訓練裝置,所述裝置包括:
23、獲取模塊,用于獲取微調模型中的待調整矩陣;
24、分解確定模塊,用于基于奇異值分解算法對所述待調整矩陣進行分解,得到多個分解矩陣;基于所述多個分解矩陣,確定目標數量;
25、構造模塊,用于基于所述目標數量和所述多個分解矩陣構建增量矩陣;
26、訓練模塊,用于將所述增量矩陣添加到所述微調模型中得到目標模型,對所述目標模型進行微調訓練。
27、本申請實施例還提供了一種電子設備,所述電子設備至少包括處理器和存儲器,所述處理器用于執行存儲器中存儲的計算機程序時實現如上述任一項所述模型微調訓練方法的步驟。
28、本申請實施例還提供了一種計算機可讀存儲介質,其存儲有計算機程序,所述計算機程序被處理器執行時實現如上述任一項所述模型微調訓練方法的步驟。
29、由于在本申請實施例中,在對模型進行微調訓練時,基于奇異值分解算法對微調模型中的待調整矩陣進行分解,得到了多個分解矩陣,基于該多個分解矩陣確定目標數量,并基于所確定的目標數量和該多個分解矩陣構建增量矩陣,該增量矩陣是基于待調整矩陣中所蘊含的知識構建的,而不是與待調整矩陣完全獨立的,將該增量矩陣添加到微調模型中得到目標模型,對目標模型進行微調訓練,避免了模型的微調訓練時間長、效果差的問題。
本文檔來自技高網...【技術保護點】
1.一種模型微調訓練方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述基于所述多個分解矩陣,確定目標數量包括:
3.根據權利要求2所述的方法,其特征在于,所述確定最大奇異值與其相鄰的其他奇異值的第一和值大于預設閾值時的最小和值,包含的目標奇異值的目標數量包括:
4.根據權利要求3所述的方法,其特征在于,所述預設閾值為大于0小于1的任意數值。
5.根據權利要求1所述的方法,其特征在于,所述基于所述目標數量和所述多個分解矩陣構建增量矩陣包括:
6.根據權利要求5所述的方法,其特征在于,所述在所述多個分解矩陣中的第一目標矩陣中,選取所述目標數量的行和/或列數據,得到第二目標矩陣包括:
7.根據權利要求6所述的方法,其特征在于,所述使用所述對角矩陣和所述第二目標矩陣構建增量矩陣包括:
8.一種模型微調訓練裝置,其特征在于,所述裝置包括:
9.一種電子設備,其特征在于,所述電子設備至少包括處理器和存儲器,所述處理器用于執行存儲器中存儲的計算機程序時實現如上述權利要求
10.一種計算機可讀存儲介質,其特征在于,其存儲有計算機程序,所述計算機程序被處理器執行時實現如上述權利要求1-7任一項所述的模型微調訓練方法的步驟。
...【技術特征摘要】
1.一種模型微調訓練方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述基于所述多個分解矩陣,確定目標數量包括:
3.根據權利要求2所述的方法,其特征在于,所述確定最大奇異值與其相鄰的其他奇異值的第一和值大于預設閾值時的最小和值,包含的目標奇異值的目標數量包括:
4.根據權利要求3所述的方法,其特征在于,所述預設閾值為大于0小于1的任意數值。
5.根據權利要求1所述的方法,其特征在于,所述基于所述目標數量和所述多個分解矩陣構建增量矩陣包括:
6.根據權利要求5所述的方法,其特征在于,所述在所述多個分解矩陣中...
【專利技術屬性】
技術研發人員:劉微,張建安,曲磊,
申請(專利權)人:海信集團控股股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。