成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁(yè) > 知識(shí)庫(kù) > pytorch lstm gru rnn 得到每個(gè)state輸出的操作

pytorch lstm gru rnn 得到每個(gè)state輸出的操作

熱門(mén)標(biāo)簽:儋州電話(huà)機(jī)器人 市場(chǎng)上的電銷(xiāo)機(jī)器人 小蘇云呼電話(huà)機(jī)器人 佛山400電話(huà)辦理 朝陽(yáng)手機(jī)外呼系統(tǒng) 所得系統(tǒng)電梯怎樣主板設(shè)置外呼 北瀚ai電銷(xiāo)機(jī)器人官網(wǎng)手機(jī)版 北京電銷(xiāo)外呼系統(tǒng)加盟 地圖標(biāo)注面積

默認(rèn)只返回最后一個(gè)state,所以一次輸入一個(gè)step的input

# coding=UTF-8
import torch
import torch.autograd as autograd  # torch中自動(dòng)計(jì)算梯度模塊
import torch.nn as nn  # 神經(jīng)網(wǎng)絡(luò)模塊
torch.manual_seed(1)
# lstm單元輸入和輸出維度都是3
lstm = nn.LSTM(input_size=3, hidden_size=3)
# 生成一個(gè)長(zhǎng)度為5,每一個(gè)元素為1*3的序列作為輸入,這里的數(shù)字3對(duì)應(yīng)于上句中第一個(gè)3
inputs = [autograd.Variable(torch.randn((1, 3)))
          for _ in range(5)]
# 設(shè)置隱藏層維度,初始化隱藏層的數(shù)據(jù)
hidden = (autograd.Variable(torch.randn(1, 1, 3)),
          autograd.Variable(torch.randn((1, 1, 3))))
for i in inputs:
  out, hidden = lstm(i.view(1, 1, -1), hidden)
  print(out.size())
  print(hidden[0].size())
  print("--------")
print("-----------------------------------------------")
# 下面是一次輸入多個(gè)step的樣子
inputs_stack = torch.stack(inputs)
out,hidden = lstm(inputs_stack,hidden)
print(out.size())
print(hidden[0].size())

print結(jié)果:

(1L, 1L, 3L)
(1L, 1L, 3L)
--------
(1L, 1L, 3L)
(1L, 1L, 3L)
--------
(1L, 1L, 3L)
(1L, 1L, 3L)
--------
(1L, 1L, 3L)
(1L, 1L, 3L)
--------
(1L, 1L, 3L)
(1L, 1L, 3L)
--------
----------------------------------------------
(5L, 1L, 3L)
(1L, 1L, 3L)

可見(jiàn)LSTM的定義都是不用變的,根據(jù)input的step數(shù)目,一次輸入多少step,就一次輸出多少output,但只輸出最后一個(gè)state

補(bǔ)充:pytorch中實(shí)現(xiàn)循環(huán)神經(jīng)網(wǎng)絡(luò)的基本單元RNN、LSTM、GRU的輸入、輸出、參數(shù)詳細(xì)理解

前言:這篇文章是對(duì)已經(jīng)較為深入理解了RNN、LSTM、GRU的數(shù)學(xué)原理以及運(yùn)算過(guò)程的人而言的,如果不理解它的基本思想和過(guò)程,可能理解起來(lái)不是很簡(jiǎn)單。

一、先從一個(gè)實(shí)例看起

這是官網(wǎng)上面的一個(gè)例子,本次以LSTM作為例子而言,實(shí)際上,GRU、LSTM、RNN的運(yùn)算過(guò)程是很類(lèi)似的。

import torch
import torch.nn as nn
 
lstm = nn.LSTM(10, 20, 2)
 
# 序列長(zhǎng)度seq_len=5, batch_size=3, 數(shù)據(jù)向量維數(shù)=10
input = torch.randn(5, 3, 10)
 
# 初始化的隱藏元和記憶元,通常它們的維度是一樣的
# 2個(gè)LSTM層,batch_size=3,隱藏元維度20
h0 = torch.randn(2, 3, 20)
c0 = torch.randn(2, 3, 20)
 
# 這里有2層lstm,output是最后一層lstm的每個(gè)詞向量對(duì)應(yīng)隱藏層的輸出,其與層數(shù)無(wú)關(guān),只與序列長(zhǎng)度相關(guān)
# hn,cn是所有層最后一個(gè)隱藏元和記憶元的輸出
output, (hn, cn) = lstm(input, (h0, c0))
 
