日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > Caffe >内容正文

Caffe

飞桨上线万能转换小工具,教你玩转TensorFlow、Caffe等模型迁移

發布時間:2024/10/8 Caffe 238 豆豆
生活随笔 收集整理的這篇文章主要介紹了 飞桨上线万能转换小工具,教你玩转TensorFlow、Caffe等模型迁移 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


百度推出飛槳(PaddlePaddle)后,不少開發者開始轉向國內的深度學習框架。但是從代碼的轉移談何容易,之前的工作重寫一遍不太現實,成千上萬行代碼的手工轉換等于是在做一次二次開發。

現在,有個好消息:無論Caffe、TensorFlow、ONNX都可以輕松遷移到飛槳平臺上。雖然目前還不直接遷移PyTorch模型,但PyTorch本身支持導出為ONNX模型,等于間接對該平臺提供了支持。

然而,有人還對存在疑惑:不同框架之間的API有沒有差異?整個遷移過程如何操作,步驟復雜嗎?遷移后如何保證精度的損失在可接受的范圍內?

大家會考慮很多問題,而問題再多,歸納一下,無外乎以下幾點:

API差異:模型的實現方式如何遷移,不同框架之間的API有沒有差異?如何避免這些差異帶來的模型效果的差異?

模型文件差異:訓練好的模型文件如何遷移?轉換框架后如何保證精度的損失在可接受的范圍內?

預測方式差異:轉換后的模型如何預測?預測的效果與轉換前的模型差異如何?

飛槳開發了一個新的功能模塊,叫X2Paddle(Github見參考1),可以支持主流深度學習框架模型轉換至飛槳,包括Caffe、Tensorflow、onnx等模型直接轉換為Paddle Fluid可加載的預測模型,并且還提供了這三大主流框架間的API差異比較,方便我們在自己直接復現模型時對比API之間的差異,深入理解API的實現方式從而降低模型遷移帶來的損失。

下面以TensorFlow轉換成Paddle Fluid模型為例,詳細講講如何實現模型的遷移。

TensorFlow-Fluid的API差異

在深度學習入門過程中,大家常見的就是手寫數字識別這個demo,下面是一份最簡單的實現手寫數字識別的代碼:

from?tensorflow.examples.tutorials.mnist?import?input_dataimport?tensorflow?as?tfmnist?=?input_data.read_data_sets("MNIST_data/",?one_hot=True)x?=?tf.placeholder(tf.float32,?[None,?784])??W?=?tf.Variable(tf.zeros([784,?10]))b?=?tf.Variable(tf.zeros([10]))y?=?tf.nn.softmax(tf.matmul(x,?W)?+?b)y_?=?tf.placeholder("float",?[None,?10])cross_entropy?=?tf.reduce_sum(tf.nn.softmax_cross_entropy_with_logits(logits?=?y,labels?=?y_))train_step?=?tf.train.GradientDescentOptimizer(0.01).minimize(cross_entropy)init?=?tf.global_variables_initializer()sess?=?tf.Session()sess.run(init)for?i?in?range(1,?1000):????batch_xs,?batch_ys?=?mnist.train.next_batch(100)????sess.run(train_step,?feed_dict={x:?batch_xs,?y_:?batch_ys})correct_prediction?=?tf.equal(tf.argmax(y,?1),?tf.argmax(y_,?1))accuracy?=?tf.reduce_mean(tf.cast(correct_prediction,?'float'))print(sess.run(accuracy,?feed_dict={x:?mnist.test.images,?y_:?mnist.test.labels}))import?input_data
import?tensorflow?as?tf


mnist?=?input_data.read_data_sets("MNIST_data/",?one_hot=True)

x?=?tf.placeholder(tf.float32,?[None,?784])??

W?=?tf.Variable(tf.zeros([784,?10]))
b?=?tf.Variable(tf.zeros([10]))

y?=?tf.nn.softmax(tf.matmul(x,?W)?+?b)

y_?=?tf.placeholder("float",?[None,?10])
cross_entropy?=?tf.reduce_sum(tf.nn.softmax_cross_entropy_with_logits(logits?=?y,labels?=?y_))


train_step?=?tf.train.GradientDescentOptimizer(0.01).minimize(cross_entropy)

init?=?tf.global_variables_initializer()

sess?=?tf.Session()
sess.run(init)

for?i?in?range(1,?1000):
????batch_xs,?batch_ys?=?mnist.train.next_batch(100)
????sess.run(train_step,?feed_dict={x:?batch_xs,?y_:?batch_ys})

correct_prediction?=?tf.equal(tf.argmax(y,?1),?tf.argmax(y_,?1))
accuracy?=?tf.reduce_mean(tf.cast(correct_prediction,?'float'))
print(sess.run(accuracy,?feed_dict={x:?mnist.test.images,?y_:?mnist.test.labels}))

大家看這段代碼里,第一步是導入mnist數據集,然后設置了一個占位符x來表示輸入的圖片數據,再設置兩個變量w和b,分別表示權重和偏置來計算,最后通過softmax計算得到輸出的y值,而我們真實的label則是變量y_。

前向傳播完成后,就可以計算預測值y與label y_之間的交叉熵。

再選擇合適的優化函數,此處為梯度下降,最后啟動一個Session,把數據按batch灌進去,計算acc即可得到準確率。

這是一段非常簡單的代碼,如果我們想把這段代碼變成飛槳的代碼,有人可能會認為非常麻煩,每一個實現的API還要一一去找對應的實現方式,但是這里,我可以告訴大家,不!用!這!么!麻!煩!

因為在X2Paddle里有一份常用的Tensorflow對應Fluid的API表:

https://github.com/PaddlePaddle/X2Paddle/tree/master/tensorflow2fluid/doc

如下所示:

對于常用的TensorFlow的API,都有相應的飛槳接口,如果兩者的功能沒有差異,則會標注功能一致,如果實現方式或者支持的功能、參數等有差異,即會標注“差異對比”,并詳細注明。

譬如,在上文這份非常簡單的代碼里,出現了這些TensorFlow的API:

在出現的這些api里,大部分的功能都是一致的,只有兩個功能不同,分別是tf.placeholder和tf.nn.softmax_cross_entropy_with_logits ,分別對應 fluid.layers.data 和 fluid.layers.softmax_with_cross_entropy . 我們來看看具體差異:

tf.placeholder V.S fluid.layers.data

常用TensorFlow的同學對placeholder應該不陌生,中文翻譯為占位符,什么意思呢?在TensorFlow 2.0以前,還是靜態圖的設計思想,整個設計理念是計算流圖,在編寫程序時,首先構筑整個系統的graph,代碼并不會直接生效,這一點和python的其他數值計算庫(如Numpy等)不同,graph為靜態的,在實際的運行時,啟動一個session,程序才會真正的運行。這樣做的好處就是:避免反復地切換底層程序實際運行的上下文,tensorflow幫你優化整個系統的代碼。我們知道,很多python程序的底層為C語言或者其他語言,執行一行腳本,就要切換一次,是有成本的,tensorflow通過計算流圖的方式,可以幫你優化整個session需要執行的代碼。

