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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

keras系列︱图像多分类训练与利用bottleneck features进行微调(三)

發(fā)布時間:2023/11/27 生活经验 85 豆豆
生活随笔 收集整理的這篇文章主要介紹了 keras系列︱图像多分类训练与利用bottleneck features进行微调(三) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

引自:http://blog.csdn.net/sinat_26917383/article/details/72861152

中文文檔:http://keras-cn.readthedocs.io/en/latest/?
官方文檔:https://keras.io/?
文檔主要是以keras2.0。

訓練、訓練主要就”練“嘛,所以堆幾個案例就知道怎么做了。?
.


.

Keras系列:

1、keras系列︱Sequential與Model模型、keras基本結(jié)構(gòu)功能(一)?
2、keras系列︱Application中五款已訓練模型、VGG16框架(Sequential式、Model式)解讀(二)?
3、keras系列︱圖像多分類訓練與利用bottleneck features進行微調(diào)(三)?
4、keras系列︱人臉表情分類與識別:opencv人臉檢測+Keras情緒分類(四)?
5、keras系列︱遷移學習:利用InceptionV3進行fine-tuning及預測、完整案例(五)

.


一、CIFAR10 小圖片分類示例(Sequential式)


要訓練模型,首先得知道數(shù)據(jù)長啥樣。先來看看經(jīng)典的cifar10是如何進行訓練的。?
示例中CIFAR10采用的是Sequential式來編譯網(wǎng)絡結(jié)構(gòu)。

from __future__ import print_function
import keras
from keras.datasets import cifar10
from keras.preprocessing.image import ImageDataGenerator
from keras.models import Sequential
from keras.layers import Dense, Dropout, Activation, Flatten from keras.layers import Conv2D, MaxPooling2D batch_size = 32 num_classes = 10 epochs = 200 data_augmentation = True # 數(shù)據(jù)載入 (x_train, y_train), (x_test, y_test) = cifar10.load_data() # 多分類標簽生成 y_train = keras.utils.to_categorical(y_train, num_classes) y_test = keras.utils.to_categorical(y_test, num_classes) # 網(wǎng)絡結(jié)構(gòu)配置 model = Sequential() model.add(Conv2D(32, (3, 3), padding='same', input_shape=x_train.shape[1:])) model.add(Activation('relu')) model.add(Conv2D(32, (3, 3))) model.add(Activation('relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Dropout(0.25)) model.add(Conv2D(64, (3, 3), padding='same')) model.add(Activation('relu')) model.add(Conv2D(64, (3, 3))) model.add(Activation('relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Dropout(0.25)) model.add(Flatten()) model.add(Dense(512)) model.add(Activation('relu')) model.add(Dropout(0.5)) model.add(Dense(num_classes)) model.add(Activation('softmax')) # 訓練參數(shù)設置 # initiate RMSprop optimizer opt = keras.optimizers.rmsprop(lr=0.0001, decay=1e-6) # Let's train the model using RMSprop model.compile(loss='categorical_crossentropy', optimizer=opt, metrics=['accuracy']) # 生成訓練數(shù)據(jù) x_train = x_train.astype('float32') x_test = x_test.astype('float32') x_train /= 255 x_test /= 255 if not data_augmentation: print('Not using data augmentation.') model.fit(x_train, y_train, batch_size=batch_size, epochs=epochs, validation_data=(x_test, y_test), shuffle=True) else: print('Using real-time data augmentation.') # This will do preprocessing and realtime data augmentation: datagen = ImageDataGenerator( featurewise_center=False, # set input mean to 0 over the dataset samplewise_center=False, # set each sample mean to 0 featurewise_std_normalization=False, # divide inputs by std of the dataset samplewise_std_normalization=False, # divide each input by its std zca_whitening=False, # apply ZCA whitening rotation_range=0, # randomly rotate images in the range (degrees, 0 to 180) width_shift_range=0.1, # randomly shift images horizontally (fraction of total width) height_shift_range=0.1, # randomly shift images vertically (fraction of total height) horizontal_flip=True, # randomly flip images vertical_flip=False) # randomly flip images # Compute quantities required for feature-wise normalization # (std, mean, and principal components if ZCA whitening is applied). datagen.fit(x_train) # fit訓練 # Fit the model on the batches generated by datagen.flow(). model.fit_generator(datagen.flow(x_train, y_train, batch_size=batch_size), steps_per_epoch=x_train.shape[0] // batch_size, epochs=epochs, validation_data=(x_test, y_test))

?

就像caffe里面需要把數(shù)據(jù)編譯成LMDB一樣,keras也要數(shù)據(jù)服從其格式。來看看cifar10的數(shù)據(jù)格式:?
.

1、載入數(shù)據(jù)

(x_train, y_train), (x_test, y_test) = cifar10.load_data()

?

這句用來網(wǎng)絡上載入數(shù)據(jù),跟之前application之中,pre-model一樣,有時間需要不斷的網(wǎng)上下載,所以等你下載完了,可以自己改一樣地址,讓其讀取本地文件。?
x_train格式例如(100,100,100,3),100張格式為100*100*3的圖像集;y_train格式為(100,)

.

2、多分類標簽指定keras格式

keras對多分類的標簽需要一種固定格式,所以需要按照以下的方式進行轉(zhuǎn)換,num_classes為分類數(shù)量,假設此時有5類:

y_train = keras.utils.to_categorical(y_train, num_classes)

?

最終輸出的格式應該是(100,5)?
.

3、圖片預處理生成器ImageDataGenerator

datagen = ImageDataGenerator() 
datagen.fit(x_train)

?

生成器初始化datagen ,然后datagen.fit,計算依賴于數(shù)據(jù)的變換所需要的統(tǒng)計信息?
.

4、最終訓練格式-batch

把數(shù)據(jù)按照每個batch進行劃分,這樣就可以送到模型進行訓練了。比caffe中要LMDB快很多。

datagen.flow(x_train, y_train, batch_size=batch_size)

?

接收numpy數(shù)組和標簽為參數(shù),生成經(jīng)過數(shù)據(jù)提升或標準化后的batch數(shù)據(jù),并在一個無限循環(huán)中不斷的返回batch數(shù)據(jù)。

.


二、官方改編——多分類簡易網(wǎng)絡結(jié)構(gòu)(Sequential式)


改編自官方文檔的《面向小數(shù)據(jù)集構(gòu)建圖像分類模型》?
.

1、數(shù)據(jù)來源與下載

官方文檔是貓狗二分類,此時變成一個5分類,由于追求效率,從網(wǎng)上找來一個很小的數(shù)據(jù)集。來源于博客:?
Caffe學習系列(12):訓練和測試自己的圖片?
數(shù)據(jù)描述:?
共有500張圖片,分為大巴車、恐龍、大象、鮮花和馬五個類,每個類100張。?
下載地址:http://pan.baidu.com/s/1nuqlTnN?
編號分別以3,4,5,6,7開頭,各為一類。我從其中每類選出20張作為測試,其余80張作為訓練。因此最終訓練圖片400張,測試圖片100張,共5類。如下圖:?

.

2、 載入與模型網(wǎng)絡構(gòu)建

很坑的是Keras中文文檔本節(jié)還沒有及時更新,還需要看原版的網(wǎng)站。譬如keras中文文檔是Convolution2D,但是現(xiàn)在是conv2D所以有點坑。