print(output.size(),hn.size(),cn.size())
 
# 分別是:
# torch.Size([5, 3, 20])
# torch.Size([2, 3, 20])
# torch.Size([2, 3, 20]))

后面我會(huì)詳細(xì)解釋上面的運(yùn)算過(guò)程,我們先看一下LSTM的定義,它是一個(gè)類(lèi)

二、LSTM類(lèi)的定義

class LSTM(RNNBase):
   
    '''參數(shù)Args:
        input_size: 輸入數(shù)據(jù)的特征維度,比如我對(duì)時(shí)間序列建模,特征為1,我對(duì)一個(gè)句子建模,每一個(gè)單詞的嵌入向量為10,則它為10
        
        hidden_size: 即循環(huán)神經(jīng)網(wǎng)絡(luò)中隱藏節(jié)點(diǎn)的個(gè)數(shù),這個(gè)是自己定義的,多少都可以,后面會(huì)詳說(shuō)
        
        num_layers: 堆疊的LSTM的層數(shù),默認(rèn)是一層,也可以自己定義 Default: 1
        bias: LSTM層是否使用偏置矩陣 偏置權(quán)值為 `b_ih` and `b_hh`.
            Default: ``True``(默認(rèn)是使用的)
        
        batch_first: 如果設(shè)置 ``True``, then the input and output tensors are provided
            as (batch, seq, feature). Default: ``False``,(seq,batch,features)
        dropout: 是否使用dropout機(jī)制,默認(rèn)是0,表示不使用dropout,如果提供一個(gè)非0的數(shù)字,則表示在每一個(gè)LSTM層之后默認(rèn)使用dropout,但是最后一個(gè)層的LSTM層不使用dropout。
        
        bidirectional: 是否是雙向RNN,默認(rèn)是否,If ``True``, becomes a bidirectional LSTM. Default: ``False``
#---------------------------------------------------------------------------------------
    類(lèi)的構(gòu)造函數(shù)的輸入為Inputs: input, (h_0, c_0)
        - **input** of shape `(seq_len, batch, input_size)`: tensor containing the features of the input sequence.
          
        - **h_0** of shape `(num_layers * num_directions, batch, hidden_size)`: tensor
          containing the initial hidden state for each element in the batch.
          If the LSTM is bidirectional, num_directions should be 2, else it should be 1.
        - **c_0** of shape `(num_layers * num_directions, batch, hidden_size)`: tensor
          containing the initial cell state for each element in the batch.
          If `(h_0, c_0)` is not provided, both **h_0** and **c_0** default to zero.
#----------------------------------------------------------------------------------
    輸出是什么:Outputs: output, (h_n, c_n)
        - **output** of shape `(seq_len, batch, num_directions * hidden_size)`: tensor
          containing the output features `(h_t)` from the last layer of the LSTM,
          for each `t`. If a :class:`torch.nn.utils.rnn.PackedSequence` has been
          given as the input, the output will also be a packed sequence.
          For the unpacked case, the directions can be separated
          using ``output.view(seq_len, batch, num_directions, hidden_size)``,
          with forward and backward being direction `0` and `1` respectively.
          Similarly, the directions can be separated in the packed case.
        
        - **h_n** of shape `(num_layers * num_directions, batch, hidden_size)`: tensor
          containing the hidden state for `t = seq_len`.
          Like *output*, the layers can be separated using
          ``h_n.view(num_layers, num_directions, batch, hidden_size)`` and similarly for *c_n*.
        
        - **c_n** of shape `(num_layers * num_directions, batch, hidden_size)`: tensor
          containing the cell state for `t = seq_len`.
#------------------------------------------------------------------------------------------
    類(lèi)的屬性有Attributes:
        weight_ih_l[k] : the learnable input-hidden weights of the :math:`\text{k}^{th}` layer
            `(W_ii|W_if|W_ig|W_io)`, of shape `(4*hidden_size, input_size)` for `k = 0`.
            Otherwise, the shape is `(4*hidden_size, num_directions * hidden_size)`
        weight_hh_l[k] : the learnable hidden-hidden weights of the :math:`\text{k}^{th}` layer
            `(W_hi|W_hf|W_hg|W_ho)`, of shape `(4*hidden_size, hidden_size)`
        bias_ih_l[k] : the learnable input-hidden bias of the :math:`\text{k}^{th}` layer
            `(b_ii|b_if|b_ig|b_io)`, of shape `(4*hidden_size)`
        bias_hh_l[k] : the learnable hidden-hidden bias of the :math:`\text{k}^{th}` layer
            `(b_hi|b_hf|b_hg|b_ho)`, of shape `(4*hidden_size)`
    '''

