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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

情感分析之电影评论分析-基于Tensorflow的LSTM

發(fā)布時(shí)間:2024/9/20 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 情感分析之电影评论分析-基于Tensorflow的LSTM 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1. 深度學(xué)習(xí)在自然語言處理中的應(yīng)用

自然語言處理是教會(huì)機(jī)器如何去處理或者讀懂人類語言的系統(tǒng),目前比較熱門的方向,包括如下幾類:

對(duì)話系統(tǒng) - 比較著名的案例有:Siri,Alexa 和 Cortana。
情感分析 - 對(duì)一段文本進(jìn)行情感識(shí)別。
圖文映射 - 用一句話來描述一張圖片。
機(jī)器翻譯 - 將一種語言翻譯成另一種語言。
語音識(shí)別 - 讓電腦識(shí)別口語。

2. 情感分析基本方法

目前對(duì)情感分析的研究主要集中在兩個(gè)方面:識(shí)別給定的文本實(shí)體是主觀的還是客觀的,以及識(shí)別主觀的文本的極性。大多數(shù)情感分析研究都使用機(jī)器學(xué)習(xí)方法。

分析方法主要有以下三種:

  • 詞法分(基于詞典的打分機(jī)制)
  • 基于機(jī)器學(xué)習(xí)的分析
  • 混合分析

