在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

物件檢測進行模型訓練的詳細步驟

NVIDIA英偉達企業解決方案 ? 來源:NVIDIA英偉達企業解決方案 ? 作者:NVIDIA英偉達企業解 ? 2022-05-13 10:57 ? 次閱讀

當前面的準備工作都已妥善之后,就可以進入模型訓練的步驟,后面的工作就是計算設備的事情了。

4、 執行 TAO 模型訓練:

TAO 工具提供提供 QAT (Quantize Aware Training) 量化感知的訓練模式,不過目前 QAT 效果還在驗證當中,倒也不急于使用,因此我們還是以標準模式來訓練,就是將配置文件中 training_config 設置組的 “enable_qat” 參數設為 “false” 就行,然后直接執行指令塊的命令,TAO 就會啟動視覺類容器來執行模型訓練任務。

這里提供兩組執行訓練所花費的時間參考數據:

  • NVIDIA Qudra RTX A4000/16GB 顯存:48 秒/回合

  • NVIDIA RTX-2070/16GB 顯存:67 秒/回合

  • 兩張卡一起訓練:40秒/回合

為了更有效率地執行,我們可以在training_config設置組里添加 “checkpoint_interval: 10” 參數,這樣每 10 回合生成一個中間文件,這樣能節省大約 7GB 的空間。現在檢查一下所生成的中間模型文件,如下圖所示總共 8 個。

e7b9fa68-d055-11ec-bce3-dac502259ad0.png

接下去我們看看這 8 個模型的訓練效果如何,因為得挑一個精確度 (mAP) 最好的文件,進行后面的修剪任務。

通常越后面的模型 mAP 值越高,但這不是絕對的,最好是有明確的數據來做依據,才是比較科學的態度。在 experiment_dir_unpruned/ssd_training_log_resnet18.csv 提供這些記錄,右鍵點擊文件 -> Open With-> CSVTable 之后,就會看到如下圖的內容。

e7f135aa-d055-11ec-bce3-dac502259ad0.png

表中可以看到,越下面模型的 mAP 值越高,這樣就能明確的選擇 “epoch_080” 的模型來進行后續工作,記得在 “%set_env EPOCH=” 后面填入參數值,例如要選擇第 80 回合的模型文件,就輸入 “080”,然后繼續往下進行。

5、評估模型好的訓練:

這個步驟的目的是為了確認模型是否符合要求?有時候可能效果最好的模型,效果還未達到預期目標,如果是這樣的話,就得回到第 4 步驟,以前面找到效果最好的模型,作為遷移選項的預訓練模型,就是將配置文件的 training_config 設置組的 “pretrain_model_path” 改成 ssd_resnet18_epoch_080.tlt 的完整路徑,然后再做 80 回合的訓練。

執行評估效果的結構在本指令塊輸出的最下方,如下圖所示。

e82abc8a-d055-11ec-bce3-dac502259ad0.png

比對一下這里顯示的精準度,與前面 ssd_training_log_resnet18.csv 記錄的結果是相同的,其實這個步驟是有點冗余,可以忽略!

6、修剪模型:

如果您的模型要放在計算資源充沛的設備上執行推理的話,其實后面的步驟是可以省略的,因此修剪模型的目的,是要在精確度維持水平的基礎上將模型進行優化,這對 Jetson 這類計算資源吃緊的邊緣設備來說就非常重要,因為這對推理性能有很大的影響,因此要看您所需要執行推理的設備是什么,再決定是否要進行修剪。

每個神經網絡都有各自的修剪重點,必須找到對應的說明文件,例如這里對ssd進行修剪,請訪問https://docs.nvidia.com/tao/tao-toolkit/text/object_detection/ssd.html,在里面的 “Pruning the Model” 有非常詳細的參數說明。

TAO 提供以下 6 種模型修剪的方式,設定值的粗體字為預設值

  • 標準化器 (normalizer):使用參數 -n,設定值為 “max/L2”;

  • 均衡器 (equalization_criterion):使用參數 -eq,設定值為 “union/ intersection/ arithmetic_mean/geometric_mean”;

  • 修剪粒度 (pruning_granularity):使用參數 -pq,設定值為正整數,預設值為 8

  • 修剪閾值 (pruning threshold):使用參數 -pth,設定值為小于 1 的浮點數,預設值為 0.1

  • 最小數量過濾器 (min_num_filters):使用參數 -nf,設定值為正整數,預設值為 16

  • 排除層 (excluded_layers):使用參數 -el,設定值為正整數,預設值為空值(不排除)