上面的參數(shù)有點(diǎn)多,我就不一個(gè)一個(gè)翻譯了,其實(shí)很好理解,每一個(gè)都比較清晰。

三、 必需參數(shù)的深入理解

1、RNN、GRU、LSTM的構(gòu)造函數(shù)的三個(gè)必須參數(shù)理解——第一步:構(gòu)造循環(huán)層對(duì)象

在創(chuàng)建循環(huán)層的時(shí)候,第一步是構(gòu)造循環(huán)層,如下操作:

lstm = nn.LSTM(10, 20, 2)

構(gòu)造函數(shù)的參數(shù)列表為如下:

class LSTM(RNNBase):
   
    '''參數(shù)Args:
        input_size:
        hidden_size:         
        num_layers: 
        bias:       
        batch_first: 
        dropout: 
        bidirectional:
    '''

(1)input_size:指的是每一個(gè)單詞的特征維度,比如我有一個(gè)句子,句子中的每一個(gè)單詞都用10維向量表示,則input_size就是10;

(2)hidden_size:指的是循環(huán)層中每一個(gè)LSTM內(nèi)部單元的隱藏節(jié)點(diǎn)數(shù)目,這個(gè)是自己定義的,隨意怎么設(shè)置都可以;

(3)num_layers:循環(huán)層的層數(shù),默認(rèn)是一層,這個(gè)根據(jù)自己的情況來(lái)定。

比如下面:

左邊的只有一層循環(huán)層,右邊的有兩層循環(huán)層。

2、通過(guò)第一步構(gòu)造的對(duì)象構(gòu)造前向傳播的過(guò)程——第二步:調(diào)用循環(huán)層對(duì)象,傳入?yún)?shù),并得到返回值

一般如下操作:

output, (hn, cn) = lstm(input, (h0, c0))

這里是以LSTM為例子來(lái)說(shuō)的,

(1)輸入?yún)?shù)

input:必須是這樣的格式(seq,batch,feature)。第一個(gè)seq指的是序列的長(zhǎng)度,這是根據(jù)自己的數(shù)據(jù)來(lái)定的,比如我的一個(gè)句子最大的長(zhǎng)度是20個(gè)單詞組成,那這里就是20,上面的例子是假設(shè)句子長(zhǎng)度為5;第二個(gè)是batch,這個(gè)好理解,就是一次使用幾條樣本,比如3組樣本;第三個(gè)features指的是每一個(gè)單詞的向量維度,需要注意的是,這個(gè)必須要和構(gòu)造函數(shù)的第一個(gè)參數(shù)input_size保持一樣的,上面的例子中是10.

(h0,c0):指的是每一個(gè)循環(huán)層的初始狀態(tài),可以不指定,不指定的情況下全部初始化為0,這里因?yàn)槭荓STM有兩個(gè)狀態(tài)需要傳遞,所以有兩個(gè),像普通的RNN和GRU只有一個(gè)狀態(tài)需要傳遞,則只需要傳遞一個(gè)h狀態(tài)即可,如下:

output, hn = rnn(input, h0)  # 普通rnn
output, hn = gru(input, h0)  # gru

這里需要注意的是傳入的狀態(tài)參數(shù)的維度,依然以LSTM來(lái)說(shuō):

h0和c0的數(shù)據(jù)維度均是(num_layers * num_directions, batch, hidden_size),這是什么意思呢?

第一個(gè)num_layer指的是到底有基層循環(huán)層,這好理解,幾層就應(yīng)該有幾個(gè)初始狀態(tài);

第二個(gè)num_directions指的是這個(gè)循環(huán)層是否是雙向的(在構(gòu)造函數(shù)中通過(guò)bidirectional參數(shù)指定哦),如果不是雙向的,則取值為1,如果是雙向的則取值為2;

第三個(gè)batch指的是每次數(shù)據(jù)的batch,和前面的batch保持一致即可;