# 載入與模型網(wǎng)絡構(gòu)建
from keras.models import Sequential
from keras.layers import Conv2D, MaxPooling2D from keras.layers import Activation, Dropout, Flatten, Dense model = Sequential() model.add(Conv2D(32, (3, 3), input_shape=(150, 150,3))) # filter大小3*3,數(shù)量32個,原始圖像大小3,150,150 model.add(Activation('relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Conv2D(32, (3, 3))) model.add(Activation('relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Conv2D(64, (3, 3))) model.add(Activation('relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Flatten()) # this converts our 3D feature maps to 1D feature vectors model.add(Dense(64)) model.add(Activation('relu')) model.add(Dropout(0.5)) model.add(Dense(5)) # matt,幾個分類就要有幾個dense model.add(Activation('softmax'))# matt,多分類

?

二分類與多分類在前面的結(jié)構(gòu)上都沒有問題,就是需要改一下最后的全連接層,因為此時有5分類,所以需要Dense(5),同時激活函數(shù)是softmax,如果是二分類就是dense(2)+sigmoid(激活函數(shù))。

同時出現(xiàn)了以下的報錯:

報錯1:model.add(Convolution2D(32, 3, 3, input_shape=(3, 150, 150))) ValueError: Negative dimension size caused by subtracting 3 from 1 for 'conv2d_6/convolution' (op: 'Conv2D') with input shapes: [?,1,148,32], [3,3,32,32]. 報錯2:model.add(MaxPooling2D(pool_size=(2, 2))) ValueError: Negative dimension size caused by subtracting 2 from 1 for 'max_pooling2d_11/MaxPool' (op: 'MaxPool') with input shapes: [?,1,148,32].

?

原因:?
input_shape=(3,150, 150)是theano的寫法,而tensorflow需要寫出:(150,150,3);?
需要修改Input_size。也就是”channels_last”和”channels_first”數(shù)據(jù)格式的問題。?
.

3、設置訓練參數(shù)

# 二分類
#model.compile(loss='binary_crossentropy',
#              optimizer='rmsprop',
#              metrics=['accuracy'])# 多分類 model.compile(loss='categorical_crossentropy', # matt,多分類,不是binary_crossentropy optimizer='rmsprop', metrics=['accuracy']) # 優(yōu)化器rmsprop:除學習率可調(diào)整外,建議保持優(yōu)化器的其他默認參數(shù)不變

?

二分類的參數(shù)與多分類的參數(shù)設置有些區(qū)別。

.

4、圖像預處理

然后我們開始準備數(shù)據(jù),使用.flow_from_directory()來從我們的jpgs圖片中直接產(chǎn)生數(shù)據(jù)和標簽。?
其中值得留意的是:

  • ImageDataGenerator:用以生成一個batch的圖像數(shù)據(jù),支持實時數(shù)據(jù)提升。訓練時該函數(shù)會無限生成數(shù)據(jù),直到達到規(guī)定的epoch次數(shù)為止。
  • flow_from_directory(directory):?
    以文件夾路徑為參數(shù),生成經(jīng)過數(shù)據(jù)提升/歸一化后的數(shù)據(jù),在一個無限循環(huán)中無限產(chǎn)生batch數(shù)據(jù)