在代碼層面,每一個tensor值在graph上都是一個op,當我們將train數據分成一個個minibatch然后傳入網絡進行訓練時,每一個minibatch都將是一個op,這樣的話,一副graph上的op未免太多,也會產生巨大的開銷;于是就有了tf.placeholder,我們每次可以將 一個minibatch傳入到x = tf.placeholder(tf.float32,[None,32])上,下一次傳入的x都替換掉上一次傳入的x,這樣就對于所有傳入的minibatch x就只會產生一個op,不會產生其他多余的op,進而減少了graph的開銷。

參數對比

tf.placeholder


?tf.placeholder(??????dtype,??????shape=None,??????name=None??)
??????shape=None,
??????name=None
??)


paddle.fluid.layers.data


?paddle.fluid.layers.data(??????name,???????shape,???????append_batch_size=True,???????dtype='float32',???????lod_level=0,???????type=VarType.LOD_TENSOR,???????stop_gradient=True)
??????shape,?
??????append_batch_size=True,?
??????dtype='float32',?
??????lod_level=0,?
??????type=VarType.LOD_TENSOR,?
??????stop_gradient=True)

從圖中可以看到,飛槳的api參數更多,具體差異如下:

Batch維度處理

TensorFlow: 對于shape中的batch維度,需要用戶使用None指定;

飛槳: 將第1維設置為-1表示batch維度;如若第1維為正數,則會默認在最前面插入batch維度,如若要避免batch維,可將參數append_batch_size設為False。

梯度是否回傳

tensorflow和pytorch都支持對輸入求梯度,在飛槳中直接設置stop_gradient = False即可。如果在某一層使用stop_gradient=True,那么這一層之前的層都會自動的stop_gradient=True,梯度不會參與回傳,可以對某些不需要參與loss計算的信息設置為stop_gradient=True。對于含有BatchNormalization層的CNN網絡,也可以對輸入求梯度,如:

?layers.data(????????name="data",????????shape=[32,?3,?224,?224],????????dtype="int64",????????append_batch_size=False,????????stop_gradient=False)"data",
????????shape=[32,?3,?224,?224],
????????dtype="int64",
????????append_batch_size=False,
????????stop_gradient=False)

tf.nn.softmax_cross_entropy_with_logits V.S fluid.layers.softmax_with_cross_entropy

參數對比

tf.nn.softmax_cross_entropy_with_logits(????_sentinel=None,????labels=None,????logits=None,????dim=-1,????name=None)None,
????labels=None,
????logits=None,
????dim=-1,
????name=None
)


paddle.fluid.layers.softmax_with_cross_entropy


paddle.fluid.layers.softmax_with_cross_entropy(????logits,?????label,?????soft_label=False,?????ignore_index=-100,?????numeric_stable_mode=False,?????return_softmax=False)
????label,?
????soft_label=False,?
????ignore_index=-100,?
????numeric_stable_mode=False,?
????return_softmax=False
)

功能差異

標簽類型

TensorFlow:labels只能使用軟標簽,其shape為[batch, num_classes],表示樣本在各個類別上的概率分布;

飛槳:通過設置soft_label,可以選擇軟標簽或者硬標簽。當使用硬標簽時,label的shape為[batch, 1],dtype為int64;當使用軟標簽時,其shape為[batch, num_classes],dtype為int64。

返回值

TensorFlow:返回batch中各個樣本的log loss;

飛槳:當return_softmax為False時,返回batch中各個樣本的log loss;當return_softmax為True時,再額外返回logtis的歸一化值。

疑問點?

硬標簽,即 one-hot label, 每個樣本僅可分到一個類別

軟標簽,每個樣本可能被分配至多個類別中

numeric_stable_mode:這個參數是什么呢?標志位,指明是否使用一個具有更佳數學穩定性的算法。僅在 soft_label 為 False的GPU模式下生效. 若 soft_label 為 True 或者執行場所為CPU, 算法一直具有數學穩定性。注意使用穩定算法時速度可能會變慢。默認為 True。

return_softmax: 指明是否額外返回一個softmax值, 同時返回交叉熵計算結果。默認為False。

如果 return_softmax 為 False, 則返回交叉熵損失

如果 return_softmax 為 True,則返回元組 (loss, softmax) ,其中交叉熵損失為形為[N x 1]的二維張量,softmax為[N x K]的二維張量

代碼示例

data?=?fluid.layers.data(name='data',?shape=[128],?dtype='float32')label?=?fluid.layers.data(name='label',?shape=[1],?dtype='int64')fc?=?fluid.layers.fc(input=data,?size=100)out?=?fluid.layers.softmax_with_cross_entropy( logits=fc,?label=label)128],?dtype='float32')
label?=?fluid.layers.data(name='label',?shape=[1],?dtype='int64')
fc?=?fluid.layers.fc(input=data,?size=100)
out?=?fluid.layers.softmax_with_cross_entropy(
logits=fc,?label=label)

所以通過API對應表,我們可以直接轉換把TensorFlow代碼轉換成Paddle Fluid代碼。但是如果現在項目已經上線了,代碼幾千行甚至上萬行,或者已經訓練出可預測的模型了,如果想要直接轉換API是一件非常耗時耗精力的事情,有沒有一種方法可以直接把訓練好的可預測模型直接轉換成另一種框架寫的,只要轉換后的損失精度在可接受的范圍內,就可以直接替換。下面就講講訓練好的模型如何遷移。

模型遷移

VGG_16是CV領域的一個經典模型,我以tensorflow/models下的VGG_16為例,給大家展示如何將TensorFlow訓練好的模型轉換為飛槳模型。

下載預訓練模型

import?urllibimport?sysdef?schedule(a,?b,?c):????per?=?100.0?*?a?*?b?/?c????per?=?int(per)????sys.stderr.write("\rDownload?percentage?%.2f%%"?%?per)????sys.stderr.flush()url?=?"http://download.tensorflow.org/models/vgg_16_2016_08_28.tar.gz"fetch?=?urllib.urlretrieve(url,?"./vgg_16.tar.gz",?schedule)
import?sys
def?schedule(a,?b,?c):
????per?=?100.0?*?a?*?b?/?c
????per?=?int(per)
????sys.stderr.write("\rDownload?percentage?%.2f%%"?%?per)
????sys.stderr.flush()

url?=?"http://download.tensorflow.org/models/vgg_16_2016_08_28.tar.gz"
fetch?=?urllib.urlretrieve(url,?"./vgg_16.tar.gz",?schedule)

解壓下載的壓縮文件

import?tarfilewith?tarfile.open("./vgg_16.tar.gz",?"r:gz")?as?f:????file_names?=?f.getnames()????for?file_name?in?file_names:????????f.extract(file_name,?"./")
with?tarfile.open("./vgg_16.tar.gz",?"r:gz")?as?f:
????file_names?=?f.getnames()
????for?file_name?in?file_names:
????????f.extract(file_name,?"./")

保存模型為checkpoint格式

