99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

TensorFlow Lite端側(cè)部署實(shí)戰(zhàn):從模型轉(zhuǎn)換到性能優(yōu)化

TensorFlow Lite端側(cè)部署實(shí)戰(zhàn):從模型轉(zhuǎn)換到性能優(yōu)化 很多人都會(huì)在生產(chǎn)環(huán)境里碰到同一個(gè)問(wèn)題模型在服務(wù)器上跑得飛快一搬到手機(jī)或者嵌入式設(shè)備上要么體積大到裝上就閃退要么推理一次半天沒(méi)反應(yīng)要么干脆報(bào)錯(cuò)說(shuō)設(shè)備不認(rèn)這個(gè)模型格式。我最早做端側(cè)部署的時(shí)候也是這樣明明訓(xùn)練時(shí)各種指標(biāo)都很好但真正要把模型塞進(jìn)一臺(tái)只有幾百M(fèi)B可用內(nèi)存的設(shè)備里才發(fā)現(xiàn)模型壓根不是為這種環(huán)境設(shè)計(jì)的。TensorFlow Lite集成要做的事說(shuō)白了就是解決這個(gè)中間落差把訓(xùn)練好的模型壓縮、量化、轉(zhuǎn)換再塞進(jìn)手機(jī)、平板或者單片機(jī)的內(nèi)存里讓它在端側(cè)也能低延遲地跑起來(lái)。這篇東西適合正在做模型部署的人看也適合剛接觸端側(cè)推理、想知道TFLite到底怎么集成的新手。全文我會(huì)從部署痛點(diǎn)講起把轉(zhuǎn)換、量化、安卓端集成、性能優(yōu)化四條鏈路完整走一遍每個(gè)環(huán)節(jié)都帶上我在實(shí)際項(xiàng)目里踩過(guò)的坑和驗(yàn)證過(guò)的做法。內(nèi)容偏實(shí)操代碼可以直接抄你照著跑一遍基本能打通整個(gè)流程。1. 端側(cè)部署的真實(shí)痛點(diǎn)為什么服務(wù)端的模型不能直接搬到手機(jī)上1.1 模型不是程序打包復(fù)制就能跑很多剛?cè)腴T的開發(fā)者會(huì)有個(gè)直覺(jué)模型訓(xùn)練好了保存下來(lái)部署到手機(jī)里然后加載圖片、調(diào)用模型不就行了嗎這個(gè)直覺(jué)錯(cuò)得很離譜。訓(xùn)練好的模型在服務(wù)端依賴著一整套運(yùn)行環(huán)境顯卡驅(qū)動(dòng)、CUDA、cuDNN、Python運(yùn)行時(shí)、TensorFlow完整安裝包。而手機(jī)端沒(méi)有這些一臺(tái)常規(guī)安卓手機(jī)能分給單個(gè)應(yīng)用的內(nèi)存常常只有幾百M(fèi)B處理器和功耗更是被嚴(yán)格限制。舉個(gè)例子我在某次做圖像分類Demo時(shí)就吃過(guò)大虧。當(dāng)時(shí)用了一個(gè)比較重的骨干網(wǎng)絡(luò)模型文件足足有200多MB直接塞進(jìn)APK里不僅安裝包膨脹到離譜運(yùn)行時(shí)光是加載模型文件就把內(nèi)存占了接近500MB在某款入門級(jí)安卓機(jī)上直接閃退。后來(lái)我換成TFLite的壓縮加量化鏈路模型體積壓到了原來(lái)的四分之一不到推理延遲也從幾百毫秒降到幾十毫秒。這還只是常規(guī)優(yōu)化沒(méi)有上GPU委托這類加速手段。1.2 TFLite的三個(gè)組成部分各做了什么TFLite不是簡(jiǎn)單的格式轉(zhuǎn)換工具嚴(yán)格來(lái)說(shuō)它是一整套為端側(cè)推理設(shè)計(jì)的生態(tài)包含三塊東西轉(zhuǎn)換器把訓(xùn)練好的模型轉(zhuǎn)成.tflite格式轉(zhuǎn)換過(guò)程中可以套用量化、剪枝等優(yōu)化解釋器在目標(biāo)設(shè)備上運(yùn)行.tflite模型的運(yùn)行時(shí)引擎針對(duì)移動(dòng)端做了內(nèi)存和算子調(diào)度優(yōu)化委托機(jī)制把部分算子交給GPU、NPU或者專用DSP執(zhí)行加速效果非常明顯。另外.tflite文件本身采用FlatBuffers格式。FlatBuffers是一種零拷貝的序列化格式模型加載時(shí)不需要像Protocol Buffers那樣反序列化出一個(gè)完整對(duì)象樹而是直接在二進(jìn)制數(shù)據(jù)上讀取字段。這個(gè)特性對(duì)端側(cè)非常重要因?yàn)槟P臀募诩虞d時(shí)省掉了一整輪數(shù)據(jù)解析內(nèi)存峰值和啟動(dòng)時(shí)間都會(huì)明顯下降。我記得第一次跑通TFLite時(shí)還特意對(duì)比過(guò)同樣的模型直接用TensorFlow的SavedModel格式在手機(jī)上推理光是加載階段就花了接近3秒轉(zhuǎn)成.tflite之后加載時(shí)間約800毫秒。這不是玄學(xué)FlatBuffers零拷貝讀取就是其中一個(gè)關(guān)鍵原因。2. 從SavedModel到.tflite轉(zhuǎn)換流程里的關(guān)鍵實(shí)操2.1 轉(zhuǎn)換工具選型Python API和命令行怎么選TFLite轉(zhuǎn)換主要的入口有兩個(gè)。一是Python APITFLiteConverter適合在訓(xùn)練腳本里順手轉(zhuǎn)換可以方便地對(duì)模型做精度驗(yàn)證二是命令行工具tflite_converter適合在CI流水線里批量轉(zhuǎn)換。我自己的習(xí)慣是第一次試驗(yàn)、要對(duì)量化效果做迭代驗(yàn)證時(shí)用Python API模型穩(wěn)定后要把多個(gè)版本批量出包時(shí)寫個(gè)shell腳本調(diào)命令行。Python API的用法非常直接以Keras模型為例import tensorflow as tf # 從Keras模型轉(zhuǎn)換 model tf.keras.models.load_model(mobilenetv2_finetuned.h5) converter tf.lite.TFLiteConverter.from_keras_model(model) # 轉(zhuǎn)換為float32的TFLite模型只做格式轉(zhuǎn)換不做量化 tflite_model converter.convert() with open(mobilenetv2.tflite, wb) as f: f.write(tflite_model)如果訓(xùn)練時(shí)保存的是SavedModel格式就換成from_saved_model(導(dǎo)出目錄)。這兩個(gè)入口本質(zhì)上沒(méi)有區(qū)別區(qū)別只在于你手頭保存的模型格式是什么。2.2 轉(zhuǎn)換參數(shù)配置不是所有模型都能一鍵轉(zhuǎn)換真正容易出問(wèn)題的不是API調(diào)用而是轉(zhuǎn)換過(guò)程中算子的兼容性。TFLite支持一套固定算子集不是TensorFlow里所有算子都能直接轉(zhuǎn)換。比如某些訓(xùn)練腳本里常見的tf.image.resize_images在老版本里經(jīng)常需要打開實(shí)驗(yàn)性開關(guān)或者替換成TFLite支持的resize實(shí)現(xiàn)。轉(zhuǎn)換前最好把TFLite官方算子列表過(guò)一遍提前排查模型中用了哪些不在列表里的算子。排查方法也不復(fù)雜先試轉(zhuǎn)一次報(bào)錯(cuò)信息里會(huì)直接告訴你哪個(gè)算子不被支持。遇到不支持的算子優(yōu)先思路是用等價(jià)操作替換其次才是考慮拆解模型、把不兼容的部分留在服務(wù)端計(jì)算。另外要留意輸入輸出簽名。模型如果是用新版本tf_function導(dǎo)出的簽名可能包含命名參數(shù)轉(zhuǎn)換后解釋器讀取輸入輸出索引時(shí)就要按簽名名來(lái)拿而不是簡(jiǎn)單按0、1索引。這個(gè)差異在集成階段非??游液竺鏁?huì)在安卓集成部分詳細(xì)展開。2.3 轉(zhuǎn)換后的正確性驗(yàn)證這一步千萬(wàn)別省轉(zhuǎn)換完成不代表萬(wàn)事大吉。浮點(diǎn)模型轉(zhuǎn)換成TFLite后理論上精度幾乎無(wú)損失但實(shí)際中因?yàn)椴糠炙阕觾?nèi)部實(shí)現(xiàn)差異輸出值可能會(huì)有微小波動(dòng)。如果轉(zhuǎn)換時(shí)疊加了量化差異會(huì)更明顯。所以轉(zhuǎn)換后必須做一次等價(jià)性驗(yàn)證。我自己常用的驗(yàn)證流程是準(zhǔn)備一張固定輸入分別用原模型和TFLite解釋器推理對(duì)比輸出向量。對(duì)于分類模型重點(diǎn)看softmax后最大概率對(duì)應(yīng)的類別是否一致對(duì)于回歸模型看數(shù)值相對(duì)誤差是否在可接受范圍。import numpy as np import tensorflow as tf interpreter tf.lite.Interpreter(model_pathmobilenetv2.tflite) interpreter.allocate_tensors() input_detail interpreter.get_input_details()[0] output_detail interpreter.get_output_details()[0] # 輸入數(shù)據(jù)要和訓(xùn)練時(shí)保持完全一致的預(yù)處理 sample np.random.rand(1, 224, 224, 3).astype(np.float32) interpreter.set_tensor(input_detail[index], sample) interpreter.invoke() tflite_out interpreter.get_tensor(output_detail[index]) # 和原模型輸出對(duì)比 original_out model.predict(sample) print(TFLite最大類別:, np.argmax(tflite_out)) print(Original最大類別:, np.argmax(original_out)) print(最大輸出差異:, np.max(np.abs(tflite_out - original_out)))如果最大輸出差異在1e-4量級(jí)以上基本可以判斷轉(zhuǎn)換過(guò)程有問(wèn)題需要回頭檢查是否漏了量化參數(shù)或者選錯(cuò)了轉(zhuǎn)換入口。3. 量化不是可選項(xiàng)三種量化方案的取舍與實(shí)測(cè)數(shù)據(jù)3.1 動(dòng)態(tài)范圍量化性價(jià)比最高的起步方案TFLite的量化并不是一個(gè)單一開關(guān)而是三種方案并存。最容易上手的是動(dòng)態(tài)范圍量化。它的原理是把模型權(quán)重從float32壓縮到int8推理時(shí)輸入和中間激活仍是float32但權(quán)重會(huì)在運(yùn)行時(shí)做反量化再參與計(jì)算。這樣做的收益非常直接模型體積大約能壓到原來(lái)的四分之一推理速度平均能提升20%到30%而且精度損失通常小到可以忽略。不需要準(zhǔn)備任何校準(zhǔn)數(shù)據(jù)這是它最大的優(yōu)勢(shì)。如果項(xiàng)目著急上線先在轉(zhuǎn)換參數(shù)里加上optimizations[tf.lite.Optimize.DEFAULT]就能白拿這一波優(yōu)化。converter.optimizations [tf.lite.Optimize.DEFAULT] tflite_model_quantized converter.convert()動(dòng)態(tài)范圍量化適合預(yù)算緊張、精度要求高、模型不復(fù)雜的場(chǎng)景。損失方面我實(shí)測(cè)過(guò)多次絕大多數(shù)情況下Top-1準(zhǔn)確率的變化不超過(guò)0.2個(gè)百分點(diǎn)。3.2 FP16量化給GPU設(shè)備準(zhǔn)備的精度友好方案第二種方案是FP16量化權(quán)重量化為float16推理時(shí)如果是GPU委托硬件本身原生支持半精度計(jì)算速度提升顯著如果是CPU推理運(yùn)行時(shí)會(huì)反量化成float32再計(jì)算所以CPU場(chǎng)景收益不太明顯。FP16量化的最大優(yōu)點(diǎn)是精度損失極小理論上可以做到和float32幾乎無(wú)異。損失通常在0.1%以內(nèi)有時(shí)甚至沒(méi)有損失。模型體積縮水一半左右。配置方法是在converter上加target_specconverter.optimizations [tf.lite.Optimize.DEFAULT] converter.target_spec.supported_types [tf.float16] tflite_fp16_model converter.convert()這個(gè)方案特別適合兩類設(shè)備搭載支持半精度計(jì)算的手機(jī)GPU以及需要把模型壓在存儲(chǔ)空間限制內(nèi)的場(chǎng)景。我曾在某款中端機(jī)型上對(duì)比開啟GPU委托后FP16模型推理延遲比FP32版本低了大約30%。3.3 全整型量化端側(cè)部署的終極形態(tài)第三種方案是全整型量化權(quán)重和激活全部變成int8類型。這是TFLite在硬件友好度上的巔峰整數(shù)運(yùn)算在大多數(shù)CPU上占用更少功耗許多NPU和DSP只接受整數(shù)輸入可以說(shuō)全整型模型是打通底層硬件的鑰匙。但全整型量化有個(gè)硬性前置條件必須提供代表性數(shù)據(jù)集。轉(zhuǎn)換器需要從數(shù)據(jù)集中統(tǒng)計(jì)每一層激活值的范圍才能確定int8的縮放比例和零點(diǎn)。如果直接轉(zhuǎn)換不提供校準(zhǔn)數(shù)據(jù)TFLite會(huì)跳過(guò)量化的部分模型實(shí)際仍是半量化狀態(tài)。代表性數(shù)據(jù)集的選取是門學(xué)問(wèn)。我第一次做全整型量化時(shí)直接拿了訓(xùn)練集里隨機(jī)抽的100張圖做校準(zhǔn)結(jié)果模型精度掉了接近3個(gè)百分點(diǎn)。后來(lái)?yè)Q成按類別均勻抽樣、覆蓋各類光照和背景精度損失立刻收斂到1%以內(nèi)。核心原則是校準(zhǔn)集要能代表模型真實(shí)部署時(shí)會(huì)遇到的輸入分布數(shù)量上100到500張通常就夠不是越多越好。def representative_dataset(): for image in calibration_images: input_data preprocess(image) yield [input_data.astype(np.float32)] converter.optimizations [tf.lite.Optimize.DEFAULT] converter.representative_dataset representative_dataset converter.target_spec.supported_ops [tf.lite.OpsSet.TFLITE_BUILTINS_INT8] tflite_int8_model converter.convert()三種量化方案放在一起看各自的定位就很清楚了動(dòng)態(tài)范圍量化是零成本起步FP16是精度敏感場(chǎng)景的穩(wěn)妥選擇全整型量化則是面向低功耗硬件和廣泛設(shè)備兼容性的最終形態(tài)。實(shí)際項(xiàng)目中完全可以根據(jù)目標(biāo)設(shè)備分層出多個(gè)模型版本。3.4 量化后精度退化的排查思路量化不是沒(méi)有代價(jià)的尤其是在小模型和敏感層面前。常見問(wèn)題包括校準(zhǔn)集分布偏差、模型里某些層對(duì)量化特別敏感、輸出層被強(qiáng)制int8導(dǎo)致精度丟失。排查方法我建議這樣先做動(dòng)態(tài)范圍量化如果精度正常就能確定問(wèn)題出在激活值量化上再做全整型量化如果精度異常就替換校準(zhǔn)集觀察變化還是不行就把模型里幾個(gè)高敏感層設(shè)置為float32保留其余層繼續(xù)int8。TFLite支持混合精度配置尤其在檢測(cè)類模型里這種混合模式很常見。這幾個(gè)排查步驟走下來(lái)大部分精度退化問(wèn)題都能定位在哪一層或者哪個(gè)環(huán)節(jié)。4. 安卓端集成實(shí)操解釋器API還是Task API先想清楚再動(dòng)手4.1 依賴與環(huán)境配置安卓端集成第一步是引入依賴。在build.gradle里加上TFLite相關(guān)的包我下面的配置是目前穩(wěn)定可用的組合dependencies { implementation org.tensorflow:tensorflow-lite:2.16.1 implementation org.tensorflow:tensorflow-lite-gpu:2.16.1 implementation org.tensorflow:tensorflow-lite-support:0.4.4 }tensorflow-lite是解釋器本體tensorflow-lite-gpu是GPU委托tensorflow-lite-support是圖像處理和數(shù)據(jù)轉(zhuǎn)換的輔助庫(kù)里面有Task API的基礎(chǔ)組件。新手最容易漏的是把模型文件放對(duì)位置.tflite文件必須放在src/main/assets目錄下否則AssetManager讀不到文件。4.2 用Interpreter API做自定義模型推理如果模型不是標(biāo)準(zhǔn)的圖像分類結(jié)構(gòu)或者你需要完全控制輸入輸出直接用Interpreter API是最靈活的方案。初始化時(shí)加載模型創(chuàng)建解釋器實(shí)例然后通過(guò)getInputDetails和getOutputDetails拿到張量信息。class Classifier( private val context: Context, private val modelPath: String ) { private var interpreter: Interpreter? null fun init() { val model FileUtil.loadMappedFile(context, modelPath) interpreter Interpreter(model, Interpreter.Options().apply { numThreads 4 setUseXNNPACK(true) }) } fun classify(input: FloatArray): FloatArray { val inputShape intArrayOf(1, 224, 224, 3) val outputShape intArrayOf(1, 1000) val inputBuffer ByteBuffer.allocateDirect(4 * inputShape.fold(1, Int::times)) inputBuffer.order(ByteOrder.nativeOrder()) inputBuffer.rewind() // 這里需要把input按CHW順序?qū)懭隻uffer具體寫法和預(yù)處理有關(guān) inputBuffer.asFloatBuffer().put(input) val outputBuffer ByteBuffer.allocateDirect(4 * outputShape.fold(1, Int::times)) outputBuffer.order(ByteOrder.nativeOrder()) interpreter?.run(inputBuffer, outputBuffer) val output FloatArray(outputShape[1]) outputBuffer.asFloatBuffer().get(output) return output } fun close() { interpreter?.close() interpreter null } }這里要特別強(qiáng)調(diào)預(yù)處理的一致性。訓(xùn)練時(shí)圖像分辨率、歸一化公式、RGB通道順序是什么推理時(shí)必須一模一樣。比如訓(xùn)練時(shí)用的是mean[0.485, 0.456, 0.406]、std[0.229, 0.224, 0.225]做歸一化安卓端就要復(fù)現(xiàn)同樣的過(guò)程否則模型的輸出會(huì)莫名其妙地偏離。很多人抱怨部署后效果變差八成問(wèn)題出在這里。4.3 Task API把預(yù)處理后處理一起打包的省心方案如果你做的是圖像分類、目標(biāo)檢測(cè)、圖片分割這類常見任務(wù)我更推薦先用Task API。它把圖像解碼、尺寸縮放、歸一化、輸出解析全部封裝好了你只需要提供圖片路徑或Bitmap就能直接拿到分類結(jié)果省掉大量可復(fù)現(xiàn)性Bug。val options ImageClassifier.ImageClassifierOptions.builder() .setNumThreads(4) .setMaxResults(5) .build() val classifier ImageClassifier.createFromFileAndOptions( context, mobilenetv2_finetuned.tflite, options ) val image Bitmap.createScaledBitmap(source, 224, 224, true) val results classifier.process(image) for (result in results) { Log.d(分類結(jié)果, ${result.categories.first().label}: ${result.categories.first().score}) }Task API底層會(huì)自動(dòng)完成色空間轉(zhuǎn)換、尺寸歸一化這些瑣碎操作對(duì)剛接觸端側(cè)部署的人非常友好。它唯一的限制是不能處理自定義輸出結(jié)構(gòu)比如模型輸出的是兩個(gè)分支的檢測(cè)框坐標(biāo)Task API就不能覆蓋。這種時(shí)候就需要回到Interpreter API做定制開發(fā)。4.4 線程與生命周期管理推理操作不應(yīng)該跑在主線程上否則界面會(huì)明顯卡頓。我通常用單線程的ExecutorService來(lái)跑推理避免多線程同時(shí)操作同一個(gè)Interpreter實(shí)例。Interpreter實(shí)例本身不是線程安全的多個(gè)線程共用同一個(gè)實(shí)例會(huì)出現(xiàn)不可預(yù)期的錯(cuò)誤。如果確實(shí)要并行推理就創(chuàng)建多個(gè)Interpreter實(shí)例各自獨(dú)立。還有一點(diǎn)容易忽略Interpreter用完要close。雖然系統(tǒng)會(huì)在內(nèi)存不足時(shí)回收但tflite模型占用的Native內(nèi)存不會(huì)立刻釋放長(zhǎng)期運(yùn)行的應(yīng)用如果頻繁創(chuàng)建和銷毀解釋器內(nèi)存會(huì)緩慢上漲。我見過(guò)一個(gè)應(yīng)用每次拍照都創(chuàng)建新解釋器但忘了關(guān)閉運(yùn)行半小時(shí)后內(nèi)存占用翻了一倍。養(yǎng)成用完即關(guān)的習(xí)慣能省掉很多線上問(wèn)題。5. 性能基準(zhǔn)測(cè)試與端側(cè)優(yōu)化從能跑到跑得快5.1 用官方基準(zhǔn)測(cè)試工具量化性能集成跑通只是第一步跑得快才是端側(cè)部署的終極目標(biāo)。優(yōu)化之前要先測(cè)量。TFLite官方提供了benchmark_model工具可以直接在設(shè)備上運(yùn)行模型并輸出延遲統(tǒng)計(jì)。# 在設(shè)備上執(zhí)行基準(zhǔn)測(cè)試 adb push mobilenetv2.tflite /data/local/tmp/ adb shell /data/local/tmp/benchmark_model \ --graph/data/local/tmp/mobilenetv2.tflite \ --num_threads4 \ --warmup_min_secs5 \ --run_interval100這個(gè)工具會(huì)輸出每輪推理的平均延遲、標(biāo)準(zhǔn)差等參數(shù)。我一般在優(yōu)化前后各測(cè)一次用數(shù)據(jù)來(lái)指導(dǎo)方向。要注意的是基準(zhǔn)測(cè)試受CPU頻率策略影響波動(dòng)很大最好測(cè)試時(shí)保持屏幕狀態(tài)一致或者多測(cè)幾輪取中位數(shù)。5.2 GPU委托與NNAPI委托怎么選委托機(jī)制是TFLite加速的核心。GPU委托把支持的算子放到GPU上執(zhí)行對(duì)圖像類卷積網(wǎng)絡(luò)提升非常明顯通常能獲得2到3倍的加速。NNAPI委托則依賴設(shè)備上由芯片廠商提供的NPU驅(qū)動(dòng)不同機(jī)型差異巨大有的快得驚人有的反而比CPU還慢。我的選型經(jīng)驗(yàn)是如果目標(biāo)機(jī)型主要是中高端手機(jī)優(yōu)先開啟GPU委托效果穩(wěn)定如果要做全機(jī)型覆蓋建議做分層策略在性能較強(qiáng)的設(shè)備上開啟NNAPI在其他設(shè)備上用CPU加X(jué)NNPACK兜底。原因在于NNAPI在不同設(shè)備上的兼容性和性能方差太大直接全量發(fā)布等到線上才暴露問(wèn)題會(huì)比較被動(dòng)。5.3 端側(cè)優(yōu)化三板斧線程數(shù)、輸入分辨率、內(nèi)存復(fù)用第一個(gè)可調(diào)的參數(shù)是線程數(shù)。Interpreter.Options里的numThreads通常設(shè)置為4比較合理繼續(xù)往上加不一定能提升速度因?yàn)槎藗?cè)芯片的物理核心數(shù)是有限的線程過(guò)多反而引入調(diào)度開銷。第二個(gè)思路是降低輸入分辨率。很多模型訓(xùn)練時(shí)用224x224甚至299x299但端側(cè)場(chǎng)景往往不需要這么高的輸入精度。直接把預(yù)處理階段的分辨率降到192x192推理延遲大約能再降20%到30%對(duì)最終精度影響很小。第三個(gè)是內(nèi)存復(fù)用。在實(shí)時(shí)推理場(chǎng)景比如相機(jī)預(yù)覽連續(xù)做幀分類反復(fù)分配和回收輸入輸出緩沖區(qū)是非常浪費(fèi)的。我一般會(huì)在初始化時(shí)就把固定大小的ByteBuffer分配好每次推理直接復(fù)用同一塊緩沖區(qū)垃圾回收次數(shù)肉眼可見地減少幀率穩(wěn)定性有明顯改善。5.4 常見部署問(wèn)題的排查清單這一年多做了不少TFLite部署項(xiàng)目把最常見的坑匯總成一張表直接對(duì)著排查效率很高現(xiàn)象可能原因排查方向輸出全是NaN或亂碼輸入預(yù)處理和訓(xùn)練不一致檢查歸一化、通道順序、數(shù)據(jù)類型推理速度遠(yuǎn)低于預(yù)期模型未量化、線程數(shù)過(guò)低、未用委托檢查量化配置、開啟GPU/XNNPACK轉(zhuǎn)換時(shí)報(bào)算子不支持模型用了TFLite算子集之外的算子替換算子、拆模型、檢查TFLite版本加載模型時(shí)內(nèi)存暴漲模型未量化或體積過(guò)大改用int8量化、裁剪模型結(jié)構(gòu)多線程推理結(jié)果錯(cuò)亂Interpreter實(shí)例被并發(fā)使用多實(shí)例隔離或加鎖串行化GPU委托后精度下降部分算子FP16精度不足只委托部分層、換回CPU推理敏感層這些坑我基本都踩過(guò)一遍。最離譜的一次是模型在服務(wù)端速度正常部署到某款機(jī)型后首次推理耗時(shí)接近5秒查到最后發(fā)現(xiàn)是模型沒(méi)有啟用XNNPACK加速CPU推理時(shí)走了老路徑。開啟setUseXNNPACK(true)后首次推理時(shí)間降到700毫秒左右問(wèn)題迎刃而解。6. 擴(kuò)展方向與個(gè)人經(jīng)驗(yàn)從TFLite Micro到部署心態(tài)6.1 TFLite Micro面向單片機(jī)的一小塊天地如果項(xiàng)目目標(biāo)設(shè)備是單片機(jī)這類極致資源受限的環(huán)境那TFLite Micro是后續(xù)值得關(guān)注的方向。它把解釋器裁剪到極小尺寸能在只有幾十KB內(nèi)存的設(shè)備上運(yùn)行模型。我還沒(méi)正式在量產(chǎn)項(xiàng)目里用過(guò)它但做技術(shù)調(diào)研時(shí)把官方Demo跑通過(guò)。感受是雖然可用算子范圍更窄、集成難度更高但端側(cè)推理的天花板確實(shí)被打開了。比如在STM32級(jí)別的開發(fā)板上做喚醒詞識(shí)別、傳感器異常檢測(cè)這類場(chǎng)景用TFLite Micro有不可替代的價(jià)值。對(duì)于搞硬件或者IoT方向的人這塊值得盯住。6.2 部署不是一次性的動(dòng)作我的幾個(gè)經(jīng)驗(yàn)維度我在實(shí)際項(xiàng)目里體會(huì)最深的一點(diǎn)是TFLite集成不是一次性的轉(zhuǎn)換動(dòng)作而是持續(xù)調(diào)優(yōu)的過(guò)程。轉(zhuǎn)換、量化、部署、測(cè)速、再調(diào)整這五個(gè)步驟需要反復(fù)循環(huán)。別指望第一次轉(zhuǎn)換出來(lái)的模型就能達(dá)到最佳效果先把鏈路跑通再一步步壓體積、提速度這才是最穩(wěn)妥的節(jié)奏。量化參數(shù)、線程數(shù)、委托方式每一個(gè)都要拿實(shí)測(cè)數(shù)據(jù)說(shuō)話而不是憑感覺(jué)配置。6.3 一個(gè)很實(shí)用的小習(xí)慣端側(cè)日志與線上監(jiān)控最后分享一個(gè)實(shí)操里的小技巧在端側(cè)推理時(shí)把每次推理的耗時(shí)、置信度最大值、類別標(biāo)簽寫進(jìn)日志里配合線上數(shù)據(jù)埋點(diǎn)能幫你盡早發(fā)現(xiàn)模型在真實(shí)設(shè)備上的表現(xiàn)異常。我就靠這招在某個(gè)項(xiàng)目上線后第三天抓到了輸入圖像方向旋轉(zhuǎn)導(dǎo)致的精度問(wèn)題。當(dāng)時(shí)模型本身完全正常純粹是預(yù)處理時(shí)EXIF方向信息沒(méi)處理。部署這件事錯(cuò)的地方往往不在模型而在模型周圍的環(huán)境。把日志做細(xì)排查問(wèn)題的速度會(huì)快上很多。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
99re思思热久久| 五月婷婷性爱| 停停综合色色| 久9久9久9久9久9久9| 91久草五月天婷婷| 久久婷婷五月丁香网| 亚洲视频国产一区| 操操啪| 任我鲁这里有精品视频| 5月丁香婷婷| 婷婷香五月天| 加勒比色色| 香蕉久久国产AV一区二区| 人人干天天舔| AV色色天堂中文| 这里只有九九精品| 97婷婷在线视频| 久青操| 9久国产精品| 色婷婷av在线观看| 欧美成人网婷婷综合在线| 国产AV影片| 伊人婷婷五月天av| 国产亚洲网站在线| 婷婷综合日本| 三级黄色大片视频| 97色女人在线| 超碰日韩成人| 亚洲人人操| 99久热| 伊人色综合网| 五月亭久久无码视频| 久久99国产综合精品免费 | 网色99| 五月综合激情久久| 这里有精品99| 538在线精品| 丁香五月婷婷色情综合| www.夜夜| 开心五月色婷| 五月综合激情久久| 2015WWW永久免费观看播放| 丁香婷婷婷五月| se.久久视频在线观看| 97碰人人操| 香蕉综合在线| 一本到不卡高清DVD| 91婷婷五月天嫩女| 综合在线网| 日韩一本操| 思思久久99热只有频精品66| 狠狠人妻色综合| 婷婷久久综合久| 日韩视频女神99| 思思热在线观看| 精品婷婷| 婷婷五月丁香激情图片| 亚洲操操操| 五月婷婷精品无在线| 五月综合丁| 99久热这里只有精品| 都市激情五月婷婷综合| 啪啪 综合网| 婷婷六月天| 亚洲天天操| 天天爽人人综合免费7799| 九九色逼| 婷婷五月激情的图片| 99热精品网| 亚洲天堂有码| 国产精品天天狠天天看| 色婷网| 五月丁香六月婷婷免费| 久久人人九九| 九九热99精品| 婷婷五月天性色| 亚洲综合无码| 少妇激情五月天| 色欲婷婷夜夜| 亚洲六月婷婷| 日本丁香久在线| 激情 婷婷 丁香五月天| 操操啪| 婷婷五月综合中文字幕| 丁香五月天啪啪| 色五月激情网| 人妻自慰高清合集| 五月深爱婷婷| 九九热在线亚洲免费视频| 丁香五月婷婷香| 国产亚洲在线观看| 婷婷久久综合| 久久久久久激情| 99久久久国产精品免费蜜乳tv| 色狠狠综合| 国产亚洲成人综合| 成人丁香婷婷| 天天日天天插| 色激情五月| 六月丁香六月婷婷欧美| 国产婷婷五月天| 人人操插| 婷婷色色欧美| 91色色色视频| 日韩五月婷婷久久| 婷婷五月天天| 亚洲中文字幕在线观看| 亚洲精品又粗又大又爽A片 | 国产精品一区在线观看你懂的| 婷婷五月天狠狠搞干| 色色色综合视频| 美女黄频aⅴ视频| 久久丁香婷婷色情综合| 久久五月天影院| www色婷婷| 91丨九色丨熟女|老版| 亚洲激情区| 日日噜狠狠色综| 一级精品999WWW| 精品九九网| 激情六月婷婷啪啪| 久久久久久久久久久久久9| 欧美日韩成人在线网| 天天日日夜夜爽。| 五月婷婷综合久久| 色五月婷婷亚洲| 99久久a线观| www.狠狠| 综合激情五月丁香9999久久精| www999日韩精品| 丁香五月综合| 久久久久久综合88| 激情综合婷婷| 超碰在线国产| 一本大道嫩草AV无码专区| 色五月婷婷久久| 中文字幕视频在线播放| 五月婷婷丁香在线| 日韩成人精品中文字幕| 免费无码毛片一区二区A片| 99精品网| 国产无套精品一区二区| 性爱技巧五月| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 日本视频欧美观看免费| www.五月天色色色| 婷婷91| 久久婷.com| 91人人澡人人爽人人看| 亚洲精品亚洲人成人网| 狠狠狠狠免费| 天天综合久久| 99高级会所久久| 美女丁香五月天| 色色色在线免费视频| 色五月天.con| 婷婷五月丁香五月天| 狠狠操.COM| www.亭亭五月天| 色情五月停停丁香| 国产激情av| 99热在线精品播放| 五月婷丁香| 丁香五月婷婷欧美性爱| 激情图片久久| 精品国产乱码久久久久久免费| 777精品久无码人妻蜜桃| 欧美交换配乱吟粗大25P| 极品少妇XXXX精品少妇偷拍| 熟妇国产| 亚洲精品国产setv| 天天综合天天玩夜夜玩天天玩夜夜玩 | 狠狠色激情在线| 色五月丁香五月| 香蕉久久国产AV一区二区| 99九九久久| 99色最新在线视频| 情久久综合五月天| 99色婷婷| 日韩黄色影院| 高清av在线国产| 五月间天堂综合| 大香蕉婷婷色| 亚洲看av的网站| 99re这里| www.色婷婷.com| 国产看真人毛片爱做A片| 色情激情五月婷婷| 97婷婷色| 79色色| 五月天婷婷色| 风流少妇A片一区二区蜜桃| 在线观看视频1区| 99在线视频免费| 五月天激情综合网站| 日日操,夜夜爽| 亚洲碰碰碰| 激情五月久久| 日韩精品99久久| 婷综合| 爱性综合网| 久久 这里只有精品1| 大天天伊人| 久久作爱| 婷婷五月天激情综合深爱激情| AV在线中文| 图片区 小说区 区 亚洲五月| 久热爱大香蕉在线蜜臀悦色| 六月丁香五月激情网| 99久在线精品99re8热| 色五月大香蕉| 岛国资源站| 天天操夜夜啊| 手机旧版看人妻1025| 色五月激情五月| 大胆伊人久久| 中文字幕色色色| 91se在线视频| 色婷大香蕉| 狠狠大香婷婷爱| 六月丁香社区| 99久久国产宗和精品1上映| 91色吧网| 99热这里只有精品搜| 亚洲色频| 91九色国产在线| 99亚洲色| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 99热啪啪| 天天综合网在线| 色色99| 激情丁香九九五月综合网| www·五月天| 天天天天干| ..真实国产乱子伦对白在线_欧 | 婷婷网五月天| 97干干干丁香| 播五月婷婷开心| 婷婷激情综合| 久久久久久久久久久久久久久久久精典| 高清国产AV| 26uuu欧美亚洲日韩| 久久久久网站| 婷婷五月激情综合啪啪| 综合99在线| 青草五月天| 亚洲熟妇AV乱码在线观看| 激情婷婷六月天| 超碰cap| 久草久青福利| 日韩成人电影AV| 丁香青青五月天| 婷婷天天舔| 九九九九这里只有精品| 五月激情啪啪啪| 久久激情五月| 久久亚洲无码| 婷婷午夜综合| 午夜婷婷久久| 大香蕉久久婷婷| 九色视频入口91| 五月天四色房丁香| 人人色人人弄人人操| 大香蕉久久伊人婷婷五月丁香| 成人在线综合| 操九色| 中文av网站| 久久五月天丁香| 国色天香伊人狠狠色| AA丁香综合激情| 婷婷少妇激情| 五月婷婷亚洲色视频| 97涩婷婷| 亚洲天天| 香蕉久久五月| 五月丁香六月婷婷网| 超碰九热| 亚洲成人五月天| 一区操| 79成人网| 淫视馆av三区| 久久五月天激情| 亚洲av另类在线观看| 手机激情网| 免费无码毛片一区二区A片| 99色看这里只有精品| 国产三级片91| 六月婷婷七月丁香| 久久99操| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 人人干女人| 91人碰| 中文字幕色色| 日本不卡中文字幕| 久久五月网| 淫视馆aV二区一区| 色五月婷婷丁香国产在线| 九九热最新地址| 婷婷五月成人有| 丁香婷婷综合激情五月色| 热热久久精品视频| 婷婷五月天渟渟| 成人精品亚洲性爱| www91久久| 五月丁香婷草| 成人在线不卡| 五月婷婷色| 天干天天干天天天天天| 亞洲自怕| 91丨九色丨熟女丰满| 色婷婷av在线| 午夜成人片400| 六月婷婷国产| 六月丁香婷婷综合狠狠爱夜夜爱| 直接看的av| 五月天开心激情网色欲无码| 狠狠干综合| 婷婷五月天com| 国产97在线日韩亚洲女人被黑人巨大| 开心五月婷婷| 日韩 欧美 国产 一区 二区| 日本波多野结衣视频| 99精品福利视频| 亚洲综合无码| 一区二区成人电影免费播放| 五月丁香色婷婷| 97九色| 欧美成人AAA片一区国产精品 | 婷婷六月久久综合导航| 狠狠色噜噜狠狠狠888了| 久久免费高| 丁香五月天婷婷中文字幕| 97干97色| 91啦丨九色丨刺激中文| 欧美内射AA| 2025最新亚洲激情在线| 色婷婷精品视频在线播放| 六月激情婷婷| 亚洲AV成人在线| 婷婷无码视频| 亚洲精品亚洲人成人网| 丁香婷婷AV| 五月婷婷深深爱| 侠女刀之记忆电影在线看免费| 婷婷五月丁香国产| 开心激情综合| 中文字幕婷婷五月天在线观看| www.婷婷.com| 另类少妇人与禽zOZZ0性伦| 五月婷婷在线综合| 深夜男女福利刺激影院一区完整| 丁香六月婷婷激情| 婷婷九月色| 色五月中文网| 婷婷免费无视频| 超碰爱爱爱| 另类少妇人与禽zOZZ0性伦| 好激情在线综合网| 99这里有精品视频3| 天天久久婷婷| 三十熟女| 天天干天天操天天拍| 五月丁香婷婷激情视频| 天天色爽| 亚州操操| 99精品网址| 这里只有精彩视频| 中美日韩成人在线| 日本狠狠网| 久久人妻乱子伦| 在线资源av-超碰中文在线-成人AV| 国产AV一区二区三区最新精品 | 亚洲精品影视| 在线日本www| 26uuu欧美| 婷婷五月,偷窥偷拍网| 99爱免费在线视频| 亚洲午夜成人av电影网| 思思热99热| 婷婷五月天美女21p| 日日干夜夜撸夜夜骑| 91丨九色丨丰满人妖| 欧美日本不卡黄色片| 99这里有精品视频| 五月婷婷中文| 337p大胆噜噜噜噜噜91Av| 99热这里有精品24| 99r久久这里只有精品| 操逼六区| 五月丁香在线观看99| 国产干逼片| WWW.桔色成人.COM| 色五月综合网| 丁香五月在线观看| 人人播| 色五月天堂| 久久久久久五月天| 激情综合网 激情五月天| 日日干日日色| 79精品在线视频| 亚洲综合五月天婷婷| 亚洲九九夜夜| 国产 码在线成人网站| 9l视频自拍9l九色成人| 91精品综合久久久久久五月丁香| 色激情五月| 色色射| 亚城区在线| 色五月成人在线| 丁香花五月天| 天天做综合网色综合| 天天做天天爱天天爽在| 五月丁香在线国产 | 天天日天天摸| 五月丁香六月婷婷久久| 激情五月婷婷网| 天堂网色色| 婷婷丁香黄色| 国内久久亭亭| 九九人人自拍| 久久五月丁香婷婷| 激情综合五月色在线| 亚洲丁香婷婷五月天综合色| 伦乱美欧| 五月丁香久久久| 婷婷5月色| 五月天天天综合| 亚洲精品电影| 中文人妻主播久久| 五月天激情图| 美女丁香五婷婷| 综合色综合| 色婷五月天综合网| 91激情五月开心| 九九色综合网| 日本片日本片祼观看网站在线看中文版网页在线看 | 狠狠色情婷婷| 深夜激情网| 这里只有精品无码| 日韩无码色色| 99在线观看| 性一交一乱一交A片久久四色| 丁香五月激情啪啪| 99cao婷婷| 日韩美一级毛卡片| 人妻九九九九| 亚洲成色综合网站免费观看| 日日插日日干| 99九九99九九九视频精彩| 99热这里只有精品2| 思思热在线视频精品| 无遮羞AV| 教师性爱毛片| 久大香蕉| 激情婷婷五月天伊人在线观看 | 午夜婷婷五月天在线| 综合九九日本| 9热在线视频| 婷婷激情在线| 96性爱视频| 欧美性爱5月天天天看| 婷婷丁香成人五月天| 激情五月天啪啪| 婷婷免费视频| 在线色婷婷| 97人人做| 麻豆123区| 九色啦蜜臀| 国产毛片精品一区二区色欲黄A片| WwW色婷婷| 夜色综合网| 五月天天丁香婷婷在线中| 99性感视频| 综合一区二区三区| 男女啪啪做爰高潮无遮挡| 久久婷婷大香蕉| 久久9久| 丁香激情六月天婷婷| 婷婷五月天av| 五月天色五月| 桃色五月婷婷| 亚洲五月婷婷| 99久久6| 97干在线视频| 丁香五月天激情四射网| 色狠狠图片| 9久精品视频| 精品99*| 91人操| 久久视频九九视频| 久久99热这里只有精品| 九月丁香欧美综合| 五月亭亭六月激情| 综合婷婷| 99性爱视频| 日本欧美成人片AAAA| 日韩 mm 不卡| 99视频| www:99热视频| 久久婷婷亚洲五月天| 99ri在线观看视频| 午夜色丁香| 99超在线| 97香蕉碰碰人妻国产欧美| 97luluse| 婷婷五月天激情在线观看| 丁香五月婷婷综合网| 久久综合丁香激情五月| 第四色五月婷婷| 欧美激情xxxXX| 五月丁香啪啪啪综合网| 伊人久热91网| 久久性爱视频久久性爱视频| 成人综合网站| 国产乱码久久| 五月天婷婷成人网| 色吊丝av中文字幕| 九九精品视频在线6| 亚洲综合在线视频| 五月丁香啪啪| 日本三级中国三级99| 丁香五月天婷婷大香蕉| 五月丁香六月欧美综合| 九九九九综合| 丁香五月激情综合婷综| 2025色婷婷| 99re欧美精品| 国熟女视频| 天天骑天天操| 一级黄色操B| 另类综合国产| 精品9197碰| 丁香五月婷婷五月天在线| 狠狠色噜噜狠狠狠狠综合| 99 福利 导航| 六月丁香五月天| 日本三级日本黄色| 九九色热视频| 色播激情| 丁香五月婷婷天激情| 五月色丁香| 高潮毛片遮挡费高一百度| 99色精品视频| 99热欧美| 丁香五月影院| 精品在线网站| 亚洲精品视频在线播放| 丁香五月成人社区| 婷婷久久午夜网| 婷婷俺去也| 青青.com| 激情五月天网| 久久婷婷五月综合色播| 婷婷六月激情综合| 99热在线观看免费| 亚洲妇女熟BBW| 天天爱天天做天天舔| 久久综合激情| 色色婷五月天| 婷婷五月在线影院| 婷婷五月丁香网| 亚洲不卡123| 99热九九热| 亚洲色综久久五月| 五月婷婷婷| 九九十99视频| 五月天激情小说| 丁香五月天激情婷婷丁香六月 | 蜜臀99精品| 色婷婷天堂| 欧洲亚洲免费视频9 | 大香人妻| 激情婷婷五月天| 99久久.www| 亚洲AV网址| 人妻中文在线| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 激情综合网激情五月丁香| 久久久久久久久久久久久久久久久精典| 99这里只有| 丁香五月www| 午夜九九九九九九九九九九九九九| 91岛国片| 日本99视频| 久久综合网免费视频| 丁香五月影| 九九综合久久| 九九这里是免费的视频5| 色婷婷久久综合久色| 草草色情综合网| 开心五月网 | 国产FREESEXVIDEOS性中国| 五月丁香网av| 久久婷五月影院| 婷婷五月天成人| 久久之人妻| 亚洲精品无码一区二区| 五月丁香六月婷婷综合网站 | 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 色娸娸综合网| 色区久久| 五月婷婷狠狠干| 欧美色色干| 久久久久9| 99在线观看亚洲| 丰满少妇猛烈A片免费看观看| 午夜婷婷五月天| www.一起草av| 狠狠色综合网站久久久久| 天天撸夜夜爽| 日本免费91| 97人人操人人爽| 69激情小说| 久久看婷婷| 婷婷五月天激情网| 极品另类| 亚洲色色色色| 97综合在线| 国产精品久久欧美久久一区| www色综合| 久操人妻| 国产精品美女久久久久AV超清| 久久思思热| 提提热五月天婷婷| 人人叉久| 婷婷激情五月综合丁香社| 综合久久首页| 99热免费| 色婷婷激情| 人妻 性久久久久久| 久久99精品九九久久久婷婷| 婷久久久| 内射爽无广熟女亚洲| 狠狠激情五月天| 六月婷婷无码| 久久九九玖玖| 97久操| 大战熟女丰满人妻AV| 五月婷婷综合久久| 色五月丁香伊人五月| 婷婷基地成人五月天| 狠狠色丁香婷婷久久综合| 九九九激情综合| 九九视频这里只有精品| 天天爽天天爽| 九九热精品6| 激情播丁香| 丁香婷婷黄网站| 涩 五月 婷婷 狠狠| 三级片AAA久久久AAA久久久AAA | 五月天婷婷一起草| 日韩精品999| 2022久久婷婷| 亚洲一级 片内射网站在线观看| www九九热| 五月婷婷偷拍| 99热97| 99久久免费精品| 国产亚洲99久久精品| 大香蕉五月| 操逼亚洲天堂| 国产精品天天狠天天看| 五月丁香成人网| 九九碰九九爱97超碰| 久久精品只有这| 亚洲婷婷五月天激情综合| 五月丁香久久综合| wWwCom夜操wwW| 激情黄色小说色五月| 99人人精品| jiuse91在线| 亚洲精品久久久无码| 99啪啪视频| 久操热| 国产综合色婷婷精品久久| 日日操夜夜爽| 婷婷五月天六点丁香五月| 亚洲99精品九九在线| 三十熟女| 日日操夜夜擼| 成人超碰网| 欧美性猛交XXXX乱大交极品| 国产高潮A片羞羞视频涩涩| 色婷网| 五月天激情综合网| 亚洲成人免费在线| 天天日夜夜爽| 国产69久久久欧美黑人A片| 乱精品一区字幕二区| 午夜丁香婷婷| 国产小精品| 日本精品人妻无码77777| 8090在线影视少妇| 一级AV片| 亚洲天堂AV综合网| www99xxxx五月丁| 九月大香蕉| 中文字幕欧美久久| 五月天久久综合| 五月婷婷久久久| www九九热| 六月色婷婷色| 天天做天天爱天天爽在| 久久五月天综合视频网站| 五月丁香少妇网| 9999色色色色| 终合激情网| 久久综合婷婷五月| 激情小说五月天| 婷婷五月天色色| 五月婷婷五月天| 国产美女无遮挡裸体毛片A片| 超喷97免费在线视频| 亚洲免费成人电影AV| 98色丁香五月婷婷综合网| 红桃91人妻爽人妻爽| 激情国产综合| 在线99热| 天天成人五月天| 久久综合激情婷婷激情| www.五月天婷婷| 国产精品成人AV在线| 色五月欧美| 1024操逼| 丁香六月婷婷综合啪啪| 性色人人爽| 天天艹天天色| 五月天激情网图片| 色色色热| 久久这里只有精品视频15| 色99免费视频中文| 久久久婷婷婷| 另类小说婷婷色| 亭亭玉月丁香| 久久这里只有精品热在99| 极品人妻VIDEOSSS人妻| 啪精品| 婷婷丁香五月天综合AV| 色欲五月婷婷| 久热一本| 超碰狠狠色| 色婷婷超碰| 免费看欧美成人A片无码| 东北熟女高潮99综合99| 97中文在线| 色婷婷深爱五月| 五月天综合在线观看| 五月婷婷片| 久久密臀婷婷| 99色视频| 这里只有精品免费观看网占| 五月婷婷六月丁香玖玖玫瑰91| 人人草人人舔| 超碰中文字幕在线| 亚洲精99| 五月婷婷六月情| 天天做天天爱天天高潮| 97色一二三| 人人爽人人射-美女久久久久久久久久-成人AV | 艹色18p| 激情五月天婷婷| 久热网站| 色五月综合| 五月丁香六月婷婷综合| 激情五月图| 殴美综合激情五月天免费视频| 天天操夜夜操| 久久99大全| 五月丁香婷中文字幕 | 婷婷五月无码| 超碰99在线| 婷婷大乡焦噜噜| 色婷婷丁香五月天激情综合网| 91偷拍视频| 婷婷天天五月天| 五月婷婷六月丁| 婷婷色成人| 天天插天天干| 久99久热| 婷婷五月天激情基地| 色婷婷狠狠| av在线激情| 亚洲欧美另类在线23p| 婷婷五月色| www.97碰碰com| 无码 色| 青青久在线视频免费观看| 久久狼人天堂| 婷婷五月天国产| 色五月 婷婷, 大香蕉| 亚洲色涩视频| 1区2区视频| 国产三级在线播放| 麻豆123区| 色欲天天综合网| 亚洲在线综合| 婷婷色五月婷| 99久久精品国产色欲| 婷婷激情久久| www.婷婷五月天啪啪| 91操人| 五月丁香大相交| 天天五月天综合网址| 婷婷综合性爱网| 99热思思在线观看| 激情五月五月婷婷| 99热老网站| 操操自拍| 九九亚洲无码| 激情五月六月| 久青草大香蕉| 无码人妻一区| 日韩精品呦呦va| 五月婷综合网| 91操人人操| 久久狠色噜噜狠狠狠狠97| 人妻久久久久久| 五月香婷婷| 免费亚洲婷婷中文字幕| 啪啪丁香五月| 9热精品| 最新久久99视频网站| 亚洲最大五月六月丁香婷婷| 久久婷青青草原| 翔田千里无码| 激情综合五月| 色色永久| 538在线精品| 这里只有在线精品| 五月天婷婷色| 丁香五月天在线观看视频| 超碰在线人妻| 天天狠狠婷婷在线| 久久九九色| 蜜桃婷婷五月| 五月天色五月| 激情五月婷婷在线区| 国产AV一区二区三区日韩| 玖玖资源网站最新站| 国产做A爰片毛片A片美国| 天天干天天日日| 夜夜操加勒比| 这里只有精品视频在线看| 五月丁香久久激情综合| 婷婷五月天激情网站| 中文字幕婷婷在线| 97精品自拍视频| BT综合在线视频观看| 99精品视频网| 五月综合激情| 99综合视频| 一区二区三区四区五区| 99久久户外勾搭| 五月激情婷婷开心| 丁香花成人区| 综合色色婷婷| 色色99色色| 9国产在线视频| 操操操AV| 91狠狠色色丁香婷婷综合久久| 超碰99在线观看| 深爱五月激情网| 2025神马午夜福利| 丁香五月激情啪啪| 婷婷五月丁香花综合| 亚州色色色| 五月天天天开心激情网| 日操夜操天天操不卡| 人妻久久久久久| 91爱啪啪| 国产露脸150部国语对白| 色情综合网| 91视频精品99| 一起草av| 青草少妇激情| 久久99久久久久久| 国产精品色情AAAAA片软件| 国产日韩亚洲欧美在线观看| 97五月久久丁香婷婷| 天天干天天插| 丁香婷婷成人在线播放| 9月色婷婷| 色婷五月| 婷婷丁香人妻天天| 亚洲av成人在线| 欧亚成人A片一区二区| 欧美xx激情视频在线观看| 九九热视频99| 亚洲九区| 情趣视频66| 人妻九九九九| 乱乱av| 天堂综合久久 | 欧美色婷婷| 天天综合中文| 色婷婷大香蕉| 七月婷婷色香综合网| 五月天婷婷免费视频| 五月天婷婷免费| 日本少妇裸体做爰高潮片| 天天天天操| 亚洲婷婷开心五月| 激情五月综合久久| 日本熟妇乱妇熟色A片蜜桃| 五月丁香激情综合久久| www.99久久久| 亚洲精品第一国产综合亚AV| 亚洲无码播放| 伊人丁香婷婷东京| 久婷婷婷| 亚洲精品**不卡在线播he| 99熟女| 五月播播| 五月天快乐开心激情网| 九九人人看| 可以看的av网站| 婷婷六月丁香欧美视频在线| 五五月丁香花激情综合网| 久久综合五月天激情小说网站| 99这里有精品视频| 天天爽天天草| 伊人五月天日日夜夜久久久天天| 丁香色影院| 久草热8精品视频在线观看| AV在线中文| 99色亚洲| 人人天堂操| 色色五月天婷婷丁香| 免费超碰在线观看| 久久九九免费视频| 色五月丁香五月| 狠狠操在线视频| 如何安全看伊人婷婷| 久久婷婷六月综合综合| 少妇人妻丰满做爰XXX| 人妻人人操| 特级西西4444www无码| 丁香五月婷婷88在线| 99在线精品观看99| www.99热这里精品| 91无码一起草| 六月丁香啪啪啪| 在线视频你懂得| 2025天天日爽| 亚洲第一精品成人999久久精品| 婷婷的五月天另类视频| 中文字幕AV在线播放| 大鸡巴伊人网| 国产AV熟妇人震精品一品二区 | www.激情五月天.com| 内射综合网| 久激情| 99视频综合网| 影音先锋91在线资源站| 色婷婷在线视频| 婷婷欧美| 激情五月天伊人影院| wwwxxx五月婷婷小说| 九九热九九热精品| 大香蕉啪啪啪| 国产成人av在线播放| 日本久草福利| 99视频在线啪| 九九色网专区| 97在线观视频免费观看| 99久久综合| 久久免费精彩视频| 操人91| 超碰成人在线观看| 五月天伊人综合| 六月激情网| 色五月婷婷九月| 日韩AAAAA| 色丁香婷婷美女视频网站| 婷婷五月天777| 天堂AV三级| 99久久66| 色八月婷婷| 五月丁香日本片| 精品国产va久久久久| 97成人丁香婷婷| 婷婷中文字幕| 丁香婷婷六月激情文学| 性一交一乱一交A片久久四色| 婷婷综合色| 久久久激情视频| 国产成人av在线播放| 91尤物九色在线| 亚洲最大在线| 99久在线精品99re8| 久久五月视频| 99 r热| 婷婷五六月丁香| 五月熟妇婷婷久久| 国产中文亚洲欧美日韩性交| 婷色人人狠| 婷婷亚洲五| 婷婷天天舔| 操日本人妻视频| 五月丁香无码| 色婷婷狠狠| 天天综合精品| 影音先锋色婷婷| 91色吧网| 九色PORNY9l原创自拍| 深爱激情丁香| 国产一区二区三区影院| 国产精产国品一二三在观看 | 五月激情婷婷在线| 成人av免费观看| 欧洲第一无人区观看| 亚洲中文字幕在线观看| 人操综合| 久热伊人9| 日本91在线| 激情综合网五月天天| 天天综合亚洲综合| 五月婷色激情五月| 2020日日干| 五月婷婷之综合激情| 五月天丁香| www.91热久久| 久久女人九九| 婷婷的99视频网站| www.久久99| 五月婷人妻| 九九这里精品| 久久国产色| 亚洲中文字幕AV| 丁香六月婷婷久久综合| 五月丁香综合| 婷婷色狠狠| 在线观看欧美| 五月丁香色色网| 五月天色婷婷视频| 99热官网精品在线| 婷婷色网站| 欧美交换配乱吟粗大25P| http://www.com久久久精品一区| a片在线免费观看一区| 色五月天堂| 婷婷六月天精品| 欧美综合激情丁香五月六月婷| 伊人久久婷婷| seuuu婷婷| 武则天精品久久| 九九热这里只有精品12| 97人人操| 丁香综合| 久久资源网五月婷| 婷婷激情五月综合在线视频| 秋霞A V毛片| 六月成人网| 99精品在线观看视频| www.日韩艹| 免费97碰碰| 亚洲国产精品二二三三区| 久久久A级视频| 六月激情婷婷综合| 色婷婷先锋| 国产肥白大熟妇BBBB视频| 踪合专区啪啪| 天天干肏夜夜| 十一月婷婷激情四射| 欧美成人精品A片免费一区99| 久久久九九视频精品18| 这里只有精品偷拍| 六月丁香VA| 全部老头和老太XXXXX| 综合99视频| 丁香六月爱综合| www.超碰| 婷婷丁香综合| 久久奄也去色色网站| 玖玖综合色| 欧美激情 日韩无码 婷婷 五月天| 亚洲思思热久| 激情网五月天| 91久久网站| 大功率国产在线| 久久亚洲天堂| 狠狠色色色| 99在线免费视| 99热这里只有精品1025| 丁香六月亚洲| 很很干五月天| 婷婷激情六月| 久久九九@| 婷婷婷婷婷开心无码播放| 国产精品人人做人人爽人人添| 国产在线黄色| 五月天婷婷基地| 伊人网色婷婷五月天| 婷婷久久婷婷色五月| 91人人操人人| 久人操| 欧洲第一久色| 国产亚洲精品久久久久苍井松 | 天天综合网91| 五月丁香六月激情在线| 黄色片avv| 五月婷婷综合网在线播放| 五月婷久久| 香蕉视频91| 婷婷丁香色情五月天| 五月天久久色| 狠狠肏综合网| 99操视频| 99啪啪视频| 五月 成人 婷婷| 丁香五月婷婷亚洲另类| 久色国产| 丁香五月花影院| 丁香伊人激情| 色婷婷综合网| 99人人干| 色婷婷香蕉| 97色热| 婷婷在线视频| 亚洲九九婷婷| 色色色热| 18久久| 99国产视频网| 奇米四色五月天| 五月天色婷婷网| tingtingcaobi| 亚洲精品色色色| 五月Huangsewang| 6080av| 99国产精品久久久久久久久久久| 天天狠天天狠| 五月天婷婷激情| 这里只有精品日韩| 久久免费精彩视频| 视频综合网| 亚洲AV免费在线| 丁香五月天在线视频| 五月婷婷基地| 色亚洲视频| 亚洲视频一区| 九九九午夜影院成人| 成人做爰黄A片免费看直播室男男| 丁香色啪综合| 亚洲第一成人无码A片| 99色色最新视频| 婷婷中文字幕网站| 五月丁六月婷| 香蕉久久五月| 日韩AAAAAAAAAAA片| 中文字幕五月久久婷| 99久久99久久综合| 五月天婷婷开心| 美国少妇性做爰| 九九热在这里只有精品| 九月婷婷在线视频| 五月丁香六月婷婷综合| 久久久久久久久久久久久久久久久精典| 综合激情深爱| 久久五月婷婷视频| 91久久综合亚洲鲁鲁五月天| 超碰人人在线| 99精品偷自拍| 丁香五月婷婷乱| 五月色婷丁香| 99.N在线视频| 久久五月视频| 国产精产国品一二三在观看| 婷婷色五月久久| 1024欧美看片| 色色色综合| 激情五月婷婷| 少妇AB又爽又紧无码网站| 婷婷综合在线观看视频| 欧亚中文A V| 色九亚洲| 日韩五月婷婷| 教师性爱毛片| 精品色色| 97久人人| 深爱五月激情| 色狠狠综合网| 久久婷婷综合色丁香| 一级精品999WWW| 婷婷丁香六月综合激情站| 国产婷伊人| 五月婷婷六月色| 亚洲艹网| 五月婷婷亚洲天堂97色婷婷| 激情丁香五月婷婷| 99re这里只有精品99| 中国无码av| 天天日本夜夜谢| 少妇激情基地| 五月天激情美女久久| 天天操夜夜操| 激情五月天黄色小说| 老师高潮流白浆喷水的A片| 狠狠操天天干| 五月丁香久人妻中文| 色噜噜丁香| 色九亚洲| 婷婷五月色影视先锋| 无码A片一区二区免费| 六月丁香激情网| 精品久久久久久久人妻| 99碰碰视频| 香蕉婷婷五月| 婷婷色五月开心五月| 免费精品66| 丁香五月天天| 天天干一干| 夜夜操夜夜操| Xx色综合| 激情久久婷婷| AV大香蕉| 色婷婷丁香五月在线观看| 性爱网久久| 激情超碰网| 久久婷婷伊人| 五月天婷婷在线观看| 99热免费精品热久久66| 开心久久网婷婷| 99热综合| 色婷婷五月天成人网| 五月婷婷综合激情| 色九九综合热99| 4399啪啪视频| 色一情一乱一乱一区91Av| 9这里只有精品| 超碰人人色| 99热黄| 色丁香久久| 欧美色色色色色| 色噜噜狠狠色综合日日免费| 五月激情网站| 婷婷成人av| 另类激情综合| 九九性爱网| 亚洲色色精品| 综合激情五月四射婷婷| 亚洲av无码精品色午夜| 国产做A爰片毛片A片美国| 五月丁香六月激情综合| 99精品22| 久久国产精品乱子伦_靑青草…| 99热只有精品在线| 丁香88AV五月婷婷| 婷婷五月天福利| 久久婷婷综合国产| 开心五月深爱五月丁香五月激情五月 | www天天干| 99啪啪| 六月婷欧美| 婷婷新网址| 99在线精品免费视频| 99re在线观看| 五月婷婷丁香啪啪| 五月丁香欧美综合| av在线资源| 五月久久网| 92久操视频| 婷婷五月天A V| 婷婷成人五月天| 亚洲1区| www久久久久久久97| 激情六月天婷婷|