91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

詳解TAO的配置文件與執(zhí)行流程

NVIDIA英偉達(dá)企業(yè)解決方案 ? 來(lái)源:NVIDIA英偉達(dá)企業(yè)解決方案 ? 作者:NVIDIA英偉達(dá)企業(yè)解 ? 2022-04-25 11:47 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

圖像分類(lèi) (image classification) 是視覺(jué)人工智能的最基礎(chǔ)應(yīng)用,目前 TAO 模型訓(xùn)練工具支持 resnet、vgg、mobilenet_v1、mobilenet_v2、googlenet、cspdarknet、darknet、efficientnet_b0、efficientnet_b1、cspdarknet_tiny 等 10 種神經(jīng)網(wǎng)絡(luò),其中 resnet、vgg、darknet、cspdarknet 還有不同結(jié)構(gòu)層數(shù)的區(qū)分。

在 TAO 啟動(dòng)器中只用 “classification” 這個(gè)任務(wù)指令,去面對(duì)上面所列出的十多種網(wǎng)絡(luò)結(jié)構(gòu),其關(guān)鍵處就是結(jié)合“配置文件”的協(xié)助,因此這個(gè)配置文件的設(shè)置組是 TAO 工具的核心所在,也是本文一開(kāi)始要花時(shí)間說(shuō)明的部分。

在 cv_samples 下面的 classification 項(xiàng)目,是 TAO 工具的圖像分類(lèi)模型訓(xùn)練的標(biāo)準(zhǔn)范例,里面提供 classification.ipynb 執(zhí)行腳本與 specs 目錄下兩個(gè) .cfg 配置文件,基本上在執(zhí)行腳本里只需要修改一些路徑的設(shè)定就行,其余細(xì)節(jié)都在配置文件里面進(jìn)行調(diào)整,包括所選擇的神經(jīng)網(wǎng)絡(luò)種類(lèi)與結(jié)構(gòu)。

這個(gè)項(xiàng)目以 PascalVOC 2012 數(shù)據(jù)集作為訓(xùn)練源,與 TAO 所支持的格式并不相同,因此在訓(xùn)練之前還需要進(jìn)行格式的轉(zhuǎn)換。還好這里的轉(zhuǎn)換比較簡(jiǎn)單,只要將圖像分別存放在以“類(lèi)別”所命名的目錄下就可以,同時(shí)分割成訓(xùn)練與校驗(yàn)兩個(gè)不同用途的數(shù)據(jù)集,在腳本里透過(guò)一段簡(jiǎn)單的 Python 代碼就能完成,并沒(méi)有什么難度。

最后在訓(xùn)練之前,可以選擇是否啟動(dòng) “遷移學(xué)習(xí)” 的功能?在這個(gè)實(shí)驗(yàn)中也會(huì)示范這中間所得到的精度差異,讓大家直接體驗(yàn)到遷移學(xué)習(xí)所帶來(lái)的的好處。

以下就將幾個(gè)執(zhí)行重點(diǎn)提出來(lái)說(shuō)明,協(xié)助大家可以輕松地執(zhí)行。

配置文件內(nèi)容

TAO 的 CLI 指令集只使用一個(gè) classification 去面對(duì)所有的圖形分類(lèi)應(yīng)用,其余的工作就全部交給配置文件去處理。在圖像分類(lèi)的配置文件里,主要有以下三個(gè)配置組:

1、model_config:存放神經(jīng)網(wǎng)絡(luò)種類(lèi)、結(jié)構(gòu)(層數(shù))與特性的內(nèi)容,以下列出比較重要的部分:

(1) arch:網(wǎng)絡(luò)名稱(chēng),可使用所有已支持的網(wǎng)絡(luò),包括 resnet、vgg、mobilenet_v1、mobilenet_v2、googlenet、cspdarknet、darknet、efficientnet_b0、efficientnet_b1、cspdarknet_tiny 等;

(2) n_layer:有些網(wǎng)絡(luò)有多種結(jié)構(gòu)層,例如 resnet有10/18/34/50/101、vgg 有16/19、darknet 有 19/53、cspdarknet 有 19/53 等;

其余參數(shù)都按照配置文件里面所設(shè)定的值,因?yàn)?NGC 提供的預(yù)訓(xùn)練模型是按照這些參數(shù)所訓(xùn)練的,能在遷移學(xué)習(xí)過(guò)程中得到比較好的效果。

2、train_config:執(zhí)行訓(xùn)練時(shí)所需要參考的

(1) train_dataset_path: 訓(xùn)練用數(shù)據(jù)集的位置,需要輸入在容器內(nèi)的完整路徑

(2) val_dataset_path: 校驗(yàn)用數(shù)據(jù)集的位置,需要輸入在容器內(nèi)的完整路徑

(3) pretrained_model_path: 預(yù)訓(xùn)練模型位置,需要輸入在容器內(nèi)的完整路徑

(4) batch_size_per_gpu:請(qǐng)根據(jù)GPU顯存大小進(jìn)行調(diào)整

(5) n_epochs:訓(xùn)練的回合數(shù)

(6) n_workersCPU的并行線(xiàn)程數(shù),請(qǐng)根據(jù)實(shí)際CPU核數(shù)量進(jìn)行調(diào)整

其余參數(shù)清先安裝范例所提供的設(shè)置。

3、eval_config:評(píng)估模型時(shí)所需要用到的參數(shù),需要輸入在容器內(nèi)的完整路徑

(1) eval_dataset_path: 測(cè)試用數(shù)據(jù)集路徑,與前面相同

(2) model_path: 在前面訓(xùn)練模型過(guò)程中所生成的 .tlt 模型文件中,挑選效果最好的一個(gè)模型來(lái)進(jìn)行評(píng)估,通常最后一個(gè)的效果會(huì)最好。這里的 “resnet_080.tlt” 是因?yàn)橛?xùn)練回合數(shù)為 80。

其余參數(shù)請(qǐng)先按照范例所提供的設(shè)置。

以上關(guān)于路徑部分的設(shè)置,只要遵循腳本一開(kāi)始 “0. Set up env variables and map drives” 的配置規(guī)則,文件里基本上不需要做修改。其他參數(shù)的定義與設(shè)定值,請(qǐng)?jiān)L問(wèn) https://docs.nvidia.com/tao/tao-toolkit/text/image_classification.html#model-config 有完整的說(shuō)明。

數(shù)據(jù)集格式轉(zhuǎn)換與分配

TAO 支持的圖像分類(lèi)數(shù)據(jù)格式,是以“分類(lèi)名”作為路徑名,將所有該類(lèi)的圖像都放置到分類(lèi)名目錄之下,例如有 20 個(gè)分類(lèi)的數(shù)據(jù)集,就會(huì)有 20 個(gè)分類(lèi)目錄。

本實(shí)驗(yàn)使用 PascalVOC 的 VOCtrainval_11-May-2012.tar (1.9GB) 數(shù)據(jù)集,可以用腳本提供的鏈接,也可以在https://pan.baidu.com/s/1JhnBCRi32xblhSSWFmF5aA (密碼: gg95) 下載壓縮文件。

請(qǐng)按照腳本的數(shù)據(jù)集處理過(guò)程,包括放置路徑與解壓縮的指令。由于這個(gè)數(shù)據(jù)集的格式并不符合 TAO 的要求,因此腳本中使用一段 Python 代碼來(lái)進(jìn)行轉(zhuǎn)換,詳細(xì)內(nèi)容請(qǐng)自行閱讀代碼,其主要功能就是將下圖左邊 VOC 路徑結(jié)構(gòu)轉(zhuǎn)換成右邊符合 TAO 要求的結(jié)構(gòu),存放在 “formated” 目錄下。

接著再將 “formated” 的數(shù)據(jù),隨機(jī)分割成 train、val與test 三大類(lèi)存放到 “split” 目錄下,作為后面執(zhí)行訓(xùn)練、校驗(yàn)與測(cè)試時(shí)所需要的數(shù)據(jù)路徑。

動(dòng)遷移學(xué)習(xí)功能

TAO 的模型訓(xùn)練繼承 TLT 的遷移學(xué)習(xí)功能,只要在配置文件中的“train_config” 配置組里,指定好 “pretrained_model_path:” 的路徑就可以,如果不想啟用這個(gè)功能,只要在這個(gè)參數(shù)前面用 “#” 去關(guān)閉就行。

在 NGC 提供 300 多個(gè)預(yù)訓(xùn)練模型,我們需要挑選合適的模型來(lái)協(xié)助執(zhí)行遷移學(xué)習(xí),這部分的下載需要使用 NGC 的指令來(lái)操作,在腳本中已經(jīng)提供完整的安裝步驟,只要執(zhí)行命令塊就行,然后用以下指令去下載所選的模型:

ngc registry model download-version 模型全名 --dest 本地存放路徑

這里配合所使用的網(wǎng)絡(luò)種類(lèi),挑選 nvidia/tao/pretrained_classification:resnet18 作為本次的預(yù)訓(xùn)練模型,文件大小在 80MB 左右。

下圖左方是這個(gè)實(shí)驗(yàn)中,關(guān)閉遷移學(xué)習(xí)功能所訓(xùn)練出來(lái)的模型,經(jīng)過(guò)下面評(píng)估步驟所測(cè)算出來(lái)的結(jié)果,下圖右方則是在基于 NGC 下載的預(yù)訓(xùn)練模型基礎(chǔ)上,利用遷移學(xué)習(xí)功能所訓(xùn)練出來(lái)的模型效果,總體來(lái)說(shuō)得到的精準(zhǔn)度提升還是很明顯的。

但如果是缺乏合適預(yù)訓(xùn)練模型的狀況下,也不能硬是挑選不合適的模型來(lái)做遷移學(xué)習(xí),可能得到的效果會(huì)更差。

執(zhí)行模型訓(xùn)練

當(dāng)前面的準(zhǔn)備工作都做到位之后,這個(gè)步驟就是水到渠成。執(zhí)行訓(xùn)練所耗費(fèi)的時(shí)間就只跟 GPU 卡的總體計(jì)算資源有關(guān)系,如果您的設(shè)備有一張以上 GPU 計(jì)算卡的話(huà),可以透過(guò) TAO 指令以下參數(shù),去調(diào)整可用的計(jì)算資源:

--gpus [N]:指定要調(diào)用的 GPU 卡數(shù)量;

--gpu_index 編號(hào)1 [編號(hào)2...]

例如設(shè)備上有 2 片 GPU 卡時(shí),想要全部用上的話(huà)就直接用 “--gpus 2” 參數(shù)進(jìn)行調(diào)用;如果設(shè)備上有 4 片 GPU 計(jì)算卡,想要指定調(diào)用 0 號(hào)與 3 號(hào)這兩張卡的時(shí),就用 “--gpus 2--gpu_index 0 3” 參數(shù),就能精準(zhǔn)調(diào)用指定的GPU來(lái)進(jìn)行訓(xùn)練。

在這個(gè)圖像分類(lèi)實(shí)驗(yàn)中,我們以 NVIDIA RTX2070 與 RTX3070 進(jìn)行測(cè)試,這兩張計(jì)算卡都具有 8GB 顯存。在固定回合數(shù)為 80、batch_size_per_gpu 為 64 的條件下,所耗費(fèi)的訓(xùn)練時(shí)間如下:

單GPU/3070-8G : 52分19秒

單GPU/2070-8G : 62分44秒

雙GPU/3070+2070 : 38分03秒

修剪模型

這個(gè)步驟的目的,是要在維持足夠精準(zhǔn)度的前提下縮小模型的尺寸,越小的模型會(huì)消耗更少的計(jì)算資源,特別是內(nèi)存與顯存。

這對(duì)于計(jì)算資源充沛的計(jì)算設(shè)備來(lái)說(shuō),所體現(xiàn)的差異并不明顯,但是對(duì)于計(jì)算資源相對(duì)吃緊的邊緣設(shè)備來(lái)說(shuō),就有非常大的影響,甚至影響推理識(shí)別的性能,因此請(qǐng)自行決定是否需要執(zhí)行這個(gè)步驟。

這里的要剪裁的對(duì)象是已訓(xùn)練好的模型,而不是從網(wǎng)絡(luò)結(jié)構(gòu)層進(jìn)行融合處理,最簡(jiǎn)單的方法就是調(diào)整 “-pth(閾值)” ,在精確度與模型大小之間取得平衡,調(diào)整的值越高就會(huì)得到越小的模型,但精準(zhǔn)度會(huì)受到比較大的損失,這就需要經(jīng)過(guò)不斷嘗試去調(diào)節(jié)出滿(mǎn)足要求的模型。

以這個(gè) classification 項(xiàng)目為例,在 80 回合中訓(xùn)練的模型大小為 87.7MB,通常最后一回合訓(xùn)練的模型精確度會(huì)最好,因此用 resnet_080.tlt 模型進(jìn)行修剪測(cè)試:

-pth=0.6:修剪后生成大小為38.5MB的resnet18_nopool_bn_pruned.tlt

-pth=0.3:修剪后生成大小為44.2MB的resnet18_nopool_bn_pruned.tlt

至于修剪后模型對(duì)精確度產(chǎn)生怎樣的影響?就需繼續(xù)往下執(zhí)行“再訓(xùn)練”之后,看看評(píng)估的效果如何!

模型再訓(xùn)練

經(jīng)過(guò)修剪的模型并不能立即使用,而是作為“再訓(xùn)練”的預(yù)訓(xùn)練模型,再次利用遷移學(xué)習(xí)的技巧,以前面的數(shù)據(jù)集進(jìn)行模型再訓(xùn)練的工作,唯一不一樣的地方是這次使用的配置文件為 classification_retrain_spec.cfg,這個(gè)配置內(nèi)容與前面的 classification_spec.cfg 只有三個(gè)差異的地方:

1. 在 model_config 設(shè)置組少了兩個(gè) “freeze_blocks” 設(shè)置;

2. 在 train_config 設(shè)置組的 “pretrained_model_path” 換成前面修剪過(guò)的模型;

3. 在 eval_config 設(shè)置組的 “model_path” 換成修剪后重新訓(xùn)練的模型

繼續(xù)往下執(zhí)行 “7. Retrain pruned models” 與 “8. Testing the model” 兩個(gè)步驟,就能得到修剪過(guò)模型的精確度評(píng)估結(jié)果。

從上面的比較表中可以看出,這個(gè)剪裁的方式對(duì)模型文件大小的影響是很明顯的,但精確度的損失并不是太大,所以這個(gè)剪裁應(yīng)視為有效果。

本實(shí)驗(yàn)結(jié)語(yǔ)

這個(gè)范例主要讓大家體會(huì)并熟悉 TAO 的配置文件與執(zhí)行流程,事實(shí)上 TAO 所提供的范例幾乎都是一樣的流程,后面還有導(dǎo)出模型、INT8 優(yōu)化、生成 TensorRT 引擎的步驟,我們結(jié)合在后面的物件檢測(cè)范例中進(jìn)行說(shuō)明。

原文標(biāo)題:NVIDIA Jetson Nano 2GB 系列文章(60):圖像分類(lèi)的模型訓(xùn)練與修剪

文章出處:【微信公眾號(hào):NVIDIA英偉達(dá)企業(yè)解決方案】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

審核編輯:湯梓紅


聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • NVIDIA
    +關(guān)注

    關(guān)注

    14

    文章

    5598

    瀏覽量

    109803
  • TAO
    TAO
    +關(guān)注

    關(guān)注

    0

    文章

    10

    瀏覽量

    7156
  • 模型訓(xùn)練
    +關(guān)注

    關(guān)注

    0

    文章

    21

    瀏覽量

    1546

原文標(biāo)題:NVIDIA Jetson Nano 2GB 系列文章(60):圖像分類(lèi)的模型訓(xùn)練與修剪

文章出處:【微信號(hào):NVIDIA-Enterprise,微信公眾號(hào):NVIDIA英偉達(dá)企業(yè)解決方案】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    編寫(xiě)一個(gè)生產(chǎn)級(jí)的Service配置文件

    systemctl start xxx 敲了無(wú)數(shù)遍,但真要從零寫(xiě)一個(gè) Service 文件丟到生產(chǎn)環(huán)境跑,很多人就開(kāi)始心虛了。網(wǎng)上抄一段配置,Type=simple 還是 forking 搞不清楚
    的頭像 發(fā)表于 02-25 14:24 ?193次閱讀

    以“網(wǎng)關(guān)中間件”實(shí)現(xiàn)充電樁OCPP 1.6安全配置文件無(wú)縫升級(jí)

    深圳惠志科技有限公司推出的OCPP安全代理網(wǎng)關(guān)采用"網(wǎng)關(guān)中間件"架構(gòu),在充電樁與云端CSMS之間透明地部署,實(shí)現(xiàn)充電樁OCPP 1.6協(xié)議安全配置文件從Profile 0/1到Profile 2/3的無(wú)縫升級(jí),而無(wú)需觸及樁端硬件與固件。
    的頭像 發(fā)表于 02-04 11:56 ?843次閱讀
    以“網(wǎng)關(guān)中間件”實(shí)現(xiàn)充電樁OCPP 1.6安全<b class='flag-5'>配置文件</b>無(wú)縫升級(jí)

    初識(shí)ros2 功能包建立與可執(zhí)行文件配置

    本文介紹了ROS2程序的兩種啟動(dòng)方式:直接運(yùn)行可執(zhí)行文件(ros2 run)和使用啟動(dòng)文件(ros2 launch)。重點(diǎn)講解了Python軟件包的結(jié)構(gòu),包括package.xml、setup.py
    的頭像 發(fā)表于 01-22 13:41 ?249次閱讀

    配置文件損壞可能會(huì)帶來(lái)哪些安全風(fēng)險(xiǎn)?

    配置文件損壞不僅會(huì)導(dǎo)致電能質(zhì)量在線(xiàn)監(jiān)測(cè)裝置功能異常,還可能引發(fā) 數(shù)據(jù)安全、運(yùn)維安全、設(shè)備安全、合規(guī)安全 四大類(lèi)安全風(fēng)險(xiǎn),尤其在電力系統(tǒng)、工業(yè)配電等關(guān)鍵場(chǎng)景中,風(fēng)險(xiǎn)可能傳導(dǎo)至電網(wǎng)或生產(chǎn)系統(tǒng),造成
    的頭像 發(fā)表于 12-10 16:37 ?438次閱讀
    <b class='flag-5'>配置文件</b>損壞可能會(huì)帶來(lái)哪些安全風(fēng)險(xiǎn)?

    求助各位大佬,關(guān)于如何讀寫(xiě)編碼格式為UTF-16LE的配置文件?

    如題,小白求助各位大佬,要怎么實(shí)現(xiàn)對(duì)編碼為UTF-16LE的配置文件的讀寫(xiě)。 使用讀配置文件的vi讀不出內(nèi)容。 使用讀文本的方式寫(xiě)入異常,文件的編碼變成UTF-8且內(nèi)容也不對(duì)。
    發(fā)表于 09-14 12:54

    是否有可能使用CYSPP配置文件連接到外圍設(shè)備?

    我們的現(xiàn)有系統(tǒng)使用中央和外圍設(shè)備,使用基于 Microchip RN4020 的中央和外圍設(shè)備。 由于供應(yīng)限制的原因,我們希望將英飛凌 CYBT-483056 SoC 用于 BLE central。 我們想知道是否有可能使用CYSPP配置文件連接到外圍設(shè)備? 或任何其他請(qǐng)求響應(yīng)通信方法。
    發(fā)表于 07-07 06:17

    CYW20721 是否支持 HFP、HSP 和 A2DP 配置文件?

    我打算使用 CYW20721,以替換我們產(chǎn)品中已經(jīng)過(guò)時(shí)的藍(lán)牙模塊. 我很想知道 CYW20721 是否支持 HFP、HSP 和 A2DP 配置文件?
    發(fā)表于 07-04 07:28

    哪些芯片支持藍(lán)牙經(jīng)典 A2DP 配置文件和 LE 音頻?

    哪些芯片支持藍(lán)牙經(jīng)典 A2DP 配置文件和 LE 音頻?
    發(fā)表于 07-01 06:41

    CYW920820M2EVB-01開(kāi)發(fā)套件可以與藍(lán)牙的免提配置文件一起使用嗎?

    我有英飛凌 CYW920820M2EVB-01 開(kāi)發(fā)套件,我想將它與藍(lán)牙的免提配置文件一起使用。 是否可以。 該套件是否支持該配置文件? 我無(wú)法在任何地方找到該套件支持的配置文件。 如果是,那么我可以得到一些關(guān)于如何
    發(fā)表于 06-30 06:15

    如何才能知道英飛凌Bluetooth?產(chǎn)品支持哪種Bluetooth?配置文件和版本?

    如何才能知道英飛凌Bluetooth?產(chǎn)品支持哪種Bluetooth?配置文件和版本? A2DP、AVRCP、HSP、HFP 等 是否有一個(gè)網(wǎng)頁(yè)或文檔解釋每個(gè)設(shè)備支持哪些配置文件和版本? 目前我想了解以下設(shè)備特別支持的配置文件
    發(fā)表于 06-27 06:04

    配置文件的差異介紹

    配置文件的差異 FA模型應(yīng)用在config.json文件中描述應(yīng)用的基本信息,一個(gè)應(yīng)用工程中可以創(chuàng)建多個(gè)Module,每個(gè)Module中都有一份config.json文件。config.json由
    發(fā)表于 06-05 06:50

    為什么在SDK 1.3.5中創(chuàng)建的配置文件是在SDK 1.3.4中創(chuàng)建的 打不開(kāi)?

    為什么在 SDK 1.3.5 中創(chuàng)建的配置文件是在 SDK 1.3.4 中創(chuàng)建的 打不開(kāi)?
    發(fā)表于 05-13 07:22

    ESI文件詳解:讓EtherCAT網(wǎng)絡(luò)配置更智能!

    EtherCAT從站信息(ESI)文件是一種標(biāo)準(zhǔn)化的XML格式文檔,專(zhuān)門(mén)用于描述EtherCAT從站的特性和配置。它提供了所有必要的詳細(xì)信息使EtherCAT主站能夠正確識(shí)別、配置,并與特定的從站
    的頭像 發(fā)表于 05-09 17:39 ?2479次閱讀
    ESI<b class='flag-5'>文件</b><b class='flag-5'>詳解</b>:讓EtherCAT網(wǎng)絡(luò)<b class='flag-5'>配置</b>更智能!

    CPU的各種指令和執(zhí)行流程

    、數(shù)據(jù)傳輸?shù)裙δ?。要深入理解CPU的指令,我們需要從多個(gè)維度進(jìn)行分析,尤其是指令的構(gòu)成、分類(lèi)、執(zhí)行流程以及與不同架構(gòu)的關(guān)系。
    的頭像 發(fā)表于 04-18 11:24 ?2651次閱讀

    Profibus DP主站轉(zhuǎn)Modbus TCP網(wǎng)關(guān)配置文件制作

    Profibus DP主站轉(zhuǎn)Modbus TCP網(wǎng)關(guān)配置文件制作
    的頭像 發(fā)表于 04-02 13:06 ?775次閱讀
    Profibus DP主站轉(zhuǎn)Modbus TCP網(wǎng)關(guān)<b class='flag-5'>配置文件</b>制作