import?tensorflow.contrib.slim?as?slimfrom?tensorflow.contrib.slim.nets?import?vggimport?tensorflow?as?tfimport?numpywith?tf.Session()?as?sess:????inputs?=?tf.placeholder(dtype=tf.float32,?shape=[None,?224,?224,?3],?name="inputs")????logits,?endpoint?=?vgg.vgg_16(inputs,?num_classes=1000,?is_training=False)????load_model?=?slim.assign_from_checkpoint_fn("vgg_16.ckpt",?slim.get_model_variables("vgg_16"))????load_model(sess)as?slim
from?tensorflow.contrib.slim.nets?import?vgg
import?tensorflow?as?tf
import?numpy

with?tf.Session()?as?sess:
????inputs?=?tf.placeholder(dtype=tf.float32,?shape=[None,?224,?224,?3],?name="inputs")
????logits,?endpoint?=?vgg.vgg_16(inputs,?num_classes=1000,?is_training=False)
????load_model?=?slim.assign_from_checkpoint_fn("vgg_16.ckpt",?slim.get_model_variables("vgg_16"))
????load_model(sess)
?numpy.random.seed(13)????data?=?numpy.random.rand(5,?224,?224,?3)????input_tensor?=?sess.graph.get_tensor_by_name("inputs:0")????output_tensor?=?sess.graph.get_tensor_by_name("vgg_16/fc8/squeezed:0")????result?=?sess.run([output_tensor],?{input_tensor:data})????numpy.save("tensorflow.npy",?numpy.array(result))
????data?=?numpy.random.rand(5,?224,?224,?3)
????input_tensor?=?sess.graph.get_tensor_by_name("inputs:0")
????output_tensor?=?sess.graph.get_tensor_by_name("vgg_16/fc8/squeezed:0")
????result?=?sess.run([output_tensor],?{input_tensor:data})
????numpy.save("tensorflow.npy",?numpy.array(result))
????saver?=?tf.train.Saver()????saver.save(sess,?"./checkpoint/model")"./checkpoint/model")

TensorFlow2fluid目前支持checkpoint格式的模型或者是將網絡結構和參數序列化的pb格式模型,上面下載的vgg_16.ckpt僅僅存儲了模型參數,因此我們需要重新加載參數,并將網絡結構和參數一起保存為checkpoint模型

將模型轉換為飛槳模型

import?tf2fluid.convert?as?convertimport?argparseparser?=?convert._get_parser()parser.meta_file?=?"checkpoint/model.meta"parser.ckpt_dir?=?"checkpoint"parser.in_nodes?=?["inputs"]parser.input_shape?=?["None,224,224,3"]parser.output_nodes?=?["vgg_16/fc8/squeezed"]parser.use_cuda?=?"True"parser.input_format?=?"NHWC"parser.save_dir?=?"paddle_model"convert.run(parser)as?convert
import?argparse
parser?=?convert._get_parser()
parser.meta_file?=?"checkpoint/model.meta"
parser.ckpt_dir?=?"checkpoint"
parser.in_nodes?=?["inputs"]
parser.input_shape?=?["None,224,224,3"]
parser.output_nodes?=?["vgg_16/fc8/squeezed"]
parser.use_cuda?=?"True"
parser.input_format?=?"NHWC"
parser.save_dir?=?"paddle_model"

convert.run(parser)

注意:部分OP在轉換時,需要將參數寫入文件;或者是運行tensorflow模型進行infer,獲取tensor值。兩種情況下均會消耗一定的時間用于IO或計算,對于后一種情況,

打印輸出log信息(截取部分)

INFO:root:Loading?tensorflow?model...INFO:tensorflow:Restoring?parameters?from?checkpoint/modelINFO:tensorflow:Restoring?parameters?from?checkpoint/modelINFO:root:Tensorflow?model?loaded!INFO:root:TotalNum:86,TraslatedNum:1,CurrentNode:inputsINFO:root:TotalNum:86,TraslatedNum:2,CurrentNode:vgg_16/conv1/conv1_1/weightsINFO:root:TotalNum:86,TraslatedNum:3,CurrentNode:vgg_16/conv1/conv1_1/biasesINFO:root:TotalNum:86,TraslatedNum:4,CurrentNode:vgg_16/conv1/conv1_2/weightsINFO:root:TotalNum:86,TraslatedNum:5,CurrentNode:vgg_16/conv1/conv1_2/biases...INFO:root:TotalNum:86,TraslatedNum:10,CurrentNode:vgg_16/conv3/conv3_1/weightsINFO:root:TotalNum:86,TraslatedNum:11,CurrentNode:vgg_16/conv3/conv3_1/biasesINFO:root:TotalNum:86,TraslatedNum:12,CurrentNode:vgg_16/conv3/conv3_2/weightsINFO:root:TotalNum:86,TraslatedNum:13,CurrentNode:vgg_16/conv3/conv3_2/biasesINFO:root:TotalNum:86,TraslatedNum:85,CurrentNode:vgg_16/fc8/BiasAddINFO:root:TotalNum:86,TraslatedNum:86,CurrentNode:vgg_16/fc8/squeezedINFO:root:Model?translated!from?checkpoint/model
INFO:tensorflow:Restoring?parameters?from?checkpoint/model
INFO:root:Tensorflow?model?loaded!
INFO:root:TotalNum:86,TraslatedNum:1,CurrentNode:inputs
INFO:root:TotalNum:86,TraslatedNum:2,CurrentNode:vgg_16/conv1/conv1_1/weights
INFO:root:TotalNum:86,TraslatedNum:3,CurrentNode:vgg_16/conv1/conv1_1/biases
INFO:root:TotalNum:86,TraslatedNum:4,CurrentNode:vgg_16/conv1/conv1_2/weights
INFO:root:TotalNum:86,TraslatedNum:5,CurrentNode:vgg_16/conv1/conv1_2/biases
...
INFO:root:TotalNum:86,TraslatedNum:10,CurrentNode:vgg_16/conv3/conv3_1/weights
INFO:root:TotalNum:86,TraslatedNum:11,CurrentNode:vgg_16/conv3/conv3_1/biases
INFO:root:TotalNum:86,TraslatedNum:12,CurrentNode:vgg_16/conv3/conv3_2/weights
INFO:root:TotalNum:86,TraslatedNum:13,CurrentNode:vgg_16/conv3/conv3_2/biases

INFO:root:TotalNum:86,TraslatedNum:85,CurrentNode:vgg_16/fc8/BiasAdd
INFO:root:TotalNum:86,TraslatedNum:86,CurrentNode:vgg_16/fc8/squeezed
INFO:root:Model?translated!

到這一步,我們已經把tensorflow/models下的vgg16模型轉換成了Paddle Fluid 模型,轉換后的模型與原模型的精度有損失嗎?如何預測呢?來看下面。

預測結果差異

加載轉換后的飛槳模型,并進行預測

上一步轉換后的模型目錄命名為“paddle_model”,在這里我們通過ml.ModelLoader把模型加載進來,注意轉換后的飛槳模型的輸出格式由NHWC轉換為NCHW,所以我們需要對輸入數據做一個轉置。處理好數據后,即可通過model.inference來進行預測了。具體代碼如下:

import?numpyimport?tf2fluid.model_loader?as?mlmodel?=?ml.ModelLoader("paddle_model",?use_cuda=False)numpy.random.seed(13)data?=?numpy.random.rand(5,?224,?224,?3).astype("float32")#?NHWC?->?NCHWdata?=?numpy.transpose(data,?(0,?3,?1,?2))results?=?model.inference(feed_dict={model.inputs[0]:data})numpy.save("paddle.npy",?numpy.array(results))
import?tf2fluid.model_loader?as?ml

model?=?ml.ModelLoader("paddle_model",?use_cuda=False)

numpy.random.seed(13)
data?=?numpy.random.rand(5,?224,?224,?3).astype("float32")
#?NHWC?->?NCHW
data?=?numpy.transpose(data,?(0,?3,?1,?2))

results?=?model.inference(feed_dict={model.inputs[0]:data})

numpy.save("paddle.npy",?numpy.array(results))

對比模型損失

轉換模型有一個問題始終避免不了,就是損失,從Tesorflow的模型轉換為Paddle Fluid模型,如果模型的精度損失過大,那么轉換模型實際上是沒有意義的,只有損失的精度在我們可接受的范圍內,模型轉換才能被實際應用。在這里可以通過把兩個模型文件加載進來后,通過numpy.fabs來求兩個模型結果的差異。

import?numpypaddle_result?=?numpy.load("paddle.npy")tensorflow_result?=?numpy.load("tensorflow.npy")diff?=?numpy.fabs(paddle_result?-?tensorflow_result)print(numpy.max(diff))
paddle_result?=?numpy.load("paddle.npy")
tensorflow_result?=?numpy.load("tensorflow.npy")
diff?=?numpy.fabs(paddle_result?-?tensorflow_result)
print(numpy.max(diff))

打印輸出

6.67572e-06

從結果中可以看到,兩個模型文件的差異很小,為6.67572e-06 ,幾乎可以忽略不計,所以這次轉換的模型是可以直接應用的。

需要注意的點

1. 轉換后的模型需要注意輸入格式,飛槳中輸入格式需為NCHW格式。此例中不涉及到輸入中間層,如卷積層的輸出,需要了解的是飛槳中的卷積層輸出,卷積核的shape與TensorFlow有差異。

2. 模型轉換完后,檢查轉換前后模型的diff,需要測試得到的最大diff是否滿足轉換需求。

總結

X2Paddle提供了一個非常方便的轉換方式,讓大家可以直接將訓練好的模型轉換成Paddle Fluid版本。

轉換模型原先需要直接通過API對照表來重新實現代碼。但是在實際生產過程中這么操作是很麻煩的,甚至還要進行二次開發。

如果有新的框架能輕松轉換模型,迅速運行調試,迭代出結果,何樂而不為呢?

雖然飛槳相比其他AI平臺上線較晚,但是憑借X2Paddle小工具,能快速將AI開發者吸引到自己的平臺上來,后續的優勢將愈加明顯。

除了本文提到的tensoflow2fluid,Paddle Fluid還支持caffe2fluid、onnx2fluid,大家可以根據自身的需求體驗一下,有問題可以留言交流~

參考資料

X2Paddle Github: https://github.com/PaddlePaddle/X2Paddle?

tensorflow2fluid: https://github.com/PaddlePaddle/X2Paddle/tree/master/tensorflow2fluid



?



長按識別下方二維碼

免費申請Tesla V100算力卡

配合PaddleHub讓模型原地起飛





?


現在,在「知乎」也能找到我們了

進入知乎首頁搜索「PaperWeekly」

點擊「關注」訂閱我們的專欄吧



關于PaperWeekly


PaperWeekly 是一個推薦、解讀、討論、報道人工智能前沿論文成果的學術平臺。如果你研究或從事 AI 領域,歡迎在公眾號后臺點擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。


總結

以上是生活随笔為你收集整理的飞桨上线万能转换小工具,教你玩转TensorFlow、Caffe等模型迁移的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

