久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码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)練腳本里常見(jià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à)的尤其是在小模型和敏感層面前。常見(jiàn)問(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è)類模型里這種混合模式很常見(jiàn)。這幾個(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è)、圖片分割這類常見(jiàn)任務(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ì)緩慢上漲。我見(jiàn)過(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ù)肉眼可見(jiàn)地減少幀率穩(wěn)定性有明顯改善。5.4 常見(jiàn)部署問(wèn)題的排查清單這一年多做了不少TFLite部署項(xiàng)目把最常見(jiàn)的坑匯總成一張表直接對(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
返回資訊列表
一个国产在线综合网站| 婷婷亚洲天堂| 精品少妇一区二区三区| 久久婷婷色综合一区二区三区| 高潮毛片无遮挡高清免费| 乱色老一区二区三区的观看方式| 亚洲色人妻综合| AV一起草在线| 91美女片在线| 啊啊啊啊好疼| 国产午夜精品一区二区三区牛牛| 国产丝袜高跟美女av免费观看| 亚洲宅男天堂| 免费啪啪一级视频| 久久黄色性爱视频| 91精品人妻偷情| 思思热一热婷婷热一热| 曰韩香蕉97| 亚洲麻豆精品二区三区| 婷婷天堂站| 国产欧美精选自拍一区| 日韩国产精品人妻无码久久久| 97在线资源| 国产60区。| 综合影院亚洲| 一级黄碟| 九9热伊人| 欧美日韩97在线| 91久久18禁| 亚洲av夫妻操穴网| 97人肏| 操逼视频免费日韩无码| 成人午夜小视频手机在线看| 五十路三级片| 麻豆天美电影一区二区| 另类 综合 日韩 欧美 亚洲| 久久久久9999精品九九九| 日本不卡码黄色| 国产剧情一区在线观看| 女同亚洲欧美一二三区久久电影| 美女超碰978| 大香交伊人网| 欧美色天堂网在线视频| 亚洲在线欧美| www色婷婷| 热久久国产精品视频大陆精品| 精品妇女一区二区三区| 大鸡吧尹人在线| 色综合中文字幕不卡| 熟妇人妻精品一区二区视频色欲| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 欧洲亚洲人人爽爽视频| 天天射影院| 亚洲色图殴美色图激情乱伦| 曰韩精品九九无码 | 日韩特一级久久| 一区二区三区在线日韩影院观看| 青青草原伊人网| 久久久精选| 资源新线在线天堂| 26uuu性| 成人八戒网站| 超碰免费97| 97ai亚洲| 亚洲日韩视频二区| 亚洲成人无码影院| 五月香婷婷| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 日噜夜夜夜夜夜夜夜夜夜夜爽爽爽爽爽爽爽爽爽爽爽爽 | 欧美性,色九九| 男女激情中文字幕| 亚洲人综合| 天天日天天干少妇日| 无码高清操逼| 97色色视频| 亚洲中文制服诱惑| 日本天天干天天日一区| 啊啊啊无码| 无码国产Av| 国产成人+综合亚洲+天堂| 日本国产高清色www视频在线| 96久久精品一二三区色欲| 亚洲国产精品无码AV在线| 伊人久久婷婷| 9 9无尺码天堂网| 爱爱动态60秒| 岛国成人av在线播放网址| 亚洲精品丝袜-不卡成人免费……| 精品一区二区啪啪啪| 欧美国产一区二区三区麻豆传媒 | 久久精品一区二区三区四区五区| 夜夜操中文字幕| 青久操| 天操天操夜操夜月月年年操操| 操逼逼无码| 欧美日日操| 国产精品毛片?v一区二区三区| 嫩草影院在线观看精品| 亚洲成人一二三区| AV中文字幕三四五| 免费在线黄片视频| 欧美韩国你懂得在线| 国产大学生口爆吞精合集| 丁香五月电影| 免费看日产一区二区三区| 日本一本道A级黄色毛片试看60分钟| 一类无码操逼视频| 东京成人一区| 伊人少妇久久久| 后入综合久久| 插欧洲美女欧美精品| 嗯……啊…嗯嗯…啊…好舒服| 久久影视二区三区行押| 久草免费福利在线播放| 精品妇操一区二区三区| 最新中文字幕精品在线| 日韩精品电影| 国产日韩精品人妻久久久久色欲网站 | 一级性爱视频免费在线| 97天天在线| 免费的黄片有限公司| 亚洲综合网图| 国产精品懂色tv影视免费观看| 无码又爽又硬又激情免费视频| 天堂资源站| 国产黄色影片在线观看| 国产欧美日韩臀| 激情黄色片在线观看| 亚洲综合色男人网| 国产 日韩 欧美高清| 久久久久9999妇女| 国产精品人人爽人人做可爱福利| 欧美在线|亚洲| 93人人操人人| 九九热三级片| 后入人妻一区| 国产成人无码久久精品| 蜜屁av| 精品一区二区三区蜜桃臀赵总 | 69天堂| 综合五月天| 欧美日韩资源| 精品射1999| 国产综合色精品在线观看| 97视频在线观看播放与子乱对白在线……| 伊人天天久久动态图| 丝袜喷水在线| 草草影院最新网址| 国产精品久久| 国产后入式在线观看| 性吧在线视频| 乱伦a片视频| 色偷偷人人玩人人舔人人操人人摸人人爽| 一起草精品人妻| 欧美色图20P| 色月天AV导航| 91性高潮久久久久久久久| 私人尤物在线精品不卡| 夜夜操中文字幕| 成人精品在线| 两女互慰AV高潮喷水在线观看| 久久精品夜色国产亚洲AV| 唐山老熟妇露脸啪啪叫| 国内精品嫩模A∨私拍小视频| 亚洲人妖网| 免费看日本操逼视频| 探花视频免费观看国产专区| 无毛精品| 日本加靬比网站发布页| 激情五月天色色网| 日本欧美亚洲高清在线看| 好吊色综合| 亚洲熟女乱综合一区二区三区| 丁香色五月 97干| 国产狂喷潮在线精品| 亚洲交换| 96久久久精品| 密臀在线免费观看| 婷婷激情五月| 国产黄色av大片网站| 激情黄色片在线观看| 爱丝福利| 亚洲图片欧美另类综合免费视频大大香| 一区二区激情国产熟女| 啪啪啪精品| 老女人综合| 欧美论理片| 久久久久成人蜜桃精品| 99久久婷婷丁香| 麻豆美女丝袜人妻中文| 久久久久久久久国产| 综合在线导航一区| 亚洲啪啪视频免费| 亚洲天堂资源网| 歐美性天天| 色色色网站| 囯产操逼片| 人人操人人摸avav| 无码久久国产| 超碰成人人人爽人人爽| 色爱天堂| 精品人妻一区二区蜜桃视频 | 91天天综合网| 97ai亚洲| 水滴偷拍| 日本天天干天天操一区| 久区视频| 欧亚性爱啪啪| 97国产色综合| 国产亚洲精品玖玖玖在线观看| 三级日本一区二区三区| 综合性视频99| 亚洲精品97久久中文字幕| 亚洲伊人久久精品影院| 极品少妇99| 精品国产嫩穴视频| 国产女上位好爽在线| 欧美.亚洲.另类.丝袜.制服.诱惑| 911粉嫩人妻| 无码高清操逼| 青青草天天亲夜夜操网| 欧洲一级性爱视频在线观看| 特级特黄一级毛片免费| 亚洲精品国产熟女| japan日本高清乱xxxx| 先锋影音av先锋一区| 亚洲精品一二牛牛| 内射小黄片| 中文字幕美女91| 日韩在线欧美精品一区二区| 久久国产AⅤ| 热99这里有精品综合久久| 夜夜嗨视频| 日日骚中文字幕| 七月丁香婷婷| 99久久久无码精品国产人| 日韩字幕一区| 久久久无码av精| 日韩中文字幕二区| 丁香五月性| 激情丁香五月婷婷| 精品久一区免费| 夜夜高潮夜夜爽高清视频一| 蜜臀99999| 天天插夜夜爽| 日韩ab网| 91在线观看,天天综合| 欧美 亚洲 在线| 神马九九| 九月丁香婷婷色| 1禁看欧美黄片免费看| 亚洲精品成人激情在线| 久久久久久午夜男人的天堂| 久久神马影院| 欧洲站一级二级三级h| 欧美综合综合| 欧美一级黄色免费专区| 免费在线观看AV无码网站| 免费一级视频特黄色大片| 亚洲色色色| 天天舔天天日天天射| 久久久性少妇| 在线人成亚洲视频免费观看| 激情综合婷婷| 福利天堂| 日本久久女同性恋视频| 自拍大香蕉乱插| 国产SV一线| 97少妇人妻中文字幕久久| 蜜臀久久99精品久久久久久酒店| 老司机深夜18禁污污网站| 美女被艹尤物视频| 精品无码一二三四区| 免费精品AB| 欧美超碰97| 91天堂色男人的天堂| 一区二区久久天天干狠狠| 风骚少妇视频中文字幕| 久热影视| 色色99| 久操电影网| 久久透逼视频| 青娱乐av在线| 17c嫩草51久久91嫩草| 99久久国产精品免费高潮| 超碰精品在线| 无码操逼天堂| 精品无码久久久久久国产浪潮| 一区二区偷拍拍视频| av 模特一区了| 国产乱伦视频污| 六十路日本| 亚州色图片在线色| 国产日韩在线播放av| 高凊专区人人操| 婷婷精品久久av影视| 欧美日韩国产黄色片| 亚洲美女精品| 97干在线视频| 一区二区三区四区色图| 亚洲一区二区av| 激情接吻视频久久久久久| 激情综合av| 人妻9117c| 久久久爆乳翘臀一线天伦理视频| 久久精品无码不卡| 色999五月色| 大香蕉琪琪日本女优不卡| 乱伦一二三| 精品人妻一区二区三区-国产| 久射吧| 久久久久九九九| 精国久久一区二区三区98| 亚洲制服aⅴ中文字幕| 国产精品久久久视频| 91精片| 玖玖97综合 | 97av在线视频| 啪啪自拍九九综合| 日韩乱码Av| 亚洲爽图| 求求你操操我| 色情乱伦AV| 狠狠爱夜夜干| 免费啪啪啪网站18岁| 日韩91网| 男人亚洲91首页在线| 91 丝袜在线播放| 91亚州欧美| 国产野战露脸在线播放| 制服中出中文人人精品| 黄片无码在线制服| 永久免费观看的毛片的网站| 欧洲亚洲人妻无码中字久久三区四区| 亚州免费啪啪视频| 欧美色图亚洲色| 宅男午夜在线视频| 两性色网| 9国产超碰| 在线免费试看60秒| 一色网男人的天堂| 亚洲精品官网在线观看| 美欧色综合| 夜夜夜夜夜夜夜夜夜狠狠狠狠狠狠狠| 丰满人妻一区二区三区大胸懂色| 综合网天天| 美腿丝袜偷拍亚洲欧美| 亚洲欧美日韩夜夜| 亚洲AV秘无码一区..| av线电影| av天堂5| 国产偷人伦激情在线观看| 久草精品一区| 九九热九九热| 在线观看色视频| 成人怡红院| 美美91成人国产精品欧美精品久久久久久久| 欧美熟女操屄| 性饥渴少妇av无码毛片| 性91| 国产久久久久影院老熟女| 中文字幕免费看大片| 国产AAAAAABBBBB| 9久久久久久| 97视频在| 精品免费1| 久久激情网| 欧美激情性爱视频网站| 乱伦熟女专区| 天久久久噜噜噜久久国产精品爽爽| 91九九九小逼| 国产suv精品一区二区四| 欧美日韩第一页| 欧美v亚洲v综合v国产v妖精| 97超碰色| 78超碰| 一二三四区操操Av| 青青伊人久久| 国产熟女二区| 国产熟女精品区| 97天天做| 国产怡红院| 操狠狠| 欧美精品自慰系列寂寞少妇| 亚洲免费在线探花| 国产精品制服丝袜清纯唯美| 激情五月天插| 内射夫妻三片| 无码人妻一区二区三区色欲aⅴ| 婷婷10月天青娱乐| 人妻激情视频| 国产乱子伦一区二区三区在线观看| 中文字幕视频免费| 久久噜| 国产精品久久久777| 色综合中文字幕不卡| 青青11操操操操操操操操| 可以看的av| 人妻久久久久久| 亚洲欧美校园另类春色| 亚洲成人av色网| 亚洲综合小说另类图欧美视频激情小说色五月天 | 天天干人妇| 亚洲成a人在线观看久| 久久久久久人妻一区精品色欧美| 久久久亚洲Av| 亚洲制服aⅴ中文字幕| 中文字幕亚洲热播人妻| 日本免费亚洲欧美| 婷婷成人五月天| 欧美亚州手机在线| 密臀AV在线| 久久超碰98| 色在线69堂| 日本熟妇自慰性高潮一区二区三区| 91在线/欧洲| 亚洲风情综合网| 午夜一区| 人妻天天爽天天爽三区| 成年女人黄网站| 亚洲一区二区中文字幕| 天天弄天天操| 一区二区三区日韩欧美| 日本东京热大香蕉a片| 欧洲精品久久| 久久日本熟妇熟色一区| 亚洲日本激情| 亚洲一区中文字幕一区| 久热久一区二区三区| 日日橹狠狠爱欧美超碰| 九一综合网| 欧美少妇色图| 国产黄片在线免费观看| 99操视频| 亚洲丝袜天堂| 亚洲情色 自拍| 中文字幕高清精品一区| 97人人模人人爽人人| 无码91| 天天天天天超碰| 久久久久久中文| 婷婷超| 亚洲欧洲国产综合av| 久久理论字幕视频| 中文字幕午夜精品久久久| 97欧美| 日韩久久.一级黄色片| 亚洲最新中文字幕免费| 色诱avtt| 日韩射精| 九九人人操| 国产精品久久久久久久久久久久久久久久久久 | 亚洲自拍天堂| 女色视频社区| 97超碰伊人| 国产精品毛片?v一区二区三区| 免费黄色片子| 欧美精品欧美精品系列 | 91天天| 青青操轻轻| 五月天伊人| 亚洲色婷婷久久91| 99免费视频| 五毛骚逼极品美女怕怕| 天天干天天燥| 美女大乳久久久久久久女人18| 人人妻人人玩人人澡人人爽| 无码国产精品午夜不卡(| 婷婷美人网| 岛国黄片网站| 亚洲棕合电彰| 亚洲情欲| 麻豆 欧美 日韩| 日韩精品人妻中文字幕不卡乱码| 亚洲国产尤物yw在线观看| 在线人妻熟女一区二区三区四区五区| 亚洲天天更新| 嗯~啊~快点 死我视频| 天天操妹子| 91强热人妻| 亚洲人码13| 欧美一区二区三区另类精品| 久久精品国产久精国产| 国产福利在线视频网站| 啊啊啊啊啊啊啊啊啊在线观看| 免费?级毛片无码?∨蜜芽试看| 一区二区三区男女操逼黄色小电影| 日本一级不卡一二区| 超碰成人国产| 伊色久人大在线| 伊人久久婷婷| 精品人妻一区二区三区日产| 天天综合网久久ww| 手机在线看片免费人成视频| 亚洲精品久久久久久| 在线观看岛国有码| 四虎免费在线播放| 欧美性爱97超碰| 欧美AAAA黄片| 色网1| 操逼片国产| 日韩色图 一区二区| 亚洲熟女中文字幕在线| 丁香婷婷五月| 超碰碰激情97+久| 国产小黄片在线免费观看| 欧美天天影院| 97人肏| 日韩欧美aⅴ综合网站发布| 伊人aaa| 亚洲性爱无码乱伦av| 亚州色图欧美色图| 久热69九色熟妇97| 综合 欧美 亚洲 日本| 天天综合网视频91| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 精品精品精品| 老外又粗又长一晚做五次| 91劲爆| 精品四五区| av强奸乱轮| 蜜臀99久久国产| 青青草吊丝| www.色婷婷色综合| 美日韩男女操屄视频| 99热大香蕉伊在线| 伊人天堂在线| 韩国午夜理伦三级好看| 色哟哟AⅤ| www.成人无码| 久久成年精品| 夂久色| 精品中文字幕第一页| 亚洲色图一区二区三区| AV男人天堂网| 中文在线久久字幕| 欧美日韩超碰在线| 操我无码| 人人人人插| 97在线免费观看视频| 亚洲综合一| 蜜臀在线免费观看在线免费观看| 亚洲精品中文字幕一区在线视频 | 欧美日韩制服| 亚洲久久东京热一二三四五区视频| 性色一线| 精品久久久久av影院| 超碰在线欧美性爱激情| 熟妇色99| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 亚洲高清在线se| 性色高清在线| 超碰在线974| 人妻熟女午夜精品在线| 性一交一乱一交A片久久四色| 免费的黄片有限公司| 超碰2017| 国产午夜精品一区二区三区牛牛| 偷拍五区| 日本高清一本二本免费不卡| 91路www| 无码人妻丰满熟妇奶水区毛片| 久久九九综合| 无码自拍SM| 日本理论在线| 久久久 国产精品| 草草网站影院白丝内射| 国产精品网址| 岛国激情视频软件| 日韩国产成人自拍视频| 九九久久一区二区伦理| 国产专区第一页| 91精品久久久久五月天精品| 操婢日韩| 在线综合色| 日本一本道A级黄色毛片试看60分钟| 一级@啪啪视频| 国产亚洲精品A在线观看下载| 日本一级特级毛片视频| 精品无码久久久久久国产浪潮| 成人国产视频在线观看| 在线日韩精品一区二区三区| 超碰97人人cao| 激情欧美97| 麻豆国产精品午夜视频| 国产精品久久久久久久电影渣男| 婷婷av在线中文字幕| 亚欧毛片基地国产毛片基地| 91欧洲国产成人久久精品网站| 91一区二区三区蜜桃| 97资源视频| 91人妻中文| 精品国产一级久久| 欧美色三级片91| 操我啊啊啊啊啊| 91五月天| 美女天天干| 啊啊啊久久| 亚洲无码太久| 自偷自拍的亚洲视频| 五月天激情网站| 伊人国产av| 99热99re超碰精品| 91色人| 欧美成人性活片| 国产av激情无码久久天堂| 亚洲va有码在线天堂| 亚洲av综合色区无码一| 日韩三级一区 | AAAAAAAAA黄片| 香蕉久久国产AV一区二区| 午夜天堂精品久久久久91| 中文字幕加勒比海高清无码免费视频| 色男人色天堂东京热| 啊啊啊啊免费视频| 91精品久久久| 日本免费不卡二区| 黑人粗大V S日韩女优视频| 夜夜躁狠狠躁日日躁av| 成人麻豆av电影网站| 992这里有精品| 丰满丝袜少妇AV| 操逼操逼操| 久久‘黄片视频| 九九九久千久久激情蜜桃在线看 | 老司机射| 97干色天堂| 少妇色欲综合网2| 亚洲乱色熟女一区| 国产激情久久久| 国产青青美女玩逼视频| 综合网欧美| 99久久精品国产高潮| 大香蕉国产中文自拍| 躁躁躁日日躁2020| 大香蕉黄色一区| 99蜜桃臀亚洲成人在线观看| 久久精品店| 97色碰| 超碰久久综合| 三级AV入口| 国产久久一区二区三区野外在线| 综合亚洲网| 1769精品一区二区三区| 日韩精品99久久久久久中文字幕 | 粉嫩av一区二区三区天美传媒| 2018天天干在线视频| 欧美性夜| 在线岛国新天堂8| 成人天天爽| 成人在线视频二区| 亚洲精品成人激情在线| 麻豆视频国产一区二区| 激情婷婷丁香网| 亚洲欧美精品久| 婷婷伊人| 免费簧片在线观看| 伊人五月天婷婷| 日韩在线电影| 97Ai亚洲| 97美日韩视频| 日本一线产区和二线产区伦理片| 欧美亚州综合图片| 丁香婷婷激情五月天无毒不卡 | 毛片麻豆91糖心精品毛情片| 亚洲第一二区另类图| 女人的久久久| 亚洲日产专区| 精品免费1| 78p欧美| 青娱乐av在线| 99九九久久| 超碰天天操| 91色伦| 麻豆尤物视频网| 玖玖久久久| 国产亚洲99久久精品熟| 成人精品一区二区91毛片不卡| 日本1区2区不卡视频| 91东京热男人的天堂| 老熟女乱伦一区| 亚洲免费在线探花| 亚洲欧美精品福利在线| www久久久| 欧美综合加勒比在线| 天天摸天天舔天天操| 久久九九97| 国产精品久久久 | 亚洲 小说 欧美 激情 另类| 亚洲强奸乱伦影视网| 欧美刺激色黄片免费看| 日韩在线视频1234| 龙兴卡官方查询| 亚洲在线| 精品久热| 美女的肌被草喷水视频| 国产精品乱码久久久久久久久| 中文字幕国产在线天堂| 激情五月天色色网| 麻豆伊人网| 97色碰| 青青操青娱乐| 啊啊啊骚| 国产精品无码av嫩草| 久久欧美按摩999| 不卡二三区人妻少妇| 成人免费福利网站国产| 极品内射| 免费视频在线一区二区不卡| 久久精品国产亚洲AV高清演员表| 久久综合九九| 好湿好紧视频| 综合色久| 伊人91| 五月综合色| 超碰欧美COM| 搡老熟女老女人老熟妇免费视频| 激情婷婷丁香| 久久性爱大全| 啊啊啊轻点在线观看| 国产亚洲精品第一最新| 狠狠色五月亚洲91| 亚洲第一色页夜| 人人妻碰人人免费| 超碰日韩美妻| 91丨九色丨熟女高潮| 日韩有码专区| 欧美精品第四五页中文字幕在线观看| 国产60页| 国内操逼视频二区| 亚洲综合一区二区| 人人操人人操人妻人| 好湿好紧好爽 视频| 国产成年精品高清在线观看91| 青青草久久| 色区久久| 黄色电影在线播放综合网站| 91在线丝袜| 97爱免费插| 精品国产91内射久久| 伊人欧美大香蕉视频| 国产农村妇女精品一二区| 亚欧日韩成人| 青青色在线观看| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 超碰国产情侣自拍网| 成人无码电影在线观看网| 夜夜爽夜夜高潮夜夜爽| 夜夜高潮夜夜爽高清视频一| 亚洲国产一级精品毛一级精品看免费视频| 少妇高潮一区二区三区在线| 欧美专区在线| 中字幕人妻一区二区三区| 久艹99| 在线人妻熟女一区二区三区四区五区| 日韩精品中文字幕一| 久久超碰网| 91欧美网| 玖玖无码超碰| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | av天堂影视中文在字幕在线中文| 一级做受视频免费是看美女| 国产精品白丝AV| 国偷自 一区二区| 在线五区| 97人人色| 黑人性暴力毛片| 9久9久9久9久视频网站| 日韩欧视频| 蜜桃AV天堂| 欧美激情一| 日韩天天综合| 91人妻少妇| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 性饥渴少妇av无码毛片| 精品78| 97超碰超碰| 超碰在线一区| 曰韩人妻中文字幕在线| 天天做天天爱| 试看日韩黄片| 思思热免费在线视频| 美国一区二区三区视频| 国产极品美女高潮无套在线观看| 国产 日韩 另类 视频一区爱| 久久久久9| 亚洲精品视频在线播放| 天天干2019| 欧亚日韩综合精品国产| 尤物视频视频官网| 淫荡少妇免费| 大香蕉操久久| 黄色一区三区| 国产一区自拍欧美日韩| 91丨九色丨东北熟女| 中文字幕版| 超碰2017| AV综合中文字幕干| 日韩丝袜高跟制服在线观看| 国产精品天堂| www.婷婷六月天| 熟女网站最新| 84YTCOM性无码| 色色色网站| 人人操人人射人人干| 国产精品不卡高清在线观看| 久久精品色欧美aⅴ一区二区| 嗯嗯,啊啊,国产精品| 91中文字幕在线观看| 精品九九国产无码| 91真人天天在线| 亚洲精品自拍| 蜜臀久久99精品久久久老,,| 国产91美女视频| 亚洲 欧美 手机在线观看| 嫩草伊人久久精品| 欧美精品久久久久久久丰满| 亚洲AO在线| 思思视频免费看网站| 国产传媒一区日韩| 日韩欧美成人性爱在线| 一区二区视频你懂的| 天天色黄色影院天天操| 久久秀这里有精品| 美女天天干| 91暧暧| 亚洲囯产精品女人久久久| 综合网97| 校园春色之综合网| 嗯啊视频免费在线观看| 玖日综合网| 日本人妻一区二区| 国产成人无码啪| 91在线丝袜| 大香蕉综合| 日韩精品永久在线观看| 亚洲图片欧美| x97av| 精品精品精品| 日韩熟女乱伦中出| 四方色播| 久久久久久中文| 久久人人妻| 色色香蕉| 欧美成人性爱视频在线播放| 香蕉免费一区二区三区不读| 日韩精品区二区三区不卡| 国产性爱在线视频一区二区| 伦理第一页| 欧美综合 站| 蜜桃视频一区二区三区在线观看| 欧美性爱视频免费一区一A | 亚洲熟妇图片| 婷婷五月天_亚洲小说欧美激情另类_精品久久国产字幕 | 国产免费大片| 加勒比大香蕉视频在线| 国内毛片无码一级毛片| 国产女人与拘做受视频免费| AAAA欧美日韩| 日本操逼视频在线| 电家庭影院午夜69久久夜色精品国产69乱| 青青草无码视频| 日韩av情韩国爱禁区av一区二区| 高潮综合网| 欧美色图中文字幕| 亚洲人在线| 超碰人妻中文在线| 日欧毛片久久| 亚洲凸凹超碰成人| 欧美日韩系列| 青青草原香蕉日本Ap| 人伦四五区| 国产剧情在线| 黄片免费视频2019| 综合 欧美 亚洲 日本| 国产区性爱在线视频秋霞豆| 欧美αv.com| 色官网在线| 天美传媒国产原创中文字幕亚洲欧美另类 | 男女一进一出视频久久| 人妻精品视频一区二区三区| 91在线免费精品视频| 国产一在线观看| 精品久久人妻成人网| 久久超碰爱| 黑人粗大V S日韩女优视频| 久久偷偷色综合蜜桃| 91热色| 黄片www视频免费| 一本一道波多野毛片中文在线| 人人摸人人添人人操| 99爱精品| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 蜜桃无码AV一区二区| 色婷婷成人| 四虎免费看黄| 免费国产视频| 欧亚乱色熟女一区二区| 91婷婷伊人狠人| 亚洲国产福利视频| 久96热在线观看视频| 九色视频91| 免费的av网| 久久久精品视频欧州站| 日本黄色精品| 8050无码八戒| 国产AV天美| 日韩人妻无码不卡网站| 国产AV激情无码久久无码 | 日韩丨制服丨中文|在线| 日韩性爱小视频| 六月丁香五月婷婷| 国产高清在线自在拍69| 久久无码成人| 欧美色图人妻| 波多野42部无码喷潮在线观看| 97爱免费插| 永久免费观看的毛片的网站| www.97在线| 亚洲黑人在线| 人人妻人人操人人乐| 麻豆三极片| 久久久性爱视频| 人人性爱视频免费| 亚洲av热热色| 日本成人电影资源网| 福利大香蕉| 超碰精品在线| 精品人妻一区二区三区在| 日韩成人色图| av天堂天堂av日韩| 国产在线激情| 夜夜操av亚洲一区二区| 亚洲成人av电影在线| 久啪| 亚洲男人的天堂亚洲| 色视频蜜乳| 加勒比性爱成人在线| 久久久久久亚洲精品不卡人乳| 日韩在线欧美精品一区二区| a片亚洲一本通视频| 99热| 欧美精品xxxwww| 在线欧美亚洲| 久久人人爽av亚洲精品天堂桃色 | 亚洲AV小说| 最新日产中文在线麻豆| 亚洲天堂2020| 中文字幕78| 色五月亚洲| 男男H黄动漫啪啪无遮挡网站| 色欧洲| 亚洲日韩狠狠撸视频| 精品美女少妇一区二区三区| 精品国产乱码久久久久A| 国产av波波国产精品| 日本三级精品| 精品一区二区2| 97 国产精品| 亚洲精品一区二区免费在线观看| 中文字幕日产av人| 中文字幕二区日韩天堂| 成人av免费观看| 人人扣人人操| 日韩性爱高清免费视频| 无码日韩网站| 色爱综合网| 男人天堂2012| 天堂日本亚洲欧美| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 国语av最新自产拍在线观看| 久操凹凸视频| 天天综合网日韩7799| 亚洲少妇综合在线播放| 女同性恋久久| 欧美国产伊人久久久久| 久久一区二区三区入口| 97色干| 一区黄二区黄| 久久精品高清无码一区| 91狠狠狠| 天天草天天日| 伊人丁香五月婷婷| 久久精品三级影视| 亚洲综合色男人网| 中文字幕文字幕无码一区二区三区电影99| 狠狠躁天天躁日日躁97| 亚洲日韩资源| 中文字幕av亚洲精品| 国产午夜激片Av毛片不卡| 99操视频| 超碰无码五月97| 亚洲人久久久久日| 午夜超爽| 欧州色图区| 一本一道久久综合久久| 国产传媒午夜理伦精品| 综合欧美日本三级| 久久超碰、| 熟妇人妻精品一区二区| 人人看人人爰人人操| 1区2区3区在线视频| 啊嗯嗯啊好大好爽| 日婷婷| 大香蕉五月天婷婷| 黑人精品久久97| 国产成人亚洲精品无码最新在线| 久久久中文| 友优传媒精品在线一区二区| 无码逼| 精品一区二区久久| 在线色导航| 色五月天AV| 久久精品国产99精品亚洲蜜...| 欧美日韩m| 中文字幕国产在线天堂| 久久久精品国产亚洲伊人| 亚洲天堂资源在线| 亚洲va综合va国产va中文| 96国产精品| 婷婷四五区| 热99这里有精品综合久久| 九九色综合| 香蕉精品二区二区| 亚洲日产专区| 日本一区二区亚洲综合| 亚洲精品国产AV天美传媒| 综合影院永久入口国产| 人人喜人人妻| 久久久久亚洲AV无码专区少妇| 国产一区二区三区久久精品太古里| 日韩在线地址一| 男人的天堂2018.| 日本黄色大片一级视频免费麻豆| 日韩免费在线观看不卡| 成年人性爱日韩| 国产成人网址| 精品成人女人久久| se吧提供国产乱老熟视频胖女人| 欧美亚洲日本激情在线| 欧美激情黑人| 欧美麻豆成人同性GⅤ在线| 日本精品一区三区| 超碰美国| 人妻天天夜夜爽一区二区| 亚码人妻| 操逼www.| 狠狠爱夜夜干| 大屁股xxxxx| 精品无码产区一区二| 中文一区在线视频| 天欧美在线| 国产精品一区二区 尿失禁| 成人精品水蜜桃久久久久久久| 熟妇操花| 超碰97.com| 亚洲色色色| 国产精品999aaa| 青青网三级视频| 亚洲 无码 偷拍| 欧美 日韩 婷婷 五月| 欧美91在线| 欧美中文字幕一区| 中国大陆国产高清AⅤ毛片| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 午夜欧美女人操逼| 中文熟女五十乱码在线| 国产激情久久久| 久久久久9999| 桃色六月天| 偷拍自拍在线视频观看| 久久男人| 日韩久久三区| 中文字幕日韩精品久久| 久久是精品| 在线观看一卡二卡| 老熟女乱伦片| 亚洲欧美日韩电影网站一区| 精品国产精品一区二区| 色色九区| 九九夜精品九九在线| 精品一区二区亚洲国产| 欧美日韩色| 日韩情色AV| 丁香九月激情啪| 日韩免费a级毛片无码a∨| 欧美色天堂网在线视频| 久久久九九网站| 免费家庭乱伦视频| 操淫穴亚洲五月丁香 | 去干网最新版| 手机看片91人妻| 欧美日韩m| 日韩欧美成人性爱在线| 九九九九精品视频| 今日头条成人一区二区三区四虎精品| 亚洲成人免费中文字幕| 精品欧美乱码久| 大乔未久88一区| 人人看人人插| 久久鲁干| 日韩成人高清一区二区| 97超碰巨乳| 天堂蜜桃无码视频一区二区| 一起草日韩| 欧美性色网| 色香91| 亚洲丝袜B诱惑| 六月激情婷婷| 狠狠色噜噜狠狠狠狠2018| 人妻熟女一区二区三区视频| 伊人玖玖网| 色色操| 国产色精品午夜大片| 亚洲码在线中文在线观看| 熟女熟妇伦久久影院毛片一区二区 | 超碰在线一区| 欧美与日韩97| 国产亚洲 中文欧美久久| blacked精品一区国产| 啊啊嗯嗯好爽| 国产女主播视频在线观看| 欧洲乱码视频| 手机av天堂久久久久| 97久久视频| 国产人伦a片信息免费片| 亚洲伊人久久综合97| 91爱| 久久成人精品| 亚洲综合伊人| 日韩精品人妻中文字有码在线| 2025亚洲男人天堂| 亚洲无码99| 色婷婷综合视频| 自慰白浆在线观看| 天美精品原创av片国产| 天堂性色| 99国产女人| 男人的天堂VA| 亚洲欧美啪啪| 91 国产丝袜在线播放-百度| 色娱乐色呦呦夜夜夜夜av| 综合色99| 新婚人妻扶着粗大强行坐下| 国产精品呦一区二区三区| 岛国激情视频软件| 在线观看一级α片刺激高潮视频| 曰韩中文人妻视频| 香蕉欧美| 高清国产无码av| 老司机福利青青草| 青娱乐二区免费| 亚洲97成人在线观看| 色噜噜人妻av中文字幕| 91精品操美女| 密臀在线视频| 日本一二区不卡| 97干在线视频| 久久AV无码AV| 麻豆国产视频精品观看|