色五月色开心色婷婷色丁香,五月婷婷丁香花综合网,婷婷丁香五月激情综合在线,五月婷婷六月丁香动漫,婷婷丁香五月激情综合在线,丁香花中文字幕在线观看,播五月色五月开心五月网,开心激情综合网,狠狠色丁香婷婷综合最新地址,丁香视频在线观看,狠狠做六月爱婷婷综合av,久久激情五月丁香伊人

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線(xiàn)實(shí)戰(zhàn)洞察。

情感詞典+傳統(tǒng)機(jī)器學(xué)習(xí):四套模型源碼解析與實(shí)戰(zhàn)

情感詞典+傳統(tǒng)機(jī)器學(xué)習(xí):四套模型源碼解析與實(shí)戰(zhàn) 簡(jiǎn)介基于情感詞典和多種機(jī)器學(xué)習(xí)模型的情感極性分析設(shè)計(jì)源碼面向自然語(yǔ)言處理研究者與初中級(jí)開(kāi)發(fā)者用于從文本中判別積極、消極或中性情緒可應(yīng)用于輿情監(jiān)控、評(píng)論分析等場(chǎng)景。資源包共28個(gè)文件主要由5個(gè)Python源文件、12個(gè)txt詞典/語(yǔ)料、4個(gè)Excel評(píng)估結(jié)果、2個(gè)png效果圖及dict、gitignore等組成整體大小17.01MB目錄結(jié)構(gòu)清晰便于按模塊研讀。目前已有365人學(xué)習(xí)。源碼實(shí)現(xiàn)k-NN、樸素貝葉斯、最大熵與SVM等經(jīng)典算法覆蓋情感詞典構(gòu)建、特征提取、模型訓(xùn)練及評(píng)估全流程并附有酒店、外賣(mài)、電影等多領(lǐng)域?qū)嶒?yàn)語(yǔ)料與運(yùn)行結(jié)果。通過(guò)學(xué)習(xí)可掌握文本預(yù)處理、分類(lèi)模型調(diào)參和結(jié)果可視化方法適合作為情感分析入門(mén)或課程設(shè)計(jì)的參考實(shí)現(xiàn)。1. 用詞典加傳統(tǒng)機(jī)器學(xué)習(xí)做情感極性分析這份 Python 源碼能直接跑通四套模型情感極性分析這些年被深度學(xué)習(xí)占了頭條但真正落到小規(guī)模數(shù)據(jù)集、可解釋性要求高的場(chǎng)景基于情感詞典加傳統(tǒng)機(jī)器學(xué)習(xí)模型依然是性?xún)r(jià)比最高的方案。這份源碼打包了 k-NN、樸素貝葉斯、最大熵、SVM 四套分類(lèi)器配好了中文酒店、中文外賣(mài)、英文電影三個(gè)領(lǐng)域的語(yǔ)料和情感詞典解壓之后改改路徑就能跑出評(píng)估結(jié)果。它解決的核心問(wèn)題是當(dāng)你想在自定義數(shù)據(jù)集上做正負(fù)情感分類(lèi)又不想從零寫(xiě)分詞、特征選擇、模型訓(xùn)練和評(píng)估這條鏈路時(shí)這份源碼把整條 pipeline 都補(bǔ)齊了。適合 NLP 入門(mén)者做課程設(shè)計(jì)、研究生做 baseline 對(duì)比也適合工程師快速驗(yàn)證一個(gè)文本分類(lèi)需求能不能用傳統(tǒng)方案滿(mǎn)足。2. 先看清資源結(jié)構(gòu)詞典、語(yǔ)料、特征文件各管哪一段拿到壓縮包先別急著跑代碼把文件按用途分組是節(jié)省時(shí)間的第一步。這份源碼的文件命名非常直白基本把訓(xùn)練集規(guī)模、特征數(shù)、模型類(lèi)型都寫(xiě)進(jìn)了文件名里比如Bayes-hotel-train-2200-test-800-f-5000就是貝葉斯模型跑酒店語(yǔ)料2200 條訓(xùn)練、800 條測(cè)試、5000 個(gè)特征。先搞清每個(gè)文件在 pipeline 里的位置后面調(diào)參才不至于抓瞎。2.1 詞典文件拆解八類(lèi)詞典如何協(xié)同完成極性判斷情感詞典是這套源碼的地基。f_dict目錄下共 8 個(gè) txt 詞典各司其職positive_dict.txt和negative_dict.txt存情感詞adverb_dict.txt存程度副詞denial_dict.txt存否定詞conjunction_dict.txt存轉(zhuǎn)折連詞phrase_dict.txt存短語(yǔ)級(jí)情感單元punctuation_dict.txt存情感標(biāo)點(diǎn)user.dict用于補(bǔ)充自定義詞。為什么需要這么多類(lèi)型因?yàn)閱渭兤ヅ淝楦性~會(huì)漏掉大量語(yǔ)義信息。以「酒店不算太差」這句話(huà)為例基礎(chǔ)情感詞匹配會(huì)命中「差」這個(gè)負(fù)向詞但如果只看這一個(gè)詞判斷就是負(fù)向。加入否定詞后「不」會(huì)翻轉(zhuǎn)情感方向再加入程度副詞「太」會(huì)調(diào)整情感強(qiáng)度。三層疊加之后這句話(huà)的情感值會(huì)從負(fù)向被拉回中性偏正真實(shí)語(yǔ)義才能被還原。短語(yǔ)詞典處理的則是「性?xún)r(jià)比很高」「服務(wù)態(tài)度好」這類(lèi)組合單元單字面拆分會(huì)丟失整體語(yǔ)義。# 情感得分計(jì)算的樸素實(shí)現(xiàn)展示詞典如何協(xié)同 import re def load_dict(path): words set() with open(path, r, encodingutf-8) as f: for line in f: word line.strip() if word: words.add(word) return words # 加載各詞典 pos_words load_dict(f_dict/positive_dict.txt) neg_words load_dict(f_dict/negative_dict.txt) adverb_words load_dict(f_dict/adverb_dict.txt) denial_words load_dict(f_dict/denial_dict.txt) # 程度副詞權(quán)重表實(shí)際項(xiàng)目中按詞典順序或詞頻統(tǒng)計(jì)賦值 adverb_weight {很: 1.5, 太: 1.8, 非常: 2.0, 有點(diǎn): 0.7, 稍微: 0.5} def sentence_polarity(tokens): score 0.0 i 0 while i len(tokens): word tokens[i] if word in pos_words: score 1.0 elif word in neg_words: score - 1.0 if word in denial_words: # 翻轉(zhuǎn)到下一情感詞為止實(shí)際項(xiàng)目中需限定窗口 for j in range(i 1, min(i 3, len(tokens))): if tokens[j] in pos_words: score - 1.5 # 否定正向 負(fù)向 elif tokens[j] in neg_words: score 1.5 if word in adverb_words: for j in range(i 1, min(i 2, len(tokens))): if tokens[j] in pos_words or tokens[j] in neg_words: base 1.0 if tokens[j] in pos_words else -1.0 score (adverb_weight.get(word, 1.2) - 1.0) * base i 1 return score這段代碼展示了詞典打分的基本循環(huán)邏輯。adverb_weight字典是手工設(shè)定的經(jīng)驗(yàn)值實(shí)際項(xiàng)目中可以用互信息或詞頻統(tǒng)計(jì)來(lái)量化每個(gè)副詞的強(qiáng)度系數(shù)。否定詞的翻轉(zhuǎn)窗口我限制在 3 個(gè)詞之內(nèi)這是處理口語(yǔ)文本時(shí)比較穩(wěn)妥的做法——「不是很滿(mǎn)意」和「不是特別滿(mǎn)意」的否定范圍都覆蓋到了但再遠(yuǎn)的詞就不該被「不」影響。最后得分大于 0 判為正向小于 0 判為負(fù)向等于 0 則交給后續(xù)的機(jī)器學(xué)習(xí)模型兜底。單純?cè)~典匹配的準(zhǔn)確率通常只有 70% 上下主要敗在未登錄詞和反諷句式上。但它的價(jià)值在于能生成高質(zhì)量的特征候選集——通過(guò)詞典初篩出的情感候選詞配合卡方檢驗(yàn)?zāi)艿玫奖葐渭冊(cè)~頻統(tǒng)計(jì)更精準(zhǔn)的特征維度。2.2 語(yǔ)料與中間文件酒店、外賣(mài)、電影三個(gè)領(lǐng)域的訓(xùn)練測(cè)試分布f_corpus目錄下放著 5 個(gè)語(yǔ)料文件ch_hotel_corpus.txt中文酒店、ch_waimai_corpus.txt和ch_waimai2_corpus.txt中文外賣(mài)、en_movie_corpus.txt和en_movie2_corpus.txt英文電影。三個(gè)領(lǐng)域覆蓋了兩種語(yǔ)言、三種文本風(fēng)格這是刻意為之的——酒店評(píng)論偏正式長(zhǎng)句外賣(mài)評(píng)論偏口語(yǔ)短句電影評(píng)論中英混雜且情緒表達(dá)更夸張。從 Excel 文件名可以還原出各數(shù)據(jù)集的劃分方案數(shù)據(jù)集訓(xùn)練集規(guī)模測(cè)試集規(guī)模特征數(shù)對(duì)應(yīng)模型酒店中文22008005000Bayes電影英文7003005000Bayes外賣(mài)中文300010005000SVMC150線(xiàn)性核訓(xùn)練測(cè)試比大約為 7:3 到 3:1這在文本分類(lèi)里屬于常見(jiàn)配置。700 條訓(xùn)練數(shù)據(jù)對(duì)機(jī)器學(xué)習(xí)模型來(lái)說(shuō)偏少但對(duì)樸素貝葉斯而言反而夠用——它假設(shè)特征獨(dú)立小樣本下不太容易過(guò)擬合。外賣(mài)數(shù)據(jù)集最大3000 條訓(xùn)練樣本配合 SVM 線(xiàn)性核實(shí)測(cè)效果通常優(yōu)于另外兩個(gè)領(lǐng)域因?yàn)橥赓u(mài)評(píng)論句式短、情感詞密集、噪聲少。chi1.png和chi2.png是卡方檢驗(yàn)特征選擇的可視化結(jié)果evaluation.PNG是各模型評(píng)估指標(biāo)對(duì)比圖maxent_iteration.PNG是最大熵模型的迭代收斂曲線(xiàn)。這幾張圖不是擺設(shè)后面評(píng)估模型效果時(shí)可以直接對(duì)照看。3. 特征提取與降維feature_extraction.py 怎么把文本變成特征矩陣文本分類(lèi)繞不開(kāi)的環(huán)節(jié)是把原始文本轉(zhuǎn)成模型能吃的數(shù)值特征。這份源碼的特征提取思路和主流做法一致中文分詞后用卡方檢驗(yàn)CHI做特征選擇選出最具有區(qū)分度的前 N 個(gè)特征詞最終輸出 LIBSVM 格式的特征向量。這種方案在 2016 年前后是教科書(shū)級(jí)的標(biāo)準(zhǔn)流程現(xiàn)在看依然不過(guò)時(shí)。3.1 卡方檢驗(yàn)選特征為什么選前 5000 個(gè)而不是全部卡方檢驗(yàn)的核心思想是衡量某個(gè)詞和某個(gè)類(lèi)別之間的相關(guān)性。如果一個(gè)詞在正向文檔中出現(xiàn)的頻率顯著高于在負(fù)向文檔中的頻率它對(duì)該分類(lèi)任務(wù)的信息量就大。計(jì)算每個(gè)候選詞的卡方值后按從大到小排序取前 5000 個(gè)詞組成特征詞表。5000 這個(gè)數(shù)字不是拍腦袋定的特征太多會(huì)引入噪聲降低泛化能力太少又會(huì)丟失有效區(qū)分信息對(duì)萬(wàn)級(jí)語(yǔ)料來(lái)說(shuō)3000 到 8000 之間通常能取得較好的平衡源碼選擇 5000 屬于穩(wěn)妥的中位數(shù)。# 卡方特征選擇的核心計(jì)算 import math from collections import Counter def chi_square(word, pos_docs, neg_docs, total_pos, total_neg): 計(jì)算某個(gè)詞的卡方值 word: 候選特征詞 pos_docs: 包含該詞的正向文檔集合 neg_docs: 包含該詞的負(fù)向文檔集合 total_pos: 正向文檔總數(shù) total_neg: 負(fù)向文檔總數(shù) a len(pos_docs) # 正向且包含該詞 b len(neg_docs) # 負(fù)向且包含該詞 c total_pos - a # 正向且不包含該詞 d total_neg - b # 負(fù)向且不包含該詞 n total_pos total_neg # 卡方公式注意分母為0時(shí)的保護(hù) denominator (a c) * (b d) * (a b) * (c d) if denominator 0: return 0.0 chi2 n * (a * d - b * c) ** 2 / denominator return chi2 def select_top_k_features(tokenized_docs, labels, k5000): 從分詞后的文檔中選出卡方值最高的k個(gè)詞 tokenized_docs: 嵌套列表 [[詞1, 詞2, ...], ...] labels: 對(duì)應(yīng)的情感標(biāo)簽列表1為正0為負(fù) k: 期望保留的特征數(shù) pos_docs [set(doc) for doc, label in zip(tokenized_docs, labels) if label 1] neg_docs [set(doc) for doc, label in zip(tokenized_docs, labels) if label 0] total_pos len(pos_docs) total_neg len(neg_docs) # 統(tǒng)計(jì)每個(gè)詞出現(xiàn)在哪些文檔中 word_doc_map {} for doc in pos_docs: for word in doc: word_doc_map.setdefault(word, [[], []])[0].append(id(doc)) for doc in neg_docs: for word in doc: word_doc_map.setdefault(word, [[], []])[1].append(id(doc)) word_chi2 {} for word, (pos_doc_ids, neg_doc_ids) in word_doc_map.items(): # 這里把文檔ID集合轉(zhuǎn)換為包含該詞的文檔數(shù) score chi_square(word, pos_doc_ids, neg_doc_ids, total_pos, total_neg) word_chi2[word] score # 按卡方值降序取前k個(gè) top_k sorted(word_chi2.items(), keylambda x: x[1], reverseTrue)[:k] return [word for word, _ in top_k]卡方計(jì)算的輸入數(shù)據(jù)結(jié)構(gòu)需要事先準(zhǔn)備好pos_docs和neg_docs是包含某個(gè)詞的所有文檔的集合不是詞頻計(jì)數(shù)。我給出的word_doc_map用文檔 ID 做標(biāo)識(shí)避免同一個(gè)文檔重復(fù)計(jì)數(shù)。k值可以直接替換成代碼里的f-5000參數(shù)如果你想測(cè)試不同特征數(shù)對(duì)模型效果的影響改這個(gè)值重跑即可。需要留意的是chi_square函數(shù)的四個(gè)變量a、b、c、d中c和d的值來(lái)自文檔總數(shù)減去包含該詞的文檔數(shù)需要確保文檔 ID 的集合運(yùn)算正確否則算出來(lái)的卡方值全部失真。特征選擇完成后每篇文檔就會(huì)被表示成一個(gè) 5000 維的向量維度上只有 0 和 1 兩種取值——1 表示該特征詞在這篇文檔中出現(xiàn)0 表示未出現(xiàn)。這種 one-hot 式表示法雖然有信息損失丟失了詞頻但在 SVM 和樸素貝葉斯這類(lèi)模型上二值特征往往比原始詞頻特征更抗噪聲也是 LIBSVM 最常用的輸入格式。3.2 從原始文本到特征向量分詞、去停用詞、向量化的完整鏈路特征提取的完整鏈路如下原始語(yǔ)料 → 分詞 → 去停用詞 → 卡方特征選擇 → 特征向量化 → 輸出到 Excel 或 LIBSVM 格式文件。中文部分依賴(lài)結(jié)巴分詞英文部分按空格切分即可。停用詞表直接復(fù)用punctuation_dict.txt再加進(jìn)去一批無(wú)實(shí)際情感含義的高頻詞比如「的」「了」「是」「在」。# 標(biāo)準(zhǔn)的中文文本清洗與向量化流程 import jieba import re def load_stopwords(pathf_dict/punctuation_dict.txt): stopwords set() with open(path, r, encodingutf-8) as f: for line in f: word line.strip() if word: stopwords.add(word) # 補(bǔ)充常見(jiàn)無(wú)意義高頻詞 extra_stops {的, 了, 是, 在, 就, 都, 也, 很, 還, 被} stopwords.update(extra_stops) return stopwords stopwords load_stopwords() def preprocess_text(raw_text): 原始文本清洗與分詞 返回: 去停用詞后的詞列表 # 去除URL、用戶(hù)、特殊符號(hào) text re.sub(rhttps?://\S|www\.\S, , raw_text) text re.sub(r\w, , text) # 去除所有非中英文、數(shù)字、常見(jiàn)標(biāo)點(diǎn)的字符 text re.sub(r[^\u4e00-\u9fa5a-zA-Z0-9\s。、], , text) # 結(jié)巴分詞 words jieba.lcut(text) # 去停用詞和單字 filtered [w for w in words if w.strip() and w not in stopwords and len(w) 1] return filtered def text_to_vector(tokens, feature_words): 把分詞結(jié)果轉(zhuǎn)成特征向量 tokens: preprocess_text 返回的詞列表 feature_words: select_top_k_features 選出的特征詞表 返回: 與 feature_words 等長(zhǎng)的0/1列表 token_set set(tokens) return [1 if word in token_set else 0 for word in feature_words]preprocess_text里的正則表達(dá)式[^\u4e00-\u9fa5a-zA-Z0-9\s。、]會(huì)把表情符號(hào)、emoji 全部剔除。這里有一個(gè)權(quán)衡新浪微博等社交媒體數(shù)據(jù)中 emoji 本身攜帶情感信息全部剔除會(huì)損失信號(hào)。但這份源碼針對(duì)的是酒店、外賣(mài)、電影評(píng)論這三類(lèi)文本中 emoji 占比很低剔除不會(huì)明顯影響效果。如果你想處理社交媒體評(píng)論可以考慮單獨(dú)把 emoji 映射成情感標(biāo)簽而不是直接刪掉。text_to_vector返回的是 0/1 向量長(zhǎng)度為特征詞表的大小。5000 個(gè)特征對(duì)應(yīng) 5000 維向量每條樣本占用的內(nèi)存大約幾十 KB3000 條訓(xùn)練樣本全部加載也不到幾百 MB內(nèi)存完全不是問(wèn)題。真正耗時(shí)的環(huán)節(jié)是卡方檢驗(yàn)時(shí)的詞-文檔映射構(gòu)建如果語(yǔ)料超過(guò) 5 萬(wàn)條建議用稀疏矩陣來(lái)存儲(chǔ)文檔-詞頻關(guān)系否則內(nèi)存消耗會(huì)指數(shù)級(jí)增長(zhǎng)。4. 四套分類(lèi)器實(shí)現(xiàn)classifiers.py 與 tools.py 的核心邏輯源碼里的classifiers.py封裝了 k-NN、樸素貝葉斯、最大熵、SVM 四個(gè)分類(lèi)器的實(shí)現(xiàn)tools.py負(fù)責(zé)數(shù)據(jù)處理和評(píng)估指標(biāo)計(jì)算。四套模型在同一條特征提取鏈路下運(yùn)行對(duì)比結(jié)果時(shí)才能公平反映模型本身的差異。每套模型都可以獨(dú)立運(yùn)行控制臺(tái)會(huì)輸出準(zhǔn)確率、召回率、F1 值等評(píng)估指標(biāo)。4.1 樸素貝葉斯與最大熵從概率視角看文本分類(lèi)樸素貝葉斯假設(shè)特征之間相互獨(dú)立計(jì)算每個(gè)類(lèi)別下特征向量的條件概率然后取后驗(yàn)概率最大的類(lèi)別作為預(yù)測(cè)結(jié)果。實(shí)際代碼中為了避免概率為 0 的極端情況會(huì)做拉普拉斯平滑。最大熵模型則放棄了獨(dú)立性假設(shè)通過(guò)約束條件逐步迭代調(diào)整特征權(quán)重在梯度下降或迭代縮放算法的驅(qū)動(dòng)下逼近最優(yōu)解。兩者在中小數(shù)據(jù)集上的準(zhǔn)確率通常很接近但最大熵的收斂速度和特征維度的關(guān)系更密切。# 樸素貝葉斯與最大熵分類(lèi)器的核心實(shí)現(xiàn) import math from collections import defaultdict class NaiveBayesClassifier: def __init__(self, alpha1.0): self.alpha alpha # 拉普拉斯平滑系數(shù) self.prior {} # 先驗(yàn)概率 P(c) self.cond_prob {} # 條件概率 P(w|c) self.classes [] def fit(self, X, y, feature_words): X: 0/1特征矩陣list of list y: 標(biāo)簽列表 feature_words: 特征詞表 self.classes list(set(y)) n_samples len(y) # 計(jì)算先驗(yàn)概率 class_counts defaultdict(int) for label in y: class_counts[label] 1 for c in self.classes: self.prior[c] class_counts[c] / n_samples # 計(jì)算條件概率 P(word|c) # 先統(tǒng)計(jì)每個(gè)類(lèi)別下每個(gè)詞出現(xiàn)的文檔數(shù) word_class_count defaultdict(lambda: defaultdict(int)) class_total_count defaultdict(int) for idx, label in enumerate(y): class_total_count[label] 1 for j, val in enumerate(X[idx]): if val 1: word_class_count[label][j] 1 # 應(yīng)用拉普拉斯平滑計(jì)算條件概率 vocab_size len(feature_words) for c in self.classes: self.cond_prob[c] {} total class_total_count[c] for j in range(vocab_size): count word_class_count[c][j] self.cond_prob[c][j] (count self.alpha) / (total self.alpha * vocab_size) def predict(self, X): predictions [] for x in X: best_c None best_score -float(inf) for c in self.classes: # 用對(duì)數(shù)概率避免下溢 log_prob math.log(self.prior[c]) for j, val in enumerate(x): if val 1: log_prob math.log(self.cond_prob[c][j]) if log_prob best_score: best_score log_prob best_c c predictions.append(best_c) return predictions拉普拉斯平滑系數(shù)alpha默認(rèn)取 1.0這是經(jīng)驗(yàn)值。alpha越大對(duì)未在訓(xùn)練集中出現(xiàn)的特征的懲罰越強(qiáng)。在實(shí)際項(xiàng)目中如果特征維度很高超過(guò) 1 萬(wàn)建議把a(bǔ)lpha下調(diào)到 0.5 左右否則大量未出現(xiàn)的特征會(huì)把真實(shí)信號(hào)淹沒(méi)。預(yù)測(cè)階段使用對(duì)數(shù)概率累加而不是概率連乘是因?yàn)?5000 個(gè) 0/1 特征的連乘結(jié)果會(huì)極小直接浮點(diǎn)運(yùn)算會(huì)下溢成 0對(duì)數(shù)變換是必做的一步。最大熵的實(shí)現(xiàn)在思路上完全不同它定義特征函數(shù)通常是「特征詞是否出現(xiàn)」的指示函數(shù)然后通過(guò)迭代縮放算法反復(fù)修正特征權(quán)重使得模型的經(jīng)驗(yàn)分布與真實(shí)分布接近。實(shí)際應(yīng)用中最大熵的訓(xùn)練時(shí)間通常是樸素貝葉斯的 5 到 10 倍配合maxent_iteration.PNG那張圖可以看到迭代到 100 輪左右時(shí)模型已經(jīng)收斂再多迭代只是浪費(fèi)時(shí)間。4.2 SVM 與 k-NN邊界劃分與距離度量的兩種哲學(xué)SVM 通過(guò)尋找最大間隔超平面來(lái)區(qū)分正負(fù)類(lèi)泛化能力強(qiáng)是文本分類(lèi)里的首選模型之一。SVM-waimai-train-3000-test-1000-f-5000-C-150-2016-06-02-23-46-11-lin.xls里的C-150表示懲罰系數(shù)取 150lin表示線(xiàn)性核。C 值控制對(duì)誤分類(lèi)樣本的容忍度C 越大對(duì)訓(xùn)練集擬合越充分但過(guò)大會(huì)導(dǎo)致過(guò)擬合C 越小模型越偏向簡(jiǎn)單的超平面。150 這個(gè)值偏高說(shuō)明作者更看重訓(xùn)練集上的準(zhǔn)確率。k-NN 則完全不同它不做任何訓(xùn)練直接拿測(cè)試樣本與全部訓(xùn)練樣本計(jì)算距離取距離最近的 K 個(gè)鄰居中占比最高的類(lèi)別作為預(yù)測(cè)結(jié)果。距離度量方式一般采用歐氏距離或余弦相似度對(duì)于 0/1 特征向量余弦相似度通常比歐氏距離更合理——因?yàn)樗皇芟蛄块L(zhǎng)度影響。# SVM與k-NN的調(diào)用封裝 from sklearn.svm import SVC from sklearn.neighbors import KNeighborsClassifier from sklearn.metrics import classification_report def train_svm(X_train, y_train, C150, kernellinear): 訓(xùn)練SVM分類(lèi)器 C: 懲罰系數(shù) kernel: 核函數(shù)文本分類(lèi)默認(rèn)線(xiàn)性核 clf SVC(CC, kernelkernel, probabilityFalse, tol0.001) clf.fit(X_train, y_train) return clf def train_knn(X_train, y_train, k5, metriccosine): 訓(xùn)練k-NN分類(lèi)器 k: 鄰居數(shù) metric: 距離度量方式 clf KNeighborsClassifier(n_neighborsk, metricmetric) clf.fit(X_train, y_train) return clf # 訓(xùn)練與評(píng)估示例 def run_evaluation(X_train, y_train, X_test, y_test, model_typesvm): if model_type svm: model train_svm(X_train, y_train, C150, kernellinear) elif model_type knn: model train_knn(X_train, y_train, k5, metriccosine) else: raise ValueError(Unsupported model type) y_pred model.predict(X_test) # 打印完整評(píng)估報(bào)告包含precision、recall、f1-score print(classification_report(y_test, y_pred, target_names[負(fù)向, 正向])) return y_predSVM 的tol0.001是收斂容差值越小訓(xùn)練越充分但耗時(shí)越長(zhǎng)。文本分類(lèi)中 5000 維特征、3000 條訓(xùn)練樣本的數(shù)據(jù)量線(xiàn)性 SVM 訓(xùn)練時(shí)間通常在秒級(jí)。k-NN 的 K 值調(diào)參有個(gè)常見(jiàn)誤區(qū)——K 越大模型越平滑但過(guò)大的 K 會(huì)把邊界樣本也拉入決策導(dǎo)致準(zhǔn)確率下降。從該源碼的場(chǎng)景看K 取 5 是不錯(cuò)的默認(rèn)值但通過(guò)交叉驗(yàn)證往往會(huì)發(fā)現(xiàn) K3 或 K11 在這個(gè)數(shù)據(jù)集上效果更好這個(gè)只能實(shí)測(cè)。傳統(tǒng)機(jī)器學(xué)習(xí)的真實(shí)優(yōu)勢(shì)在特征維度遠(yuǎn)小于樣本數(shù)量的場(chǎng)景下最能體現(xiàn)。5000 維特征對(duì)應(yīng) 3000 條訓(xùn)練樣本特征數(shù)大于樣本數(shù)此時(shí) SVM 的泛化能力依賴(lài)正則化C 值需要調(diào)小一些才能避免過(guò)擬合。作者選了 C150 可能在自己的測(cè)試集上有過(guò)驗(yàn)證你也可以在 50 到 200 之間做一輪網(wǎng)格搜索。5. 評(píng)估結(jié)果與避坑記錄evaluation.PNG 背后的數(shù)據(jù)怎么看evaluation.PNG是四套模型在三個(gè)數(shù)據(jù)集上的綜合評(píng)估對(duì)比圖maxent_iteration.PNG展示最大熵模型每輪迭代的準(zhǔn)確率變化。評(píng)估階段最容易出的問(wèn)題不在于模型代碼寫(xiě)沒(méi)寫(xiě)對(duì)而在于訓(xùn)練測(cè)試集劃分是否合理、評(píng)估指標(biāo)是否選對(duì)、特征生成過(guò)程是否泄漏了測(cè)試集信息。很多跑出來(lái)的結(jié)果虛高就是因?yàn)榇a里不經(jīng)意間把測(cè)試集的信息混進(jìn)了特征選擇環(huán)節(jié)。5.1 從文件名解析評(píng)估結(jié)果train/test 比例與特征數(shù)對(duì)準(zhǔn)確率的影響四個(gè) Excel 文件分別對(duì)應(yīng)不同模型在不同數(shù)據(jù)集上的跑分結(jié)果文件名已經(jīng)透露了關(guān)鍵信息Bayes-hotel-train-2200-test-800-f-5000樸素貝葉斯酒店語(yǔ)料2200 訓(xùn)練 / 800 測(cè)試特征數(shù) 5000Bayes-movie2-train-700-test-300-f-5000樸素貝葉斯電影語(yǔ)料700 訓(xùn)練 / 300 測(cè)試特征數(shù) 5000SVM-waimai-train-3000-test-1000-f-5000-C-150-linSVM 線(xiàn)性核外賣(mài)語(yǔ)料3000 訓(xùn)練 / 1000 測(cè)試特征數(shù) 5000C150一眼能看出的規(guī)律是訓(xùn)練數(shù)據(jù)越多的數(shù)據(jù)集模型準(zhǔn)確率普遍更高。外賣(mài)數(shù)據(jù)集的 SVM 結(jié)果通常能做到 85% 以上酒店數(shù)據(jù)的貝葉斯結(jié)果在 80% 上下電影數(shù)據(jù)只有 700 條訓(xùn)練樣本準(zhǔn)確率會(huì)掉到 75% 左右。這不是模型不行而是數(shù)據(jù)量不足的必然結(jié)果。特征數(shù)從幾百逐步提升到 5000 的過(guò)程中準(zhǔn)確率通常先快速上升后趨于平穩(wěn)。chi1.png和chi2.png兩張圖應(yīng)該展示了不同特征數(shù)下的準(zhǔn)確率變化曲線(xiàn)可以看到 2000 個(gè)特征以后曲線(xiàn)基本走平。這意味著在實(shí)際項(xiàng)目中如果你計(jì)算資源有限用 2000 到 3000 個(gè)特征可以在幾乎不損失準(zhǔn)確率的情況下大幅縮短訓(xùn)練時(shí)間。評(píng)估指標(biāo)上不能只盯準(zhǔn)確率。當(dāng)正負(fù)樣本比例失衡時(shí)比如外賣(mài)評(píng)論中負(fù)向樣本只占 20%準(zhǔn)確率 80% 可能只是因?yàn)槟P桶阉袠颖径寂谐闪苏?。正確的做法是同時(shí)觀察 precision、recall、F1-score這三個(gè)指標(biāo)在classification_report的輸出中都有。如果只關(guān)注準(zhǔn)確率而在樣本不均衡的數(shù)據(jù)集上做評(píng)估結(jié)果毫無(wú)參考價(jià)值。5.2 避坑清單詞典匹配翻車(chē)的五個(gè)高頻原因以下踩坑記錄來(lái)自實(shí)際運(yùn)行這類(lèi)源碼時(shí)最常見(jiàn)的報(bào)錯(cuò)和異常結(jié)果每一條都對(duì)應(yīng)具體的現(xiàn)象和修復(fù)方式。踩坑一中文語(yǔ)料用英文分詞器特征詞表全是空現(xiàn)象跑完特征提取feature_words為空列表后續(xù)所有模型訓(xùn)練直接報(bào)維度為 0。原因源碼里中英文語(yǔ)料共用了同一套預(yù)處理邏輯如果默認(rèn)用空格分詞中文文本會(huì)被當(dāng)成長(zhǎng)字符串整段保留卡方檢驗(yàn)后不可能選出合理特征。解決預(yù)處理入口處按語(yǔ)料語(yǔ)言分流中文走jieba.lcut英文走str.split()。一個(gè)可復(fù)用的判斷方式是統(tǒng)計(jì)文本中的字符類(lèi)別占比中文字符占比超過(guò) 30% 就按中文流程處理。def smart_tokenize(text): chinese_chars len(re.findall(r[\u4e00-\u9fa5], text)) total_chars len(text.strip()) chinese_ratio chinese_chars / max(total_chars, 1) if chinese_ratio 0.3: return jieba.lcut(text) else: return text.lower().split()踩坑二否定詞翻轉(zhuǎn)整句把「不是不好」判成負(fù)向現(xiàn)象包含「不是不好」「不得不點(diǎn)贊」的句子被模型判為負(fù)向人工復(fù)核明顯錯(cuò)誤。原因否定詞處理只做了簡(jiǎn)單的全局翻轉(zhuǎn)遇到雙重否定時(shí)邏輯徹底顛倒。not或「不」后面不管隔多遠(yuǎn)都把情感值翻轉(zhuǎn)一次變成了反向的疊加。解決否定詞翻轉(zhuǎn)限定窗口范圍一般取否定詞后 2 到 3 個(gè)詞同時(shí)遇到兩個(gè)否定詞時(shí)視為正向表達(dá)。源碼中denial_dict.txt的覆蓋范圍也要確認(rèn)是否包含「無(wú)」「莫」「非」等變體。踩坑三訓(xùn)練測(cè)試集劃分前做了歸一化測(cè)試集信息泄漏現(xiàn)象模型在測(cè)試集上的準(zhǔn)確率高達(dá) 95%但換一批新數(shù)據(jù)掉到 70%明顯不合常理。原因特征縮放或卡方特征選擇時(shí)用了全量數(shù)據(jù)的統(tǒng)計(jì)信息再把這套參數(shù)應(yīng)用到測(cè)試集上等于測(cè)試集的信息提前參與了訓(xùn)練。解決先劃分訓(xùn)練集和測(cè)試集特征選擇只基于訓(xùn)練集做??ǚ綑z驗(yàn)、TF-IDF 擬合、歸一化參數(shù)都只在訓(xùn)練集上計(jì)算測(cè)試集直接用訓(xùn)練集生成的參數(shù)做變換。這是數(shù)據(jù)泄漏的重災(zāi)區(qū)也是初學(xué)最容易忽略的點(diǎn)。踩坑四conjunction_dict.txt沒(méi)有參與邏輯判斷現(xiàn)象詞典文件齊全但「雖然環(huán)境好但是服務(wù)差」這類(lèi)轉(zhuǎn)折句被判為正向。原因轉(zhuǎn)折連詞的作用是改變句子的情感重心——「但是」之后的語(yǔ)義權(quán)重應(yīng)大于之前。如果代碼里只加載了轉(zhuǎn)折詞詞典卻沒(méi)有實(shí)現(xiàn)權(quán)重調(diào)整邏輯這些詞典形同虛設(shè)。解決在情感得分計(jì)算中遇到轉(zhuǎn)折詞后對(duì)前半句得分打折扣后半句權(quán)重加倍。折扣系數(shù)推薦 0.3 到 0.5具體值靠驗(yàn)證集調(diào)參。踩坑五Excel 結(jié)果文件打不開(kāi)或中文亂碼現(xiàn)象生成的.xls文件用 Excel 打開(kāi)后中文全部亂碼或者提示文件格式損壞。原因?qū)懭?Excel 時(shí)用了錯(cuò)誤的編碼或者xls與xlsx格式混用。老版本xlwt庫(kù)寫(xiě).xls時(shí)只支持有限字符集。解決寫(xiě)入時(shí)明確指定編碼為 UTF-8優(yōu)先輸出.xlsx格式。Python 側(cè)用openpyxl或pandas.to_excel()更穩(wěn)妥。這個(gè)坑不影響模型本身但會(huì)浪費(fèi)十幾分鐘排查時(shí)間。6. 進(jìn)階調(diào)參與驗(yàn)證從 Excel 結(jié)果反推四個(gè)模型的適用邊界源碼跑通只是第一步真正有價(jià)值的是搞清楚四套模型各自適合什么場(chǎng)景以及如何調(diào)整參數(shù)獲得更好的效果。你可以打開(kāi)evaluation.PNG對(duì)照各模型的準(zhǔn)確率和 F1 值結(jié)合下述原則選擇自己的主力模型。以這份源碼的數(shù)據(jù)分布來(lái)看樸素貝葉斯適合小樣本高維特征場(chǎng)景SVM 適合樣本量中等但特征區(qū)分度高的場(chǎng)景最大熵適合需要概率輸出的場(chǎng)景k-NN 則最依賴(lài)距離度量和 K 值選擇。特征數(shù)量的敏感性檢驗(yàn)是個(gè)值得做的實(shí)驗(yàn)把代碼中的f-5000依次改成f-1000、f-3000、f-8000分別跑一輪評(píng)估。你會(huì)看到 1000 個(gè)特征時(shí)準(zhǔn)確率明顯下降3000 到 5000 區(qū)間最穩(wěn)定8000 之后可能不升反降——噪聲特征開(kāi)始干擾模型。以代碼里的select_top_k_features函數(shù)為例把k參數(shù)暴露出來(lái)寫(xiě)個(gè)循環(huán)自動(dòng)做這個(gè)敏感性分析輸出一張「特征數(shù)-準(zhǔn)確率」對(duì)照表這比只跑一次默認(rèn)參數(shù)更能說(shuō)明問(wèn)題。K 值調(diào)優(yōu)是 k-NN 模型的必做項(xiàng)。代碼中的train_knn(X_train, y_train, k5, metriccosine)可以把k分別設(shè)成 3、5、7、11、15 跑一組對(duì)比配合交叉驗(yàn)證觀察曲線(xiàn)。通常 K 太小時(shí)噪聲干擾大太大時(shí)類(lèi)別邊界被模糊。余弦相似度在這個(gè)場(chǎng)景下通常優(yōu)于歐氏距離因?yàn)?0/1 特征向量的歐氏距離受向量稀疏程度影響明顯而余弦相似度只看方向。SVM 的 C 值調(diào)整策略也有套路先用默認(rèn)值比如 1.0跑通記錄準(zhǔn)確率再按對(duì)數(shù)刻度嘗試 C0.1、1、10、100、200找到準(zhǔn)確率峰值所在區(qū)間后在相鄰值之間做細(xì)粒度搜索。線(xiàn)性核在文本分類(lèi)中通常已經(jīng)足夠RBF 核雖然理論上可以擬合更復(fù)雜的邊界但參數(shù)搜索成本翻倍在小數(shù)據(jù)集上還容易過(guò)擬合。# 交叉驗(yàn)證選擇最優(yōu)C值 from sklearn.model_selection import cross_val_score import numpy as np def select_best_c(X, y, c_values): best_c None best_score 0.0 results {} for c in c_values: model SVC(Cc, kernellinear, tol0.001) scores cross_val_score(model, X, y, cv5, scoringaccuracy) mean_score np.mean(scores) results[c] mean_score print(fC{c:.1f}, 平均準(zhǔn)確率{mean_score:.4f}) if mean_score best_score: best_score mean_score best_c c return best_c, results # 候選C值按對(duì)數(shù)均勻分布 best_c, results select_best_c(X_train, y_train, [0.1, 0.5, 1.0, 5.0, 10.0, 50.0, 100.0, 200.0]) print(f最優(yōu)C值: {best_c})交叉驗(yàn)證的cv5表示把訓(xùn)練集切成 5 份輪流用 4 份訓(xùn)練 1 份驗(yàn)證。這比單次劃分訓(xùn)練測(cè)試集更可靠能減少劃分隨機(jī)性帶來(lái)的評(píng)估波動(dòng)。需要注意的是交叉驗(yàn)證只能在訓(xùn)練集上做最終評(píng)估還是要用獨(dú)立的測(cè)試集。跑完上述調(diào)參之后記住一個(gè)原則這種詞典加傳統(tǒng)機(jī)器學(xué)習(xí)的方案準(zhǔn)確率上限大約在 88% 左右想突破這個(gè)瓶頸需要引入詞向量或深度學(xué)習(xí)模型。但在樣本量小于 1 萬(wàn)、需要快速落地、要求結(jié)果可解釋的場(chǎng)景下這套方案依然是第一選擇。我自己做文本分類(lèi)項(xiàng)目時(shí)不管最終要不要上深度學(xué)習(xí)都會(huì)先跑一遍這份 pipeline 作為 baseline——用傳統(tǒng)方法拿到參考分?jǐn)?shù)再?zèng)Q定后續(xù)要不要加復(fù)雜度。從那以后我每次做情感分析類(lèi)項(xiàng)目都強(qiáng)制要求自己先復(fù)現(xiàn)這個(gè)流程確認(rèn)數(shù)據(jù)質(zhì)量沒(méi)問(wèn)題再談模型升級(jí)這個(gè)習(xí)慣幫我避開(kāi)過(guò)不少數(shù)據(jù)泄漏和特征工程的大坑。希望這份源碼的拆解筆記能幫你在情感分析這條路上少走一段彎路。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久久青青草在线视频| 91色射| 影音先锋每日最新资源在线观看 | 极品销魂美女一区二区| 秋霞网—男女啪啪亚洲免费体验区 | 亚洲色图欧美色图另类图片| 欧美毛片在线网| α√在线| 99热在线观看| 亚洲精品美女久久久久久久久| 屁股久久久久久久| 91视频精品| 青青草好吊色| jazzjazz国产精品麻豆| 17c嫩草51久久91嫩草| 天天亚洲| 日语五十路和六十路亚洲国产精品| 久久女女| 九九碰九九爱97超| 久久午夜色播影院免费高清| 久久久蜜桃臀无码视频| 亚洲人成网站7777| 另类TS人妖一区二区三区 | 欧美激情总合网| 亚洲nv男人的天堂网| 超碰人人乐97| 香港日本韩国人妇99www.wccm20| 久久6热精品99视频| 性性欧美| 色哟哟511老熟女| 亚洲蜜臀精品视频久久| 青青草一区二区高清无码视频| 91精品女厕偷拍视频| 又大又大又大又粗爽高潮观看| 色97干| 国产一区二区三区高清视频| 日韩美女啪啪一区| 日本免费中文一区二区三区四区 | 九九九九免费高| 久久综合久色欧美综合狠狠| 全国男人天堂网| yw尤物av无码点击进入麻豆| 国产精品激情久久久久久久| 五月婷婷综合网| 操b网站亚洲无码| 中文字幕一二三av| 国产精品 久久久精品一牛| 九色在线熟女国产黑人| 欧州色图区| 天天天天天超碰| 加勒比综合在线| av一区二区三区四区| 人妻99p| av大香蕉网站| 国产精品不卡少妇白| 18禁止看精品中文字幕| 婷婷五月天基地| 美日韩在线不卡人妻| 一起草视频在线| 99精品成人免费看| 99re在线精品78| www.91理论| 欧美国产欧美在线观看| 极品白嫩福利在线| 2017天天插| 99re公开精品免费视频| 60秒免费小视频| 2021国产成人精品久久| 91日本在线观看| 99日视频在线免费| 丰满高潮18xxxx| 麻豆天美制片厂网站视频| 天天肏视频| 婷婷五月激情综合| 亚洲欧美情色| 男人天堂.AB| 97超碰色| 91黑丝美女| 极品综合| 96精品一区| 欧美性爱1080p| 超碰综合色| 99精品视频在线观看免费| 极品久久久久久久久久久久久久| 欧美精品成人在线播放| 久久久内射良家| 免费啪啪一级视频| 综合色区偷拍| 亚91网| 大香蕉婷婷| 极品另类| 在线播放中文字幕| 欧美拳交在线播放| 国产av尤物| 亚洲 图片 综合91| 69精品久久久久中文字幕| 三级色影综合网| 久久精品高清无码一区| 久久999久| 99热免费| 狠狠色婷婷| 国产精品黄色三级av| 97在线视频网站| 啊啊啊啊好疼视频| 成人在线视频一区| 色婷婷久久综合超碰| 蜜桃成人1区2区3区| 日本视频在线观看污污污| 久久精品一区二区一8| 大香蕉一人| 日本顶级天天操狠狠操夜夜操中文字幕| 欧洲综合视频| 伊人97色天使| 久久久久久久久久黄色网| 97超碰69| 欧美综合制服在线| 久久成人网站| 超碰成人最新最好看| 亚洲乱码精品一区二区| 中文字幕精品一区二| 一二三区操逼国产91| 日韩欧美性爱电影在线观看| 永久免费av无码网站国产app| 99久久精品欧美国产| 中文字幕日韩专区精品系列| 国产精品麻豆视频网站| 久久久免费一级黄片| 亚洲女毛多水多21P| 欧美很很操视频| 思思热在线视频精品| 天天综合网~69| 97色冈| 女一区二区| 欧美中字二区| 97亚洲精品超碰| 国产1024在线播放| 中文字幕亚洲热播人妻| 99热日本| www.男人天堂| 久艹日日日| 中文字幕一区二区三区字幕| 韩国一级做A片免费的| 午夜天堂精品久久久久91| 蜜臀色乳| 亚洲高清视频在线免费观看| 久久人人看| 欧美熟女激情| 香蕉视频精品亚洲一区二区三区在线播| 深夜福利黄片| 欧美久久九九| 日日碰狠狠添天天爽超| 国产Aα| 国产免费一区二区三区最新不卡| 日韩一级二级三级免费看完整版国语版| 国产suv精品一区二六| 亚洲av成人精品一区| 欧美熟妇人体| 加勒比aⅴ| 91爆操视频| 日韩懂色网| 日本一二区不卡| 国产一级片| 碰超人人在线一区二区三区| 国产在线视频二区| 影音先锋一区二区在线资源| 成年人网站在线免费观看| 碰碰在线视频| 国产熟妇 码视频户外直播| 天天日B狠狠操| 熟女少妇视频| 999在线电影香蕉| 青青五月天| 东京热亚洲一区二区| 91n处女在线观看| 超碰人人超在线观看| 国产蜜臀在线| 激情五月天综合网| 亚洲中字幕日本一区二区三区| 婷婷丁香六月| www.yeyecao| 新视频sss国产| 国产女人极品高潮毛片| 97欧美资源| 夜夜嗨AV一区天天| 无码区蜜乳| 久久一本大香蕉| 亚洲天堂 视频你懂的| 97在线视频免费看| 四虎884a| 99久热| 激情小说图片亚洲首页| 蜜桃狠狠色伊人亚洲综合 | 亚洲国产熟妇综合色专区| 67914亚洲精品| 超碰在线人人射| 亚洲图片 激情小说| 久久久国产成人一区二区三区在线| 偷拍亚洲情色| 日日黄色三级网站| 伊人五月天| 日本免费一级AAA大片器| 骚鸭AV| 中国黑人三级片网站上区| 伊人女女资源在线观看| 无码直播久久久| 97色欧洲| 欧美天天在线| 97频视在线| 亚洲色诱惑| 久久av色| 青青草自拍视频在线播放| 久久亚洲AV无码专区国产精品| 亚洲欧美黄| 欧美 综合 亚洲| 天天综合~91入口| 欧美成人AⅤ大片在线观看| 亚洲综合97| 99在线精品观看视频中文| 日产中文字幕2020| 日韩一999精品| 神马久久久久眼| 色吧综合网| 久久美女福利是上海美女| 操逼天美3区| 欧美亚洲清纯| 加勒比AV网| 久久久久久久久久久97| 天无日色综合| 青青草原狼av| 日本天堂网| 有码免费观看| 视频在线观看一二三区| 日本三级中国三级99人妇网站| 操逼片国产| 精品亚洲黄色片 国产精品导航一区二区 | 黄色av播放免不| 综合天天。| 日日玩天天干| 亚洲日韩国产精品| 国产黄色在线播放观看| 国产区91柔拿会所技师| 99久久网站| 综合色图区| 日韩二三区| 日韩精品9区| 欧美亚洲色的图| 欧美在线天堂| 亚洲精品国产熟女| 亚洲另类在线观看| 中文字幕88av在线| 国产综合久| 精品人妻av区天天看片| 日韩 欧美 另类 人妻| 午夜理论片在线观看免费| 中日高清无码操逼视频| 91暧暧| 久久精品99久久久久久| 一起草在线视频| 国产操逼逼网| 日本东京热大香蕉a片| 草B在线| 黄色成人网久久久久久| 91丨九色丨43老版熟女| 久草精品一区| AV一起草在线| 少妇免费视频| 伦理第一页| 看一级特黄a大一片| 玖玖人人爱| 欧美激情 亚洲色图| 九九九九九九免费视频| 欧美国产有色电影| 日韩 国产 欧美自拍| 丁香激情网| 欧美亚洲色的图| 日本性爱欧美性爱| 久久鲁夜| 成人激情无码在线视频| 国产精品天干天干综合网麻豆| 国产精品久久泡妞网站| 另类专区在线观看| 女优大全 - 91n| 欧美色综合影院| 91激情国产| 免费看日本操逼视频| 日本黄色天堂| 91超碰人人操| 亚洲 欧美 色图| 丝袜大香蕉| 成人一二三区| 在线人妻熟女一区二区三区四区五区| 人妻三级在线中文字幕| 91最新综合| 久久久久亚洲av综合波多野制衣| 激情终合网| 国产高清无码一区三区二区| 天天性射网| 婷婷五月天网| 亚洲色图尤物视频| 校园春色美腿丝袜| 欧美成人精品一区二区三区| 成人精品一区二区91毛片不卡| 亚洲色图伊人网| 久久久九九网站| 亚洲不卡三级手机播放| 亚洲无限观看| 久久久不能久久久久| 欧美十八禁导航成人| 欧美亚州综合网图片| 丁香六月啪啪| 热久久国产| 91bbbbbb| 日韩精品国模| 人人澡综合涩| 1024亚洲中文字幕久在线看片你懂的 | 好涩综合| 日本黄色天堂| 玖玖综合色| 在线观看黄色电话| 伊人丁香五月婷婷| 亚洲另类春色| 蜜臀AV一区二区三区| 高跟伊人julia ann| 天天弄天天操| 亚洲AV无码成人精品久久| 蜜乳AV免费观看| 久久久久99精品成人片蜜臀| 97在线观看免费| 久久99手机免费视频| 99热综合| 人妻少妇视频在线播放| 超碰人妻中文在线| 色嘟嘟人妻天堂网| 九色97| 日本特黄f c2| 任我爽视频在线观看| 欧美成人四级在线播放| 国产嫩草精品A88AV| 国产女人成人精品视频| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 久久久久久97| 日本2020一区二区| 欧美 熟女 日韩| 欧美亚综合色图| 色玖玖| 青娱乐日韩无码| 色五天伊人| 天天看夜夜看日日干| 精品少妇高潮久久| 丰满熟妇大乳做爰| 午夜经典| 麻豆精品.欧美精品.日韩精品.| 中文字幕免费看| 亚洲文学偷乱拍啪啪啪啪| 亚洲性猛交| 高潮综合网| 欧美狠狠弄| 婷婷国产精品九区| 男人下部插入女人下部| 超硑97精品| 久久亚洲不卡一区二区三区 | 美女十八禁| 日韩成人性日韩成人性爱视频在线免费观看| 我爱搞逼综合网| 在线小视频| 99视频自拍区| 永久电影三级在线观看| 91久久免费视频互動交流| 国产JDAV无码视频在线观看| AAAAAAAAA黄片| wwwcaobibi| 丁香五月成人| 免费久久9999| 亚洲欧美国产精品久久久久久久| 亚洲情色欧美| 天天狠操| 亚洲玖玖爱| 丰满岳乱妇一区二区三区| 中文精品一区二去| 偷拍 亚洲 欧美| 美女淫穴| 爱媛媛久久国产福利| 伊人麻豆传媒| 色999偷自拍拍| 久久av成人无码免费| 天天天天操| 99精品无码| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 97碰碰色| 五月婷婷丁香六月| 天天草天天日| 欧美狠狠弄| 精品国产三级av韩国在线| 久久久爆乳翘臀一线天伦理视频| 色亚洲欧美| 国产操逼逼网| 午夜在线播放| 97精品视频免费| 国产精品亚洲免费| 国产精品日本无码A片| 亚洲综合射| 色欧洲| 久久精品久久九九精品| 97啪啪| 色天堂在线观看| 九九玖玖精品| 思思热在线cao| 亚洲综合婷婷| 亚洲 欧美 另类 日韩 人妻一区| 青青青草伊人精品| 玖草在线视频| 中文字幕高清20页视频| 欧美97se| 交换娇妻呻吟声不停中文字幕| 被体育老师抱着c到高潮| 97人人操人人干| 69久久久久久久久久久久久| 久草国产在线视频| 99热线麻豆| 亚洲日韩青青草色月| 亚欧韩av| 白天啪啪晚上啪啪视频| 粉嫩av在线| 在线观看午夜婷婷久久久久清性观看| 色九区| 久久综合亚洲色1080p| 91成人无码| 69丨亚洲丨精品丨入口免费播放| a男人的天堂| 国产67194| 天天色天天干天天爱| 久热这里只有精品9| 97视频900| 美女高潮视频91| 午夜九九九九九九| 三级三级三级a级全黄三| 国产性刺激| 久久男人的天堂| 青青伊人久久| 狠狠躁AV| 女优免费一区二区永久| 成人八戒网站| 日韩卡一卡二卡三在线| 网站A V在线| 色图四区| 97干在线视频| 97在线观| 亚欧成人一级片在线播放| 嗯嗯嗯啊啊在线观看| 欧美日韩亚洲电影| 97在线资源| 久操在97| 香蕉色网| 日曰骚久久精品| av2014 日韩在线中文字幕| 久久精品99| 99re在线视频国产| 日韩中文字幕宗合在线| 美女网站黄页| 日本人妻伦在线中文字幕| 老女人综合| 亚州综合色| 97超碰人妻| 成人国产视频在线观看| 国产福利视频精品视频| 污污汅18禁网站在线永久免费观看 | 欧美成人国产精品| 国产成人精品午夜福利| 97操B| 男人午夜天堂| 国产操伦| 色情成人五月天| 极品五月天噜噜| 亚洲精品一二三四区| 一区 欧美 日韩 麻豆| 亚州中文字幕超碰97| 九九九九免费视频| 91精品国产91熟女| 国产精品蜜臀久久久久无码AV| 一二三区精品视频| 啊啊啊操死我| 色播五月丁香| 女性91网站| 欧美性爱一区二区三区| 操老熟女AV| 精品美女久久一二三| 校园春色综合色| 日韩欧美成人大香蕉| 欧美1727免费观看视频| 一级AAA片一区二区三区| 防屏蔽在线视频| 人妻中文在线| 六月色婷婷| 大香蕉123| 国产精品麻豆成人AV艾秋| 久久婷婷六月综合| 啊啊啊啊嗯嗯嗯用力好爽 | 91在线国产后入风骚翘臀美女素人| 亚洲人91| 日韩毛片9| 老色鬼成人精品视频下载大在线观看| 亚欧美色图| 91亚洲黄色网| 超碰78| 97国产人人| 欧美Ⅴ性爱| 一级AV性爱| 日韩免费大片一级播放| 国产色呦呦| 午夜丁香| 色呦呦、国产精品| 秋霞一区二区三区四区五区六区七区| 麻豆成人av| 激情视频图片| 欧美色狠| 亚洲精品xxx| 欧美成人午夜免费福利785| 人妻22p| 国产乱码久久| 日本99一区二区| 九九九久| 家庭乱伦麻豆| 日韩在线观看字幕精品| 中文字幕 人妻不满 在线视频| 久久国色天香香蕉| 天天操人人操骚逼网站| 91成人精品| aaa亚无码专区| 亚洲系列第一页| 六月丁香啪啪| 色欲人妻一区二区在线| 欧美丰满少妇交换91欧美精品| 五月丁香综合激情| 亚洲码和欧洲精品激情系列| 死我十八禁| 人妻夜夜爽天天爽三区麻豆AV网站| 思思视频免费看网站| 一区二区娱乐网站| 美骚妇av高清在线| 日韩精品-原创伙伴| 国产在线强奸视频| 亚洲欧美大香蕉| 亚洲电影91| 天天澡天天爽日日AV| 亚洲1区2区三区高清中文字幕| 理论久久婷婷网 8| 久久宗合亚洲| 三级日韩一区二区三区| 九九AV| 婷婷九月国产| 为用户提供免费看黄网址在线观看| 黄片在线免费在线观看| 日本99一区二区| 97干在线| 狠狠色综合网| 色综合1991| 欧美偷拍区| 久操九九九九| 欧美综合色,www| 丝袜美腿制服人妻二区中文字幕 | 91快色色色色色| 蜜桃久久久久久久| AV中亚| 亚洲午夜AV| 内射黑丝袜| 一二三四视频中文字幕在线看| 九九九九九九九精品视频| 欧美日日人人天天| 亚洲 国产 精品一区| 麻豆性爱视频在线播放| 国产无码三级视频在线观看| 久久黄色网址| 国产精品自拍视频| 在线观看一卡二卡| 久久嫩草| 999在线电影香蕉| 熟妇人妻精品一区二区| 性一交一乱一交A片久久四色| 伊人在线大香蕉视频久久| 日韩性爱视频在线免费观看| 国产超碰在线一区| 岛国免费视频在线| 亚洲限制级| 日韩高清黄片| 亚洲区限制级| 亚乱色| 激情久久日韩精品中文字幕麻豆| 亚州AV无码国产精品| 九九九精品色乱九九九| 久久亚洲精品成人av| 97欧美色综合| 日本黄 R色 成 人网站| 国产精品丝袜在线| 亚洲AV小说| 人妻另类 专区 欧美 制服| 97操97色| 国产极品精品美女视频| 亚洲男人综合网| 免费中文在线| 啊啊啊水好多| 爆乳免费黄网站| 婷婷色色五月天福利| 欧美第38页| 中国少妇XXXX做受| 色一区二区三区综合| 伊人久久艹| 中文字幕三四五区| 99国产精品久久久久久久成人热| 亚洲欧洲精品视频发布| 天美av在线| 天美国产三级传媒| 欧美黑人精品在线播放| 少妇熟女视频一区二区三区| 涩涩五月天| 高清有码一区二区| 操少妞在线视频| 色优久久| 极品综合| 国产精品另类| 亚洲男人的天堂一区二区| 在线观看高清AV| 97国产精品在线观看| 国产精品一区二区三区在线密挑| 久久精品国产亚洲妲己影视| 97在线欧| 色一射色一射| 成人综合久久精品色婷婷| 国产乱子伦久久精品综合一区二区三| 日韩三级在线观看mp4| 国产一区二区在线电影| 亚洲伊人成综合成人网| 亚洲图片欧美另类综合免费视频大大香| 啊啊啊啊嗯嗯嗯用力好爽| 免费久久一级毛片大黄| 91日韩网站| 久草资源在线视频官方总站日韩丝袜美腿| HEYZO高无码国产精品227| 亚洲超碰97| 在线五区| 一区二区三区四区五区高清无码永久视频 | 亚洲av热热色| 天天干少妇| 日本视频一区二区三区| 天天日天天干天天操| 性色高清..……| 三上制服丝AV| 在线黄页看毛片| 东亚亚洲无码高清| 中文字幕人妻资源在线| 一本色道熟妇| 搡老女人老91妇女熟女| 1区2区3区视频| nuu12国产麻豆精品| 日本97久久久精品| 嗯嗯嗯啊啊啊在线免费观看| 日韩免费性爱视频在线观看| 亚洲 自拍偷拍 欧美| 国产高清自拍| 国产激情在线| 亚洲另类色综合网站| 97久久久精品| 91欧美偷拍| 天堂蜜桃无码视频一区二区| 久草五月| 女人被添高潮免费视频| 日韩欧美午夜视频在线| 奇米四色影视777久久久| 国产毛片毛片4p懂色| 精品人妻丰满熟妇一区二区三| 国产日韩中文字幕欧美| 男人的天堂在线| 亚洲AV不卡在线观看尤物| 自拍盗摄一区| 97干色天堂| 夜夜夜久久| 97色插| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 9久久久久久| 欧美小说区视频区| 日韩无码服务区| 97视频免费在线| 热热色国产一二区AV| 天美传媒av一区二区| 久久精品99久久久久久| 男人精品天堂一区| 视频在线中文字幕| 欧美小说区视频区| 欧美少妇高潮| 精品一区二区三区18| 大香蕉伊人75| 黑人猛交| 亚洲啪啪视频免费| 精品成人亚洲午夜电影| 国产欧美日韩一区二区三区| 欧美性爱1080p| 国产呦精品一区二区三区下载| 一级A片女人高潮叫床| 亚洲码专区| 丁香九月激情| 啊啊啊啊视频免费| 69人妻精品丰满熟女区| 福利天堂| 大色网久久| 啊啊啊啊啊啊在线| www熟女乱伦com| 色翁荡息又大又硬又粗又爽| 八人操人人摸人人看| 久草免费在线一区二区| 99色婷婷| 亚洲日韩av一区二区三区百合| 78p欧美| 97se综合| 综合欧美亚洲| 成人一道本免费视频| 无码高清专| 五月综合色| 久久綜合很很很| 男女香蕉一区二区| 亚洲久久久久| 国产人妖视频一区在线观看| 欧美成人性爱视频大全| 国内精品不卡无毒99999| 欧日韩在线观看| 日本二区不卡| 久久久精品91八戒| 另类小色呦| 91丝袜在线观看视频在线观看| 9长久久精品| 九九热re99re6在线精品| 97色97干| 亚欧高清在线| 日日天天久久啊啊aaa| 99re在线视频| 亚洲高清视频在线免费观看| 亚洲图片欧洲图片aⅴ| 国模限制级电影| 日韩 女同 综合| 乱欲视频| 97最新在线播放视频| 顶级少妇BT天堂| 91狠狠狠| 国产 日韩 欧美高清| 又大又白奶子| 无码人妻系列少妇| 五月天我淫我色av| 五月天激情小说| 丝袜亚洲91| 99精品国产户外露出| 岛国精品视频在线观看 | 国产精品自产拍在线观看社区| 尤物av网站| 三及片网站| 国产剧情AV不卡在线观看| 久久一二区四| 国产日韩怡红院| 人人爱人人操人人性| 最新亚洲风情电影| 中文字幕99999| 欧美精品日韩一区二区| 久噜噜| 国产一区二区成人av在线播放| 欧美色色色| 人干人人人操人人摸| 日韩AV一区二区三区三州三州| 综合亚州欧美| 热99这里只有精品| 亚洲精品黑丝| 国产精品自拍xxxx| 伊人操操| 人人操人人干xxx| 亚洲最大91网| 国产91 丝袜在线播放00-百度| 精品-91人妻子系列| 乱码人妻一区二区三区| 26uuu偷拍亚洲欧洲综合| 美女97超碰| 国产白丝精品在线观看| 日韩美一区| 超碰2017| 国产精品白虎| 日本一道在线播放高清| 色色色色色色色色色色色色色色综合| 久久精品国产亚洲粉嫩| 丁香五月激情啪啪| 98久久超碰| 长长久久曰曰夜夜成人网| 性欧美91| 一区二区日韩欧美久久| 美女网站91| 免费一级视频特黄色大片| 人乳av| 动漫爆乳3D奶水一区在线观看| 麻豆天美AV传媒第一页| 自拍鲍鱼一区在线高清观看免费| 91精品国| 天天日天天舔天天喷天天射| 男人的天堂va在线| 亚洲熟妇丝袜在线观看| 欧美福利视频啊啊啊啊| 伊人青青草久久| 精品高清一区二区三区三州| 夜色97| 精品国产精品一区二区| 熟妇熟女一区二区三区| 欧美一区二区情色| 国产精品探花色| 岛国999| 日本久久99| 蜜臀99久久精品久久久懂爱| 久久色一区| 国产成人手机视频激情| 91色射| 91国产精品熟女| 69少妇一区二区| 夜夜做夜夜爽精品视频| 久久久久免费少妇| 久久丁香久草综合网| 白丝少妇一区二区| 国产AV高清AV无码| 啊啊啊好多水| 色色综合97| 操操碰| 无码人妻精品一区二区三区99不卡| 丁香婷婷激情五月天无毒不卡 | 国产粉嫩蜜臀av一区二区三区| 青青青青草av在线观看| 国产精品探花视频| 亚洲图片欧美| 亚洲黄色网址| 天天舔天天| 日本狂喷奶水在线播放212| 久久后入制服| 天天日日本| 色婷五月| 天天操人人操狠狠插| 91欧美少妇| 综合久欧洲| 香蕉婷婷| 成人免费看吃奶视频网站| 久热精品在线| 国产精品色哟哟| 五月婷婷激情| 手机在线播放国产福利| 欧成人精品H无码| 麻豆传媒一区二区在线观看| 精品国产乱码久久久久久久久1| 日韩A优精品在线观看| 亚洲综合999| 激情久久日韩精品中文字幕麻豆| 亚州成人A√| 日韩精品中文字幕二区| 天天操夜夜操狠很操| 少妇久久久久久| 久久成人东京热人妻| a人欧美综合天堂麻豆| 三级三级三级日本99| 国产亚洲精品第一最新| 国产三级在线现体验区| juliaann欧美丝袜办公室| 无码操逼天堂| 九九热视频这里只有精品| 欧美日韩色图片| 一区在线观看中文字幕| 老熟妇一区二区三区…| 一中国女人毛片水真多| 97爱亚洲| 果冻传媒A片麻豆熟妇人妻| 欧美91丝袜| SS久久| 91暧暧| 欧美在线官网| 五月丁香影院| 99久久网站| 1769一区二区| 激情国产乱伦Av| 亚欧性爱无码| 国产欧美日本亚洲精品| 国产精品九九九| 91人妻熟女| 99热这里只有精品1| 色眯眯av| 无码人妻系列少妇| 国产一区二区三区,在线观看观看| 中文一区二区婷婷视频| 欧洲无码一区二区| 国内精品久久久久影院亚洲| 精品在线观看视频在线| 国产精品自在线发布| 欧美极品性爱天天射| 岛国免费黄色网址| 日韩综合无码色欲vv| 2019精品国产无码成人| 日韩簧片免费看| 九九热免费在线国产视频伊人五月| 亚洲午夜免费狠狠干| 日韩精品一二三四| 国产999精品久久久久久| 综合色图区| 日韩素人无码一区二区三区三州| 九九热精品| 吻戏激情性巴克| 999狠狠综合| 丰满少妇人妻久久久久久| 亚洲91色在线| 四虎884a| 亭亭在线资源| 夜夜黄| 久久 精品| 国产色图乱伦| 青娱乐欧美激情一区二区| 伊人久久在线视频观看| 凹凸视频在线观看伊人| 黄网色一区二区三区四区精品| 丁香五月天激情| 麻豆久久视频在线地址| 色天使大香蕉| 骚货 中文字幕 av| 国语精品av| 大学生美女口爆| 人人玩人人添人人澡免费| 欧美人妻久久精品二区三区| 亚洲精品日日夜夜52| 超碰免费在线| 色诱avtt| 日韩特一级久久| 欧美色图亚洲色| 黑人精品XXX一区一二区| 性开放中文AV高清无码免费看| 亚欧国产无码精品在线| 久久香蕉国产传媒一区剧情天美| 欧美一区二区传媒| 国产自啪精品视频网站黑丝| 啊v在线观看视频| 久热在线精品免费观看| 欧美v亚洲v日韩v最新在线二区| 涩涩五月天| 欧美伦乱爱| 综合色欧美| 高清无码在线播放网站| 女人爽到高潮潮喷18禁网站| 色噜噜人妻av 中文字幕| 亭亭在线资源| 精品人妻一区二区免费蜜桃视频| 久久东京伊人一本到鬼色| 柠檬AV导航| 啊啊啊不要啊啊受不了了视频在线| 久久久一二三四区| 欧美亚洲国产91在线| 日韩女模中文造逼| 怡春苑东京热| 人妻丝袜二区| 精品人妻一区二区视频| 看日韩美女二区三区免费操逼视频| 久久日本熟妇熟色高清| 综合欧美亚洲| 爆操无码| 97自拍一区| 精品78| 欧美日韩性爱视屏免费看了| 蜜桃在线观看一区二区三区| 9Ⅰ超碰| 日韩午夜精品一区二区三区电影| 夜夜操91744565| 91国产丝袜白虎| 操逼操逼视频操逼| 97精品国产97久久久久久户外免费| 激情婷婷丁香| 在线岛| 国产白嫩精品久久| BBBBB97COM| 日本性爱少妇| 91久久国产综合精品| 精品一区二区三区国产| 色婷婷影院| 青青草导航在线视频| 成人av影院在线观看| 中文字幕一区二区三区蜜臀| 狠狠入| 亚洲黄网在哪免费看| 欧洲小说色图视频另类| 精品一区二区三区国产| 超碰97起碰| 久久在肏| 日韩成人电影AV| 九色 蝌蚪 熟女自| 欧美日韩香蕉| 青青伊人加勒比海| 精品无码不卡视频| 自拍欧美| A级毛片在线看免费| 久久久精久久久| 美女91网站| 小少妇| 99re免费| 久久免费老司机精品| 狠狠超| 91欧美高清| 91综合网| 国产欧美美女免费观看视频| 亚洲天堂欧美| 97爱爱爱综合| 秋霞 色色| 亚洲少妇诱惑| 亚洲熟女乱色一区二区三区 | 插欧洲美女欧美精品| 久久熟女嫩草成人片免费| 天天干夜夜操网| 久久久久久99999国产精品| 国产小视频91| 免费视频观看60秒| 亚洲操操| 亚洲国产综合图区中文字幕| 日本91白丝| 丁香五六月啪啪| 四虎国产成人精品免费一女五男| 操操吧亚洲乱伦视频| 久草在| 精品国产www久久| 亚洲中文sv| 另类图片五月| 欧美人人曰人人操人人射射| 欧美精品三区| 曰韩av中文字幕专区| 日夜精品| 天色综合网| 日韩一性一交一A片俄罗斯| 国产精品高朝久久久久久久| 99热久| 免费成人自拍视频在线| 78久久久| 日韩在线观看字幕精品| 伊色久人大在线| 天天摸夜夜摸| 欧美一区二区三区另类精品| 亚洲国产福利视频| 亚洲综合97中文网| 国产无码高清操逼视频| 亚洲少妇激情一区二区三区| 久久99综合| 国产探花日韩援交| 欧美,亚洲,日韩,v,天堂,手机在线观看| 97人人草| 久热精品在线国产| 91美女视频。| 亚洲乱色视频一区、二区在线| 熟女精品va中文字幕| 人妻少妇精品视频一区二区三区| 亚洲色图欧美色图制服丝袜| 黑人无码一区二区| 日本熟妇一区二区三区| 国产日韩精品人妻久久久久色欲网站| 国产熟码AV| 亚洲不卡av在线| 国产成人在线观看综合| 美女天天干| 激情婷婷丁香网| 亚洲不卡不卡中文字幕不卡| 欧美顶级黄色大片免费| 中文字幕97| 午夜精品人妻二区三区| 日韩女优中文字幕| 91强热人妻| 日韩AV无码网站| 少妇精品| 国产精品久久久久久久免牛肉蒲团| 美日韩成人| 波多野结衣被操50分钟免费视频 | 亚州九九九精品视频| 国产原创精品| 国产一区二区三区影片| 中文字幕一区二区三区字幕| 成人小电影网站tex| 97资源站久久| 久久超碰97中文字幕| 国产精品交换一区二区| 免费啪啪一级视频| 日韩精品一区二区高清| 国产97在线视频| 超碰97综合网| 亚州男人的天堂| 影音综合网| 日韩草久视频| 五月色网| 黑人精品成人一区二区三区| 国产强奸乱伦xd| 精品国产乱码久久| 天天干夜夜鈤| 97国产精品在线观看| 少妇第一页| 天天碰操中国年青熟妇| 97操97色| 欧美1727免费观看视频| 99色天堂| 91超碰人人操| 国产激情在线| 黑人操一区二区| 亚洲自拍天堂| 国产精品日韩在线一区| 无码国产精品96久久久久孕妇| 欧美综合第一页| 九九九九精品视频| 97色操| 超碰色美女| 亚洲伊人青青草| 夜夜骑日日| 欧美性五月| 一区超碰一区| 久久久久96| 国产久9| 亚洲精品国产拍免费91在线| 久草毛片| 蜜臀网址在线| 国产91美女视频| 亚洲综合嫩| 99少妇内射| 葡萄牙性视频一二区| 青草成人免费视频一COm| 久久丝袜| 东京热大香蕉| 精品91日日夜夜超清资源| 蜜臀久久99精品久久久久| 999久久久| 人人爱人人乐人人操| 黄色免费一级在线毛片| 另类亚洲一区二区三区| 黑人美精品 A片| wwwxxx日本爽| 日韩A优精品在线观看| 久久久久国产精品片区无码直播| 在线人人人人人人精品超| 免费一级毛片在线视频观看| 九九aV| 亚洲天天艹| 91偷拍欧美亚洲| 天天澡天天爽日日av| 后入福利视频| 国产精品丝袜在线| 亚洲性网| 久久黄色性爱视频| 国产午夜无码片在线观看影视 | 无码国产Av| 欧亚在线视频| 人妻天天夜夜爽一区二区| 99999精品成人| 色亚州人久干视频在线观看免费版| 在线播放中文字幕| 超碰97中文| 福利社区午夜一区二区| 成人性爱电影一区二区| 国产日本熟女顶级一区二区三区视频 | 欧美黄片欧美黄片xxx| 久久九九99| 97超碰色屌| WWW美腿丝袜香蕉中文| 色九久| 少妇人妻好深太紧了vr91| 2018色综合天天操| 日本裸体久久色噜噜| 青青草中日韩在线| 中文字幕后石码三区四区|