av电影久久 | 国产欧美在线一区二区三区 | 五月在线视频 | 六月丁香色婷婷 | 91精彩在线视频 | 91视频一8mav | 婷婷国产在线 | 国产午夜精品一区二区三区在线观看 | 在线高清 | 天天综合色 | 免费亚洲一区二区 | 日本高清xxxx| 国产午夜精品一区二区三区在线观看 | 国产精品福利av | 国产成人1区 | 国产色婷婷精品综合在线手机播放 | 综合激情av | 亚洲精品五月天 | 欧美精品久久久久久久亚洲调教 | 五月天亚洲综合小说网 | 久久草网| 国产成人一区二区三区在线观看 | 中文字幕精品www乱入免费视频 | 久久天天躁夜夜躁狠狠85麻豆 | 96国产精品视频 | 久久综合激情 | 国产一级特黄毛片在线毛片 | 99色视频在线| 久久久久久久久久久网站 | 久久精品看片 | 五月激情天 | 久草精品视频在线看网站免费 | 亚洲影音先锋 | 97视频一区 | 亚洲精品在线视频网站 | 六月丁香激情综合 | 成人四虎影院 | 九色精品免费永久在线 | 久久久亚洲精品 | 91视频中文字幕 | 成人综合日日夜夜 | 97在线公开视频 | 久av电影| 夜夜夜夜操 | 黄色在线观看www | 国内精品在线一区 | 婷五月天激情 | 激情五月视频 | 国产大尺度视频 | 久久tv视频 | 久久天天躁夜夜躁狠狠85麻豆 | 日本精品va在线观看 | 精品久久久久久一区二区里番 | 人人天天夜夜 | 91精品国产91| www.久久免费| 日本激情视频中文字幕 | 福利视频网站 | 精品 一区 在线 | 日韩在线精品 | 国产亚洲精品久久久久久无几年桃 | 免费激情网 | 成人免费xyz网站 | 欧美日韩视频在线观看一区二区 | 四虎永久精品在线 | 日日日干 | 福利视频精品 | 麻豆91在线播放 | 99re国产视频 | 亚洲成人精品在线观看 | 免费人做人爱www的视 | 国产精品视频免费观看 | 国产黄色片免费观看 | 97激情影院 | 六月婷婷网 | 1024手机在线看 | 91看片淫黄大片一级在线观看 | 国产在线观看 | 亚洲综合色丁香婷婷六月图片 | 久久天堂亚洲 | 99热手机在线观看 | 国产精品99久久久久人中文网介绍 | av免费片| 精品国产区在线 | 五月综合在线观看 | 国产精品video爽爽爽爽 | 国产精品一区二区三区久久 | 国产精品毛片久久久久久久 | av免费看av| 国产精品毛片 | 人人爽人人爽人人片 | 午夜精品久久久久久99热明星 | 国产又粗又猛又爽又黄的视频先 | 亚洲欧美日韩中文在线 | 午夜av免费在线观看 | 欧美精品久久天天躁 | www.久艹| 久久成人国产精品入口 | 久久国产精彩视频 | 黄色视屏av | 色综合亚洲精品激情狠狠 | 97色狠狠| 国产中文字幕91 | 日韩高清网站 | 波多野结衣一区二区三区中文字幕 | 日本黄色免费电影网站 | www.福利视频| 日日摸日日添夜夜爽97 | 久久99深爱久久99精品 | 国产精品久久片 | 亚洲五月综合 | 天天操天天摸天天爽 | 日韩免费在线观看视频 | 久久国产精品免费观看 | 国产精品免费观看久久 | 999一区二区三区 | 日韩精品在线播放 | 天天操天天曰 | 2022久久国产露脸精品国产 | 久久久久成人精品免费播放动漫 | 激情欧美日韩一区二区 | 激情综合网五月激情 | 精品久久久久久久久久久久久久久久久久 | 久久精品99北条麻妃 | 精品国产a | 亚洲高清视频一区二区三区 | 国产精品久久久精品 | 中文字幕人成不卡一区 | 不卡精品 | 日韩网站在线免费观看 | 99视频在线精品国自产拍免费观看 | 久久电影中文字幕视频 | 99久e精品热线免费 99国产精品久久久久久久久久 | 国产经典av | 伊人色**天天综合婷婷 | 一区二区三区在线影院 | 中文日韩在线 | 99热99| 国产精品久久久久久久妇 | 久草国产在线观看 | 精品国产伦一区二区三区观看说明 | 手机在线日韩视频 | 欧美日韩中文字幕在线视频 | 国产精品入口久久 | 日本一区二区免费在线观看 | 日韩一区二区在线免费观看 | 久热电影 | 国产在线传媒 | av电影在线观看完整版一区二区 | 欧美一性一交一乱 | 天天色天天操综合网 | 色婷婷免费视频 | 欧美日本日韩aⅴ在线视频 插插插色综合 | 亚洲四虎在线 | 综合国产在线观看 | 日韩理论片在线观看 | 久久国产电影院 | 日韩女同av | 日韩在线观看高清 | 国产精品成人一区二区三区吃奶 | 精品久久久久久亚洲综合网站 | 四虎影视欧美 | 国产xxxx| 97免费中文视频在线观看 | 亚洲综合色网站 | 欧美在线91 | 99久高清在线观看视频99精品热在线观看视频 | 中文字幕亚洲精品日韩 | 日韩精品第一区 | 99精品视频播放 | 亚洲精品乱码久久久久久蜜桃91 | 国产免费观看高清完整版 | 亚洲成av人片在线观看香蕉 | 97**国产露脸精品国产 | 中日韩免费视频 | 日韩欧美视频二区 | 亚洲黄在线观看 | 国产精品五月天 | 欧美另类高潮 | 国产理论一区二区三区 | 色婷五月天 | 免费在线观看日韩视频 | 5月丁香婷婷综合 | 在线观看成人网 | 一区二区视频免费在线观看 | 99在线观看视频网站 | 4438全国亚洲精品观看视频 | 毛片视频电影 | 婷婷色视频 | 在线观看视频91 | 国产精品亚洲片在线播放 | 91在线区| 色网站在线看 | 精品免费 | 黄色三级视频片 | 精品国产视频在线 | 国产一线在线 | 国产高清成人 | 免费看三级网站 | 久久免视频 | 亚洲精品1234区 | 在线观看视频日韩 | 中文字幕一区二区三区久久 | 欧美午夜一区二区福利视频 | 天天干天天爽 | 亚洲国产精品成人精品 | 香蕉在线视频播放网站 | 天天干天天干天天操 | 中文字幕在线一区二区三区 | 久久爱资源网 | 日本不卡久久 | 成人动态视频 | 美女视频永久黄网站免费观看国产 | 亚洲全部视频 | 精品久久久久久久久亚洲 | 韩日视频在线 | av永久网址 | 天天干,夜夜操 | 亚洲精品久久久久中文字幕二区 | 亚洲精品久久久久中文字幕二区 | www.亚洲视频.com | 成人av一区二区兰花在线播放 | 亚洲国产高清在线 | 成人午夜电影在线播放 | 超碰在线网| 日本中文字幕高清 | 在线观看视频中文字幕 | 91自拍成人 | 欧美国产不卡 | 亚洲精品xx| 亚洲精品欧洲精品 | 免费看v片 | 激情电影在线观看 | 亚洲久草在线视频 | 亚洲va在线va天堂 | 一区二区视频播放 | av蜜桃在线 | 天天射天天艹 | 黄网在线免费观看 | 亚洲欧美精品在线 | 天天拍天天操 | 国产成人精品亚洲日本在线观看 | 色噜噜噜噜 | 最近久乱中文字幕 | 日韩免费在线看 | 一区二区三区在线观看中文字幕 | 色婷婷www | 一级欧美日韩 | 黄色av一区二区 | 日韩午夜在线观看 | 精品一区二区电影 | 天天夜夜狠狠操 | 中文字幕永久免费 | 夜色资源站国产www在线视频 | 色欧美综合| 四虎国产精品成人免费4hu | 人人舔人人爱 | 亚洲精品国偷拍自产在线观看蜜桃 | 日韩在线不卡视频 | 国产视频九色蝌蚪 | 免费看一级黄色 | 亚洲午夜久久久久久久久电影网 | 在线免费试看 | 免费看的国产视频网站 | 国产视频精品网 | 黄色毛片在线观看 | 美女视频黄在线观看 | av中文字幕免费在线观看 | 狠狠插天天干 | 黄a网站| 亚洲综合色婷婷 | 国产精品久久久久av免费 | 在线亚洲午夜片av大片 | 四虎视频 | 久久这里只精品 | 久久久久久久久久久影院 | 久久手机精品视频 | 国产精品片 | 欧美在线视频免费 | 成人免费影院 | 福利视频一二区 | 91一区啪爱嗯打偷拍欧美 | 久久国产亚洲精品 | 欧美色图亚洲图片 | 久久综合福利 | 天天操天天草 | 午夜av剧场 | 在线免费亚洲 | 奇米四色影狠狠爱7777 | 欧美性脚交 | 人人网av | 国产亚洲高清视频 | 97国产超碰在线 | 婷婷色在线观看 | 久久视频这里有久久精品视频11 | 国产精品一区免费在线观看 | 超碰人人做 | 五月婷婷视频 | 欧美a级免费视频 | 亚洲国产资源 | 天天摸天天操天天爽 | 国产一线在线 | 在线久热 | 国产美女精品人人做人人爽 | 免费涩涩网站 | 五月激情五月激情 | 午夜在线免费观看 | 欧美另类视频 | 97精产国品一二三产区在线 | 国语久久| 日韩欧美在线中文字幕 | 国产成人三级 | av千婊在线免费观看 | 黄色大片av | 天堂资源在线观看视频 | 在线婷婷| 人人爽爽人人 | 国产91精品看黄网站 | av成人免费网站 | 国产毛片在线 | 久久精品国产一区二区三 | 深夜视频久久 | 亚洲成人软件 | 中文字幕 在线 一 二 | 亚洲国产中文字幕 | 国产亚洲婷婷免费 | 亚洲人成在线观看 | 中文国产成人精品久久一 | 成人中文字幕在线观看 | 天天干天天干天天干 | 久久er99热精品一区二区三区 | 精品一区二区三区在线播放 | 日韩一区二区三区高清免费看看 | 久久综合给合久久狠狠色 | 在线三级播放 | 天天操狠狠操夜夜操 | 99色网站| 久久激情五月激情 | 日韩美一区二区三区 | 美女av免费看 | 国产免费一区二区三区网站免费 | www四虎影院 | 国产破处视频在线播放 | 亚洲精品白浆高清久久久久久 | 色综合激情网 | 国产一级一级国产 | 毛片永久新网址首页 | 久久精品视频3 | 亚州精品天堂中文字幕 | 国产一二三精品 | adc在线观看 | 久久情网 | 久久精品国产第一区二区三区 | 欧美日韩国产在线一区 | 久久久久久久久久久高潮一区二区 | 国产精品av免费 | 毛片.com| 日韩在线播放视频 | 亚洲精品午夜视频 | 国产精品人成电影在线观看 | 亚洲国产精品人久久电影 | 国产无遮挡猛进猛出免费软件 | www.黄色 | 久久精品香蕉视频 | 欧美污在线观看 | 丁香婷婷激情国产高清秒播 | 午夜国产福利在线 | 欧美性色综合网 | 视频成人永久免费视频 | 国产日产精品久久久久快鸭 | 免费三级影片 | 国产精品国产三级国产aⅴ9色 | 久久免费a | 在线亚洲欧美日韩 | 日本午夜在线观看 | 亚洲毛片视频 | 国产中文在线视频 | 久久婷婷影视 | 久久综合九色综合97婷婷女人 | 91福利试看 | 98超碰在线| 国产精品久久久久影视 | 日韩免费视频网站 | 91私密保健| 久久久在线免费观看 | 黄色影院在线免费观看 | www.午夜色.com| 性色av免费在线观看 | 久久国产香蕉视频 | 四虎成人精品永久免费av | 日本久久久影视 | 91看片成人| 色偷偷88欧美精品久久久 | 亚洲精品xx | 久久久久久久亚洲精品 | 国内精品久久久久影院一蜜桃 | 国产在线a不卡 | 黄色美女免费网站 | 一区二区三区韩国免费中文网站 | 精品国产一区二区三区四区在线观看 | 久久综合毛片 | 久久深夜福利免费观看 | av福利电影| 五月天婷婷免费视频 | 天堂在线一区 | 九九久久婷婷 | jizzjizzjizz亚洲| 国产精品成人久久久久 | 婷婷伊人综合 | 久久久这里有精品 | 日韩精品一区二区免费 | 久久噜噜少妇网站 | 国产又粗又长又硬免费视频 | 亚洲精品九九 | 久久精品中文字幕一区二区三区 | 亚洲视频免费在线观看 | 一区二区三区在线播放 | 中文字幕中文字幕在线中文字幕三区 | 中文字幕成人在线 | 在线久热| 免费av在 | 国产精品黑丝在线观看 | 国产高清免费在线观看 | 婷婷综合网 | 欧洲精品久久久久毛片完整版 | av网站免费线看精品 | 午夜精品av在线 | 色5月婷婷| 奇米7777狠狠狠琪琪视频 | 亚洲国产中文字幕在线 | 久久99国产综合精品免费 | 激情久久五月天 | 天天玩夜夜操 | 天天操天天色天天射 | 91精品国产92久久久久 | 91视频免费 | 久久夜色精品亚洲噜噜国4 午夜视频在线观看欧美 | 久久黄色免费视频 | 亚洲人人精品 | 精品国产一区二区三区久久久蜜臀 | 天天干婷婷 | 日本h视频在线观看 | 中日韩在线视频 | 91精品欧美一区二区三区 | 99热99re6国产在线播放 | 久日视频 | 国产毛片久久 | 97超视频在线观看 | 久久精品伊人 | 日韩电影在线一区 | 久久成人福利 | 国产精品video | 中文高清av | 4438全国亚洲精品在线观看视频 | 日韩大片免费观看 | 天天插天天狠 | 一级黄色片在线观看 | 99精彩视频在线观看免费 | 五月婷婷六月综合 | 超碰在线观看av.com | 欧美一区二区三区激情视频 | 69av视频在线观看 | 成人欧美亚洲 | www.99久久.com | 亚洲日韩精品欧美一区二区 | 九草在线视频 | 奇米影视8888在线观看大全免费 | 91香蕉视频 | 成人久久精品 | 久久视频二区 | 欧美 日韩 视频 | 国产精品久久久久免费 | 国产在线观看高清视频 | 久久影院亚洲 | 欧洲精品久久久久毛片完整版 | 亚洲视频大全 | 91亚洲精品乱码久久久久久蜜桃 | 青草草在线 | 国产精品日韩久久久久 | 91欧美日韩国产 | 美女精品网站 | 欧美日韩综合在线 | 精品久久久久国产免费第一页 | 国产精品免费观看视频 | 久久福利影视 | 免费毛片一区二区三区久久久 | 特级黄色片免费看 | 国产v在线 | 中文字幕资源网 | 91九色老 | 视频在线日韩 | 中文字幕乱偷在线 | 天天射天天干天天插 | a一片一级 | 久久久精品一区二区三区 | 欧美性色黄大片在线观看 | 婷婷午夜 | 久久免费精品国产 | 97日日| www91在线观看 | 亚州av成人 | 91精品国自产在线偷拍蜜桃 | 久热色超碰| 亚洲 欧洲av| 8x成人免费视频 | 欧美aaaxxxx做受视频 | 日韩av影视 | 精品国产99国产精品 | 亚洲午夜久久久久久久久久久 | 国产精品视频区 | 久久伊人免费视频 | 1024手机基地在线观看 | 婷婷亚洲综合 | 一区二区三区观看 | 特黄一级毛片 | 狠狠狠狠狠狠狠狠干 | 香蕉国产91 | 久久一精品 | 国产精品 国内视频 | 在线不卡的av | 日日操天天操夜夜操 | 中文视频一区二区 | 97成人精品| 久久久国产精品人人片99精片欧美一 | 狠狠干电影 | 国产精品久久久久久爽爽爽 | 在线你懂 | 久久久久免费看 | 亚洲视屏在线播放 | 久久亚洲免费视频 | 亚洲精品久久久久久中文传媒 | 中文字幕视频播放 | 综合久久一本 | 国产在线精品区 | 欧美ⅹxxxxxx | 最近日本中文字幕a | 国产九九九九九 | 91中文字幕在线播放 | 国产在线观看中文字幕 | 国产96在线 | 不卡av在线播放 | 日韩高清一区在线 | 欧美精品久久99 | 色丁香综合 | 四虎海外影库www4hu | av解说在线观看 | 亚洲黄色在线播放 | 免费成人短视频 | 国产精品久久久久久久毛片 | 黄色的视频 | 国产精品wwwwww | 亚洲手机av | 国产一区91 | 99精品欧美一区二区蜜桃免费 | 91亚洲国产成人久久精品网站 | 欧美色婷婷| 久久国产精品99久久久久 | 亚洲电影久久 | av中文字幕在线观看网站 | 日韩欧美一区二区在线 | 麻花天美星空视频 | 日韩免费三级 | 亚洲蜜桃av| 一区二区激情 | av不卡免费在线观看 | 国产中文字幕在线看 | 欧美日韩另类在线观看 | 日韩精品欧美专区 | 国产精品免费在线播放 | 在线看黄色av | 国产精品乱码高清在线看 | 午夜久久久久久久久久久 | 欧美一级视频免费 | 中文字幕人成人 | 天堂av在线免费 | 毛片1000部免费看 | 在线综合色 | 国产精品私人影院 | 国产精品视频最多的网站 | 亚洲在线日韩 | 久久精品国产99国产 | 91完整版| 国产精品亚洲人在线观看 | 久久久久久免费毛片精品 | 国产无遮挡又黄又爽在线观看 | 国产在线观看av | 99久久99精品 | 999超碰 | 久草在线免费看视频 | 精品国产欧美一区二区三区不卡 | 精品国产午夜 | 九九热中文字幕 | 91av色| 99久久久久久久久久 | 深夜免费小视频 | 亚洲视频 在线观看 | 日本三级久久久 | 久久婷婷精品 | 日韩在线视频不卡 | 91亚洲视频在线观看 | av久久在线 | 成人a免费 | 99久久夜色精品国产亚洲 | 日韩a在线播放 | 天天操网站 | 2020天天干夜夜爽 | 亚洲va综合va国产va中文 | 久久精品第一页 | 五月天中文字幕mv在线 | 久久久久久黄 | 高清在线一区 | 国产成人一级电影 | 探花视频网站 | 亚洲高清在线观看视频 | 综合国产在线 | 亚洲精品国产精品国 | 在线亚洲欧美视频 | 一区二区三区在线观看免费视频 | 91一区啪爱嗯打偷拍欧美 | 九九免费观看视频 | 国产伦理一区二区三区 | 中字幕视频在线永久在线观看免费 | 欧美成人一二区 | 天天操天天色天天 | 国产成人精品999 | 国产精品 日韩 欧美 | 欧美一二三区在线观看 | 天天干天天操天天拍 | 亚洲最新视频在线 | 中文字幕一区二区三区久久蜜桃 | 草久视频在线观看 | 成人a大片| 国产剧情一区二区 | 久久精品视频在线看 | 国产精品不卡在线播放 | 麻豆传媒视频在线免费观看 | 97视频入口免费观看 | 免费福利片2019潦草影视午夜 | 精品播放 | 国产黄在线看 | 日韩av福利在线 | 久久久www | 91看片在线观看 | 久久成年人网站 | 天天想夜夜操 | 国产黄色大片 | 亚洲精品免费在线观看视频 | 久久久久欠精品国产毛片国产毛生 | 中文字幕在线一区二区三区 | 狠狠操天天射 | 日韩黄色大片在线观看 | 人人干天天射 | 97精品久久| 在线看的av网站 | 亚洲精品国产精品99久久 | 视频一区视频二区在线观看 | 五月天视频网 | 91香蕉视频污在线 | 国产精品久久久久久久久免费 | 久久精品激情 | 婷色在线 | 国产高清永久免费 | 欧美性大战久久久久 | 亚洲天堂网视频在线观看 | www亚洲视频 | 欧美色图p | 免费看在线看www777 | 中文字幕a∨在线乱码免费看 | 欧美一区二区在线刺激视频 | 超碰97中文 | 国产精品久久久久一区二区三区共 | 国产高清久久久久 | av黄色av | 久久99久久久久 | 精品在线观 | 中文字幕成人在线 | 国产精品中文久久久久久久 | 欧美韩国日本在线观看 | 日韩精品专区在线影院重磅 | 久久久影视| 97国产精品亚洲精品 | 九九视频免费观看视频精品 | 国产一性一爱一乱一交 | 午夜视频在线观看一区二区三区 | 欧美孕妇与黑人孕交 | 免费一级黄色 | 超碰在线94 | 日日爽视频 | 亚洲精品国产自产拍在线观看 | 亚洲精品一区二区三区高潮 | www.亚洲激情.com | 欧美一级片 | 香蕉一区 | 一区二区三区精品在线 | 国产精品第2页 | 免费裸体视频网 | 国产成人61精品免费看片 | 精品免费国产一区二区三区四区 | 午夜精品在线看 | av国产网站 | 日本一区二区三区视频在线播放 | 91精品视频网站 | 在线精品视频免费播放 | 国产综合精品一区二区三区 | 一级黄毛片 | 国产精品你懂的在线观看 | 免费网站观看www在线观看 | 久章草在线 | 日韩视频免费 | 激情www| 国产麻豆精品一区 | 五月天婷婷免费视频 | 中文字幕在线一区观看 | 99视频在线免费 | 日韩剧情 | 人人爽人人爱 | 日本中文字幕电影在线免费观看 | 国产一级高清 | 国产色拍拍拍拍在线精品 | 成人久久| 成人亚洲欧美 | 国产大尺度视频 | 亚洲国产欧美在线人成大黄瓜 | 中文字幕你懂的 | 伊人天天| 五月婷婷免费 | 午夜精品成人一区二区三区 | 日本中文字幕在线 | 91丨九色丨蝌蚪丨对白 | 日韩视频免费在线 | 国产在线视频不卡 | 精品国产亚洲一区二区麻豆 | 日韩一区二区免费在线观看 | 国内精品久久影院 | 国产免费一区二区三区网站免费 | 在线免费观看视频 | 欧美大香线蕉线伊人久久 | 亚洲欧洲av在线 | 911国产在线观看 | 久久久久久久毛片 | 色综合久久网 | 久久久久免费网 | 欧美成人xxx | 欧美日本不卡 | 伊人久久国产 | 久久久精品 一区二区三区 国产99视频在线观看 | 中文字幕亚洲在线观看 | 精品久久久久久亚洲综合网站 | 91网站免费观看 | 色综合五月天 | 日本三级不卡视频 | 黄网站色视频 | 美女国产在线 | 人人舔人人干 | 91av在| 国产第一二区 | 狠狠色噜噜狠狠狠合久 | 精品在线观看一区二区三区 | 天天操网站 | 亚洲丝袜一区二区 | 国产精品免费一区二区 | 日日夜精品 | 中文字幕在线视频一区二区三区 | 91在线视频播放 | 99热这里只有精品8 久久综合毛片 | 在线观看激情av | 免费高清在线观看成人 | 天天干天天上 | 国产福利精品一区二区 | 国产美女无遮挡永久免费 | 成人黄色小说在线观看 | 五月开心网 | 日韩精品一区在线播放 | 色综合久久久 | 日韩成年视频 | 国产123av| 特级免费毛片 | 97超碰在 | 欧美有色| 国产成人三级在线播放 | 国产成人三级在线播放 | 日本视频久久久 | 人人爱人人做人人爽 | 特级xxxxx欧美| 亚洲欧美成aⅴ人在线观看 四虎在线观看 | 精品国产欧美 | 国产精品一区二区三区电影 | 伊人亚洲综合网 | 国产区在线视频 | 婷婷视频| 黄色成人免费电影 | 亚洲精品白浆高清久久久久久 | 久久一久久 | 久久久久久久久久亚洲精品 | 中文字幕日韩电影 | 午夜美女福利 | 久久久国产99久久国产一 | 国产1区2区3区精品美女 | 国产中文字幕av | 中文字幕乱在线伦视频中文字幕乱码在线 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 99综合视频 | av色图天堂网 | 亚洲在线视频网站 | 婷婷激情在线 | 亚洲永久精品一区 | 波多野结衣亚洲一区二区 | 免费黄色在线网址 | 亚洲精品国产麻豆 | www.eeuss影院av撸 | av在线免费在线 | 中文字幕在线中文 | www国产亚洲| 久久精品一区二区三区国产主播 | 成年人毛片在线观看 | 久草精品视频在线看网站免费 | 亚州av一区| 麻豆你懂的 | 最新超碰 | 精品国产成人在线影院 | 99这里只有精品99 | 日本在线观看视频一区 | 免费a v观看 | www.午夜视频 | 美腿丝袜一区二区三区 | 欧美精品一区在线 | 国产精品资源网 | 性日韩欧美在线视频 | 91精品国产综合久久福利 | 欧美精品久久久久a | 成人在线一区二区三区 | 午夜av不卡 | 日韩免费精品 | 久久精品视频网址 | 极品久久久 | www.com黄色 | 免费国产黄线在线观看视频 | 欧美精品久久久久久久久久 | 日韩精品中文字幕在线不卡尤物 | 96精品高清视频在线观看软件特色 | 99精品热| 狠狠躁夜夜躁人人爽超碰91 | 久久免费99精品久久久久久 | 久久国产精品久久精品国产演员表 | 国产精品成人在线观看 | 亚洲天天看 | 97香蕉超级碰碰久久免费软件 | 91精品999| 国产视频久 | 国产一级视频在线免费观看 | 黄色片视频免费 | 少妇资源站| 国产午夜精品免费一区二区三区视频 | 欧美亚洲专区 | 久久精品99国产国产 | 中文字幕在线观看免费高清完整版 | 黄a在线看 | 久久超碰97| 在线观看黄网 | 国产一级片直播 | 99在线观看| 国产综合视频在线观看 | 激情综合网天天干 | 免费开视频 | 国产一区二区三区视频在线 | 久久免费视频1 | 久久免费视频6 | 看黄色.com| jizz欧美性9| 狠狠的操你 | 在线观看国产www | 在线视频欧美日韩 | 四虎在线视频 | 国产麻豆剧果冻传媒视频播放量 | 99视频在线免费 | 国内外激情视频 | 久久久久成人精品 | 亚洲国产中文字幕在线观看 | 狠狠色网 | 免费高清男女打扑克视频 | 蜜桃av观看 | 亚洲区另类春色综合小说校园片 | 玖草在线观看 | 亚洲色图美腿丝袜 | 丁香花在线视频观看免费 | 99久久这里有精品 | 香蕉视频在线播放 | 国产成人精品综合久久久久99 | 久久国产热 | 涩涩网站在线看 | 天天插日日操 | 五月天激情视频在线观看 | 亚洲国产精品成人综合 | 欧美在线观看视频 | 人人要人人澡人人爽人人dvd | 免费av片在线 | 日批在线观看 | 久久9999久久免费精品国产 | 国产爽妇网 | 国产成人久 | 在线视频18在线视频4k | 日韩免费视频线观看 | av在线电影播放 | 高清有码中文字幕 | 国产精品欧美久久久久久 | 亚洲精品456在线播放第一页 | 国产精品久久久久久久久久直播 | 日韩精品一区二区三区第95 | 91禁在线看| 亚洲年轻女教师毛茸茸 | 天天色天天操综合 | 亚洲成a人片在线观看网站口工 | 九九热精品在线 | 日韩欧美一区二区三区在线观看 | 九九九九精品 | 国产亚洲资源 | 亚洲精品乱码久久久久久蜜桃91 | 久久国产剧场电影 | 激情婷婷网 | 中文字幕日本电影 | 免费看成人a| 亚洲第一区精品 | 99久高清在线观看视频99精品热在线观看视频 | 超碰在线最新网址 | 成人a免费 | 色综合久久久 | 欧美日韩国产在线精品 | 又色又爽又激情的59视频 | 欧美日韩三区二区 | 日韩视频免费观看高清 | 狠狠色综合网站久久久久久久 | 中文字幕在线观 | 国产一区在线看 | 超碰免费在线公开 | 久久久久国产精品午夜一区 | 五月天堂色 | 天天摸天天操天天舔 | 国产亚洲在 | 欧美日韩国产亚洲乱码字幕 | 亚洲精品99久久久久中文字幕 | 天天操天天射天天插 | 国产91大片 | 91精品国产自产老师啪 | 久久久免费国产 | 精品九九九九 | 国产综合小视频 | 久久爱资源网 | 日韩精品一区二区三区免费观看 | 日韩a在线 | 国产成人精品一区在线 | 一区二区三区韩国免费中文网站 | 国产精品伦一区二区三区视频 | 99免费看片 | 亚洲人成人在线 | 欧美日韩在线视频免费 | 色婷婷综合久久久 | 国产精品久久久久久久久久免费 | 蜜臀av夜夜澡人人爽人人 | 久久久久一区二区三区 | 狠狠干狠狠艹 | 免费观看成人网 | 在线免费观看麻豆视频 | 胖bbbb搡bbbb擦bbbb| 国产精品久久一区二区无卡 | 久久www免费视频 | 午夜精品久久久久久久久久久久久久 | 日本精品午夜 | 成人在线免费视频观看 | 欧美在线一级片 | 婷婷丁香花五月天 | 天天干 夜夜操 | 免费在线观看国产精品 | 黄色一区二区在线观看 | 久操视频在线免费看 | 97超碰超碰久久福利超碰 | 日本最新一区二区三区 | 美女网站在线观看 | 免费观看91| 久久观看最新视频 | www.夜夜操.com| 精品国产一区二区三区久久久蜜臀 | 婷婷亚洲综合五月天小说 | 国产精品嫩草影院123 | 国产一二区视频 | 玖玖精品在线 | 91| 日韩在线电影一区 | 久久久国产精品人人片99精片欧美一 | 久久国产精品视频免费看 | 国产精品久久精品国产 | 精品久久国产精品 | 国产尤物在线 | 久久国产二区 | 久久久久久久久免费视频 | 日本黄色一级电影 | 有码中文字幕在线观看 | 五月婷影院 | 免费看一级黄色 |