最后一個(gè)hidden_size指的是循環(huán)層每一個(gè)節(jié)點(diǎn)內(nèi)部的隱藏節(jié)點(diǎn)數(shù),這個(gè)需要很好地理解循環(huán)神經(jīng)網(wǎng)絡(luò)的整個(gè)運(yùn)算流程才行哦!

(2)輸出結(jié)果

其實(shí)輸出的結(jié)果和輸入的是相匹配的,分別如下:

output, hn = rnn(input, h0)  # 普通rnn
output, hn = gru(input, h0)  # gru
output, (hn, cn) = lstm(input, (h0, c0)) # lstm

這里依然以lstm而言:

output的輸出維度(seq_len, batch, num_directions * hidden_size),在上面的例子中,應(yīng)該為(5,3,20),我們通過(guò)驗(yàn)證的確如此,需要注意的是,第一個(gè)維度是seq_len,也就是說(shuō)每一個(gè)時(shí)間點(diǎn)的輸出都是作為輸出結(jié)果的,這和隱藏層是不一樣的;

hn、cn的輸出維度:為(num_layers * num_directions, batch, hidden_size),在上面的例子中為(2,3,20),也得到了驗(yàn)證,我們發(fā)現(xiàn)這個(gè)跟序列長(zhǎng)度seq_len是沒(méi)有關(guān)系的,為什么呢,輸出的狀態(tài)僅僅是指的是最后一個(gè)循環(huán)層節(jié)點(diǎn)輸出的狀態(tài)。

如下圖所示:

下面的例子是以普通的RNN來(lái)畫(huà)的,所以只有一個(gè)狀態(tài)h,沒(méi)有狀態(tài)c。

3、幾個(gè)重要的屬性理解

不管是RNN,GRU還是lstm,內(nèi)部可學(xué)習(xí)的參數(shù)其實(shí)就是幾個(gè)權(quán)值矩陣,包括了偏置矩陣,那怎么查看這些學(xué)習(xí)到的參數(shù)呢?就是通過(guò)這幾個(gè)矩陣來(lái)實(shí)現(xiàn)的

(1)weight_ih_l[k]:這表示的是輸入到隱藏層之間的權(quán)值矩陣,其中K表示的第幾層循環(huán)層,

若K=0,表示的是最下面的輸入層到第一個(gè)循環(huán)層之間的矩陣,維度為(hidden_size, input_size),如果k>0則表示第一循環(huán)層到第二循環(huán)層、第二循環(huán)層到第三循環(huán)層,以此類(lèi)推,之間的權(quán)值矩陣,形狀為(hidden_size, num_directions * hidden_size)。

(2)weight_hh_l[k]: 表示的是循環(huán)層內(nèi)部之間的權(quán)值矩陣,這里的K表示的第幾層循環(huán)層,取值為0,1,2,3,4... ...。形狀為(hidden_size, hidden_size)

注意:循環(huán)層的層數(shù)取值是從0開(kāi)始,0代表第一個(gè)循環(huán)層,1代表第二個(gè)循環(huán)層,以此類(lèi)推。

(3)bias_ih_l[k]: 第K個(gè)循環(huán)層的偏置項(xiàng),表示的是輸入到循環(huán)層之間的偏置,維度為 (hidden_size)

(4)bias_hh_l[k]:第K個(gè)循環(huán)層的偏置項(xiàng),表示的是循環(huán)層到循環(huán)層內(nèi)部之間的偏置,維度為 (hidden_size)。

# 首先導(dǎo)入RNN需要的相關(guān)模塊
import torch
import torch.nn as nn
 
# 數(shù)據(jù)向量維數(shù)10, 隱藏元維度20, 2個(gè)RNN層串聯(lián)(如果是1,可以省略,默認(rèn)為1)
rnn = nn.RNN(10, 20, 2)
 
# 序列長(zhǎng)度seq_len=5, batch_size=3, 數(shù)據(jù)向量維數(shù)=10
input = torch.randn(5, 3, 10)
 
# 初始化的隱藏元和記憶元,通常它們的維度是一樣的
# 2個(gè)RNN層,batch_size=3,隱藏元維度20
h0 = torch.randn(2, 3, 20)
 
# 這里有2層RNN,output是最后一層RNN的每個(gè)詞向量對(duì)應(yīng)隱藏層的輸出,其與層數(shù)無(wú)關(guān),只與序列長(zhǎng)度相關(guān)
# hn,cn是所有層最后一個(gè)隱藏元和記憶元的輸出
output, hn = rnn(input, h0)
 