在大家還不熟悉這些參數用法時,最簡單的方法就是調整閾值 (-pth) 的大小去找到平衡點,通常這個值越高就會損失較大的精度值,模型也會比較更小大。參數預設值為 0.1,差不多達0.3 已經是極限,再大可能就會讓精準度低于一般要求。

這個步驟會用到 ssd_train_resnet18_kitti.txt 配置文件,修剪完的模型會存放在 -o參數所指定的目錄,這里是“$USER_EXPERIMENT_DIR/experiment_dir_pruned”,輸出的模型文件名為 “ssd_resnet18_pruned.tlt”,后面的“重新訓練剪裁模型”步驟,就會以這個文件作為遷移學習的訓練基礎。

這個修剪過的模型文件還不能作為部署用途,還得經過下個步驟去重新訓練之后,是我們最終所需要的版本。

7、重新訓練修剪過的模型:

這個步驟與前面的模型訓練幾乎是一樣的,唯一不同的地方就是前面以 NCG 下載resnet_18.hdf5 為基礎導入遷移學習的功能,這里是以 ssd_resnet18_pruned.tlt 這個修剪過的文件為基礎,同樣用最前面的數據集進行訓練。

以這個項目為例,未剪裁模型的大小為 101.7MB,用閾值為 0.1 所剪裁的重新訓練模型大小只剩 22.5MB、閾值為 0.3 所剪裁的模型大小只剩 9.8MB。重新訓練后同樣會生成很多模型文件,同樣查看 experiment_dir_retrain 目錄下面的 ssd_training_log_resnet18.csv,挑出精度最好的一個準備下個評估環節。

8、評價重新訓練的模型:

與前面的評估方式一樣,找到效果最好的一個,然后將數值填入 “%set_envEPOCH=” 里,準備在訓練設備上測試一下推理的效果。

如果修剪后重新訓練的模型精度與未修剪的相差不多,這個模型就可以用來作為后面的推理測試,如果精度差距較大,就得回到第 6 步驟重新執行修剪工作與第 7 步驟重新訓練,一直到獲得滿意精度的模型為止。

原文標題:NVIDIA Jetson Nano 2GB 系列文章(62):物件檢測的模型訓練與優化-2

文章出處:【微信公眾號:NVIDIA英偉達企業解決方案】歡迎添加關注!文章轉載請注明出處。

審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • NVIDIA
    +關注

    關注

    14

    文章

    4986

    瀏覽量

    103067
  • TAO
    TAO
    +關注

    關注

    0

    文章

    10

    瀏覽量

    6995
  • 模型訓練
    +關注

    關注

    0

    文章

    18

    瀏覽量

    1341

原文標題:NVIDIA Jetson Nano 2GB 系列文章(62):物件檢測的模型訓練與優化-2