train_datagen = ImageDataGenerator(rescale=1./255,shear_range=0.2,zoom_range=0.2,horizontal_flip=True) test_datagen = ImageDataGenerator(rescale=1./255) train_generator = train_datagen.flow_from_directory( '/.../train', target_size=(150, 150), # all images will be resized to 150x150 batch_size=32, class_mode='categorical') # matt,多分類 validation_generator = test_datagen.flow_from_directory( '/.../validation', target_size=(150, 150), batch_size=32, class_mode='categorical') # matt,多分類 # class_mode='binary'

?

這一步驟是數(shù)據(jù)準備階段,會比較慢,同時多分類,需要設置class_mode為“categorical”。flow_from_directory是計算數(shù)據(jù)的一些屬性值,之后再訓練階段直接丟進去這些生成器。?
.

5、訓練階段

model.fit_generator(train_generator,samples_per_epoch=2000,nb_epoch=50,validation_data=validation_generator,nb_val_samples=800)
# samples_per_epoch,相當于每個epoch數(shù)據(jù)量峰值,每個epoch以經(jīng)過模型的樣本數(shù)達到samples_per_epoch時,記一個epoch結(jié)束
model.save_weights('/.../first_try_animal5.h5') 

?

最后的結(jié)果示范:

Epoch 48/50
62/62 [==============================] - 39s - loss: 0.0464 - acc: 0.9929 - val_loss: 0.3916 - val_acc: 0.9601 Epoch 49/50 62/62 [==============================] - 38s - loss: 0.0565 - acc: 0.9914 - val_loss: 0.6423 - val_acc: 0.9500 Epoch 50/50 62/62 [==============================] - 38s - loss: 0.0429 - acc: 0.9960 - val_loss: 0.4238 - val_acc: 0.9599 <keras.callbacks.History object at 0x7f049fc6f090>

?

.

6、出現(xiàn)的問題

問題一:loss為負數(shù)?
原因:如果出現(xiàn)loss為負,是因為之前多分類的標簽哪些設置不對,現(xiàn)在是5分類的,寫成了2分類之后導致了Loss為負數(shù),形如下面

Epoch 43/50
62/62 [==============================] - 39s - loss: -16.0148 - acc: 0.1921 - val_loss: -15.9440 - val_acc: 0.1998
Epoch 44/50
61/62 [============================>.] - ETA: 0s - loss: -15.8525 - acc: 0.2049Segmentation fault (core dumped)

.


三、fine-tuning方式一:使用預訓練網(wǎng)絡的bottleneck特征


本節(jié)主要來源于:面向小數(shù)據(jù)集構(gòu)建圖像分類模型?
當然,keras中文版里面漏洞一大堆… 沒有跟著版本更新,導致很多內(nèi)容都是不對的,哎…

先看VGG-16的網(wǎng)絡結(jié)構(gòu)如下:?

本節(jié)主要是通過已經(jīng)訓練好的模型,把bottleneck特征抽取出來,然后滾到下一個“小”模型里面,也就是全連接層。?
實施步驟為:

  • 1、把訓練好的模型的權(quán)重拿來,model;
  • 2、運行,提取bottleneck feature(網(wǎng)絡在全連接之前的最后一層激活的feature?
    map,卷積-全連接層之間),單獨拿出來,并保存
  • 3、bottleneck層數(shù)據(jù),之后 + dense全連接層,進行fine-tuning?
    .

1、導入預訓練權(quán)重與網(wǎng)絡框架

這里keras中文文檔是錯誤的,要看現(xiàn)在的原作者的博客,

WEIGHTS_PATH = '/home/ubuntu/keras/animal5/vgg16_weights_tf_dim_ordering_tf_kernels.h5'
WEIGHTS_PATH_NO_TOP = '/home/ubuntu/keras/animal5/vgg16_weights_tf_dim_ordering_tf_kernels_notop.h5'from keras.applications.vgg16_matt import VGG16
model = VGG16(include_top=False, weights='imagenet')

?

其中WEIGHTS_PATH_NO_TOP 就是去掉了全連接層,可以用他直接提取bottleneck的特征,感謝原作者。?
.

2、提取圖片的bottleneck特征

需要步驟:

  • 載入圖片;
  • 灌入pre-model的權(quán)重;
  • 得到bottleneck feature
#如何提取bottleneck feature
from keras.models import Sequential
from keras.layers import Conv2D, MaxPooling2D from keras.layers import Activation, Dropout, Flatten, Dense # (1)載入圖片 # 圖像生成器初始化 from keras.preprocessing.image import ImageDataGenerator import numpy as np datagen = ImageDataGenerator(rescale=1./255) # 訓練集圖像生成器 generator = datagen.flow_from_directory( '/home/ubuntu/keras/animal5/train', target_size=(150, 150), batch_size=32, class_mode=None, shuffle=False) # 驗證集圖像生成器 generator = datagen.flow_from_directory( '/home/ubuntu/keras/animal5/validation', target_size=(150, 150), batch_size=32, class_mode=None, shuffle=False) #(2)灌入pre-model的權(quán)重 model.load_weights('/.../vgg16_weights_tf_dim_ordering_tf_kernels_notop.h5') #(3)得到bottleneck feature bottleneck_features_train = model.predict_generator(generator, 500) # 核心,steps是生成器要返回數(shù)據(jù)的輪數(shù),每個epoch含有500張圖片,與model.fit(samples_per_epoch)相對 np.save(open('bottleneck_features_train.npy', 'w'), bottleneck_features_train) bottleneck_features_validation = model.predict_generator(generator, 100) # 與model.fit(nb_val_samples)相對,一個epoch有800張圖片,驗證集 np.save(open('bottleneck_features_validation.npy', 'w'), bottleneck_features_validation)

?

注意

  • class_mode,此時為預測場景,制作數(shù)據(jù)階段,不用設置標簽,因為此時是按照順序產(chǎn)生;而在train_generator數(shù)據(jù)訓練之前的數(shù)據(jù)準備,則需要設置標簽
  • shuffle,此時為預測場景,制作數(shù)據(jù)集,不用打亂;但是在model.fit過程中需要打亂,表示是否在訓練過程中每個epoch前隨機打亂輸入樣本的順序。

.

3、 fine-tuning - “小”網(wǎng)絡

主要步驟:

  • (1)導入bottleneck_features數(shù)據(jù);
  • (2)設置標簽,并規(guī)范成Keras默認格式;
  • (3)寫“小網(wǎng)絡”的網(wǎng)絡結(jié)構(gòu)
  • (4)設置參數(shù)并訓練
# (1)導入bottleneck_features數(shù)據(jù)
train_data = np.load(open('bottleneck_features_train.npy'))
# the features were saved in order, so recreating the labels is easy
train_labels = np.array([0] * 100 + [1] * 100 + [2] * 100 + [3] * 100 + [4] * 96) # matt,打標簽 validation_data = np.load(open('bottleneck_features_validation.npy')) validation_labels = np.array([0] * 20 + [1] * 20 + [2] * 20 + [3] * 20 + [4] * 16) # matt,打標簽 # (2)設置標簽,并規(guī)范成Keras默認格式 train_labels = keras.utils.to_categorical(train_labels, 5) validation_labels = keras.utils.to_categorical(validation_labels, 5) # (3)寫“小網(wǎng)絡”的網(wǎng)絡結(jié)構(gòu) model = Sequential() #train_data.shape[1:] model.add(Flatten(input_shape=(4,4,512)))# 4*4*512 model.add(Dense(256, activation='relu')) model.add(Dropout(0.5)) #model.add(Dense(1, activation='sigmoid')) # 二分類 model.add(Dense(5, activation='softmax')) # matt,多分類 #model.add(Dense(1)) #model.add(Dense(5)) #model.add(Activation('softmax')) # (4)設置參數(shù)并訓練 model.compile(loss='categorical_crossentropy', # matt,多分類,不是binary_crossentropy optimizer='rmsprop', metrics=['accuracy']) model.fit(train_data, train_labels, nb_epoch=50, batch_size=16, validation_data=(validation_data, validation_labels)) model.save_weights('bottleneck_fc_model.h5')

?

因為特征的size很小,模型在CPU上跑的也會很快,大概1s一個epoch。

#正確的結(jié)果:
Epoch 48/50
496/496 [==============================] - 0s - loss: 0.3071 - acc: 0.7762 - val_loss: 4.9337 - val_acc: 0.3229 Epoch 49/50 496/496 [==============================] - 0s - loss: 0.2881 - acc: 0.8004 - val_loss: 4.3143 - val_acc: 0.3750 Epoch 50/50 496/496 [==============================] - 0s - loss: 0.3119 - acc: 0.7984 - val_loss: 4.4788 - val_acc: 0.5625 <keras.callbacks.History object at 0x7f25d4456e10>

?

4、遇到的問題

(1)Flatten層——最難處理的層?
其中在配置網(wǎng)絡中,我發(fā)現(xiàn)Flatten是最容易出現(xiàn)問題的Layer了。非常多的問題,是因為輸給這個層的格式不對。譬如報錯:

語句:model.add(Flatten(input_shape=train_data.shape[1:]))
ValueError: Input 0 is incompatible with layer flatten_5: expected min_ndim=3, found ndim=2

?

于是要改成(4,4,512),這樣寫(512,4,4)也不對!

(2)標簽格式問題?
model.fit之后報錯:

ValueError: Error when checking target: expected dense_2 to have shape (None, 5) but got array with shape (500, 1)

?

標簽格式?jīng)]有設置,特別是多分類會遇見這樣的問題。需要keras.utils.to_categorical()

train_labels = keras.utils.to_categorical(train_labels, 5)

.


四、fine-tuning方式二:要調(diào)整權(quán)重


Keras中文文檔+原作者文檔這個部分都沒有寫對!

先來看看整個結(jié)構(gòu)。?

fine-tune分三個步驟:?
- 搭建vgg-16并載入權(quán)重,將之前定義的全連接網(wǎng)絡加在模型的頂部,并載入權(quán)重?
- 凍結(jié)vgg16網(wǎng)絡的一部分參數(shù)?
- 模型訓練

注意:

  • 1、fine-tune,所有的層都應該以訓練好的權(quán)重為初始值,例如,你不能將隨機初始的全連接放在預訓練的卷積層之上,這是因為由隨機權(quán)重產(chǎn)生的大梯度將會破壞卷積層預訓練的權(quán)重。
  • 2、選擇只fine-tune最后的卷積塊,而不是整個網(wǎng)絡,這是為了防止過擬合。整個網(wǎng)絡具有巨大的熵容量,因此具有很高的過擬合傾向。由底層卷積模塊學習到的特征更加一般,更加不具有抽象性,因此我們要保持前兩個卷積塊(學習一般特征)不動,只fine-tune后面的卷積塊(學習特別的特征)
  • 3、fine-tune應該在很低的學習率下進行,通常使用SGD優(yōu)化而不是其他自適應學習率的優(yōu)化算法,如RMSProp。這是為了保證更新的幅度保持在較低的程度,以免毀壞預訓練的特征。?
    .

1、步驟一:搭建vgg-16并載入權(quán)重

1.1 Keras文檔結(jié)果

先看看Keras中文文檔是這樣的:

from keras import applications
from keras.preprocessing.image import ImageDataGenerator
from keras import optimizers from keras.models import Sequential from keras.layers import Dropout, Flatten, Dense # 網(wǎng)絡結(jié)構(gòu) top_model = Sequential() #top_model.add(Flatten(input_shape=model.output_shape[1:])) top_model.add(Flatten(input_shape=(4,4,512))) top_model.add(Dense(256, activation='relu')) top_model.add(Dropout(0.5)) #top_model.add(Dense(1, activation='sigmoid')) top_model.add(Dense(5, activation='softmax')) # 加載權(quán)重 top_model.load_weights(top_model_weights_path) model.add(top_model)

