本公開的示例實施例涉及一種支持機器學習的存儲器件、包括存儲器件的存儲器系統、以及操作存儲器系統的方法。
背景技術:
1、在學習訓練中,混合精度訓練可以用作優化技術。這個技術可以通過組合32位浮點(float32)計算和16位浮點(float16)計算來提高硬件加速器上的訓練性能。混合精度訓練的目標可以是提高學習速度、減少存儲器用量以及保持經過學習的模型的性能。
技術實現思路
1、本公開的一個或更多個實施例提供了一種用于支持機器學習的存儲器件、包括存儲器件的存儲器系統、以及操作存儲器系統的方法,所述存儲器件可以提高性能同時減少存儲器用量。
2、根據本公開的示例實施例,一種用于支持機器學習的存儲器件包括:第一單元陣列,所述第一單元陣列被配置為以第一精度或第二精度存儲權重數據;第二單元陣列,所述第二單元陣列被配置為以所述第一精度存儲損失數據(loss?data);第三單元陣列,所述第三單元陣列被配置為以所述第一精度存儲梯度數據;計算電路,所述計算電路被配置為當執行混合精度訓練時,執行與縮放因子對應的乘法運算、除法運算或取整運算中的至少一者;以及縮放電路,所述縮放電路被配置為輸出所述縮放因子。
3、根據本公開的示例實施例,一種存儲器系統包括:存儲器件,所述存儲器件被配置為支持機器學習;以及至少一個處理器,所述至少一個處理器被配置為控制所述存儲器件,其中所述存儲器件包括:第一單元陣列,所述第一單元陣列被配置為以第一精度或第二精度存儲權重數據;第二單元陣列,所述第二單元陣列被配置為以所述第一精度存儲損失數據;第三單元陣列,所述第三單元陣列被配置為以所述第一精度存儲梯度數據;計算電路,所述計算電路被配置為當執行混合精度訓練時,執行與縮放因子對應的乘法運算、除法運算或取整運算中的至少一者;以及縮放電路,所述縮放電路被配置為輸出所述縮放因子。
4、根據本公開的示例實施例,一種操作包括存儲器件和處理器的存儲器系統的方法包括:當執行混合精度訓練時,在所述存儲器件中執行權重數據和梯度數據之間的帶縮放的加法運算;更新所述權重數據;以及使用取整邏輯改變更新后的所述權重數據的精度。
5、根據本公開的示例實施例,一種存儲器系統包括:至少一個存儲器件,所述至少一個存儲器件被配置為支持機器學習;輔助存儲器模塊,所述輔助存儲器模塊被配置為當執行混合精度訓練時,執行與縮放因子對應的乘法運算、除法運算或取整運算中的至少一者;以及處理器,所述處理器被配置為控制所述至少一個存儲器件和所述輔助存儲器模塊,其中所述至少一個存儲器件包括:第一單元陣列,所述第一單元陣列被配置為存儲具有第一精度或第二精度的權重數據;第二單元陣列,所述第二單元陣列被配置為存儲具有所述第一精度的損失數據;以及第三單元陣列,所述第三單元陣列被配置為存儲具有所述第一精度的梯度數據。
1.一種用于支持機器學習的存儲器件,所述存儲器件包括:
2.根據權利要求1所述的存儲器件,
3.根據權利要求1所述的存儲器件,
4.根據權利要求1所述的存儲器件,其中,所述計算電路還被配置為基于所述縮放因子將數據精度從所述第二精度轉換為所述第一精度。
5.根據權利要求1所述的存儲器件,
6.根據權利要求5所述的存儲器件,其中,所述計算電路還被配置為基于所述縮放因子將所述8位指數位變為所述5位指數位,并將所述23位尾數位變為所述10位尾數位。
7.根據權利要求1所述的存儲器件,其中,在基于所述縮放因子執行所述乘法運算之后,所述損失數據被輸入到所述第二單元陣列或從所述第二單元陣列輸出。
8.根據權利要求1所述的存儲器件,其中,在基于所述縮放因子執行所述除法運算之后,所述梯度數據被輸入到包括所述第一單元陣列、所述第二單元陣列和所述第三單元陣列的存儲器或從所述存儲器輸出。
9.根據權利要求1所述的存儲器件,所述存儲器件還包括縮放電路,所述縮放電路被配置為輸出所述縮放因子,并在所述混合精度訓練中發生數據上溢時減小所述縮放因子。
10.根據權利要求1所述的存儲器件,其中,所述第一單元陣列、所述第二單元陣列和所述第三單元陣列基于機器學習中使用的數據的類別被物理地或邏輯地劃分。
11.一種存儲器系統,所述存儲器系統包括:
12.根據權利要求11所述的存儲器系統,其中,所述至少一個處理器還被配置為從所述存儲器件接收關于劃分所述第一單元陣列、所述第二單元陣列和所述第三單元陣列的結果的通知信息。
13.根據權利要求11所述的存儲器系統,其中,所述存儲器件還被配置為基于輸入數據的數據類別將所述輸入數據存儲在所述第一單元陣列、所述第二單元陣列和所述第三單元陣列中的一者中。
14.根據權利要求11所述的存儲器系統,其中,所述存儲器件被配置為通過所述計算電路基于所述存儲器件的輸出數據的數據類別向所述至少一個處理器發送所述輸出數據。
15.根據權利要求11所述的存儲器系統,其中,所述存儲器件還被配置為在所述混合精度訓練期間更新所述權重數據。
16.一種操作包括存儲器件和處理器的存儲器系統的方法,所述方法包括:
17.根據權利要求16所述的方法,所述方法還包括:
18.根據權利要求16所述的方法,所述方法還包括:
19.根據權利要求16所述的方法,所述方法還包括:
20.根據權利要求16所述的方法,所述方法還包括: