chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

如何進(jìn)行tflite模型量化

恩智浦MCU加油站 ? 來(lái)源:恩智浦MCU加油站 ? 2025-08-13 11:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

開(kāi)發(fā)AI應(yīng)用分享來(lái)到了本系列最后一期分享。

在windows上,如果我們按照上一期的方式安裝了tflite2pb,是不能直接運(yùn)行的。因?yàn)槊钚泄ぞ呤菫?a target="_blank">linux編譯的。那我們的廣大windows用戶(hù)就無(wú)緣了嗎?那可未必,小編給大家?guī)?lái)一個(gè)好辦法,當(dāng)然不僅僅適用于當(dāng)前這個(gè)tflite2pb工具,話不多說(shuō),開(kāi)始:

首先讓我們找到tflite2pb的安裝路徑:

eff22452-7328-11f0-a18e-92fbcf53809c.png

打開(kāi)tflite2tensorflow.py文件,并定位到5641行:

f003e674-7328-11f0-a18e-92fbcf53809c.png

我們可以看到,這是函數(shù)的主入口,并且添加了對(duì)于命令行參數(shù)的解析,而且既然是def定義的函數(shù),那我們就可以通過(guò)import來(lái)進(jìn)行導(dǎo)入。那接下來(lái)小編就要利用這個(gè)函數(shù)做一些文章,首先在我們編寫(xiě)的轉(zhuǎn)換函數(shù)中導(dǎo)入這個(gè)叫做main的函數(shù):

fromtflite2tensorflow.tflite2tensorflowimportmain

現(xiàn)在已經(jīng)導(dǎo)入了進(jìn)來(lái),接下來(lái)是怎么傳入main函數(shù)需要處理的參數(shù),換句話來(lái)說(shuō),main函數(shù)實(shí)際上是處理系統(tǒng)命令行參數(shù),那我們需要做的就是偽造一個(gè)系統(tǒng)命令行參數(shù),那簡(jiǎn)單了,首先導(dǎo)入sys模塊,然后開(kāi)始系統(tǒng)參數(shù)偽造:

sys.argv = ['main.py',f'--model_path={tflite_model_name}.tflite',r'--flatc_path=flatc.exe','--schema_path=schema.fbs','--output_pb']

這里通過(guò)直接給sys.argv參數(shù)賦值,實(shí)際上相當(dāng)于像系統(tǒng)命令行傳入了參數(shù),接下來(lái)直接調(diào)用main:

main()

果不其然,成功運(yùn)行,和在linux上運(yùn)行效果一致,我們也獲得了saved_model文件夾以及模型:

f0153d2a-7328-11f0-a18e-92fbcf53809c.png

下面就是進(jìn)行模型的量化:

# Convert the model
converter = tf.lite.TFLiteConverter.from_saved_model("saved_model")
converter.optimizations = [tf.lite.Optimize.DEFAULT]
converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS_INT8]
converter.representative_dataset = gen_representative_data_gen(represent_data)
converter.inference_input_type = tf.int8
converter.inference_output_type = tf.int8
tflite_model = converter.convert()
# Save the i8 model.
withopen(f"{tflite_model_name}_i8_opt.tflite","wb")asf:
 f.write(tflite_model)

熟悉tflite模型量化的伙伴應(yīng)該是很熟悉了吧?首先聲明converter導(dǎo)入我們剛才生成的pb格式模型的文件夾,接下來(lái)指定量化類(lèi)型為:

tf.lite.OpsSet.TFLITE_BUILTINS_INT8

指定代表性數(shù)據(jù)集:

converter.representative_dataset= gen_representative_data_gen(represent_data)

為了快速驗(yàn)證模型,我們可以先隨機(jī)出來(lái)一些數(shù)據(jù)來(lái)指導(dǎo)模型量化:

defgen_representative_data_gen(datas_path):
 datas= np.load(datas_path)
 datas= (np.random.randint(0,255, size=(10,1,192,192,3), dtype='uint8') /255).astype("float32")
 defrepresentative_data_gen(samples=datas):
   forsample in samples:
     yield[sample]
 returnrepresentative_data_gen

并且指定輸入輸出格式:

converter.inference_input_type= tf.int8
   converter.inference_output_type= tf.int8

最終保存量化好的模型:

withopen(f"{tflite_model_name}_i8_opt.tflite","wb")asf:
f.write(tflite_model)

當(dāng)然,我們還可以打印出來(lái)模型的算子信息:

intepreter = tf.lite.Interpreter(model_path=f"{tflite_model_name}_i8_opt.tflite")
 op_names =sorted(set([x['op_name']forx inintepreter._get_ops_details()]))
 print("len ops: ",len(op_names))
 print(op_names)

好了,至此,記站在巨人的肩膀上開(kāi)發(fā)AI應(yīng)用就到此完結(jié)了,此次系列分享給大家分享了小編的一次項(xiàng)目開(kāi)發(fā)歷程,尤其是涉及到如何將網(wǎng)上找到的,不包含推理代碼的模型,如何一步步的進(jìn)行分析,并最終轉(zhuǎn)換為可以為我們所用的模型,希望能夠幫助大家!

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

    關(guān)注

    88

    文章

    11576

    瀏覽量

    216674
  • WINDOWS
    +關(guān)注

    關(guān)注

    4

    文章

    3623

    瀏覽量

    92658
  • AI
    AI
    +關(guān)注

    關(guān)注

    88

    文章

    37034

    瀏覽量

    290086
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4400

    瀏覽量

    66368

原文標(biāo)題:站在巨人肩膀上開(kāi)發(fā)AI應(yīng)用分享(三)

文章出處:【微信號(hào):NXP_SMART_HARDWARE,微信公眾號(hào):恩智浦MCU加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    使用ml configurator進(jìn)行tflite網(wǎng)絡(luò)模型的轉(zhuǎn)換不成功怎么解決?

    使用ml configurator進(jìn)行tflite網(wǎng)絡(luò)模型的轉(zhuǎn)換不成功,提示錯(cuò)誤,請(qǐng)幫忙協(xié)助謝謝 [ERROR] Failed to run QEMU
    發(fā)表于 01-31 06:56

    瑞芯微模型量化文件構(gòu)建

    模型是一張圖片輸入時(shí),量化文件如上圖所示。但是我現(xiàn)在想量化deepprivacy人臉匿名模型,他的輸入是四個(gè)輸入。該模型訓(xùn)練時(shí)數(shù)據(jù)集只標(biāo)注
    發(fā)表于 06-13 09:07

    何進(jìn)行YOLO模型轉(zhuǎn)換?

    ]# 輸入圖像反量化范圍compile_options.mean = [0, 0, 0] # 預(yù)處理均值compile_options.std = [1, 1, 1]# 標(biāo)準(zhǔn)差設(shè)為1,不進(jìn)行歸一化
    發(fā)表于 08-14 06:03

    模型量化會(huì)帶來(lái)哪些好處?

    量化算法具有什么特點(diǎn)?模型量化會(huì)帶來(lái)哪些好處?
    發(fā)表于 09-28 06:32

    tflite接口調(diào)用tensorflow模型進(jìn)行推理

    摘要本文為系列博客tensorflow模型部署系列的一部分,用于實(shí)現(xiàn)通用模型的部署。本文主要實(shí)現(xiàn)用tflite接口調(diào)用tensorflow模型進(jìn)行
    發(fā)表于 12-22 06:51

    EIQ onnx模型轉(zhuǎn)換為tf-lite失敗怎么解決?

    我們正在嘗試將 tflite 框架與 npu 一起使用來(lái)進(jìn)行機(jī)器學(xué)習(xí)。這是我們的步驟:1)用pytorch訓(xùn)練一個(gè)模型2) 以onnx格式導(dǎo)出模型3) eiq工具的covnert
    發(fā)表于 03-31 08:03

    如何在MIMXRT1064評(píng)估套件上部署tflite模型

    我有一個(gè)嬰兒哭聲檢測(cè) tflite (tensorflow lite) 文件,其中包含模型本身。我如何將此模型部署到 MIMXRT1064-evk 以通過(guò) MCUXpresso IDE 運(yùn)行推理。你能推薦一些用于嬰兒哭聲檢測(cè)的教
    發(fā)表于 04-06 06:24

    tflite + XNNPACK代表對(duì)量化網(wǎng)絡(luò)的推理不起作用是怎么回事?

    mobilenet_v1_1.0_224_quant.tflite 對(duì) TFLite 進(jìn)行基準(zhǔn)推理,我發(fā)現(xiàn) XNNPACK 委托未用于推理(很可能是因?yàn)檫@是一個(gè)量化網(wǎng)絡(luò)- 因?yàn)樗m用
    發(fā)表于 04-11 07:05

    如何將DS_CNN_S.pb轉(zhuǎn)換為ds_cnn_s.tflite?

    文本文件中添加了您能否提供該腳本或類(lèi)似腳本,哪個(gè)量化和轉(zhuǎn)換模型在 ds_cnn_s.pb 到 ds_cnn_s.tflite 中?
    發(fā)表于 04-19 06:11

    RT1060注冊(cè)內(nèi)存被TFLite Micro模型中的其他函數(shù)覆蓋了怎么解決?

    您好,我遇到了一些 TFLM 操作注冊(cè)在其他操作中被覆蓋的錯(cuò)誤。這只發(fā)生在 INT8/UINT8 量化模型中,這意味著相同的模型但在浮點(diǎn)數(shù)中以預(yù)期的輸出完成執(zhí)行(盡管非常慢)。我在模型
    發(fā)表于 04-20 07:18

    【KV260視覺(jué)入門(mén)套件試用體驗(yàn)】Vitis AI 進(jìn)行模型校準(zhǔn)和來(lái)量化

    過(guò)程中不會(huì)被修改,但是在部署模型時(shí)可能需要用到。 總結(jié) 模型的校準(zhǔn)和量化看起來(lái)很簡(jiǎn)單,只需少量代碼就能完成整個(gè)過(guò)程。但其實(shí),量化的關(guān)鍵不在于使用Vtiis AI工具,而在于理解
    發(fā)表于 10-15 10:51

    使用NVIDIA QAT工具包實(shí)現(xiàn)TensorRT量化網(wǎng)絡(luò)的設(shè)計(jì)

      目前, TensorFlow 在其開(kāi)源軟件 模型優(yōu)化工具包 中提供非對(duì)稱(chēng)量化。他們的量化方法包括在所需層的輸出和權(quán)重(如果適用)處插入 QDQ 節(jié)點(diǎn),并提供完整模型或部分層類(lèi)類(lèi)型的
    的頭像 發(fā)表于 06-21 16:54 ?5108次閱讀
    使用NVIDIA QAT工具包實(shí)現(xiàn)TensorRT<b class='flag-5'>量化</b>網(wǎng)絡(luò)的設(shè)計(jì)

    使用Arduino和TFlite進(jìn)行下垂檢測(cè)

    電子發(fā)燒友網(wǎng)站提供《使用Arduino和TFlite進(jìn)行下垂檢測(cè).zip》資料免費(fèi)下載
    發(fā)表于 06-15 10:25 ?0次下載
    使用Arduino和<b class='flag-5'>TFlite</b><b class='flag-5'>進(jìn)行</b>下垂檢測(cè)

    【飛騰派4G版免費(fèi)試用】第五章:使用C++部署tflite模型到飛騰派

    本章記錄下使用 C++ 進(jìn)行佩奇檢測(cè) tflite 模型推理的過(guò)程。
    的頭像 發(fā)表于 12-28 09:08 ?3205次閱讀
    【飛騰派4G版免費(fèi)試用】第五章:使用C++部署<b class='flag-5'>tflite</b><b class='flag-5'>模型</b>到飛騰派

    快速部署Tensorflow和TFLITE模型在Jacinto7 Soc

    電子發(fā)燒友網(wǎng)站提供《快速部署Tensorflow和TFLITE模型在Jacinto7 Soc.pdf》資料免費(fèi)下載
    發(fā)表于 09-27 11:41 ?0次下載
    快速部署Tensorflow和<b class='flag-5'>TFLITE</b><b class='flag-5'>模型</b>在Jacinto7 Soc