print(output.size(),hn.size()) # 分別是:torch.Size([5, 3, 20])   torch.Size([2, 3, 20])
 
# 查看一下那幾個(gè)重要的屬性:
print("------------輸入--》隱藏------------------------------")
print(rnn.weight_ih_l0.size())  
print(rnn.weight_ih_l1.size())
print(rnn.bias_ih_l0.size())
print(rnn.bias_ih_l1.size())
print("------------隱藏--》隱藏------------------------------")
print(rnn.weight_hh_l0.size())  
print(rnn.weight_hh_l1.size())
print(rnn.bias_hh_l0.size())
print(rnn.bias_hh_l1.size())
 
'''輸出結(jié)果為:
------------輸入--》隱藏------------------------------
torch.Size([20, 10])
torch.Size([20, 20])
torch.Size([20])
torch.Size([20])
------------隱藏--》隱藏------------------------------
torch.Size([20, 20])
torch.Size([20, 20])
torch.Size([20])
torch.Size([20])
'''

通過(guò)上面的運(yùn)算,發(fā)現(xiàn)結(jié)果和描述的是一模一樣的。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Pytorch實(shí)現(xiàn)LSTM和GRU示例
  • pytorch下使用LSTM神經(jīng)網(wǎng)絡(luò)寫(xiě)詩(shī)實(shí)例
  • TensorFlow實(shí)現(xiàn)RNN循環(huán)神經(jīng)網(wǎng)絡(luò)
  • Pytorch 如何實(shí)現(xiàn)LSTM時(shí)間序列預(yù)測(cè)