文章出處:【微信號:NVIDIA-Enterprise,微信公眾號:NVIDIA英偉達企業解決方案】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    AI模型部署邊緣設備的奇妙之旅:目標檢測模型

    并非易事,它涉及到從選擇合適的算法架構到針對特定硬件平臺進行優化等一系列復雜的工作。 接下來,我們將詳細介紹如何在資源受限的邊緣設備上成功部署目標檢測模型,探索其背后的原理和技術,并討
    發表于 12-19 14:33

    AI大語言模型開發步驟

    開發一個高效、準確的大語言模型是一個復雜且多階段的過程,涉及數據收集與預處理、模型架構設計、訓練與優化、評估與調試等多個環節。接下來,AI部落小編為大家詳細闡述AI大語言
    的頭像 發表于 12-19 11:29 ?94次閱讀

    如何訓練自己的LLM模型

    訓練自己的大型語言模型(LLM)是一個復雜且資源密集的過程,涉及到大量的數據、計算資源和專業知識。以下是訓練LLM模型的一般步驟,以及一些關
    的頭像 發表于 11-08 09:30 ?549次閱讀

    如何訓練自己的AI大模型

    訓練自己的AI大模型是一個復雜且耗時的過程,涉及多個關鍵步驟。以下是一個詳細訓練流程: 一、明確需求和目標 首先,需要明確自己的需求和目標
    的頭像 發表于 10-23 15:07 ?1503次閱讀

    如何訓練ai大模型

    訓練AI大模型是一個復雜且耗時的過程,涉及多個關鍵步驟和細致的考量。 一、數據準備 1. 數據收集 確定數據類型 :根據模型的應用場景,確定需要收集的數據類型,如文本、圖像、音頻等。
    的頭像 發表于 10-17 18:17 ?945次閱讀

    AI訓練的基本步驟

    AI(人工智能)訓練是一個復雜且系統的過程,它涵蓋了從數據收集到模型部署的多個關鍵步驟。以下是對AI訓練過程的詳細闡述,包括每個
    的頭像 發表于 07-17 16:57 ?2048次閱讀

    使用TensorFlow進行神經網絡模型更新

    使用TensorFlow進行神經網絡模型的更新是一個涉及多個步驟的過程,包括模型定義、訓練、評估以及根據新數據或需求
    的頭像 發表于 07-12 11:51 ?424次閱讀

    如何使用經過訓練的神經網絡模型

    使用經過訓練的神經網絡模型是一個涉及多個步驟的過程,包括數據準備、模型加載、預測執行以及后續優化等。
    的頭像 發表于 07-12 11:43 ?985次閱讀

    大語言模型的預訓練

    能力,逐漸成為NLP領域的研究熱點。大語言模型的預訓練是這一技術發展的關鍵步驟,它通過在海量無標簽數據上進行訓練,使
    的頭像 發表于 07-11 10:11 ?435次閱讀

    如何在TensorFlow中構建并訓練CNN模型

    在TensorFlow中構建并訓練一個卷積神經網絡(CNN)模型是一個涉及多個步驟的過程,包括數據預處理、模型設計、編譯、訓練以及評估。下面
    的頭像 發表于 07-04 11:47 ?936次閱讀

    人臉識別模型訓練流程

    人臉識別模型訓練流程是計算機視覺領域中的一項重要技術。本文將詳細介紹人臉識別模型訓練流程,包括數據準備、
    的頭像 發表于 07-04 09:19 ?971次閱讀

    訓練模型的基本原理和應用

    訓練好的模型,這些模型通常在某些通用任務上表現出色,并且可以作為后續特定任務的起點,通過遷移學習或微調(Fine-tuning)等方式進行適應和優化。以下是對預
    的頭像 發表于 07-03 18:20 ?2837次閱讀

    解讀PyTorch模型訓練過程

    PyTorch作為一個開源的機器學習庫,以其動態計算圖、易于使用的API和強大的靈活性,在深度學習領域得到了廣泛的應用。本文將深入解讀PyTorch模型訓練的全過程,包括數據準備、模型構建、
    的頭像 發表于 07-03 16:07 ?1072次閱讀

    深度學習模型訓練過程詳解

    詳細介紹深度學習模型訓練的全過程,包括數據預處理、模型構建、損失函數定義、優化算法選擇、訓練過程以及模型
    的頭像 發表于 07-01 16:13 ?1275次閱讀

    【大語言模型:原理與工程實踐】大語言模型的預訓練

    數據格式的轉換、數據字段的匹配和整合等。通過數據級凈化,可以進一步提高數據的質量和可用性,為后續的數據分析和建模提供更有價值的數據支持。 在得到了大語言模型的數據之后,就是對其進行訓練。大圓
    發表于 05-07 17:10
    主站蜘蛛池模板: 色女人网| 国产片一区二区三区| 天堂网a| 可以直接看的黄址| 天天干天天干天天干| 末满18以下勿进色禁网站| 永久黄网站色视频免费观看99| 性做久久久久久久| 三级黄色网址| 午夜视频免费国产在线| 久久久久久久久久久观看| 欧美精品人爱a欧美精品| 欧美网站在线播放| 天天射天天射| 热久久久| 美日韩一级| 97色在线视频观看香蕉| 完全免费在线视频| 天堂资源吧| 夜夜爽爽爽| 久久福利国产| 伊人久久综合成人亚洲| 黄色aa毛片| 91精品日本久久久久久牛牛| 亚洲第一成人影院| 91精品国产免费久久久久久青草| 欧美一级视频在线高清观看| 九九久久久久午夜精选| 精品三级三级三级三级三级| 国产美女久久久| 黄网站视频观看免费| 三级毛片网站| 天天操免费视频| 在线天堂中文www官网| 国产福利在线观看你懂的| 久久久福利| 性欧美video视频另类| 777成了人乱视频| 日本不卡视频一区二区| 黄 色 毛片免费| 欧美a级网站|