下面簡(jiǎn)單介紹下這三種方法:

  • 詞法分析
    詞法分析運(yùn)用了由預(yù)標(biāo)記詞匯組成的字典,使用詞法分析將器將輸入文本轉(zhuǎn)化為單詞序列。將新的單詞與詞典中的詞匯進(jìn)行匹配。如果有一個(gè)積極的匹配,正分?jǐn)?shù)就加到分?jǐn)?shù)總池中。如果有一個(gè)消極的匹配,輸入文本的總分?jǐn)?shù)就會(huì)減少。最后文本的分類就取決于文本的總得分。目前有大量的工作致力于度量詞法信息的有效性。
  • 機(jī)器學(xué)習(xí)方法
    機(jī)器學(xué)習(xí)具有高的適應(yīng)性和準(zhǔn)確性,也因此受到了越來越多的關(guān)注。在情感分析中主要使用的是監(jiān)督學(xué)習(xí)方法。可以分為三個(gè)階段:數(shù)據(jù)收集、預(yù)處理、訓(xùn)練分類。并且在訓(xùn)練過程中,需要提供一個(gè)標(biāo)記語料庫作為訓(xùn)練數(shù)據(jù)。分類器使用一系列特征向量對(duì)目標(biāo)數(shù)據(jù)進(jìn)行分類。
  • 混合分析
    目前情感分析研究將兩種方法進(jìn)行組合,這樣既可以利用機(jī)器學(xué)習(xí)方法的高準(zhǔn)確性,又可以利用詞法分析的快速的特性。有研究者利用由兩個(gè)詞組成的詞匯和一個(gè)未標(biāo)記的數(shù)據(jù)作為訓(xùn)練集。思想是:首先將這些由兩個(gè)詞組成的詞匯劃分為積極的類和消極的類,然后把這些詞匯集合進(jìn)行向量化表示,每個(gè)類都有一個(gè)中心向量代表該類,然后計(jì)算未標(biāo)記詞和中心詞向量之間的余弦相似度,根據(jù)相似度將該文件劃分為積極和消極的類,最后把這些全部送進(jìn)分類器進(jìn)行分類。個(gè)人理解這里其實(shí)有點(diǎn)半監(jiān)督學(xué)習(xí)的意思。。
  • 3. 實(shí)戰(zhàn)電影評(píng)論情感分析

    該任務(wù)可以被認(rèn)為是從一個(gè)句子,一段話,或者是從一個(gè)文檔中,將作者的情感分為積極的,消極的或者中性的。這篇教程由多個(gè)主題組成,包括詞向量,循環(huán)神經(jīng)網(wǎng)絡(luò)和LSTM,tensorflow框架的搭建。

    3.1 關(guān)于詞向量:

    我們需要考慮不同形式的數(shù)據(jù),這些數(shù)據(jù)被用來作為機(jī)器學(xué)習(xí)或者深度學(xué)習(xí)模型的輸入數(shù)據(jù)。卷積神經(jīng)網(wǎng)絡(luò)使用像素值作為輸入,logistic回歸使用一些可以量化的特征值作為輸入,強(qiáng)化學(xué)習(xí)模型使用獎(jiǎng)勵(lì)信號(hào)來進(jìn)行更新。通常的輸入數(shù)據(jù)是需要被標(biāo)記的標(biāo)量值。

    詞向量模型:
    我們可以將一句話中的每一個(gè)詞都轉(zhuǎn)換成一個(gè)向量:輸入數(shù)據(jù)可以看成是一個(gè) 16*D 的矩陣

    Word2Vec:
    為了去得到這些詞嵌入,我們使用模型 “Word2Vec”。簡(jiǎn)單的說,這個(gè)模型根據(jù)上下文的語境來推斷出每個(gè)詞的詞向量。如果兩個(gè)個(gè)詞在上下文的語境中,可以被互相替換,那么這兩個(gè)詞的距離就非常近。在自然語言中,上下文的語境對(duì)分析詞語的意義是非常重要的。這個(gè)模型的作用就是從一大堆句子(以 Wikipedia 為例)中為每個(gè)獨(dú)一無二的單詞進(jìn)行建模,并且輸出一個(gè)唯一的向量。Word2Vec 模型的輸出被稱為一個(gè)嵌入矩陣。

    這個(gè)嵌入矩陣包含訓(xùn)練集中每個(gè)詞的一個(gè)向量。傳統(tǒng)來講,這個(gè)嵌入矩陣中的詞向量數(shù)據(jù)會(huì)很大。
    Word2Vec 模型根據(jù)數(shù)據(jù)集中的每個(gè)句子進(jìn)行訓(xùn)練,并且以一個(gè)固定窗口在句子上進(jìn)行滑動(dòng),根據(jù)句子的上下文來預(yù)測(cè)固定窗口中間那個(gè)詞的向量。然后根據(jù)一個(gè)損失函數(shù)和優(yōu)化方法,來對(duì)這個(gè)模型進(jìn)行訓(xùn)練。
    具體的可以參考:
    https://blog.csdn.net/lilong117194/article/details/82182869
    https://blog.csdn.net/lilong117194/article/details/81979522

    3.2 循環(huán)神經(jīng)網(wǎng)絡(luò)和LSTM

    這方面的資料很多,這里不再重復(fù)講lstm相關(guān)的知識(shí)。

    3.3 代碼實(shí)現(xiàn)

    有了上面的基礎(chǔ),下面就進(jìn)行貼出代碼,整體流程如下:
    1) 制作詞向量,可以使用gensim這個(gè)庫,也可以直接用現(xiàn)成的訓(xùn)練好的
    2) 詞和ID的映射
    3) 構(gòu)建RNN網(wǎng)絡(luò)架構(gòu)
    4) 訓(xùn)練模型
    5) 測(cè)試模型效果

    整體的代碼為:

    #!/usr/bin/env python3 # -*- coding: utf-8 -*- """ Created on Wed Aug 8 14:13:14 2018 @author: lilong """import numpy as np import time import datetime import os import re from random import randint from os.path import isfile, join import tensorflow as tf""" 使用訓(xùn)練好的詞向量模型,該矩陣包含400000x50的數(shù)據(jù);還有一個(gè)是400000的詞典 """wordsList = np.load('wordsList.npy') print('載入word列表:',np.shape(wordsList),type(wordsList)) # 這里轉(zhuǎn)化為列表,但是是[b'and', b'in', b'a', b'"', b"'s", b'for']的形式,即是二進(jìn)制編碼。 wordsList = wordsList.tolist() # 轉(zhuǎn)化為utf-8編碼的形式,['of', 'to', 'and', 'in', 'a', '"', "'s", 'for', '-',] wordsList = [word.decode('UTF-8') for word in wordsList] # 400000x50的嵌入矩陣,這個(gè)是訓(xùn)練好的詞典向量模型 wordVectors = np.load('wordVectors.npy') print('載入文本向量:',wordVectors.shape) #print(wordVectors[home_ndex]) # 得到對(duì)應(yīng)詞典中詞的50維向量""" 解析文件,數(shù)據(jù)預(yù)處理,得到正負(fù)評(píng)價(jià)下的文件 """# 這里得到了所有的正面評(píng)價(jià)文件夾pos下的文件路徑 pos_files = ['pos/' + f for f in os.listdir('pos/') if isfile(join('pos/', f))] # 這里得到了所有的neg文件夾下的文件路徑 neg_files = ['neg/' + f for f in os.listdir('neg/') if isfile(join('neg/', f))] num_words = [] # 這里的每個(gè)txt文件都是一行文本,12500都是正面評(píng)價(jià) for pf in pos_files:with open(pf, "r", encoding='utf-8') as f:line = f.readline()counter = len(line.split())num_words.append(counter) print('正面評(píng)價(jià)完結(jié)。。。') # 這里是12500負(fù)面評(píng)價(jià) for nf in neg_files:with open(nf, "r", encoding='utf-8') as f:line = f.readline()counter = len(line.split())num_words.append(counter) print('負(fù)面評(píng)價(jià)完結(jié)。。。') num_files = len(num_words) print('文件總數(shù):', num_files) print('所有的詞的數(shù)量:', sum(num_words)) print('平均文件的詞的長(zhǎng)度:', sum(num_words) / len(num_words))""" 輔助函數(shù):返回一個(gè)數(shù)據(jù)集的迭代器,用于返回一批訓(xùn)練集合""" max_seq_num = 250 num_dimensions = 50 # 每個(gè)單詞向量的維度,這里和嵌入矩陣的每個(gè)詞的維度相同# arr:24 x 250的矩陣 def get_train_batch():labels = []arr = np.zeros([batch_size, max_seq_num])for i in range(batch_size):if (i % 2 == 0):num = randint(1, 11499)labels.append([1, 0])else:num = randint(13499, 24999)labels.append([0, 1])arr[i] = ids[num - 1:num]return arr, labels# 同上 def get_test_batch():labels = []arr = np.zeros([batch_size, max_seq_num])for i in range(batch_size):num = randint(11499, 13499)if (num <= 12499):labels.append([1, 0])else:labels.append([0, 1])arr[i] = ids[num - 1:num]return arr, labels""" 構(gòu)建tensorflow圖"""batch_size = 24 # batch的尺寸 lstm_units = 64 # lstm的單元數(shù)量 num_labels = 2 # 輸出的類別數(shù) iterations = 200000 # 迭代的次數(shù) # 載入正負(fù)樣本的詞典映射 ids = np.load('idsMatrix.npy') print('載入IDS:',ids.shape) tf.reset_default_graph() # 確定好單元的占位符:輸入是24x300,輸出是24x2 labels = tf.placeholder(tf.float32, [batch_size, num_labels]) input_data = tf.placeholder(tf.int32, [batch_size, max_seq_num])# 必須先定義該變量 data = tf.Variable(tf.zeros([batch_size, max_seq_num, num_dimensions]), dtype=tf.float32) # 調(diào)用tf.nn.lookup()接口獲得文本向量,該函數(shù)返回batch_size個(gè)文本的3D張量,用于后續(xù)的訓(xùn)練 data = tf.nn.embedding_lookup(wordVectors, input_data)# 使用tf.contrib.rnn.BasicLSTMCell細(xì)胞單元配置lstm的數(shù)量 lstmCell = tf.contrib.rnn.BasicLSTMCell(lstm_units) # 配置dropout參數(shù),以此避免過擬合 lstmCell = tf.contrib.rnn.DropoutWrapper(cell=lstmCell, output_keep_prob=0.75) # 最后將LSTM cell和數(shù)據(jù)輸入到tf.nn.dynamic_rnn函數(shù),功能是展開整個(gè)網(wǎng)絡(luò),并且構(gòu)建一整個(gè)RNN模型 # 這里的value認(rèn)為是最后的隱藏狀態(tài),該向量將重新確定維度,然后乘以一個(gè)權(quán)重加上偏置,最終獲得lable value, _ = tf.nn.dynamic_rnn(lstmCell, data, dtype=tf.float32)weight = tf.Variable(tf.truncated_normal([lstm_units, num_labels])) bias = tf.Variable(tf.constant(0.1, shape=[num_labels])) value = tf.transpose(value, [1, 0, 2]) last = tf.gather(value, int(value.get_shape()[0]) - 1) prediction = (tf.matmul(last, weight) + bias)# 定義正確的預(yù)測(cè)函數(shù)和正確率評(píng)估參數(shù) correctPred = tf.equal(tf.argmax(prediction, 1), tf.argmax(labels, 1)) accuracy = tf.reduce_mean(tf.cast(correctPred, tf.float32))# 最后將標(biāo)準(zhǔn)的交叉熵?fù)p失函數(shù)定義為損失值,這里是以adam為優(yōu)化函數(shù) loss = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits_v2(logits=prediction, labels=labels)) optimizer = tf.train.AdamOptimizer().minimize(loss)sess = tf.InteractiveSession() saver = tf.train.Saver() sess.run(tf.global_variables_initializer())tf.summary.scalar('loss',loss) tf.summary.scalar('Accrar',accuracy) merged=tf.summary.merge_all() logdir='tensorboard/'+ datetime.datetime.now().strftime("%Y%m%d-%H%M%S")+"/" writer=tf.summary.FileWriter(logdir,sess.graph)iterations = 100000 for i in range(iterations):# 下個(gè)批次的數(shù)據(jù)next_batch, next_batch_labels = get_train_batch()sess.run(optimizer,{input_data: next_batch, labels: next_batch_labels}) # 每50次寫入一次leadboardif(i%50==0):summary=sess.run(merged,{input_data: next_batch, labels: next_batch_labels})writer.add_summary(summary,i)if (i%1000==0):loss_ = sess.run(loss, {input_data: next_batch, labels: next_batch_labels})accuracy_=(sess.run(accuracy, {input_data: next_batch, labels: next_batch_labels})) * 100print("iteration:{}/{}".format(i+1, iterations),"\nloss:{}".format(loss_),"\naccuracy:{}".format(accuracy_)) print('..........') # 每10000次保存一下模型if(i%10000==0 and i!=0):save_path=saver.save(sess,"models/pretrained_lstm.ckpt",gloal_step=i)print("saved to %s"% save_path)writer.close()

    運(yùn)行結(jié)果:

    載入word列表: (400000,) <class 'numpy.ndarray'> 載入文本向量: (400000, 50) 正面評(píng)價(jià)完結(jié)。。。 負(fù)面評(píng)價(jià)完結(jié)。。。 文件總數(shù): 25000 所有的詞的數(shù)量: 5844680 平均文件的詞的長(zhǎng)度: 233.7872 載入IDS: (25000, 250) iteration:1/100000 loss:0.7998574376106262 accuracy:58.33333134651184 .......... iteration:1001/100000 loss:0.6967594027519226 accuracy:54.16666865348816 .......... iteration:2001/100000 loss:0.6576123237609863 accuracy:62.5 .......... iteration:3001/100000 loss:0.6840474605560303 accuracy:62.5 .......... iteration:4001/100000 loss:0.6713441014289856 accuracy:58.33333134651184 .......... iteration:5001/100000 loss:0.6841540932655334 accuracy:54.16666865348816 .......... iteration:6001/100000 loss:0.7225241661071777 accuracy:66.66666865348816 .......... . . .

    注意:這里的所有運(yùn)行中用到的準(zhǔn)備文件都是提前訓(xùn)練好的,下面會(huì)有介紹。
    由于時(shí)間問題這里沒有跑完所有的訓(xùn)練迭代輪數(shù),但可以看到在每個(gè)batch下的損失率和準(zhǔn)確率。

    下面拆解整體的流程:
    (1) 導(dǎo)入數(shù)據(jù)
    首先,我們需要去創(chuàng)建詞向量。為了簡(jiǎn)單起見,我們使用訓(xùn)練好的模型來創(chuàng)建。

    作為該領(lǐng)域的一個(gè)最大玩家,Google 已經(jīng)幫助我們?cè)诖笠?guī)模數(shù)據(jù)集上訓(xùn)練出來了 Word2Vec 模型,包括 1000 億個(gè)不同的詞!在這個(gè)模型中,谷歌能創(chuàng)建 300 萬個(gè)詞向量,每個(gè)向量維度為 300。

    在理想情況下,我們將使用這些向量來構(gòu)建模型,但是因?yàn)檫@個(gè)單詞向量矩陣相當(dāng)大(3.6G),我們用另外一個(gè)現(xiàn)成的小一些的,該矩陣由 GloVe 進(jìn)行訓(xùn)練得到。矩陣將包含 400000 個(gè)詞向量,每個(gè)向量的維數(shù)為 50。上面的代碼也是用的這個(gè)詞向量。

    我們將導(dǎo)入兩個(gè)不同的數(shù)據(jù)結(jié)構(gòu),一個(gè)是包含 400000 個(gè)單詞的 Python 列表,這個(gè)相當(dāng)于詞典,主要是為了產(chǎn)生新輸入的句子中的每一個(gè)詞的索引值。一個(gè)是包含所有單詞向量值得 400000*50 維的嵌入矩陣。

    wordsList = np.load('wordsList.npy') print('載入word列表:',np.shape(wordsList),type(wordsList)) # 這里轉(zhuǎn)化為列表,但是是[b'and', b'in', b'a', b'"', b"'s", b'for']的形式,即是二進(jìn)制編碼。 wordsList = wordsList.tolist() # 轉(zhuǎn)化為utf-8編碼的形式,['of', 'to', 'and', 'in', 'a', '"', "'s", 'for', '-',] wordsList = [word.decode('UTF-8') for word in wordsList] # 400000x50的嵌入矩陣,這個(gè)是訓(xùn)練好的詞典向量模型 wordVectors = np.load('wordVectors.npy') print('載入文本向量:',wordVectors.shape)

    也可以在詞庫中搜索單詞,比如 “baseball”,然后可以通過訪問嵌入矩陣來得到相應(yīng)的向量,如下:

    baseballIndex = wordsList.index('baseball') wordVectors[baseballIndex]

    所以詞向量庫的詞和列表的詞的索引是一一對(duì)應(yīng)的。

    (2) 訓(xùn)練數(shù)據(jù)中的每個(gè)樣本的長(zhǎng)度的確定:
    在整個(gè)訓(xùn)練集上面構(gòu)造索引之前,我們先花一些時(shí)間來可視化我們所有的數(shù)據(jù)。這將幫助我們?nèi)Q定如何設(shè)置最大序列長(zhǎng)度的最佳值。訓(xùn)練集我們使用的是 IMDB 數(shù)據(jù)集。但這個(gè)值在很大程度上取決于你輸入的數(shù)據(jù)。這里的數(shù)據(jù)集包含 25000 條電影數(shù)據(jù),其中 12500 條正向數(shù)據(jù),12500 條負(fù)向數(shù)據(jù)。這些數(shù)據(jù)都是存儲(chǔ)在一個(gè)文本文件中,首先我們需要做的就是去解析這個(gè)文件。正向數(shù)據(jù)包含在一個(gè)文件中,負(fù)向數(shù)據(jù)包含在另一個(gè)文件中。
    可視化為:

    # main_test是我的主代碼,這里我只是把可視化文件分開了 from main_test import num_words import matplotlib as pltplt.use('qt4agg') # 指定默認(rèn)字體 plt.rcParams['font.sans-serif']=['SimHei'] plt.rcParams['font.family']='sans-serif' plt.pyplot.hist(num_words,50,facecolor='g') plt.pyplot.xlabel('Text length') plt.pyplot.ylabel('frequency') plt.pyplot.axis([0,1200,0,8000]) plt.pyplot.show()

    可視化圖:

    由圖可以看出大部分的文本都在230之內(nèi),這里我的設(shè)置是250,也就是為訓(xùn)練樣本中的每個(gè)樣本提前開辟一個(gè)空間,用于存儲(chǔ)樣本向量。

    (3) 得到索引矩陣
    這是一個(gè)計(jì)算成本非常高的過程,這里使用的是提前運(yùn)行保存的索引矩陣文件。當(dāng)然了如果是自己的項(xiàng)目,那肯定要自己跑代碼,等運(yùn)行結(jié)果了。代碼如下:

    # 刪除標(biāo)點(diǎn)符號(hào)、括號(hào)、問號(hào)等,只留下字母數(shù)字字符 strip_special_chars = re.compile("[^A-Za-z0-9 ]+") # [^aeiou]:除了aeiou字母以外的所有字符def cleanSentences(string):# replace是簡(jiǎn)單的替換string = string.lower().replace("<br />", " ")# re.sub是使用正則表達(dá)式來實(shí)現(xiàn)替換的功能return re.sub(strip_special_chars, "", string.lower())# num_files:文件個(gè)數(shù) 25000 # max_seq_num:最大序列長(zhǎng)度 # ids=15000 x 250的矩陣 max_seq_num = 250 ids = np.zeros((num_files, max_seq_num), dtype='int32') file_count = 0# 把文本中的正評(píng)價(jià)變成15000 x 250 的詞ID矩陣 for pf in pos_files:with open(pf, "r", encoding='utf-8') as f:indexCounter = 0line = f.readline()cleanedLine = cleanSentences(line)split = cleanedLine.split()for word in split:try:#print('wordsList.index(word):',wordsList.index(word))#time.sleep(1)ids[file_count][indexCounter] = wordsList.index(word)except ValueError:ids[file_count][indexCounter] = 399999 # 未知的詞indexCounter = indexCounter + 1# 這里如果是大于300長(zhǎng)度的序列,那么就舍棄300以后的長(zhǎng)度,所以就得到了15000x300的矩陣if indexCounter >= max_seq_num:breakfile_count = file_count + 1print('haha..')# 把文本中的負(fù)評(píng)價(jià)變成15000 x 250 的詞ID矩陣 for nf in neg_files:with open(nf, "r",encoding='utf-8') as f:indexCounter = 0line = f.readline()cleanedLine = cleanSentences(line)split = cleanedLine.split()for word in split:try:ids[file_count][indexCounter] = wordsList.index(word)except ValueError:ids[file_count][indexCounter] = 399999 # 未知的詞語indexCounter = indexCounter + 1if indexCounter >= max_seq_num:breakfile_count = file_count + 1print('oo..') np.save('idsMatrix.npy', ids)

    運(yùn)行會(huì)得到全部電影訓(xùn)練集的索引矩陣,大小是25000 * 250 的矩陣

    (4) 得到詞向量:
    對(duì)于一個(gè)新輸入的句子或者文本,為了得到其詞向量,我們可以使用 TensorFlow 的嵌入函數(shù):tf.nn.embedding_lookup。這個(gè)函數(shù)有兩個(gè)參數(shù),一個(gè)是嵌入矩陣(在我們的情況下是詞向量矩陣),另一個(gè)是每個(gè)詞對(duì)應(yīng)的索引。如下:

    import tensorflow as tf import numpy as npmaxSeqLength = 10 numDimensions = 300 wordsList = np.load('wordsList.npy') print('載入word列表:',np.shape(wordsList)) wordsList = wordsList.tolist() wordsList = [word.decode('UTF-8') for word in wordsList] wordVectors = np.load('wordVectors.npy') print('載入文本向量:',wordVectors.shape)firstSentence = np.zeros((maxSeqLength), dtype='int32') firstSentence[0] = wordsList.index("i") firstSentence[1] = wordsList.index("thought") firstSentence[2] = wordsList.index("the") firstSentence[3] = wordsList.index("movie") firstSentence[4] = wordsList.index("was") firstSentence[5] = wordsList.index("incredible") firstSentence[6] = wordsList.index("and") firstSentence[7] = wordsList.index("inspiring") #firstSentence[8] and firstSentence[9] are going to be 0 print('firstSentence.shape:',firstSentence.shape) print('firstSentence:',firstSentence) with tf.Session() as sess:print(tf.nn.embedding_lookup(wordVectors,firstSentence).eval().shape)

    運(yùn)行結(jié)果:
    輸出數(shù)據(jù)是一個(gè) 10*50 的詞矩陣,其中包括 10 個(gè)詞,每個(gè)詞的向量維度是 50,就是去找到這些詞對(duì)應(yīng)的向量,這里只是作為一個(gè)示例。

    載入word列表: (400000,) 載入文本向量: (400000, 50) firstSentence.shape: (10,) firstSentence: [ 41 804 201534 1005 15 7446 5 13767 0 0] (10, 50)

    數(shù)據(jù)管道如下:

    (5) 批訓(xùn)練集函數(shù):
    def getTrainBatch():和def getTestBatch():
    上面兩個(gè)函數(shù)的功能就是構(gòu)造訓(xùn)練集和測(cè)試集的每一批樣本,可以發(fā)現(xiàn)有如下區(qū)間:
    [1?11500]([11500?12500][12500?13500])[13500?25000][1?11500]([11500?12500][12500?13500])[13500?25000]
    訓(xùn)練集中的每一批次正負(fù)樣本都有,又能保證測(cè)試集里的樣本沒有在訓(xùn)練集中出現(xiàn)過。

    (6) RNN Model

    • 當(dāng)確定好好兩個(gè)占位符,一個(gè)用于數(shù)據(jù)輸入,另一個(gè)用于標(biāo)簽數(shù)據(jù)。對(duì)于占位符,最重要的一點(diǎn)就是確定好維度。這里的標(biāo)簽占位符代表一組值,每一個(gè)值都為 [1,0] 或者 [0,1],這個(gè)取決于數(shù)據(jù)是正向的還是負(fù)向的。輸入占位符,是一個(gè)整數(shù)化的索引數(shù)組。一旦,我們?cè)O(shè)置了我們的輸入數(shù)據(jù)占位符,我們可以調(diào)用 tf.nn.embedding_lookup() 函數(shù)來得到我們的詞向量。該函數(shù)最后將返回一個(gè)三維向量,第一個(gè)維度是批處理大小,第二個(gè)維度是句子長(zhǎng)度,第三個(gè)維度是詞向量長(zhǎng)度。
    • 堆棧 LSTM 網(wǎng)絡(luò)是一個(gè)比較好的網(wǎng)絡(luò)架構(gòu)。也就是前一個(gè)LSTM 隱藏層的輸出是下一個(gè)LSTM的輸入。堆棧LSTM可以幫助模型記住更多的上下文信息,但是帶來的弊端是訓(xùn)練參數(shù)會(huì)增加很多,模型的訓(xùn)練時(shí)間會(huì)很長(zhǎng),過擬合的幾率也會(huì)增加。如果你想了解更多有關(guān)堆棧LSTM,可以查看TensorFlow的官方教程。
    • dynamic RNN 函數(shù)的第一個(gè)輸出可以被認(rèn)為是最后的隱藏狀態(tài)向量。這個(gè)向量將被重新確定維度,然后乘以最后的權(quán)重矩陣和一個(gè)偏置項(xiàng)來獲得最終的輸出值。
    • 標(biāo)準(zhǔn)的交叉熵?fù)p失函數(shù)來作為損失值。對(duì)于優(yōu)化器,我們選擇 Adam,并且采用默認(rèn)的學(xué)習(xí)率

    (7) 超參數(shù)調(diào)整
    選擇合適的超參數(shù)來訓(xùn)練你的神經(jīng)網(wǎng)絡(luò)是至關(guān)重要的。你會(huì)發(fā)現(xiàn)你的訓(xùn)練損失值與你選擇的優(yōu)化器(Adam,Adadelta,SGD,等等),學(xué)習(xí)率和網(wǎng)絡(luò)架構(gòu)都有很大的關(guān)系。特別是在RNN和LSTM中,單元數(shù)量和詞向量的大小都是重要因素。

    • 學(xué)習(xí)率:RNN最難的一點(diǎn)就是它的訓(xùn)練非常困難,因?yàn)闀r(shí)間步驟很長(zhǎng)。那么,學(xué)習(xí)率就變得非常重要了。如果我們將學(xué)習(xí)率設(shè)置的很大,那么學(xué)習(xí)曲線就會(huì)波動(dòng)性很大,如果我們將學(xué)習(xí)率設(shè)置的很小,那么訓(xùn)練過程就會(huì)非常緩慢。根據(jù)經(jīng)驗(yàn),將學(xué)習(xí)率默認(rèn)設(shè)置為 0.001 是一個(gè)比較好的開始。如果訓(xùn)練的非常緩慢,那么你可以適當(dāng)?shù)脑龃筮@個(gè)值,如果訓(xùn)練過程非常的不穩(wěn)定,那么你可以適當(dāng)?shù)臏p小這個(gè)值。
    • 優(yōu)化器:這個(gè)在研究中沒有一個(gè)一致的選擇,但是 Adam 優(yōu)化器被廣泛的使用。
    • LSTM單元的數(shù)量:這個(gè)值很大程度上取決于輸入文本的平均長(zhǎng)度。而更多的單元數(shù)量可以幫助模型存儲(chǔ)更多的文本信息,當(dāng)然模型的訓(xùn)練時(shí)間就會(huì)增加很多,并且計(jì)算成本會(huì)非常昂貴。
    • 詞向量維度:詞向量的維度一般我們?cè)O(shè)置為50到300。維度越多意味著可以存儲(chǔ)更多的單詞信息,但是你需要付出的是更昂貴的計(jì)算成本。

    (8) 訓(xùn)練過程
    最好使用GPU進(jìn)行訓(xùn)練,訓(xùn)練會(huì)用幾個(gè)小時(shí)的時(shí)間,當(dāng)然了,這要看硬件。。

    上面也就是訓(xùn)練的過程,也可以同時(shí)在訓(xùn)練的同時(shí),通過保存的模型來進(jìn)行測(cè)試集的測(cè)試,但是我這里一直報(bào)錯(cuò):

    NotFoundError (see above for traceback): Key rnn/basic_lstm_cell/bias not found in checkpoint

    我的這個(gè)心啊。。。

    改天再搞!!!

    4. 語法使用

    在使用中需要注意的地方有:

    4.1 tensorflow的tf.argmax() 用法:

    tf.argmax(input, dimension, name=None)
    - dimension=0 按列找
    - dimension=1 按行找
    - tf.argmax()返回最大數(shù)值的下標(biāo)
    通常和tf.equal()一起使用,計(jì)算模型準(zhǔn)確度,下面是使用:

    import tensorflow as tf a = tf.constant([1.,2.,3.,0.,9.,]) b = tf.constant([[1,2,3],[3,2,1],[4,5,6],[6,5,4]]) with tf.Session() as sess:print(sess.run(tf.argmax(a, 0)))print(sess.run(tf.argmax(b, 0)))print(sess.run(tf.argmax(b, 1)))

    輸出:

    4 [3 2 2] [2 0 2 0]

    4.2 tf.gather用法

    簡(jiǎn)單說就是獲得相應(yīng)下標(biāo)的數(shù)據(jù):

    import tensorflow as tftemp = tf.range(0,10)*10 + tf.constant(1,shape=[10]) temp2 = tf.gather(temp,[1,5,9]) with tf.Session() as sess:print (tf.range(0,10)*10)print (tf.constant(1,shape=[10]))print (sess.run(temp))print (sess.run(temp2))

    輸出:

    Tensor("mul_1:0", shape=(10,), dtype=int32) Tensor("Const_1:0", shape=(10,), dtype=int32) [ 1 11 21 31 41 51 61 71 81 91] [11 51 91]

    注意:
    macOS下的新建文件夾會(huì)自動(dòng)生成一個(gè).DS_Store的文件,會(huì)影響文件的讀取,下面簡(jiǎn)單介紹下:
    DS_Store 是給Finder用來存儲(chǔ)這個(gè)文件夾的顯示屬性的:比如文件圖標(biāo)的擺放位置。刪除以后的副作用就是這些信息的失去。

    2 關(guān)閉.DS_Store的方法:
    步驟一:刪除所有隱藏.DS_store文件,打開命令行窗口

    sudo find / -name ".DS_Store" -depth -exec rm {} \;

    步驟二: 設(shè)置不再產(chǎn)生選項(xiàng), 執(zhí)行如下命令

    defaults write com.apple.desktopservices DSDontWriteNetworkStores true

    本文的代碼是學(xué)習(xí)自:《pytho自然語言處理實(shí)戰(zhàn) 核心技術(shù)與算法》
    https://github.com/nlpinaction/learning-nlp/tree/master/chapter-8/sentiment-analysis

    參考:https://www.aliyun.com/jiaocheng/517649.html

    總結(jié)

    以上是生活随笔為你收集整理的情感分析之电影评论分析-基于Tensorflow的LSTM的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

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

    亚洲精品免费在线视频 | 国产午夜亚洲精品 | 国产精品一区在线播放 | 国产精品 日韩 | 成人影片在线免费观看 | 国产真实在线 | 日本护士三级少妇三级999 | 国产网站色 | 免费在线日韩 | 亚洲国产中文字幕 | 国产成人精品女人久久久 | 国产亚洲精品久久久久久久久久久久 | www.超碰 | 国产偷在线 | 日韩精品一区二区免费 | 精品一区电影 | 久久精品a | 国产精品成人一区二区 | 91成人蝌蚪 | 日本黄网站 | 91九色免费视频 | 久久99日韩 | 18国产精品福利片久久婷 | 久久er99热精品一区二区三区 | 精品久久久网 | 超碰在线成人 | 99日精品 | 97免费公开视频 | 日韩理论片在线 | 国产午夜三级一区二区三桃花影视 | 日本视频高清 | 国产在线 一区二区三区 | 美女福利视频一区二区 | 成人在线电影观看 | 福利av影院 | 成人h视频在线 | 国产精品欧美久久 | 天天干天天看 | 欧美日韩视频在线一区 | 麻花豆传媒一二三产区 | 一区二区三区在线电影 | 91久久偷偷做嫩草影院 | av黄色大片 | 不卡的av在线播放 | 国产精品99久久久久 | 日日综合网 | 精品99久久久久久 | 91视频麻豆 | 色综合天天色综合 | 国产91av视频在线观看 | 97在线观看免费高清 | 日韩一级电影在线观看 | 久久综合色一综合色88 | 免费一级特黄毛大片 | 日日摸日日碰 | 婷婷在线资源 | 免费黄色a网站 | 四虎海外影库www4hu | 国产三级午夜理伦三级 | 国产视频一区二区在线观看 | 亚洲视频免费在线观看 | 久久久久久蜜桃一区二区 | 久久电影日韩 | 亚洲精品男人的天堂 | 国产xxxx做受性欧美88 | www.色五月.com | 国产成人精品综合 | 97高清免费视频 | www.久久视频 | 一本一本久久a久久精品牛牛影视 | 国产一级免费播放 | 亚洲伊人第一页 | 911久久| 亚洲人精品午夜 | 高清久久久 | 天天操月月操 | 久草在线欧美 | 久久a久久 | 日韩高清在线一区 | 黄色大片免费网站 | 欧美一二区视频 | 又黄又刺激视频 | 人人爽人人av | 一级片免费视频 | 激情五月婷婷激情 | 奇米影视在线99精品 | 韩国三级在线一区 | 免费色婷婷 | 开心色停停 | 色婷婷在线视频 | 欧美精品免费一区二区 | 久久精品免视看 | 久热久草在线 | 日韩精品第1页 | 深夜激情影院 | 91麻豆国产| 国产少妇在线观看 | 麻豆免费在线播放 | 国产成人精品久久亚洲高清不卡 | 中文字幕在线观看网站 | av在线短片 | 久久免费黄色 | 啪啪肉肉污av国网站 | 亚洲视频,欧洲视频 | 日本久久免费电影 | 五月婷婷丁香网 | 国产精品1000 | 久久精品视频免费观看 | 国产精品国产三级国产aⅴ入口 | 蜜臀av性久久久久av蜜臀妖精 | 国产一级在线观看视频 | 午夜性生活| av电影免费在线播放 | 一区二区三区四区免费视频 | 天天躁天天躁天天躁婷 | 在线涩涩| 久久精品美女视频网站 | 国产精品一区二区三区免费看 | 欧美精品免费在线观看 | 美女久久久久久久久久 | 99精品成人 | 深爱激情av | 91精品资源| 干综合网| 91精品视频免费看 | 久久99精品久久久久久三级 | www.五月激情.com| 久草手机视频 | 首页中文字幕 | 97精品久久人人爽人人爽 | 国产精品一区二区三区在线免费观看 | 91视频在线观看大全 | 日韩av一区在线观看 | 超碰人人射 | 人人射人人爽 | 探花视频在线版播放免费观看 | 美女视频黄的免费的 | 碰天天操天天 | 在线国产一区二区 | 久久激情视频 | 久久蜜臀一区二区三区av | 日韩高清网站 | 日韩精品亚洲专区在线观看 | 日韩高清成人在线 | 在线国产一区二区 | 96久久精品 | 丁香久久婷婷 | 国产成人亚洲在线观看 | 久久免费99精品久久久久久 | 国产精品久久久久9999吃药 | 欧美日韩一区二区久久 | 日韩在线高清 | 久久久精品国产免费观看一区二区 | 免费看一级特黄a大片 | 国产精品久久久一区二区三区网站 | 久久久久草 | 色多多在线观看 | 欧美一级视频免费看 | 日韩r级电影在线观看 | 国产免费亚洲高清 | 91免费国产在线观看 | 国产亚洲片 | 欧美大片在线看免费观看 | 在线看福利av | 亚洲国产日韩av | 婷婷在线精品视频 | 精品欧美小视频在线观看 | 中文字幕永久在线 | 日本中文字幕视频 | 精品在线观看一区二区三区 | 天天干 夜夜操 | 精品视频国产一区 | 日韩精品无码一区二区三区 | 四虎国产免费 | 在线观看一级 | 欧美 日韩精品 | 久久久久这里只有精品 | a级片网站 | 亚洲观看黄色网 | 天天拍天天色 | 成人黄色小说视频 | 中文在线免费看视频 | 久久国产影视 | 一级一片免费看 | 午夜精品久久久久久久久久久久 | 亚洲欧美精品一区 | 亚洲精品天天 | 波多野结衣一区二区三区中文字幕 | 日日夜夜天天综合 | 日韩欧美一区二区三区在线观看 | 日韩av成人在线 | 狠狠色综合网站久久久久久久 | 99热在线精品观看 | 热re99久久精品国产66热 | 9999国产精品| 黄a网站 | 在线观看免费日韩 | 玖玖在线视频观看 | 成人高清在线观看 | 日韩在线高清视频 | www.色午夜.com| 1024手机基地在线观看 | 激情综合啪啪 | 色小说av | 99中文字幕| 国内精品在线观看视频 | 国产一区二区三区在线免费观看 | 国内一级片在线观看 | 懂色av一区二区三区蜜臀 | 欧美资源在线观看 | 亚洲精品在线视频 | 69人人| 男女视频久久久 | 99热99re6国产在线播放 | 亚洲每日更新 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 国产精品二区三区 | 丝袜av网站 | 国产午夜精品免费一区二区三区视频 | 久久精精品 | 依人成人综合网 | 国产成人精品一区二区三区 | 久久综合一本 | 国产精品九九九 | 三级av在线免费观看 | 国产精品一区二区av麻豆 | 国产精品久久久久久欧美 | 久久精品亚洲综合专区 | 久久理论电影 | 黄色国产大片 | 91精品国产91久久久久 | 九九天堂 | 久久精品屋 | 国产在线视频导航 | 日日日日干 | 久草在线免费电影 | 视频在线91| 久久亚洲精品电影 | 五月婷婷综 | 久久99视频免费 | 免费看搞黄视频网站 | 国内精品久久久久久 | 97视频在线免费观看 | 欧洲精品码一区二区三区免费看 | 天天色天天操综合网 | 日韩色视频在线观看 | 亚洲视频在线观看网站 | 在线 你懂 | 久久国产一二区 | 成人一级免费电影 | 91黄色小视频 | 色综合在 | av电影在线播放 | 天天天天色射综合 | 亚洲精品视频在 | 最近中文国产在线视频 | 麻豆 free xxxx movies hd| 久久国产精品久久w女人spa | 能在线观看的日韩av | 天天摸夜夜操 | 久久男人免费视频 | 国产精品久久久久久久久久久免费看 | 久久,天天综合 | 五月天天天操 | 日本久久久影视 | 在线观看成人小视频 | 精品一区二区在线免费观看 | 国产欧美综合在线观看 | 97超碰在线久草超碰在线观看 | 黄色网址av | 在线免费观看黄 | 亚洲天堂网在线观看视频 | 日韩欧美在线免费 | 精品一区免费 | 亚洲精品玖玖玖av在线看 | 99久久精品费精品 | 美女网站视频久久 | 久久99国产精品久久99 | 亚洲国产精品一区二区久久,亚洲午夜 | 国产精品1区2区在线观看 | 日韩精品视频免费看 | 日韩精品视频免费专区在线播放 | 色偷偷av男人天堂 | 一区二区三区韩国免费中文网站 | 精品国产区 | 亚洲好视频 | 亚州黄色一级 | 日日日操 | 午夜视频在线观看一区二区三区 | 欧美在线观看视频 | 国产小视频国产精品 | www.xxx.性狂虐 | 青青河边草免费观看完整版高清 | 久久精品国产亚洲aⅴ | 国产精品入口久久 | 久久视频一区二区 | 国产麻豆精品一区二区 | 国产日本在线观看 | 久久www免费视频 | 99精品欧美一区二区三区 | 亚洲精品视频免费在线观看 | 国产伦精品一区二区三区四区视频 | 日韩高清激情 | 免费观看丰满少妇做爰 | 亚洲在线| 久久综合免费视频影院 | 高清av影院 | 国产一区二区在线精品 | 91亚洲精品乱码久久久久久蜜桃 | 人人射人人| 欧美日韩亚洲在线观看 | 久久天天躁夜夜躁狠狠85麻豆 | 精品99在线观看 | 操老逼免费视频 | 天天插天天干天天操 | 亚洲精品www久久久 www国产精品com | 曰本免费av | 在线看中文字幕 | 女人18精品一区二区三区 | 人人玩人人添人人澡超碰 | 午夜av在线免费 | 久久综合久久鬼 | 天天天色 | www.com久久久| 日韩精品一区二区三区三炮视频 | 久草a视频| 免费三级黄色片 | 最新国产精品视频 | 久久久午夜精品福利内容 | 欧美一区在线观看视频 | 日日夜夜精品网站 | 色婷婷播放 | 一区二区三区在线免费观看 | 91九色视频国产 | 成人av在线直播 | www激情久久| 久久综合中文字幕 | 在线观看国产成人av片 | 999成人免费视频 | 九九久久久久99精品 | 五月婷婷开心 | 亚洲人精品午夜 | 在线免费观看国产黄色 | 国产精品久久一区二区三区不卡 | 久久成人麻豆午夜电影 | 亚洲国产午夜精品 | 久色免费视频 | 天天干天天做天天爱 | 久久久久久毛片精品免费不卡 | 久久久五月婷婷 | 9992tv成人免费看片 | 亚洲无人区小视频 | a级国产乱理论片在线观看 伊人宗合网 | 欧美激情综合五月色丁香小说 | 日韩h在线观看 | 国产色婷婷精品综合在线手机播放 | 成年人电影毛片 | 日韩精选在线观看 | 波多野结衣资源 | 欧美 亚洲 另类 激情 另类 | 91手机电视| 99久久一区 | 精品 激情| 久久96国产精品久久99漫画 | 久草青青在线观看 | 午夜成人免费电影 | 国产主播99 | 99久久夜色精品国产亚洲96 | 国产成人精品av在线 | 黄色三级久久 | www.天天射.com | 精品高清视频 | 毛片网站在线观看 | 午夜精品福利影院 | 久草爱 | 在线日韩视频 | 香蕉一区 | 毛片网站观看 | 日韩大片在线看 | 五月婷婷激情 | 99综合电影在线视频 | 在线免费观看欧美日韩 | 亚洲欧美综合精品久久成人 | 特级西西人体444是什么意思 | 黄色一级免费电影 | 精品国产视频一区 | 国产精品永久免费在线 | 亚洲日本欧美在线 | 日本精品视频网站 | 日本精品视频免费 | 九九综合久久 | 国产精品久久久久av | 97视频播放 | 天堂网一区二区三区 | 天天艹天天 | 久久综合久久八八 | 色综合激情网 | av永久网址 | 又爽又黄又无遮挡网站动态图 | 国产精品成人av在线 | 日狠狠| 在线视频精品播放 | 中文字幕首页 | 精品国产伦一区二区三区观看方式 | 日韩高清一区在线 | 国产第一页在线观看 | 久久久久久美女 | 欧美性极品xxxx娇小 | 日本久热| www日韩视频 | 少妇性aaaaaaaaa视频 | 一区二区三区电影在线播 | 四虎国产视频 | 9999国产精品 | 91av视频免费观看 | 亚洲成人资源网 | 日韩久久精品一区二区三区下载 | 天天玩天天操天天射 | 丁香婷婷色综合亚洲电影 | 日韩欧美一级二级 | 在线91播放 | 五月开心色 | 午夜精品一区二区三区在线 | 国产精品久久久久久久av电影 | 国产黄在线看 | 免费看三级 | 精品自拍av | 国产精品精品久久久 | 日韩在线视频观看 | 激情动态| 国产免费久久久久 | 91av视频导航 | 麻豆视频在线观看免费 | 国产999免费视频 | 91av官网| 精品黄色片 | 国产福利一区在线观看 | 天天色棕合合合合合合 | 久久免费观看少妇a级毛片 久久久久成人免费 | 日韩精品视频久久 | 在线免费观看国产精品 | 成人国产精品一区 | 超碰日韩 | 中文字幕二区三区 | www.777奇米| 麻豆一级视频 | 97在线观看免费视频 | 精品一区二区免费在线观看 | 国产精品欧美一区二区 | 天堂在线一区二区 | 五月开心激情 | 久久激情五月婷婷 | 欧美成人在线免费观看 | 日韩av在线影视 | 欧美福利在线播放 | 日本特黄一级 | 操操日| 激情五月婷婷综合网 | 91中文字幕在线播放 | 不卡av在线免费观看 | 国内精品美女在线观看 | 9ⅰ精品久久久久久久久中文字幕 | 六月丁香六月婷婷 | 久久躁日日躁aaaaxxxx | 国产亚洲精品久久久久久久久久久久 | 欧美黄污视频 | 91综合在线| 国产精品网红直播 | 午夜免费福利视频 | 高清精品视频 | 国产黄色精品视频 | 一区二区三区中文字幕在线观看 | 国产成人精品女人久久久 | 天天爽夜夜爽精品视频婷婷 | 色综合久久综合 | 麻花豆传媒mv在线观看网站 | 天天干天天爽 | 国产 日韩 欧美 中文 在线播放 | av 一区二区三区四区 | 在线91av | 黄在线免费观看 | 一区二区三区在线不卡 | 久久综合爱 | 九九视频在线播放 | 日韩av午夜| 91成人精品国产刺激国语对白 | 久久精品一区二区三区四区 | 天天干天天做天天爱 | 最近中文字幕国语免费av | 96亚洲精品久久久蜜桃 | 美女精品网站 | 天天摸天天干天天操天天射 | www.国产视频 | 96视频在线 | 免费麻豆 | 天天干夜夜爽 | 婷婷六月中文字幕 | 欧美一级片免费 | 色综合久久久久综合 | 久久婷婷精品视频 | 色欧美88888久久久久久影院 | 久久成人免费 | av高清一区二区三区 | 欧美一级黄色视屏 | 91精品久久久久久粉嫩 | 日韩一区二区三区免费电影 | 亚洲高清免费在线 | 日韩欧美91 | 中文字幕一区二区三区在线播放 | 国产成人一区二区啪在线观看 | www免费看| 国内精品在线观看视频 | 天天干天天干天天 | 日日碰夜夜爽 | 天天色婷婷 | 欧美一区三区四区 | 视频在线观看亚洲 | 免费又黄又爽 | 99国产精品久久久久老师 | 99久久婷婷国产综合亚洲 | 久久一区二区三区超碰国产精品 | 久久久久久久久久免费视频 | 成人欧美亚洲 | 久久草草热国产精品直播 | 国内精品久久久久久久久久久久 | 96av视频 | 久99久在线 | 国产精品久久久久久久久久直播 | 成人黄在线观看 | av网站大全免费 | 日日射av | 免费高清无人区完整版 | 91av视频在线免费观看 | 亚洲欧洲日韩在线观看 | 午夜精品一区二区国产 | 91福利区一区二区三区 | 国产在线视频导航 | 最新中文字幕 | 综合久久2023 | 中文字幕免费高清 | 日韩一区二区三区观看 | 9在线观看免费高清完整 | 久久97超碰| 国产成人精品亚洲a | 美女福利视频网 | 欧美日韩在线视频一区二区 | 国产一区二区三区免费观看视频 | 精品你懂的 | 麻花豆传媒mv在线观看 | 国产特级毛片 | 超碰97国产精品人人cao | 成人免费在线视频观看 | 69中文字幕| 成年一级片 | 波多野结衣日韩 | 最新中文字幕在线观看视频 | 91人人干| 国内精品久久久久久久久 | 成人在线观看av | 久久成人亚洲欧美电影 | 久久久99国产精品免费 | www视频免费在线观看 | 婷婷电影在线观看 | 黄色免费网 | 国产综合精品久久 | 九九久久久久99精品 | 久久精品久久99精品久久 | 中文字幕丰满人伦在线 | 免费影视大全推荐 | 黄色一及电影 | 国内精品久久久精品电影院 | 国产日韩一区在线 | 日韩免费三区 | 国产午夜麻豆影院在线观看 | 国产精品麻豆三级一区视频 | 狠狠操在线 | 久久99精品波多结衣一区 | 欧美日韩高清国产 | 插插插色综合 | 激情欧美在线观看 | 狠狠色伊人亚洲综合网站野外 | 国内精品久久久久影院日本资源 | 99久久婷婷国产精品综合 | 97av在线视频 | 日韩欧美在线中文字幕 | 99久久精品日本一区二区免费 | 天天爽夜夜爽精品视频婷婷 | 狠狠网站 | 97碰碰视频 | 色综合久久久久综合体 | 九色自拍视频 | 国产精品99久久久久久武松影视 | 91网站在线视频 | 午夜骚影 | 伊人久久电影网 | 丁香六月在线 | 99亚洲国产 | 高清av网站 | 午夜成人免费电影 | www.av中文字幕.com | 日韩一区二区在线免费观看 | 亚洲天堂网在线播放 | 成人在线视频在线观看 | 色国产在线 | 91在线精品观看 | 不卡中文字幕av | 亚洲专区欧美专区 | www色| 国产不卡在线播放 | 99久免费精品视频在线观看 | 亚洲国内精品在线 | 91成人在线看 | 国产在线视频不卡 | 日韩欧美精品在线观看视频 | 亚洲影音先锋 | 狠狠躁日日躁夜夜躁av | 欧美精品在线观看免费 | 新版资源中文在线观看 | 美州a亚洲一视本频v色道 | 九九精品视频在线看 | 日韩在线小视频 | 丝袜av网站| 色九九视频 | 色狠狠婷婷 | 欧美日韩久久一区 | 国产精品一区久久久久 | 97超碰资源 | 麻豆传媒一区二区 | 国产在线观看91 | 蜜桃视频在线观看一区 | 免费高清在线观看成人 | 亚洲va韩国va欧美va精四季 | 国产麻豆精品在线观看 | 国产精品嫩草在线 | 国产成人333kkk | 在线观看黄网 | 天天摸天天操天天舔 | 日韩免费高清 | 亚洲精品中文在线观看 | 亚洲欧美国产精品va在线观看 | 精品久久一区 | 最近中文字幕免费av | 亚洲高清在线观看视频 | 国产精品麻豆视频 | a天堂免费 | 91网页版免费观看 | 亚洲闷骚少妇在线观看网站 | 欧美日韩高清在线一区 | 91精品国产99久久久久久红楼 | 欧美日韩国产高清视频 | 亚洲另类交 | 中文字幕91| 欧美日韩高清一区二区三区 | 成人黄色电影在线 | 在线免费中文字幕 | 国产精品视频久久 | 欧美日韩国产一区二区在线观看 | 日韩色一区二区三区 | 日日躁夜夜躁aaaaxxxx | 91久久国产综合精品女同国语 | 亚洲草视频 | 国产中文字幕一区 | 色综合久久综合中文综合网 | 在线观看成人av | 伊人婷婷在线 | 久久看片 | 欧洲av在线| 这里只有精品视频在线 | 免费一级特黄毛大片 | www.久久久精品 | 黄色一级在线视频 | 久久激五月天综合精品 | 日韩av中文字幕在线 | 精品成人a区在线观看 | av在线h| 国产在线不卡视频 | 婷婷激情欧美 | 国产精品久久久久一区二区三区 | 91看片在线观看 | 婷婷国产在线 | 亚洲精品在线免费播放 | av综合在线观看 | 在线黄色国产电影 | 久久久久福利视频 | 99re在线视频观看 | 久久久精品一区二区三区 | 人人草人 | 国产97在线观看 | 黄网站a | 日韩国产欧美视频 | 精品在线观看免费 | 中文在线字幕免费观看 | 亚洲另类在线视频 | 99 国产精品 | 国产视频资源 | av看片网| 亚洲最大成人网4388xx | 久99久在线视频 | 久久电影网站中文字幕 | 国产日韩欧美在线影视 | 高清在线一区二区 | www国产亚洲精品久久麻豆 | 98福利在线| 日韩电影一区二区三区在线观看 | 激情中文字幕 | av天天澡天天爽天天av | www.色的| 久久夜色精品国产欧美乱 | 久久一区二区三区日韩 | 97在线观看免费观看高清 | 国产精品久久久久久久毛片 | 天天操夜夜拍 | 国产成人久久精品一区二区三区 | 超碰97.com | 美女网站在线免费观看 | 日韩欧美精品在线观看视频 | 久久午夜电影网 | 欧美有色 | 最新久久久 | 99视频精品全国免费 | 人人插人人插 | 久久久久久久久电影 | 懂色av一区二区三区蜜臀 | 蜜桃传媒一区二区 | 国产精品99久久久久 | 久草国产精品 | 天天曰天天曰 | 99热这里只有精品免费 | 亚洲综合最新在线 | 99精品国产免费久久久久久下载 | 四虎www com| 精品久久久久一区二区国产 | 国产精品剧情 | 美腿丝袜一区二区三区 | 欧美成人猛片 | 国产免费亚洲高清 | 久久久久国产精品一区 | 日韩视频一区二区在线观看 | 日韩精品一区在线播放 | 免费看片网址 | 久久久久成人精品免费播放动漫 | 久久艹影院 | 夜色成人av | 国产亚洲精品女人久久久久久 | 91精品免费| 日韩久久精品一区二区 | 天天操天天弄 | 久久久久日本精品一区二区三区 | 国产精品中文字幕在线观看 | 中文字幕观看在线 | 日韩理论在线播放 | 免费在线中文字幕 | 五月婷婷欧美视频 | 国产精品欧美久久久久天天影视 | 国产精品毛片一区 | 亚洲 欧洲 国产 日本 综合 | 丁香六月五月婷婷 | 国产 日韩 欧美 在线 | 久久久精品在线观看 | 狂野欧美激情性xxxx | 国产精品免费久久久久影院仙踪林 | 国产免费黄视频在线观看 | 国产高清视频在线 | 国产精品久久精品国产 | 欧美美女视频在线观看 | 五月天.com | 国产精品免费观看久久 | 欧美一二三在线 | 亚洲第一区精品 | 亚洲精品乱码久久久久久按摩 | 中文字幕日韩高清 | 国产精品igao视频网入口 | 午夜视频亚洲 | 亚洲欧美成aⅴ人在线观看 四虎在线观看 | 亚欧洲精品视频在线观看 | 不卡的av中文字幕 | 国产精品毛片一区二区在线 | 国产精品乱看 | 亚洲黄污 | 国产综合视频在线观看 | 综合久久久久久 | 一级欧美黄 | 黄色av免费在线 | 国产精品亚州 | 久亚洲 | 亚洲综合在线播放 | 国产精品porn | 最近免费中文字幕大全高清10 | 国产黄色免费看 | 国产日韩精品一区二区 | 狠狠操操 | 日本精品免费看 | 国产成人区 | 国产伦精品一区二区三区… | 一级理论片在线观看 | 中文字幕免费中文 | 国产精品精品久久久久久 | 免费a级毛片在线看 | 香蕉久久久久久av成人 | 日韩欧美高清不卡 | 啪嗒啪嗒免费观看完整版 | 亚洲精品tv久久久久久久久久 | 2021国产在线 | 99热精品国产 | 看片一区二区三区 | 中文字幕免费高清 | 中文不卡视频在线 | 少妇bbbb揉bbbb日本 | 国产一级电影免费观看 | 青青草在久久免费久久免费 | 久久天天躁狠狠躁亚洲综合公司 | 婷婷激情站 | 国产乱码精品一区二区三区介绍 | 久久综合狠狠综合久久激情 | 超碰在线天天 | 日韩视频专区 | 国产精品毛片一区二区三区 | 婷婷久月 | 成人久久亚洲 | 成人久久精品视频 | 欧美一级在线观看视频 | 日韩一级片观看 | 黄色三级网站在线观看 | 婷婷视频在线观看 | 在线国产日韩 | 日本久久片 | 色婷婷五 | 亚洲乱码久久久 | 狠狠地日 | 亚洲国产三级 | 国产一区免费在线 | 91最新在线 | 精品免费久久 | 亚洲精品视频免费观看 | 欧美日韩中文在线观看 | 国产一级一片免费播放放 | 国产一区二区精品久久91 | 在线精品视频免费播放 | 天天色天天干天天 | 日韩欧美精品一区二区 | 一区二区国产精品 | 99热高清| 麻豆mv在线观看 | 中文字幕在线资源 | 97在线观看免费高清 | 亚洲精品欧美精品 | 久久美女高清视频 | 亚洲第一色 | 麻豆国产露脸在线观看 | 亚洲不卡av一区二区三区 | 国产精品久久久久久999 | 视频一区久久 | a黄色大片 | 麻豆视频免费网站 | 国产亚洲精品久久久久久电影 | 高清一区二区 | 久久午夜国产 | 国产高清在线a视频大全 | 五月精品| 日本韩国精品一区二区在线观看 | 久久久久久久久久久久亚洲 | 叶爱av在线 | 久久精品99国产精品亚洲最刺激 | 911在线 | 国产一区二区三区免费观看视频 | 91看片麻豆 | 97精品一区 | 日韩免费观看视频 | 国产福利中文字幕 | 中文不卡视频 | 国产在线观看 | 中文字幕免费观看 | 欧美日韩破处 | 国产精品一区二区三区电影 | 日韩欧在线| 精品久久久久一区二区国产 | 一级黄色毛片 | 日韩色在线 | a电影在线观看 | 日韩视频一 | 日韩理论影院 | 黄色一级在线免费观看 | 国产一级视屏 | 亚洲电影久久 | 国产在线理论片 | 黄在线免费观看 | av大全免费在线观看 | 久久99精品一区二区三区三区 | 一区二区激情 | 亚洲深爱激情 | 人人看人人艹 | 亚洲国产网站 | 久久国产手机看片 | 岛国大片免费视频 | 国产 视频 久久 | 日本精品在线视频 | 亚洲国产美女久久久久 | 日韩欧美在线免费观看 | 国产精品伦一区二区三区视频 | 97人人模人人爽人人少妇 | 97免费中文视频在线观看 | 久久精品视频网站 | 国产高清久久 | av 一区二区三区 | sesese图片| 丁香婷婷社区 | 亚洲电影一区二区 | 久久久毛片 | 91麻豆精品国产91久久久久久 | 狠狠色丁香 | 国产精品免费久久 | 91欧美视频网站 | 国产男女免费完整视频 | 91精品一区二区在线观看 | 在线免费观看视频一区二区三区 | 国产精品视频免费 | 国色天香av| 成人av一区二区兰花在线播放 | 深夜男人影院 | 国产成年人av | 人人澡超碰碰97碰碰碰软件 | 碰超在线观看 | 欧美激情第八页 | 欧美色精品天天在线观看视频 | 久99久中文字幕在线 | 97国产大学生情侣白嫩酒店 | av一级在线观看 | 国产精品午夜av | 欧美va在线观看 | 国产黄色片网站 | 成年人在线观看 | 成人毛片在线观看 | 国产在线一线 | 亚洲视频每日更新 | 久久精品一区二区三 | 又湿又紧又大又爽a视频国产 | 亚洲成人av电影在线 | 五月婷在线播放 | 五月天亚洲激情 | av夜夜操| 亚洲专区欧美 | 久久精品99久久 | 国产1区2区3区精品美女 | 欧美久久久久久久久久 | 色综合天天综合网国产成人网 | 亚洲精品在线电影 | 色94色欧美 | 国产91对白在线播 | 成全在线视频免费观看 | 久久夜色网| 特黄特黄的视频 | 久久精品视频国产 | 91香蕉视频 | 丝袜一区在线 | 成人一区二区三区在线 | 欧美精品九九99久久 | 亚洲精品在线播放视频 | 免费在线观看一级片 | 超碰国产97| 草久在线 | 久久久官网 | 日本不卡久久 | 国产精品自产拍在线观看 | 久久伦理 | 97视频免费观看 | 操操操日日 | 懂色av一区二区在线播放 | 国产做爰视频 | 波多野结衣一区二区三区中文字幕 | 国产视频不卡一区 | 99re国产| 黄色一及电影 | 欧美肥妇free| 免费成视频 | 又爽又黄又无遮挡网站动态图 | 人人超碰在线 | 天堂av网在线 | 日日夜夜中文字幕 | 亚洲精品国偷拍自产在线观看蜜桃 | 久草在线免费色站 | 国产亚洲一区二区三区 | 日韩在线视频网 | 日韩久久网站 | 香蕉在线播放 | 国产精品毛片久久久久久久久久99999999 | 国产日韩精品在线观看 | 久久99精品久久久久蜜臀 | 在线a亚洲视频播放在线观看 | 亚洲欧美日韩一区二区三区在线观看 | 日韩av在线资源 | 免费亚洲视频在线观看 | 国产又粗又猛又黄又爽的视频 | 狠狠色狠狠色合久久伊人 | 天天操夜夜爱 | 亚洲国产精品推荐 | 久久免费播放 | www.久久爱.cn| 国产不卡av在线播放 |