標(biāo)簽:定西 江蘇 商丘 云南 寧夏 酒泉 龍巖 金融催收

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《pytorch lstm gru rnn 得到每個(gè)state輸出的操作》,本文關(guān)鍵詞  pytorch,lstm,gru,rnn,得到,每個(gè),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《pytorch lstm gru rnn 得到每個(gè)state輸出的操作》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于pytorch lstm gru rnn 得到每個(gè)state輸出的操作的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    这里只有精品久久| 自拍偷拍第1页| 香蕉视频免费看| 欧美一级视频免费观看| 国产精品乱码一区二区三区视频| 亚洲一区三区在线观看| 亚洲亚洲精品三区日韩精品在线视频| 亚洲香蕉在线观看| 国产网站在线免费观看| 91精品国产乱码在线观看| 欧美大片免费观看在线观看网站推荐| 亚洲精品自拍区在线观看| 久久综合狠狠综合久久综青草| 欧美理论电影在线播放| 国产又色又爽又黄又免费| 亚洲免费av一区二区| 糖心vlog免费在线观看| 精品国产一区二区三区不卡蜜臂| 国产精品夜夜嗨| 欧美虐宫另类残忍视频| 国产精品偷乱一区二区三区| 日韩精品福利一区二区三区| 亚洲AV无码成人精品区东京热| 男女啪啪无遮挡| 亚洲天天做日日做天天谢日日欢| 性欧美18—19sex性高清| eeuss性xxxxxx电影| 国产精品嫩草影院在线看| 国产成人av福利| 三区在线观看| 国产女人伦码一区二区三区不卡| 91亚洲精品视频| av成人天堂| 国产蜜臀一区二区打屁股调教| 国模大尺度视频| 91精品大全| 亚洲精品**不卡在线播he| 国产69精品久久久久9999| 偷偷色噜狠狠狠狠的777米奇| 国产精品久久久久久五月尺| 天天摸天天操天天干| 国产精品久久婷婷| 激情伊人五月天久久综合| 天天射狠狠干| 激情小说一区| 国产欧美激情视频| 国产色综合天天综合网| a在线观看免费| 色一色在线观看视频网站| 久久这里只有精品视频首页| 蜜臀av性久久久久蜜臀aⅴ| 精品国产乱码久久久久久婷婷| 日本成人手机在线| 国产午夜性春猛交ⅹxxx| chinese偷拍一区二区三区| 国产亚洲精品av| av免费观看网站| 成人一区二区不卡免费| 网友自拍亚洲| 国产真实乱子伦精品视频| 日韩成人久久| 中文在线免费视频| 美女又黄又免费的视频| 女人扒开腿免费视频app| 男人天堂手机在线| 少妇激情一区二区三区| 欧美黑人孕妇孕交| 久久精品99久久久久久| 免费精品一区二区三区在线观看| 欧美videosex性欧美黑吊| www.久久热.com| 日韩精品久久久久久久玫瑰园| 91蝌蚪视频九色| 99在线观看视频免费| ady日本映画久久精品一区二区| 北条麻妃在线一区二区| 色综合 综合色| 久久久影院官网| 九色porny丨国产首页在线| 久久永久免费视频| 欧美日韩一区二区视频在线| 国产二区三区四区| 一本久久综合亚洲鲁鲁| 日韩欧美一区二区在线观看| 欧美动物xxx| 伊人色综合网| 亚洲天堂手机在线| 国产精品一区二区三区四| 成人91免费视频| 欧美一级在线观看| 国产亚洲人成网站在线观看| av不卡免费电影| 久久精品国产一区二区电影| 激情文学综合丁香| 日韩女同强女同hd| 精品一区二区三区视频在线播放| 成人黄色在线| 2020日本在线视频中文字幕| 国产色产综合产在线视频| 国产综合欧美| 狠狠人妻久久久久久综合麻豆| 久久99亚洲精品| 日韩久久中文字幕| 欧美巨大xxxx| 免费看大片爽| 日韩精品一区二区三区视频在线观看| 性伦欧美刺激片在线观看| 一本大道伊人av久久综合| 欧美日韩综合不卡| 色免费在线视频| 91香蕉视频网址| 国产伦精品一区二区三区四区免费| 蜜臀av在线播放| 欧美精品电影| 亚洲天堂精品在线| 欧美日本三级| 国产福利影院在线观看| 久热精品在线播放| 亚洲欧美日韩综合在线| 欧美精品不卡| av亚洲精华国产精华| 国产欧美激情| 国产成人在线免费视频| 三上悠亚一区二区三区| 天天干天天色天天干| free性m.freesex欧美| 日本在线播放一区二区三区| 国产精品久久波多野结衣| 中文字幕在线观看你懂的| 亚洲黄色录像片| 久久露脸国产精品| 亚洲欧美日韩电影| 午夜激情在线观看视频| 91丝袜超薄交口足| 偷窥少妇高潮呻吟av久久免费| 国产免费一区视频观看免费| 中文字幕午夜精品一区二区三区| 国产欧美一区视频| 欧美噜噜久久久xxx| 国产精品久久久久免费a∨| 日本日本精品二区免费| 一区二区视频欧美| 人妻激情偷乱视频一区二区三区| 国产日韩欧美一区二区三区| 97久久人人超碰caoprom欧美| 亚洲字幕av一区二区三区四区| 激情美女网站| av在线免费在线观看| 亚洲欧洲精品在线观看| 欧美3p视频在线观看| 欧美特黄aaa| 国产视频精品自拍| 欧美精品hd| 乱一区二区三区在线播放| 欧美日韩p片| 精品国产乱码久久久久久果冻传媒| 久久精品aⅴ无码中文字字幕重口| 成人毛片高清视频观看| 久久婷婷五月综合色国产香蕉| 波多野一区二区| 成人h动漫精品| 美女在线视频一区| 黄色网免费观看| 一级做a爰片久久毛片美女图片| 国产第一页第二页| 亚洲在线视频观看| 欧美一卡二卡在线| 日本一区二区综合亚洲| 欧美成人艳星乳罩| 在线欧美激情| 六月婷婷综合网| 亚洲欧美日韩小说| 日本老师69xxx| 国产精久久一区二区| 亚洲av无码乱码国产麻豆| 亚洲欧美制服另类日韩| 亚洲av无码国产精品久久| 四虎www成人影院观看| 免费高清在线一区| 国产精品免费视频观看| 99re久久| 欧美日韩中文| 亚洲视频视频在线| 成在在线免费视频| 亚洲性生活大片| 337p粉嫩大胆色噜噜噜噜亚洲| 国产一级揄自揄精品视频| 亚洲一区在线观看免费观看电影高清| 97国产精品videossex| 亚洲黄色av片| 日本阿v视频在线观看| 在线观看91| 欧美少妇性xxxx| 国产又粗又猛又爽又黄的视频四季| 玉足女爽爽91| eeuss影院第1页在线| 91欧美一区二区| 在线成人超碰| 国产精品久久..4399| 噼里啪啦在线中文观看| 日韩欧美国产综合一区| 国产精品专区h在线观看| 欧美黄色视屏| 国产一区二区三区免费观看| 欧美日本二区| 亚洲国产一区视频| 国产综合色激情| 欧美性猛交视频| 亚洲成人自拍| 美女扒开尿口让男人操亚洲视频网站| 狂野欧美激情性xxxx| 亚洲区一区二| 91大神在线资源观看无广告| 热re91久久精品国99热蜜臀| 久视频在线观看| 亚洲综合欧美日韩| 国产麻豆精品视频| 国产精品一区二区美女视频免费看| 欧美日韩电影一区二区| 中文字幕一区二区在线视频| 日本免费不卡一区二区| 国产人成高清视频观看| 免费久久99精品国产自| 18以下岁禁止1000部免费| 色视频在线免费| 野花社区视频在线观看| 中文字幕剧情在线观看一区| 欧美军同video69gay| 免费人成又黄又爽又色| 黄色免费在线观看| 奇米色一区二区| 久久综合九色综合久久久精品综合| 久久久久久久波多野高潮日日| 久久久久国产精品夜夜夜夜夜| 亚洲成人一区二区三区| 亚洲欧美日韩三级| 欧美一区二区三区日韩| 美女扒开大腿让男人桶| 欧美人与z0zoxxxx特| 欧美网站一区二区| 国产美女在线播放| 成人综合婷婷国产精品久久| 亚洲美女av电影| 神马影院午夜我不卡影院| 国产成人三级一区二区在线观看一| 香蕉国产在线视频| 99re8精品视频在线观看| 日韩亚洲精品在线| 欧美乱做爰xxxⅹ久久久| 毛茸茸多毛bbb毛多视频| 欧美人妖巨大在线| 日韩精品一区二区三区| 色呦呦久久久| 影音先锋男人资源在线| 97在线中文字幕| 日韩综合在线| 91免费观看视频| 秋霞午夜理伦电影在线观看| 亚洲乱码精品一二三四区日韩在线| 久久久综合亚洲91久久98| 中文字幕亚洲欧美日韩在线不卡| 色先锋资源在线播放av| 91九色丨porny丨国产jk| 成人高潮免费视频| 91美女片黄在线| 国产成人艳妇aa视频在线| 中文字幕人妻色偷偷久久| 欧美做爰猛烈大尺度视频| 日韩精品在线免费看| 国产高清第一页| 免费一级suv好看的国产网站| 一个人看的www一区| 国产激情视频一区二区三区欧美| 国产精品无码2021在线观看| 777亚洲妇女| 午夜影院在线看| 欧美激情免费视频| 国产国产一区| 91caopron| 免费在线色视频| 亚洲欧美综合图区| 午夜在线播放| 亚洲欧美综合久久久| 亚洲成av人片在线观看香蕉| 亚洲综合精品一区二区| 成人亚洲欧美日韩在线观看| 青青草在线免费观看| 日韩av片网站| 在线观看黄色网| 亚洲日本精品| 成人免费在线一区二区三区| 成人超碰在线| 国产极品一区二区| 天堂在线免费观看视频| 国产91在线播放九色| 欧美日韩亚洲精品内裤| 2019中文亚洲字幕| av大全在线观看| 欧美精品二区三区| 无码人妻丰满熟妇区五十路百度| 欧美激情网站在线观看| 6080成人| 欧美性猛交xxx高清大费中文| 欧美高清性粉嫩交| aaa在线观看| 日本午夜人人精品| 国产精品情趣视频| 日日噜噜噜噜久久久精品毛片| 成人在线免费高清视频| 欧美日韩p片| 精品国产一区二区三区无码| 久久精品视频免费观看| 亚洲成人综合网站| 精品国产a毛片| 一本久久综合| 国产成人极品视频| 国产精品久久久久久吹潮| 亚洲精品在线观看www| 国产一区二区三区小说| 亚洲欧美日韩国产综合精品二区| 国产一区不卡精品| 欧美高清视频在线播放| 91麻豆6部合集magnet| 精品欧美不卡一区二区在线观看| 在线视频国产区| 久久综合久色欧美综合狠狠| 成人在线观看亚洲| 红桃视频在线观看一区二区|