?

中文文檔是用Sequential式寫的,但是沒有找到對的權(quán)重:top_model_weights_path,如果不正確的權(quán)重文件會報錯:

ValueError: You are trying to load a weight file containing 16 layers into a model with 2 layers.

?

同時也沒有交代model是什么。

1.2 原作者新改

當然看原作者代碼知道了這里的model就是VGG16的。所以原作者改成:

# 載入Model權(quán)重 + 網(wǎng)絡
from keras.applications.vgg16_matt import VGG16
model = VGG16(weights='imagenet', include_top=False) # “小網(wǎng)絡”結(jié)構(gòu) top_model = Sequential() top_model.add(Flatten(input_shape=model.output_shape[1:])) # top_model.add(Flatten(input_shape=(4,4,512))) top_model.add(Dense(256, activation='relu')) top_model.add(Dropout(0.5)) top_model.add(Dense(5, activation='softmax')) # 加權(quán)重 top_model.load_weights(top_model_weights_path) # 兩個網(wǎng)絡整合 model.add(top_model)

?

這里又出現(xiàn)一個問題就是,原作者是用application中的VGG16來做的,那么VGG16原來的是Model式的,現(xiàn)在model.add的是Sequential,兼容不起來,報錯:

# AttributeError: 'Model' object has no attribute 'add'

?

于是參考了VGG16原來網(wǎng)絡中的結(jié)構(gòu)自己寫了:

from keras import applications
from keras.preprocessing.image import ImageDataGenerator
from keras import optimizers from keras.models import Sequential from keras.layers import Dropout, Flatten, Dense # 載入Model權(quán)重 + 網(wǎng)絡 from keras.applications.vgg16_matt import VGG16 model = VGG16(weights='imagenet', include_top=False) # 新加層 x = model.output # 最有問題的層:flatten層 x = Flatten(name='flatten')(x) # 嘗試一:x = Flatten()(x) # 嘗試二:x = GlobalAveragePooling2D()(x) # 嘗試三:from keras.layers import Reshape #x = Reshape((4,4, 512))(x) # TypeError: long() argument must be a string or a number, not 'NoneType' x = Dense(256, activation='relu', name='fc1')(x) x = Dropout(0.5)(x) predictions = Dense(5, activation='softmax')(x) from keras.models import Model vgg_model = Model(input=model.input, output=predictions) 

?

其中又是遇到了Flatten()層的問題,而且做了很多嘗試,這一個層的意思是把VGG16網(wǎng)絡結(jié)構(gòu)+權(quán)重的model數(shù)據(jù)輸出格式輸入給Flatten()進行降維,但是!?
model.output輸出的格式是:(?,?,?,512)?
那么肯定會報錯:

ValueError: The shape of the input to "Flatten" is not fully defined (got (None, None, 512). Make sure to pass a complete "input_shape" or "batch_input_shape" argument to the first layer in your model.

?

(1)其中原作者VGG16代碼中是這么處理Flatten層的:

x = Flatten(name='flatten')(x)

?

同樣會報錯。

(2)借鑒《Keras跨領(lǐng)域圖像分類遷移學習與微調(diào)》的一部分:

x = Reshape((4,4, 512))(x)

?

也沒成功,應該是自己不太會如果寫這個層。

(3)嘗試直接加了個GlobalAveragePooling2D層之后:

x = GlobalAveragePooling2D()(x)
x = Dense(256, activation='relu', name='fc1')(x) x = Dropout(0.5)(x) predictions = Dense(5, activation='softmax')(x)

?

可以運行,但是,fit的結(jié)果是:

Epoch 1/50
31/31 [==============================] - 10s - loss: 0.5575 - acc: 0.7730 - val_loss: 0.5191 - val_acc: 0.8000 Epoch 2/50 31/31 [==============================] - 9s - loss: 0.5548 - acc: 0.7760 - val_loss: 0.5256 - val_acc: 0.8000 ... Epoch 49/50 31/31 [==============================] - 9s - loss: 0.5602 - acc: 0.7730 - val_loss: 0.5285 - val_acc: 0.8000 Epoch 50/50 31/31 [==============================] - 9s - loss: 0.5583 - acc: 0.7780 - val_loss: 0.5220 - val_acc: 0.8000 <keras.callbacks.History object at 0x7fb90410fb10>

內(nèi)容結(jié)果總是一樣的,所以還是不對,這塊還沒有解決。。?
.

2、凍結(jié)vgg16網(wǎng)絡的一部分參數(shù)

然后將最后一個卷積塊前的卷積層參數(shù)凍結(jié):

for layer in vgg_model.layers[:25]:layer.trainable = False# compile the model with a SGD/momentum optimizer vgg_model.compile(loss='binary_crossentropy', optimizer=optimizers.SGD(lr=1e-4, momentum=0.9), metrics=['accuracy'])

.

3、模型訓練

然后以很低的學習率進行訓練:

# 準備數(shù)據(jù)
train_data_dir = '/.../train'
validation_data_dir = '/.../validation'
img_width, img_height = 150, 150 nb_train_samples = 500 nb_validation_samples = 100 epochs = 50 batch_size = 16 # 圖片預處理生成器 train_datagen = ImageDataGenerator( rescale=1./255, shear_range=0.2, zoom_range=0.2, horizontal_flip=True) test_datagen = ImageDataGenerator(rescale=1./255) # 圖片generator train_generator = train_datagen.flow_from_directory( train_data_dir, target_size=(img_height, img_width), batch_size=32, class_mode='categorical') validation_generator = test_datagen.flow_from_directory( validation_data_dir, target_size=(img_height, img_width), batch_size=32, class_mode='categorical') # 訓練 vgg_model.fit_generator( train_generator, steps_per_epoch=nb_train_samples // batch_size, epochs=epochs, validation_data=validation_generator, validation_steps=nb_validation_samples // batch_size)

如果在之前的網(wǎng)絡結(jié)構(gòu)可以正常載入的話,后面都是沒有問題的,可以直接運行。

?

轉(zhuǎn)載于:https://www.cnblogs.com/Anita9002/p/8136578.html

總結(jié)

以上是生活随笔為你收集整理的keras系列︱图像多分类训练与利用bottleneck features进行微调(三)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

国产高清在线观看av | 国产涩涩在线观看 | 色综合天天| 免费看一级一片 | 国产精品嫩草影视久久久 | 日韩精品久久久久久久电影99爱 | 四虎www com| 香蕉一区| 亚洲在线资源 | 一区精品在线 | 欧美另类调教 | 久久精品之 | 伊人久久影视 | 久久久国产影视 | 国产视频综合在线 | 日韩欧美综合 | 91大神dom调教在线观看 | 66av99精品福利视频在线 | 欧洲精品码一区二区三区免费看 | 色狠狠综合天天综合综合 | 五月婷激情 | 日本一区二区三区视频在线播放 | 人人澡超碰碰97碰碰碰软件 | 久草在线视频在线观看 | 一级淫片a| 欧美日韩综合在线观看 | 天天色 天天| 四虎影视www | 特级西西444www大胆高清无视频 | 欧美韩国日本在线观看 | 中文字幕一区二区三区乱码不卡 | 在线导航福利 | 808电影| 久久激情影院 | 人人舔人人插 | 亚州av一区 | 亚洲国产免费看 | 国内精品毛片 | 国产一区二区播放 | 久久免费看毛片 | 91精品国产综合久久婷婷香蕉 | 国产一级久久久 | 欧洲精品二区 | 日韩大片在线看 | 99热精品国产一区二区在线观看 | 五月综合久久 | 国产精品综合久久久久 | 久久色网站| 人人添人人澡人人澡人人人爽 | 激情视频二区 | 欧美婷婷综合 | 91禁看片 | 国产成人精品综合久久久久99 | 天天躁天天狠天天透 | 日韩va亚洲va欧美va久久 | 日韩精品极品视频 | 欧美日产一区 | 91在线产啪| 国产精品久久久久久麻豆一区 | 国产日韩欧美在线一区 | 国产精品欧美一区二区 | 日韩色视频在线观看 | 精品国产三级a∨在线欧美 免费一级片在线观看 | 国产精品99久久久久久久久久久久 | 二区三区在线观看 | 激情影音先锋 | 一区二区三区在线观看中文字幕 | 色婷婷97 | 精品国产精品久久 | 国产成人亚洲在线观看 | 色在线免费视频 | 麻豆传媒一区二区 | 一区二区三区四区五区在线 | 日韩午夜电影网 | 亚洲黄色一级大片 | 亚洲人成免费网站 | 亚洲在线不卡 | 成年人精品 | 色偷偷97| 97国产精品亚洲精品 | 国产中文字幕视频在线观看 | 国产福利在线不卡 | 久久在线观看 | 五月开心婷婷 | 高清av中文字幕 | 婷婷综合成人 | 久久久久一区二区三区 | 日韩免费网址 | 91麻豆精品国产91久久久久久久久 | 国产精品视屏 | 美女免费视频一区二区 | 国外成人在线视频网站 | 久久久福利视频 | 国产成人精品免费在线观看 | 青春草国产视频 | 国产午夜视频在线观看 | 亚洲婷婷伊人 | 免费视频97 | 日本中文字幕在线一区 | 一区二区三区在线视频观看58 | 欧美日韩xxxxx | 国产 一区二区三区 在线 | 91秒拍国产福利一区 | 中文字幕在线视频一区 | 久久久久久久免费 | 久久久久久久久久久影视 | 免费一级日韩欧美性大片 | 成人免费一区二区三区在线观看 | 在线国产福利 | 日韩一区二区在线免费观看 | 韩国av在线播放 | 99re视频在线观看 | 中文字幕一二 | 国产精品女主播一区二区三区 | 91成人蝌蚪 | 国产中文字幕在线播放 | 免费看色视频 | 国产一区二区三区久久久 | 98超碰人人 | 天天天干 | 4438全国亚洲精品在线观看视频 | 久久久久久久免费观看 | 亚洲片在线资源 | 91精品国产乱码久久 | 国产在线观看你懂得 | 国产高清专区 | 久久嗨 | 综合网久久 | 五月天国产精品 | 国产伦理精品一区二区 | 日韩免费在线网站 | 国产日韩欧美在线观看视频 | 色偷偷888欧美精品久久久 | 97在线精品视频 | 亚洲v精品 | 国产精品白丝jk白祙 | 人人干人人爽 | 日日夜夜草| 91亚洲激情 | 激情婷婷综合网 | 天天干夜夜擦 | 成人av一区二区在线观看 | 国产精品国产三级国产专区53 | 国产精品黑丝在线观看 | 九九视频一区 | 日韩精品在线免费播放 | 91精品一区二区三区蜜桃 | 欧美黄污视频 | 久久久国产99久久国产一 | 国产一区 在线播放 | japanesexxxhd奶水 91在线精品一区二区 | 另类五月激情 | 夜夜操天天干, | 日韩午夜三级 | 91亚色视频在线观看 | mm1313亚洲精品国产 | 久草免费新视频 | 国产精品久久久影视 | 三级视频国产 | 亚洲精品视频偷拍 | 婷婷成人亚洲综合国产xv88 | 91精品国产91久久久久 | 日韩三级.com | 久久综合九色综合97婷婷女人 | 日本久久99| 国产99久久九九精品 | 久久艹欧美 | 五月婷婷激情六月 | 久久精品免费电影 | 日韩一级黄色大片 | 天天操天天干天天操天天干 | 狠狠色丁香婷婷综合基地 | 久草在线最新免费 | 亚洲精品乱码久久久久 | 在线看小早川怜子av | 九月婷婷综合网 | 91完整版观看 | 国产人成看黄久久久久久久久 | 最近日本韩国中文字幕 | 国产色视频一区二区三区qq号 | 欧美日韩午夜在线 | 欧美成年网站 | 国产成人在线免费观看 | 97视频在线免费播放 | 久久精品视频在线观看免费 | 91亚色视频| 久久99国产精品免费 | 国产精品igao视频网网址 | 丁香久久综合 | 天干啦夜天干天干在线线 | www.久草视频 | 国产精品久久久久久久99 | 日韩欧美在线观看一区 | 久草色在线观看 | 久久99精品国产麻豆婷婷 | 黄色毛片视频免费 | 亚洲免费资源 | 久久国产福利 | aⅴ精品av导航 | 美女福利视频在线 | 国产精品久久久久av免费 | 国产一区二区三区高清播放 | 美女在线免费视频 | 91在线中文字幕 | 91桃色免费观看 | 91福利小视频 | 天天干天天色2020 | 91日韩在线 | 国产亚洲日 | 五月婷婷视频在线 | 不卡的av中文字幕 | 日韩久久精品一区二区 | 国产精品一区二区久久国产 | 日韩av资源站 | 国产精品成人aaaaa网站 | 精品爱爱 | 亚州精品一二三区 | 成人精品久久 | 美女视频黄网站 | 国产精品久久久久久婷婷天堂 | 欧美性色综合 | 五月天九九 | 激情中文在线 | 亚洲狠狠婷婷 | 亚洲视频综合在线 | 亚洲精品视频在线播放 | avcom在线| 在线国产欧美 | 日韩一区视频在线 | 成人黄色电影免费观看 | 九草视频在线 | 最近日韩中文字幕中文 | 久久久久日本精品一区二区三区 | 免费看91的网站 | 黄色av影院 | 操操操综合 | 亚洲综合小说电影qvod | 国产一区国产精品 | 天天射射天天 | 久久国产精品99久久久久久老狼 | 在线观看a视频 | 国产欧美日韩一区 | 最近中文字幕完整高清 | 日韩精品第1页 | 国产精品永久免费观看 | 久久一级片 | 热久在线 | 九色福利视频 | 国产日产精品一区二区三区四区的观看方式 | 婷婷六月天丁香 | 亚洲精品国产综合99久久夜夜嗨 | 国产成人精品久久久久蜜臀 | 麻豆国产精品永久免费视频 | 久久男女视频 | 国产又黄又硬又爽 | 免费福利在线播放 | 中文字幕一区在线 | 中文不卡视频在线 | 日韩高清一区二区 | 亚洲五月| 久久国产露脸精品国产 | 欧美性性网 | 亚洲人av免费网站 | 开心激情网五月天 | 丝袜制服天堂 | 欧美视频www | 天天操天天添天天吹 | 青草视频网| 久久国产乱 | 中文字幕在线日本 | 高清av影院 | 久久影院中文字幕 | 四虎4hu永久免费 | 二区三区中文字幕 | 亚洲免费专区 | 九九九九热精品免费视频点播观看 | 欧美激情视频一二区 | 91免费看黄色| 欧美不卡在线 | 国产九九在线 | 91桃色免费观看 | av亚洲产国偷v产偷v自拍小说 | 91成人精品观看 | .国产精品成人自产拍在线观看6 | 欧美日韩免费在线观看视频 | 久久经典国产视频 | 国产精品丝袜久久久久久久不卡 | 国产一区影院 | 久草视频2| 国产精品久久婷婷六月丁香 | 色诱亚洲精品久久久久久 | 天天干 天天摸 天天操 | 国产剧情久久 | 国产精品午夜久久 | 色中色亚洲 | 亚洲国产精品日韩 | 久久精品电影网 | 中国老女人日b | 黄色亚洲在线 | 999久久精品 | 91欧美精品 | 国产亚洲精品久久久久久大师 | 一区二区三区四区在线免费观看 | 国产一区二区播放 | 日本一区二区三区免费看 | 香蕉视频在线观看免费 | 免费麻豆| 成年一级片 | 国产精品久久久亚洲 | 色综合久久久久网 | 97国产大学生情侣酒店的特点 | 九九热只有这里有精品 | 黄色三级网站 | 国产糖心vlog在线观看 | 婷婷久久综合九色综合 | 亚洲精品99久久久久久 | 欧美日本日韩aⅴ在线视频 插插插色综合 | 日韩在线视频观看 | 国产精品久久久区三区天天噜 | 久久a级片 | 黄色三级视频片 | 亚洲天天综合 | 亚洲精品国久久99热 | 成人av电影在线 | 亚洲成人在线免费 | 天天爱天天操 | 亚洲精品456在线播放乱码 | 亚洲国产成人高清精品 | 女女av在线 | 中文一区二区三区在线观看 | 国产精品99久久久久 | 婷婷色5月 | 日本中文字幕在线看 | 久久69精品 | 国产精品福利一区 | 欧美日韩精品电影 | 国产午夜精品一区二区三区四区 | 久青草电影| av电影免费在线 | 国产精品久免费的黄网站 | 最近更新好看的中文字幕 | 91精品啪在线观看国产 | 青草视频在线播放 | 99视频在线 | 在线99| 人人干干人人 | 中文字幕国产亚洲 | 亚洲激情影院 | 四虎成人精品在永久免费 | 久久香蕉国产精品麻豆粉嫩av | 天天艹日日干 | 亚洲精品日韩一区二区电影 | 91av在线视频免费观看 | 9在线观看免费高清完整 | 久久人人添人人爽添人人88v | 啪啪肉肉污av国网站 | 久久精品欧美一区 | 久久电影色 | 久久久久亚洲精品成人网小说 | 精品久久国产精品 | 韩国三级一区 | 久久精品综合一区 | 亚洲欧美日韩在线看 | 日日操天天操夜夜操 | 国产精品av在线免费观看 | 天堂网av 在线 | 99久热在线精品视频 | 亚洲黄色激情小说 | 天天射综合| 男女视频国产 | 日韩欧美综合在线视频 | 国产黄视频在线观看 | 一区二区中文字幕在线 | 在线免费高清 | 午夜精品久久一牛影视 | 最新av在线免费观看 | 国产精品ssss在线亚洲 | 免费看污在线观看 | 97日日碰人人模人人澡分享吧 | 久久激情五月婷婷 | 亚洲欧美日韩国产一区二区 | 亚洲激情视频 | 日韩二区在线观看 | 日日摸日日添夜夜爽97 | 久久涩涩网站 | 成人理论在线观看 | 国产精品永久 | 国产精品热 | 国产成人久久av | 日本激情动作片免费看 | 国产片网站 | 亚洲精品九九 | 国产成人精品一区二 | 日韩欧美国产免费播放 | 波多野结衣在线播放视频 | 又黄又爽又刺激视频 | 久亚洲 | 热久久免费视频精品 | 国产精品毛片久久 | 成人av中文字幕在线观看 | 久久国产精品影视 | 国产中文字幕在线视频 | 国产在线综合视频 | 91大片成人网 | 亚洲一区久久 | 中文字幕一区二区三区四区久久 | 久久高清免费视频 | 亚洲国产成人精品在线 | 成 人 黄 色视频免费播放 | www国产在线 | 日韩在线观看中文 | 久久久久久久久影院 | 日韩在线 | 免费国产在线观看 | 日本中文字幕观看 | 精品久久1 | 欧美a级一区二区 | 精品亚洲免费视频 | 久久久久久草 | 91热视频在线观看 | 久久爱992xxoo | 久久免费激情视频 | 国产在线精品一区二区不卡了 | 欧美激情综合五月色丁香小说 | 91精品免费在线观看 | 97在线影视| 国产剧情一区 | 久草在在线 | 五月婷婷丁香在线观看 | 日本三级人妇 | 日本久久不卡视频 | 中文在线免费看视频 | 月下香电影 | 91丨九色丨国产在线观看 | 国产高清视频在线播放 | av在线看片| 日本中文在线播放 | 成人作爱视频 | 国产小视频在线免费观看 | 国产精品资源网 | 久久国产精品二国产精品中国洋人 | 国产视频观看 | 在线观看黄a | 国产高清第一页 | 在线a亚洲视频播放在线观看 | 日韩欧美在线观看一区 | 亚洲无吗av | 久久天| 日日夜夜中文字幕 | 日韩欧美高清视频在线观看 | 久久九九精品 | 久久国产精品99久久久久久老狼 | 四虎影视成人 | 亚洲国产日韩精品 | 高清视频一区二区三区 | 手机av在线不卡 | 999超碰 | 亚洲视频综合在线 | 国产黄色在线网站 | 国产999精品久久久影片官网 | 国产精品久久久久久久久久久免费 | 中文字幕 91 | 国产精品麻豆果冻传媒在线播放 | 亚洲高清视频在线观看免费 | 国产视频中文字幕 | 99在线免费观看视频 | 奇米影音四色 | 99久久综合国产精品二区 | 91人人视频在线观看 | 在线一二三区 | 亚洲午夜精品电影 | 缴情综合网五月天 | 久久久久色 | 综合色天天 | 久久成人综合 | 亚洲国产精品久久 | 黄色大全免费观看 | aaa亚洲精品一二三区 | 精品亚洲欧美无人区乱码 | 免费观看性生交 | 日韩免费一区二区三区 | 亚洲天堂在线观看完整版 | 国产系列精品av | 亚洲精品mv在线观看 | 久久资源总站 | 人成在线免费视频 | 国产123区在线观看 国产精品麻豆91 | 日韩三级久久 | av在线影片 | 中文字幕美女免费在线 | 在线免费观看涩涩 | 国产免费嫩草影院 | 久久看片网站 | 天天草天天草 | 天天干天天射天天插 | av理论电影 | 精品主播网红福利资源观看 | 视频一区二区视频 | 日韩免费福利 | 亚洲精品视频在线观看免费视频 | 国产精品一区二区三区在线播放 | 欧美一级性生活视频 | 欧美了一区在线观看 | 日韩av电影手机在线观看 | 精品在线视频播放 | 国产男女免费完整视频 | 正在播放五月婷婷狠狠干 | 麻豆视频在线免费观看 | 婷婷丁香色综合狠狠色 | 一区二精品 | 丝袜美腿在线视频 | 国产成本人视频在线观看 | 丁香在线观看完整电影视频 | 成人作爱视频 | 国产精品中文字幕av | 国产精品美女久久久久久免费 | 91人人澡人人爽人人精品 | 中文字幕综合在线 | 国产永久网站 | av免费观看在线 | 国产激情小视频在线观看 | 久久美女电影 | 亚洲综合小说电影qvod | 91麻豆产精品久久久久久 | 亚洲综合成人专区片 | 天天操天天干天天干 | 中文字幕乱码电影 | 亚洲国产资源 | 91桃色免费观看 | 全黄网站 | 精品免费在线视频 | 九九免费在线观看 | 丁香九月激情综合 | 黄色精品久久 | 免费欧美高清视频 | 中日韩欧美精彩视频 | 日韩videos高潮hd | 99色在线观看视频 | 99热在线精品观看 | 在线观看av网 | 成人国产网址 | 天天色天天骑天天射 | 日韩免费三区 | 国产中文字幕国产 | 狠狠色丁香婷婷综合 | 国产一区二区免费在线观看 | 91成年视频 | 色五月成人 | 国产私拍在线 | 亚洲第一区在线播放 | 日韩aⅴ视频 | 2019天天干夜夜操 | 免费观看性生交大片3 | 国产精品乱码久久久久久1区2区 | 日韩av电影网站在线观看 | 69久久夜色精品国产69 | .国产精品成人自产拍在线观看6 | 国产精品日韩在线 | 丁香婷婷基地 | 成人av电影免费在线观看 | 久久高清免费视频 | 午夜123| 超碰最新网址 | 88av网站 | 久久精品精品电影网 | 亚洲永久精品在线 | 一级成人在线 | 欧美极品在线播放 | 97色婷婷 | 东方av在线免费观看 | 亚洲综合视频在线 | 日韩精品在线观看av | 久久久久亚洲精品男人的天堂 | 在线观看中文 | 中文字幕成人一区 | 久久人视频 | 狠狠干夜夜操 | 国产美女无遮挡永久免费 | 国产成人av免费在线观看 | 免费开视频 | 久久久私人影院 | 国产视频一级 | 国产亚洲成人网 | 韩国精品在线观看 | av播放在线 | av一区二区三区在线播放 | 黄色1级毛片 | 婷婷色站| 国产精品免费视频久久久 | 91超碰在线播放 | 手机av在线免费观看 | 日韩高清在线一区二区三区 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 精品一区二区久久久久久久网站 | 91大神电影| 免费看片黄色 | 在线高清av | 天天射天天操天天干 | 特级片免费看 | 久久综合影音 | 91成熟丰满女人少妇 | a在线一区 | 在线看一级片 | 操久久免费视频 | av专区在线 | 五月天国产精品 | 国产乱对白刺激视频不卡 | 808电影免费观看三年 | 成人亚洲精品国产www | 91香蕉视频在线 | 国产精品99免费看 | 国产999精品久久久影片官网 | 日日天天干 | 六月丁香综合网 | 黄网av在线 | 成人a在线 | 日韩精品一区二区三区免费观看视频 | 日日夜夜免费精品 | 中文在线字幕免费观 | 中文字幕丝袜 | 91色国产在线 | 欧美国产三区 | 日韩精品1区2区 | 日韩综合在线观看 | 久久久电影网站 | 国产一区 在线播放 | 免费99精品国产自在在线 | 日韩三级视频在线观看 | 在线不卡视频 | 色欧美88888久久久久久影院 | 91桃色在线观看视频 | 国产剧情在线一区 | 91爱爱免费观看 | 中文字幕国产 | 99精品成人| 日韩免费一区二区 | 国产成人精品一区二区三区福利 | 正在播放 国产精品 | 国产精品高清在线观看 | 天天舔天天搞 | 亚洲美女精品视频 | 亚洲免费观看视频 | 国产精品一级视频 | 九九九九热精品免费视频点播观看 | 亚洲成人国产精品 | 精品美女国产在线 | 日本三级全黄少妇三2023 | 婷婷丁香六月天 | 精品久久美女 | 日韩精品欧美精品 | 在线视频日韩欧美 | 精品1区二区 | 九九九九九九精品任你躁 | 久久久鲁 | 日韩精品在线视频免费观看 | 久久这里有精品 | 国产成人精品亚洲 | 中文字幕久久亚洲 | 欧美中文字幕久久 | 成人a在线观看高清电影 | 激情av网 | 久久字幕 | 日韩a级黄色片 | 亚洲精品国产精品乱码不99热 | 久青草电影 | 亚洲精品自在在线观看 | 亚洲精品久久久久中文字幕m男 | av在线官网| 欧美日韩午夜爽爽 | 国产精品毛片久久蜜 | 91精品办公室少妇高潮对白 | 欧美一二三视频 | 国产亚洲精品久久网站 | 日韩欧美精品一区二区 | 国产中文自拍 | 精品视频久久 | 国产第页 | 精品日韩在线一区 | 五月开心六月婷婷 | 国产视频在线观看免费 | 久久视频这里只有精品 | 日韩免费高清在线观看 | a级国产乱理论片在线观看 伊人宗合网 | 精品视频一区在线观看 | 中文字幕影视 | 97品白浆高清久久久久久 | 国产999在线观看 | 精品国内自产拍在线观看视频 | 久久尤物电影视频在线观看 | 日日夜夜亚洲 | 亚洲精品动漫成人3d无尽在线 | 欧美伦理一区二区 | 99国产免费网址 | 亚洲欧洲国产日韩精品 | 中文字幕在线视频一区二区三区 | 国产精品视频永久免费播放 | 西西444www大胆无视频 | 日本久久久久久久久久 | 欧美 高跟鞋交 xxxxhd | 色综合五月天 | 亚洲国产av精品毛片鲁大师 | 五月开心六月伊人色婷婷 | 亚洲精品一区二区三区高潮 | 午夜12点 | 激情视频在线观看网址 | 免费久久久| 欧美黑吊大战白妞欧美 | 狠狠综合| 91九色视频导航 | 麻豆视频免费播放 | av网站在线观看免费 | 久久精品五月 | 91成人精品国产刺激国语对白 | 99视频在线观看视频 | 国产精品久99 | 国产+日韩欧美 | 日本爱爱免费 | 成人电影毛片 | 97福利 | 国产精品免费视频网站 | 精品美女在线视频 | 久草视频观看 | 国产成人av电影在线观看 | 国产一级视频免费看 | 欧美一区免费观看 | 91在线免费公开视频 | 99这里都是精品 | 日本动漫做毛片一区二区 | 91丨九色丨91啦蝌蚪老版 | 黄色最新网址 | 日韩在线资源 | 久久国产精品99久久人人澡 | 亚洲精品在线免费观看视频 | 在线观看欧美成人 | 1000部18岁以下禁看视频 | 在线观看 国产 | 日韩在线电影观看 | 九九免费在线观看 | 午夜久久网站 | 去看片| 国产成人精品久久二区二区 | 天天鲁一鲁摸一摸爽一爽 | 久久精品3 | 久久视频在线观看 | 日韩高清黄色 | 人九九精品 | 2020天天干夜夜爽 | 色综合久久88色综合天天6 | 国产精品99久久久久久小说 | 日韩精品久久久久久久电影99爱 | 日韩a级黄色| 99免费在线视频观看 | 免费在线黄网 | 日本黄色免费大片 | 日本夜夜草视频网站 | 99热在线观看免费 | 四虎国产精品成人免费影视 | 成年人免费看片网站 | 国产高清在线观看av | 久久久久久中文字幕 | 天天操天天射天天 | 亚洲成色| 日韩va亚洲va欧美va久久 | 亚洲 欧洲 国产 精品 | 久久久久欧美精品 | 久久免费激情视频 | 美女一二三区 | 成人网在线免费视频 | 日韩成人免费电影 | 91精品国产91久久久久 | 伊人手机在线 | 99久热精品 | 九九久久影院 | 国产剧情一区二区 | 国产成人三级一区二区在线观看一 | 99精品国产在热久久 | 亚洲三级网站 | 日本久久综合网 | 成人一级片在线观看 | 色视频国产直接看 | 日韩一级理论片 | 日本三级中文字幕在线观看 | 日日草av| 最近免费观看的电影完整版 | 久久久综合色 | 日韩在线观看三区 | 久草电影免费在线观看 | 国产又粗又猛又色 | 亚洲欧美色婷婷 | 999男人的天堂 | av黄免费看| 天天爱天天操天天射 | 精品国偷自产国产一区 | 国产综合精品一区二区三区 | 日日夜夜草 | 色婷婷a | 国产色秀视频 | 91麻豆看国产在线紧急地址 | 国产视频色 | 日韩啪啪小视频 | 精品在线免费视频 | 日韩精品短视频 | 日韩欧美一区二区三区在线 | 国产精品成人一区二区三区吃奶 | 久久精品这里热有精品 | 五月婷婷,六月丁香 | 精品不卡视频 | 国产精品99精品久久免费 | 在线亚洲欧美日韩 | 国产精品国产精品 | 国产精品久久综合 | 亚洲做受高潮欧美裸体 | www黄色av| 在线草| 激情在线五月天 | 国产精久久久久久久 | 在线精品在线 | 92精品国产成人观看免费 | 国产福利在线不卡 | 久久精品91久久久久久再现 | 天天色播 | 日韩精品一区二区三区三炮视频 | 欧美国产日韩一区二区 | av在线播放一区二区三区 | 日韩电影中文字幕在线 | 亚洲精品va| 午夜丰满寂寞少妇精品 | 五月天六月色 | 五月婷婷视频在线观看 | .国产精品成人自产拍在线观看6 | 草樱av | 六月激情久久 | 超碰国产人人 | 亚洲一区二区三区在线看 | 久久艹在线 | 欧美一区二区精品在线 | 国产一级黄色免费看 | 激情久久久久 | 国产精品久久99综合免费观看尤物 | av综合av | 国产精品久久久久久久久毛片 | 亚洲资源片 | 亚洲精品欧美精品 | 999电影免费在线观看2020 | 美州a亚洲一视本频v色道 | 日日草视频 | 国产一级免费片 | 亚洲永久精品一区 | 免费大片av | 国产一级电影 | 日韩a在线| 91麻豆文化传媒在线观看 | 国产综合久久 | 五月婷婷色综合 | 国产99re| 中文字幕欧美日韩va免费视频 | 久久开心激情 | 欧美一级大片在线观看 | 成人91视频 | 婷婷在线精品视频 | 色综合久久久久综合99 | 日韩高清精品免费观看 | 国产精品系列在线播放 | 欧美日韩国产精品一区二区亚洲 | 国产在线日本 | 亚洲国产中文在线 | 欧美少妇bbwhd | 国产伦理久久精品久久久久_ | 久久免费在线观看 | 97超碰超碰久久福利超碰 | 日本精品一 | 黄色在线观看网站 | 欧美日韩国产一区二 | 欧美久久影院 | 2023亚洲精品国偷拍自产在线 | 亚洲人成影院在线 | 91免费黄视频| 麻豆视屏| 欧美日韩在线精品一区二区 | 丰满少妇一级片 | 亚洲国产精品小视频 | 日韩av三区 | 探花视频在线版播放免费观看 | 999视频在线播放 | 在线а√天堂中文官网 | 激情丁香| 在线а√天堂中文官网 | 国产精品久久久久久久午夜片 | 色wwwww| 日韩综合精品 | 久久www免费人成看片高清 | 五月激情站 | 国产精品成人一区 | 中文字幕丰满人伦在线 | www色片| 国产成人久久av977小说 | 狠狠色丁香久久婷婷综合丁香 | 午夜视频免费在线观看 | 911久久香蕉国产线看观看 | 国产精品中文在线 | 精品免费久久久久久 | 日批网站免费观看 | 国产精品2018 | 久久久国产精品免费 | 白丝av免费观看 | 日韩啪啪小视频 | 99久久精品国产一区二区三区 | 91在线观看欧美日韩 | 中文字幕精品一区久久久久 | 国产淫片| 在线观看亚洲免费视频 | 在线视频1卡二卡三卡 | 日韩 精品 一区 国产 麻豆 | 国产美女视频免费 | 久久艹国产 | 国产精品久久久久久久久久了 | 9在线观看免费高清完整版 玖玖爱免费视频 | 国产精品入口传媒 | 午夜影院先 | 91激情视频在线观看 | 在线观看国产亚洲 | 国产一区自拍视频 | 日韩精品五月天 | 国产999精品 | 国产大片黄色 | 成人羞羞视频在线观看免费 | 中文av字幕在线观看 | 97精品国产97久久久久久久久久久久 | www.色五月 | 国产一级视频在线观看 | 成人黄色在线视频 | 国产精品1区2区3区在线观看 | 国产视频每日更新 | 免费在线观看成年人视频 | 干干日日 | 日韩三级在线观看 | 国产视频一 | 日日干夜夜干 | 久草在在线视频 | 中文字幕在线观看三区 | 欧美日韩国产精品一区 | 成人小视频在线观看免费 | 久久亚洲免费视频 | 午夜三级在线 | 久久国产精品成人免费浪潮 | 国产美腿白丝袜足在线av | 高清美女视频 | 精品国产乱码久久久久久1区二区 | 黄色av三级在线 | 久久久久 | 99精品久久久久久久久久综合 | 欧美日韩免费观看一区=区三区 | 欧美专区亚洲专区 | 99色视频在线 | 伊人宗合网 | 国产成人精品999在线观看 | 在线免费看黄网站 | www日| 四虎4hu永久免费 | 天天曰 | 激情婷婷久久 | 狠狠黄 | 天天爽夜夜爽人人爽一区二区 | 久久久精品99 | 麻豆视频免费版 | 欧美大jb| 99视频在线精品国自产拍免费观看 | www日韩精品| 婷婷5月色 | 香蕉影院在线播放 | 欧美日本国产在线观看 | 日韩在线免费视频观看 | 五月婷婷伊人网 | 久久精品国产第一区二区三区 | 在线成人小视频 | 欧美在线日韩在线 | 国产精品久久久久一区 | 国产精品s色 | 久久爱资源网 | 又色又爽的网站 | 热久久视久久精品18亚洲精品 | 久久精品国产免费看久久精品 | 最近免费在线观看 | 成人在线视频一区 | 久久久久国产成人精品亚洲午夜 | www.夜夜操.com | 午夜免费视频网站 | 黄色官网在线观看 | 欧美日韩精品综合 | 91看片淫黄大片一级在线观看 | 精品在线亚洲视频 | 久久久久久久毛片 | 色无五月| 精品国产乱码久久久久久浪潮 | 久久综合狠狠综合久久狠狠色综合 | 国产第一福利网 | 日日爱av| 欧美精品久久久久久久免费 |