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

歡迎訪問(wèn) 生活随笔!

生活随笔

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

编程问答

【实用算法教学】——Apriori算法,教你使用亲和性分析方法推荐电影

發(fā)布時(shí)間:2024/1/8 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【实用算法教学】——Apriori算法,教你使用亲和性分析方法推荐电影 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
本文學(xué)習(xí)如何用親和性分析方法找出在什么情況下兩個(gè)對(duì)象經(jīng)常一起出現(xiàn)。通俗來(lái)講,這也 叫“購(gòu)物籃分析”,因?yàn)樵腥擞盟页瞿男┥唐方?jīng)常一起出售。 前一篇文章關(guān)注的對(duì)象為球隊(duì),并用特征描述球隊(duì)。本文所用到的電影評(píng)分?jǐn)?shù)據(jù)有所不同,我們 所關(guān)注的對(duì)象(電影)埋在數(shù)據(jù)中。本章數(shù)據(jù)挖掘任務(wù)的目標(biāo)是找出對(duì)象同時(shí)出現(xiàn)的情況,也就 是尋找用戶同時(shí)喜歡幾部電影的情況。 本文主要涉及以下幾個(gè)概念。 ? 親和性分析 ? Apriori 算法挖掘關(guān)聯(lián)特征 ? 電影推薦 ? 數(shù)據(jù)稀疏問(wèn)題


一 親和性分析

親和性分析用來(lái)找出兩個(gè)對(duì)象共同出現(xiàn)的情況。而前文,我們關(guān)注的是同種對(duì)象之間的相似度。親和性分析所用的數(shù)據(jù)通常為類似于交易信息的數(shù)據(jù)。從直觀上來(lái)看,這些數(shù)據(jù)就像是商店的交易數(shù)據(jù)—— 從中能看出哪些商品是顧客一起購(gòu)買的。 然而,親和性分析方法的應(yīng)用場(chǎng)景有很多,比如: ? 欺詐檢測(cè) ? 顧客區(qū)分 ? 軟件優(yōu)化 ? 產(chǎn)品推薦 親和性分析比分類更具探索性,因?yàn)橥ǔN覀儫o(wú)法拿到像在很多分類任務(wù)中所用的那樣完整 的數(shù)據(jù)集。例如,在電影推薦任務(wù)中,我們拿到的是不同用戶對(duì)不同電影的評(píng)價(jià)。但是,每個(gè)用 戶不可能評(píng)價(jià)過(guò)所有電影,這就給親和性分析帶來(lái)一個(gè)不容忽視的大難題。如果用戶沒(méi)有評(píng)價(jià)過(guò) 一部電影,是因?yàn)樗麄儾幌矚g這部電影(據(jù)此就不推薦給他們),還是因?yàn)樗麄兂鲇趧e的原因還 沒(méi)有評(píng)價(jià)? 本文不對(duì)上述問(wèn)題做出解答,但是我們要思考數(shù)據(jù)集中類似這樣的潛在問(wèn)題該怎么解決。這 些思考有助于提升推薦算法的準(zhǔn)確性。

二 親和性分析算法

基礎(chǔ)的親和性分析算法,嘗試了所有可能的規(guī)則組合,計(jì)算了每條規(guī)則的置信度和支持度,并根據(jù)這兩個(gè)標(biāo)準(zhǔn)進(jìn)行排序,選取最佳規(guī)則。 然而,這個(gè)方法效率不高。即使是再不起眼的小賣鋪出售的商品也達(dá)上百種之多,網(wǎng)店更是有成千上萬(wàn)種 商品(甚至幾百萬(wàn)種!)。如果規(guī)則生成方法 過(guò)于簡(jiǎn)單,計(jì)算這些規(guī)則所需要的時(shí)間復(fù)雜度將呈指數(shù)級(jí)增長(zhǎng)。隨著商品數(shù)量的增加,計(jì)算所有規(guī)則所需的時(shí)間增長(zhǎng)得很快。 。數(shù)據(jù)集有 5 個(gè)特征,可能的規(guī)則就有 31 條;有 10 個(gè)特征,可能的規(guī)則就有1023 條;僅僅有 100 個(gè)特征,規(guī)則數(shù)就能達(dá)到 30 位數(shù)字。即使計(jì)算能力大幅提升也未必能趕上在線商品的增長(zhǎng)速度。因此,與其跟計(jì)算機(jī)過(guò)不去,不如尋找更加聰明的算法。 Apriori 算法可以說(shuō)是經(jīng)典的親和性分析算法。它只從數(shù)據(jù)集中頻繁出現(xiàn)的商品中選取共同出現(xiàn)的商品組成頻繁項(xiàng)集 frequent itemset ),避免了上述復(fù)雜度呈指數(shù)級(jí)增長(zhǎng)的問(wèn)題。一旦找到頻繁項(xiàng)集,生成關(guān)聯(lián)規(guī)則就很容易了。 Apriori 算法背后的原理簡(jiǎn)潔卻不失巧妙。首先,確保了規(guī)則在數(shù)據(jù)集中有足夠的 支持度 。 Apriori算法的一個(gè)重要參數(shù)就是最小支持度。比如,要生成包含商品 A B 的頻繁項(xiàng)集( A, B ),要求支持度至少為30 ,那么 A B 都必須至少在數(shù)據(jù)集中出現(xiàn) 30 次。更大的頻繁項(xiàng)集也要遵守該項(xiàng)約定,比如要生成頻繁項(xiàng)集(A, B, C, D ),那么子集 (A, B, C) 必須是頻繁項(xiàng)集(當(dāng)然 D 自己也 要滿足最小支持度標(biāo)準(zhǔn))。 生成 頻繁項(xiàng)集 后,將不再考慮其他可能的卻不夠頻繁的項(xiàng)集(這樣的集合有很多),從而大 大減少測(cè)試新規(guī)則所需的時(shí)間。 其他親和性分析算法有 Eclat 頻繁項(xiàng)集挖掘算法 FP-growth )。從數(shù)據(jù)挖掘角度看,這些 算法比起基礎(chǔ)的 Apriori 算法有很多改進(jìn),性能也有進(jìn)一步提升。接下來(lái),先來(lái)看一下最基礎(chǔ)的 Apriori 算法。

三 選擇參數(shù)

挖掘親和性分析所用的關(guān)聯(lián)規(guī)則之前,我們先用Apriori算法生成頻繁項(xiàng)集。接著,通過(guò)檢測(cè)頻繁項(xiàng)集中前提和結(jié)論的組合,生成關(guān)聯(lián)規(guī)則(例如,如果用戶喜歡電影X,那么他很可能喜歡電影Y)。

第一個(gè)階段,需要為 Apriori 算法指定一個(gè)項(xiàng)集要成為頻繁項(xiàng)集所需的最小支持度。任何小于最小支持度的項(xiàng)集將不再考慮。如果最小支持度值過(guò)小,Apriori 算法要檢測(cè)大量的項(xiàng)集,會(huì)拖慢的運(yùn)行速度;最小支持度值過(guò)大的話,則只有很少的頻繁項(xiàng)集。 找出頻繁項(xiàng)集后,在第二個(gè)階段,根據(jù)置信度選取關(guān)聯(lián)規(guī)則。可以設(shè)定最小置信度,返回一 部分規(guī)則,或者返回所有規(guī)則,讓用戶自己選。 本文,我們?cè)O(shè)定最小置信度,只返回高于它的規(guī)則。置信度過(guò)低將會(huì)導(dǎo)致規(guī)則支持度高,正確率低;置信度過(guò)高,導(dǎo)致正確率高,但是返回的規(guī)則少。

四 電影推薦問(wèn)題

產(chǎn)品推薦技術(shù)是門大生意。網(wǎng)店經(jīng)常用它向潛在用戶推薦他們可能購(gòu)買的產(chǎn)品。好的推薦算法能帶來(lái)更高的銷售業(yè)績(jī)。每年有幾百萬(wàn)乃至幾千萬(wàn)用戶進(jìn)行網(wǎng)購(gòu),向他們推薦更多的商品,潛在收益著實(shí)可觀。 產(chǎn)品推薦問(wèn)題被人們研究了多年,但它一直不溫不火,直到 2007 年到 2009 年間, Netflix 公司推出數(shù)據(jù)建模大賽,并設(shè)立Netflix Prize 獎(jiǎng)項(xiàng)之后,才得到迅猛發(fā)展。該競(jìng)賽意在尋找比 Netflix公司所使用的預(yù)測(cè)用戶為電影打分的系統(tǒng)更準(zhǔn)確的解決方案。最后獲獎(jiǎng)隊(duì)伍以比現(xiàn)有系統(tǒng)高10個(gè)百分點(diǎn)的優(yōu)勢(shì)勝出。雖然這個(gè)改進(jìn)看起來(lái)不是很大,但是Netflix 公司卻能借助它實(shí)現(xiàn)更精準(zhǔn)的電影推薦服務(wù),從而多賺上百萬(wàn)美元。

六 獲取數(shù)據(jù)集

自打 Netflix Prize 獎(jiǎng)項(xiàng)設(shè)立以來(lái),美國(guó)明尼蘇達(dá)大學(xué)的 Grouplens 研究團(tuán)隊(duì)公開了一系列用于 測(cè)試推薦算法的數(shù)據(jù)集。其中,就包括幾個(gè)大小不同的電影評(píng)分?jǐn)?shù)據(jù)集,分別有 10 萬(wàn)、 100 萬(wàn)和 1000 萬(wàn)條電影評(píng)分?jǐn)?shù)據(jù)。 數(shù)據(jù)集下載地址為 http://grouplens.org/datasets/movielens/ 。本文將使用包含 100 萬(wàn)條數(shù)據(jù)的 MovieLens 數(shù)據(jù)集。下載數(shù)據(jù)集,解壓到你的 Data 文件夾。啟動(dòng) IPython Notebook 筆記本,輸入以 下代碼。 import os import pandas as pd data_folder = os.path.join(os.path.expanduser("~"), "Data", "ml-100k") ratings_filename = os.path.join(data_folder, "u.data") 確保 ratings_filename 指向解壓后得到的文件夾中的 u.data 文件。

七 用?pandas 加載數(shù)據(jù)

MovieLens數(shù)據(jù)集非常規(guī)整,但是有幾點(diǎn)跟pandas.read_csv方法的默認(rèn)設(shè)置有出入,所以要調(diào)整參數(shù)設(shè)置。第一個(gè)問(wèn)題是數(shù)據(jù)集每行的幾個(gè)數(shù)據(jù)之間用制表符而不是逗號(hào)分隔。其次,沒(méi)有表頭,這表示數(shù)據(jù)集的第一行就是數(shù)據(jù)部分,我們需要手動(dòng)為各列添加名稱。

加載數(shù)據(jù)集時(shí),把分隔符設(shè)置為制表符,告訴 pandas 不要把第一行作為表頭( header=None ), 設(shè)置好各列的名稱。代碼如下: all_ratings = pd.read_csv(ratings_filename, delimiter="\t", header=None, names = ["UserID", "MovieID", "Rating", "Datetime"]) 雖然本文用不到,還是稍微提一下,你可以用下面的代碼解析時(shí)間戳數(shù)據(jù)。 all_ratings["Datetime"] = pd.to_datetime(all_ratings['Datetime'], unit='s') 運(yùn)行下面的代碼,看一下前五條記錄。 all_ratings[:5] 輸出結(jié)果如下

?八?稀疏數(shù)據(jù)格式

這是一個(gè)稀疏數(shù)據(jù)集,我們可以將每一行想象成巨大特征矩陣的一個(gè)格子,在這個(gè)矩陣中,每一行表示一個(gè)用戶,每一列為一部電影。第一列為每一個(gè)用戶給第一部電影打的分?jǐn)?shù),第二列為每一個(gè)用戶給第二部電影打的分?jǐn)?shù),以此類推。

數(shù)據(jù)集中有 1000 名用戶和 1700 部電影,這就意味著整個(gè)矩陣很大。將矩陣讀到內(nèi)存中及在它 基礎(chǔ)上進(jìn)行計(jì)算可能存在難度。然而,這個(gè)矩陣的很多格子都是空的,也就是對(duì)大部分用戶來(lái)說(shuō), 他們只給少數(shù)幾部電影打過(guò)分。比如用戶 #213 沒(méi)有為電影 #675 打過(guò)分,大部分用戶沒(méi)有為大部分 電影打過(guò)分。 用上述圖表中的格式也能表示矩陣,且更為緊湊。序號(hào)為 0 的那一行表示,用戶 #196 1997 12 4 日為電影 #242 打了 3 分(滿分是 5 分)。 任何沒(méi)有出現(xiàn)在數(shù)據(jù)集中的用戶和電影組合表示它們實(shí)際上是不存在的。這比起在內(nèi)存中保 存大量的 0 ,節(jié)省了很多空間。這種格式叫作 稀疏矩陣 sparse matrix )。根據(jù)經(jīng)驗(yàn)來(lái)說(shuō),如果數(shù) 據(jù)集中 60% 或以上的數(shù)據(jù)為 0 ,就應(yīng)該考慮使用稀疏矩陣,從而節(jié)省不少空間。 在對(duì)稀疏矩陣進(jìn)行計(jì)算時(shí),我們關(guān)注的通常不是那些不存在的數(shù)據(jù),不會(huì)去比較眾多的 0 值, 相反我們關(guān)注的是現(xiàn)有數(shù)據(jù),并對(duì)它們進(jìn)行比較。


九 Apriori 算法的實(shí)現(xiàn)

本章數(shù)據(jù)挖掘的目標(biāo)是生成如下形式的規(guī)則: 如果用戶喜歡某些電影,那么他們也會(huì)喜歡這 部電影 。作為對(duì)上述規(guī)則的擴(kuò)展,我們還將討論喜歡某幾部電影的用戶,是否喜歡另一部電影。 要解決以上問(wèn)題,首先要確定用戶是不是喜歡某一部電影。為此創(chuàng)建新特征 Favorable ,若 用戶喜歡該電影,值為 True all_ratings["Favorable"] = all_ratings["Rating"] > 3 我們?cè)跀?shù)據(jù)集中看一下這個(gè)新特征。 all_ratings[10:15]

?從數(shù)據(jù)集中選取一部分?jǐn)?shù)據(jù)用作訓(xùn)練集,這能有效減少搜索空間,提升Apriori算法的速度。 我們?nèi)∏?00名用戶的打分?jǐn)?shù)據(jù)。

ratings = all_ratings[all_ratings['UserID'].isin(range(200))] 接下來(lái),新建一個(gè)數(shù)據(jù)集,只包括用戶喜歡某部電影的數(shù)據(jù)行。 favorable_ratings = ratings[ratings["Favorable"]] 在生成項(xiàng)集時(shí),需要搜索用戶喜歡的電影。因此,接下來(lái),我們需要知道每個(gè)用戶各喜歡哪 些電影,按照 User ID 進(jìn)行分組,并遍歷每個(gè)用戶看過(guò)的每一部電影。 favorable_reviews_by_users = dict((k, frozenset(v.values)) for k, v in favorable_ratings groupby("UserID")["MovieID"]) 上面的代碼把 v.values 存儲(chǔ)為 frozenset,便于快速判斷用戶是否為某部電影打過(guò)分。對(duì)于這種操作,集合比列表速度快。 最后,創(chuàng)建一個(gè)數(shù)據(jù)框,以便了解每部電影的影迷數(shù)量。 num_favorable_by_movie = ratings[["MovieID", "Favorable"]]. groupby("MovieID").sum() 用以下代碼查看最受歡迎的五部電影。 num_favorable_by_movie.sort("Favorable", ascending=False)[:5] 輸出結(jié)果如下:

十 Apriori 算法

Apriori 算法是親和性分析的一部分,專門用于查找數(shù)據(jù)集中的頻繁項(xiàng)集。基本流程是從前一步找到的頻繁項(xiàng)集中找到新的備選集合,接著檢測(cè)備選集合的頻繁程度是否夠高,然后算法像下面這樣進(jìn)行迭代。 (1) 把各項(xiàng)目放到只包含自己的項(xiàng)集中,生成最初的頻繁項(xiàng)集。只使用達(dá)到最小支持度的項(xiàng)目。 (2) 查找現(xiàn)有頻繁項(xiàng)集的超集,發(fā)現(xiàn)新的頻繁項(xiàng)集,并用其生成新的備選項(xiàng)集。 (3) 測(cè)試新生成的備選項(xiàng)集的頻繁程度,如果不夠頻繁,則舍棄。如果沒(méi)有新的頻繁項(xiàng)集, 就跳到最后一步。 (4) 存儲(chǔ)新發(fā)現(xiàn)的頻繁項(xiàng)集,跳到步驟 (2) (5) 返回發(fā)現(xiàn)的所有頻繁項(xiàng)集。 整個(gè)過(guò)程表示如下。

十一 實(shí)現(xiàn)

Apriori算法第一次迭代時(shí),新發(fā)現(xiàn)的項(xiàng)集長(zhǎng)度為2,它們是步驟(1)中創(chuàng)建的項(xiàng)集的超集。第二次迭代(經(jīng)過(guò)步驟(4))中,新發(fā)現(xiàn)的項(xiàng)集長(zhǎng)度為3。這有助于我們快速識(shí)別步驟(2)所需的項(xiàng)集。

我們把發(fā)現(xiàn)的頻繁項(xiàng)集保存到以項(xiàng)集長(zhǎng)度為鍵的字典中,便于根據(jù)長(zhǎng)度查找,這樣就可以找到最新發(fā)現(xiàn)的頻繁項(xiàng)集。下面的代碼初始化一個(gè)字典。

frequent_itemsets = {} 我們還需要確定項(xiàng)集要成為頻繁項(xiàng)集所需的最小支持度。這個(gè)值需要根據(jù)數(shù)據(jù)集的具體情況 來(lái)設(shè)定,可自行嘗試其他值,建議每次只改動(dòng) 10 個(gè)百分點(diǎn),即使這樣你可能也會(huì)發(fā)現(xiàn)算法運(yùn)行時(shí) 間變動(dòng)很大!下面,設(shè)置最小支持度。 min_support = 50 我們先來(lái)實(shí)現(xiàn) Apriori 算法的第一步,為每一部電影生成只包含它自己的項(xiàng)集,檢測(cè)它是否夠 頻繁。電影編號(hào)使用 frozenset ,后面要用到集合操作。此外,它們也可以用作字典的鍵(普通 集合不可以)。代碼如下: frequent_itemsets[1] = dict((frozenset((movie_id,)), row["Favorable"]) for movie_id, row in num_favorable_ by_movie.iterrows() if row["Favorable"] > min_support) 接著,用一個(gè)函數(shù)來(lái)實(shí)現(xiàn)步驟 (2) (3) ,它接收新發(fā)現(xiàn)的頻繁項(xiàng)集,創(chuàng)建超集,檢測(cè)頻繁程 度。下面為函數(shù)聲明及字典初始化代碼。 from collections import defaultdict def find_frequent_itemsets(favorable_reviews_by_users, k_1_itemsets, min_support): counts = defaultdict(int)

經(jīng)驗(yàn)告訴我們,要盡量減少遍歷數(shù)據(jù)的次數(shù),所以每次調(diào)用函數(shù)時(shí),再遍歷數(shù)據(jù)。這樣做效果不是很明顯(因?yàn)閿?shù)據(jù)集相對(duì)較小),但是數(shù)據(jù)集更大的情況下,就很有必要。我們來(lái)遍歷所有用戶和他們的打分?jǐn)?shù)據(jù)。

for user, reviews in favorable_reviews_by_users.items(): 接著,遍歷前面找出的項(xiàng)集,判斷它們是否是當(dāng)前評(píng)分項(xiàng)集的子集。如果是,表明用戶已經(jīng) 為子集中的電影打過(guò)分。代碼如下: for itemset in k_1_itemsets: if itemset.issubset(reviews): 接下來(lái),遍歷用戶打過(guò)分卻沒(méi)有出現(xiàn)在項(xiàng)集里的電影,用它生成超集,更新該項(xiàng)集的計(jì)數(shù)。 代碼如下: for other_reviewed_movie in reviews - itemset: current_superset = itemset | frozenset((other_ reviewed_movie,)) counts[current_superset] += 1 函數(shù)最后檢測(cè)達(dá)到支持度要求的項(xiàng)集,看它的頻繁程度夠不夠,并返回其中的頻繁項(xiàng)集。 return dict([(itemset, frequency) for itemset, frequency in counts.items() if frequency >= min_support]) 創(chuàng)建循環(huán),運(yùn)行 Apriori 算法,存儲(chǔ)算法運(yùn)行過(guò)程中發(fā)現(xiàn)的新項(xiàng)集。循環(huán)體中, k 表示即將發(fā) 現(xiàn)的頻繁項(xiàng)集的長(zhǎng)度,用鍵 k ? 1 可以從 frequent_itemsets 字典中獲取剛發(fā)現(xiàn)的頻繁項(xiàng)集。新 發(fā)現(xiàn)的頻繁項(xiàng)集以長(zhǎng)度為鍵,將其保存到字典中。代碼如下: for k in range(2, 20): cur_frequent_itemsets = find_frequent_itemsets(favorable_reviews_by_users, frequent_itemsets[k-1], min_support) frequent_itemsets[k] = cur_frequent_itemsets 如果在上述循環(huán)中沒(méi)能找到任何新的頻繁項(xiàng)集,就跳出循環(huán)(輸出信息,告知我們沒(méi)能找到 長(zhǎng)度為 k 的頻繁項(xiàng)集) if len(cur_frequent_itemsets) == 0: print("Did not find any frequent itemsets of length {}". format(k)) sys.stdout.flush() break 如果確實(shí)找到了頻繁項(xiàng)集,我們也讓程序輸出信息,告知我們它會(huì)再次運(yùn)行。因?yàn)樗惴ㄟ\(yùn)行 時(shí)間很長(zhǎng),所以每隔一段時(shí)間輸出一下狀態(tài)是很有必要的!代碼如下: else: print("I found {} frequent itemsets of length {}".format(len(cur_frequent_itemsets), k)) sys.stdout.flush() 最后,循環(huán)結(jié)束,我們對(duì)只有一個(gè)元素的項(xiàng)集不再感興趣 —— 它們對(duì)生成關(guān)聯(lián)規(guī)則沒(méi)有用 —— 生成關(guān)聯(lián)規(guī)則至少需要兩個(gè)項(xiàng)目。刪除長(zhǎng)度為 1 的項(xiàng)集。代碼如下: del frequent_itemsets[1] 上面這些代碼要好幾分鐘才能運(yùn)行完,老機(jī)器需要的時(shí)間更長(zhǎng)。如果你在本地運(yùn)行代碼有問(wèn) 題,可以考慮使用云主機(jī)提升速度。 上述代碼返回了不同長(zhǎng)度的 1718 個(gè)頻繁項(xiàng)集。你也許會(huì)發(fā)現(xiàn)隨著項(xiàng)集長(zhǎng)度的增加,項(xiàng)集數(shù)隨 著可用規(guī)則的增加而增長(zhǎng)一段時(shí)間后才開始變少,減少是因?yàn)轫?xiàng)集達(dá)不到最低支持度要求。項(xiàng)集 的減少是 Apriori 算法的優(yōu)點(diǎn)之一。如果我們搜索所有可能的項(xiàng)集(不只是頻繁項(xiàng)集的超集),判 斷多余項(xiàng)集的頻繁程度需要成千上萬(wàn)次查詢。

十二 抽取關(guān)聯(lián)規(guī)則

Apriori算法結(jié)束后,我們得到了一系列頻繁項(xiàng)集,這還不算是真正意義上的關(guān)聯(lián)規(guī)則,但是很接近了。頻繁項(xiàng)集是一組達(dá)到最小支持度的項(xiàng)目,而關(guān)聯(lián)規(guī)則由前提和結(jié)論組成。 我們可以從頻繁項(xiàng)集中抽取出關(guān)聯(lián)規(guī)則,把其中幾部電影作為前提,另一部電影作為結(jié)論組成如下形式的規(guī)則:

如果用戶喜歡前提中的所有電影,那么他們也會(huì)喜歡結(jié)論中的電影。

每一個(gè)項(xiàng)集都可用這種方式生成一條規(guī)則。 下面的代碼通過(guò)遍歷不同長(zhǎng)度的頻繁項(xiàng)集,為每個(gè)項(xiàng)集生成規(guī)則。 candidate_rules = [] for itemset_length, itemset_counts in frequent_itemsets.items(): for itemset in itemset_counts.keys(): 然后,遍歷項(xiàng)集中的每一部電影,把它作為結(jié)論。項(xiàng)集中的其他電影作為前提,用前提和結(jié) 論組成備選規(guī)則。 for conclusion in itemset: premise = itemset - set((conclusion,)) candidate_rules.append((premise, conclusion)) 這樣就能得到大量備選規(guī)則。通過(guò)以下代碼查看前五條規(guī)則。 print(candidate_rules[:5]) 輸出結(jié)果如下: [(frozenset({79}), 258), (frozenset({258}), 79), (frozenset({50}), 64), (frozenset({64}), 50), (frozenset({127}), 181)] 在上述這些 規(guī)則 中,第一部分( frozenset )是作為規(guī)則前提的電影編號(hào),后面的數(shù)字表示 作為結(jié)論的電影編號(hào)。第一組數(shù)據(jù)表示如果用戶喜歡電影 79 ,他很可能喜歡電影 258 接下來(lái),計(jì)算每條規(guī)則的置信度,計(jì)算方法跟第 1 章類似,只不過(guò)要根據(jù)這里新的數(shù)據(jù)格式 做些改動(dòng)。 我們需要先創(chuàng)建兩個(gè)字典,用來(lái)存儲(chǔ)規(guī)則應(yīng)驗(yàn)( 正例 )和規(guī)則不適用( 反例 )的次數(shù)。代碼 如下: correct_counts = defaultdict(int) incorrect_counts = defaultdict(int) 遍歷所有用戶及其喜歡的電影數(shù)據(jù),在這個(gè)過(guò)程中遍歷每條關(guān)聯(lián)規(guī)則。 for user, reviews in favorable_reviews_by_users.items(): for candidate_rule in candidate_rules: premise, conclusion = candidate_rule

測(cè)試每條規(guī)則的前提對(duì)用戶是否適用。換句話說(shuō),用戶是否喜歡前提中的所有電影。代碼如下:

if premise.issubset(reviews): 如果前提符合,看一下用戶是否喜歡結(jié)論中的電影。如果是的話,規(guī)則適用,反之,規(guī)則不 適用。 if premise.issubset(reviews): if conclusion in reviews: correct_counts[candidate_rule] += 1 else: incorrect_counts[candidate_rule] += 1 用規(guī)則應(yīng)驗(yàn)的次數(shù)除以前提條件出現(xiàn)的總次數(shù),計(jì)算每條規(guī)則的置信度。 rule_confidence = {candidate_rule: correct_counts[candidate_rule] / float(correct_counts[candidate_rule] + incorrect_counts[candidate_rule]) for candidate_rule in candidate_rules} 對(duì)置信度字典進(jìn)行排序后,輸出置信度最高的前五條規(guī)則。 結(jié)果如下: Rule #1 Rule: If a person recommends frozenset({64, 56, 98, 50, 7}) they will also recommend 174 - Confidence: 1.000 Rule #2 Rule: If a person recommends frozenset({98, 100, 172, 79, 50, 56}) they will also recommend 7 - Confidence: 1.000 Rule #3 Rule: If a person recommends frozenset({98, 172, 181, 174, 7}) they will also recommend 50 - Confidence: 1.000 Rule #4 Rule: If a person recommends frozenset({64, 98, 100, 7, 172, 50}) they will also recommend 174 - Confidence: 1.000 Rule #5 Rule: If a person recommends frozenset({64, 1, 7, 172, 79, 50}) they will also recommend 181 - Confidence: 1.000

輸出結(jié)果中只顯示電影編號(hào),而沒(méi)有顯示電影名字,很不友好。我們下載的數(shù)據(jù)集中的u.items文件里存儲(chǔ)了電影名稱和編號(hào)(還有體裁等信息)。

用pandasu.items文件加載電影名稱信息。關(guān)于該文件和類別的更多信息請(qǐng)見(jiàn)數(shù)據(jù)集中的 README文件u.items文件為CSV格式,但是用豎線分隔數(shù)據(jù)。讀取時(shí)需要指定分隔符,設(shè)置表 頭和編碼格式。每一列的名稱是從README文件中找到的。

movie_name_filename = os.path.join(data_folder, "u.item") movie_name_data = pd.read_csv(movie_name_filename, delimiter="|", header=None, encoding = "mac-roman") movie_name_data.columns = ["MovieID", "Title", "Release Date", "Video Release", "IMDB", "<UNK>", "Action", "Adventure", "Animation", "Children's", "Comedy", "Crime", "Documentary", "Drama", "Fantasy", "Film-Noir", "Horror", "Musical", "Mystery", "Romance", "Sci-Fi", "Thriller", "War", "Western"] 既然電影名稱對(duì)于理解數(shù)據(jù)很重要,我們就來(lái)創(chuàng)建一個(gè)用電影編號(hào)獲取名稱的函數(shù),以免去 每次都要人工查找的煩惱。函數(shù)聲明如下: def get_movie_name(movie_id): 在數(shù)據(jù)框 movie_name_data 中查找電影編號(hào),找到后,只返回電影名稱列的數(shù)據(jù)。 title_object = movie_name_data[movie_name_data["MovieID"] == movie_id]["Title"] 我們用 title_object values 屬性獲取電影名稱(不是存儲(chǔ)在 title_object 中的 Series 對(duì)象)。我們只對(duì)第一個(gè)值感興趣 —— 當(dāng)然每個(gè)電影編號(hào)只對(duì)應(yīng)一個(gè)名稱! title = title_object.values[0] 函數(shù)最后返回電影名稱。 return title 調(diào)整之前的代碼,這樣就能在輸出的規(guī)則中顯示電影名稱。請(qǐng)?jiān)?/span> IPython Notebook 筆記本文 件的新格子里輸入以下代碼。 for index in range(5): print("Rule #{0}".format(index + 1)) (premise, conclusion) = sorted_confidence[index][0] premise_names = ", ".join(get_movie_name(idx) for idx in premise) conclusion_name = get_movie_name(conclusion) print("Rule: If a person recommends {0} they will also recommend {1}".format(premise_names, conclusion_name)) print(" - Confidence: {0:.3f}".format(confidence[(premise, conclusion)])) print("") 結(jié)果清楚多了(還有些小問(wèn)題,暫時(shí)先忽略)。 Rule #1 Rule: If a person recommends Shawshank Redemption, The (1994), Pulp Fiction (1994), Silence of the Lambs, The (1991), Star Wars (1977), Twelve Monkeys (1995) they will also recommend Raiders of the Lost Ark (1981) - Confidence: 1.000 Rule #2 Rule: If a person recommends Silence of the Lambs, The (1991), Fargo (1996), Empire Strikes Back, The (1980), Fugitive, The (1993), Star Wars (1977), Pulp Fiction (1994) they will also recommend Twelve Monkeys (1995) - Confidence: 1.000 Rule #3 Rule: If a person recommends Silence of the Lambs, The (1991), Empire Strikes Back, The (1980), Return of the Jedi (1983), Raiders of the Lost Ark (1981), Twelve Monkeys (1995) they will also recommend Star Wars (1977) - Confidence: 1.000 Rule #4 Rule: If a person recommends Shawshank Redemption, The (1994), Silence of the Lambs, The (1991), Fargo (1996), Twelve Monkeys (1995), Empire Strikes Back, The (1980), Star Wars (1977) they will also recommend Raiders of the Lost Ark (1981) - Confidence: 1.000 Rule #5 Rule: If a person recommends Shawshank Redemption, The (1994), Toy Story (1995), Twelve Monkeys (1995), Empire Strikes Back, The (1980), Fugitive, The (1993), Star Wars (1977) they will also recommend Return of the Jedi (1983) - Confidence: 1.000

十三 小結(jié)

本文把親和性分析用到電影推薦上,從大量電影打分?jǐn)?shù)據(jù)中找到可用于電影推薦的關(guān)聯(lián)規(guī)則。整個(gè)過(guò)程分為兩大階段。首先,借助Apriori 算法尋找數(shù)據(jù)中的頻繁項(xiàng)集。然后,根據(jù)找到的頻繁項(xiàng)集,生成關(guān)聯(lián)規(guī)則。 由于數(shù)據(jù)集較大, Apriori 算法就很有必要。我們用一部分?jǐn)?shù)據(jù)作為訓(xùn)練集以發(fā)現(xiàn)關(guān)聯(lián)規(guī)則,在剩余數(shù)據(jù)——測(cè)試集上進(jìn)行測(cè)試。

我們是Greaterwms軟件開發(fā)團(tuán)隊(duì)。

項(xiàng)目介紹:
我們的產(chǎn)品是開源倉(cāng)儲(chǔ)管理軟件,榮獲gitee最有價(jià)值開源項(xiàng)目獎(jiǎng),評(píng)選為GVP項(xiàng)目

產(chǎn)品支持多倉(cāng),波次發(fā)貨,合并揀貨,Milk-Run等業(yè)務(wù)模型。前后端分離為完全開源項(xiàng)目。

軟件著作權(quán)編號(hào):2018SR517685
GitHub地址:github
Gitee地址: ? gitee
視頻教程: ? ?bilibili
Demo地址:DEMO
商務(wù)聯(lián)系:mail@56yhz.com
技術(shù)交流:GreaterWMS-01(加微信進(jìn)群)

總結(jié)

以上是生活随笔為你收集整理的【实用算法教学】——Apriori算法,教你使用亲和性分析方法推荐电影的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

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

伊人资源站| 国产精品亚洲综合久久 | 狠狠久久 | 国产资源免费在线观看 | 国产精品免费一区二区三区在线观看 | 黄av免费在线观看 | 91视频久久久久 | 欧美国产不卡 | 在线观看中文字幕av | 欧美性生交大片免网 | 亚洲成人精品久久久 | 韩国在线视频一区 | 成人国产精品免费观看 | 激情五月婷婷综合网 | free,性欧美 九九交易行官网 | 最新国产精品久久精品 | 色综合久久久久久久 | 亚洲精品乱码久久久久v最新版 | 亚洲一二视频 | 欧美日韩裸体免费视频 | 麻豆高清免费国产一区 | 韩国av免费看 | 色a资源在线 | 国产.精品.日韩.另类.中文.在线.播放 | 亚洲国产日韩一区 | 综合网天天色 | 狠狠狠狠狠狠狠狠 | 青青草在久久免费久久免费 | 国产91小视频 | 欧美午夜寂寞影院 | av成人动漫在线观看 | 日韩一级网站 | 天天艹 | 美女福利视频在线 | 深爱婷婷久久综合 | 成人啊 v | 免费久久99精品国产婷婷六月 | 麻豆91视频| 国产在线专区 | 午夜久久精品 | www.色的| 亚洲国产精品va在线 | 成人久久亚洲 | 亚洲国产操 | 国产一区二区精 | 色综合天天狠狠 | 国产精品毛片一区二区三区 | 久久tv | 免费aa大片| 四虎成人在线 | 久久成人午夜视频 | 午夜视频在线观看一区二区 | 国产999在线 | 午夜精品999 | 九九免费在线观看视频 | 99在线看 | 伊人小视频 | 狠狠色丁香婷婷综合视频 | 亚洲国产综合在线 | www.日本色 | 久久视影| 日本精品一二区 | 九九久久婷婷 | 最新国产在线 | av网站在线观看播放 | 亚洲精品视频中文字幕 | 国产一区欧美日韩 | 日韩欧美69 | 午夜性福利 | 久久精品一二三区白丝高潮 | 日本爽妇网 | 国产精品99在线播放 | 婷婷激情av | 久久99精品一区二区三区三区 | 黄色91在线观看 | 成人av亚洲| 98精品国产自产在线观看 | 天天干 天天摸 天天操 | 91九色精品国产 | 亚洲国产精品激情在线观看 | 欧美aa级 | 久草免费色站 | 国产精品久久久久久久久久白浆 | 五月婷婷毛片 | 日韩一区二区三区免费视频 | www久| 色欧美综合 | 国内揄拍国产精品 | 久久久亚洲麻豆日韩精品一区三区 | 99中文字幕视频 | 91爱爱网址| 一区二区三区在线视频观看58 | 黄色成年| 人人搞人人干 | 久久噜噜少妇网站 | 成人在线视 | 五月婷婷开心中文字幕 | 久99久精品视频免费观看 | 亚洲精品视频网址 | 日本一区二区三区免费看 | 日韩黄色av网站 | 六月丁香激情网 | 久久人人爽人人爽人人片 | 色婷婷综合久久久久 | 一区中文字幕在线观看 | 成av在线| 成人av影视观看 | 国产精品成人自产拍在线观看 | 97碰在线| 狠狠干狠狠艹 | 午夜精品一区二区三区视频免费看 | 在线国产福利 | 我爱av激情网 | 久久国内免费视频 | 成人四虎影院 | 国产91影视 | 五月激情在线 | 国产精品va在线播放 | 日日爱网站 | 国产片免费在线观看视频 | 4438全国亚洲精品观看视频 | 99久免费精品视频在线观看 | 久久久久国产成人精品亚洲午夜 | 国产h片在线观看 | 日韩久久精品一区二区 | 国产精品都在这里 | 国产精品欧美一区二区三区不卡 | 香蕉视频一级 | 免费在线激情视频 | 国模吧一区 | 在线免费观看国产黄色 | 96国产在线 | 中文字幕激情 | av片中文字幕 | 久久天堂网站 | 日韩精品一区二区三区免费观看视频 | 99国产精品久久久久老师 | 久久第四色 | 天天艹天天 | 国产在线毛片 | 日韩免费在线 | 日韩中文在线字幕 | 天天射天天操天天干 | 亚洲视频播放 | 欧美性大胆| 97精品伊人 | 日韩中文幕 | 日本精品一区二区在线观看 | 免费网站在线观看成人 | 狠狠狠干 | 亚洲三级视频 | 99精品美女 | 少妇性bbb搡bbb爽爽爽欧美 | 国产一区二区不卡视频 | 久久免费福利视频 | 国产精品一区二区三区观看 | 国产精品久久久亚洲 | 伊人丁香| 岛国av在线不卡 | 色婷婷色| 日韩中文字幕第一页 | 久日视频| 精品夜夜嗨av一区二区三区 | 久久久久久国产一区二区三区 | 天天干天天操 | 麻豆国产精品视频 | 免费看久久久 | 国产日韩欧美在线免费观看 | av一级片在线观看 | 又大又硬又黄又爽视频在线观看 | 欧美日韩国产综合网 | 美女视频黄色免费 | 久久精品老司机 | 国产小视频精品 | a级国产乱理论片在线观看 伊人宗合网 | 97视频播放 | 亚洲精品国产精品久久99 | 香蕉网在线 | 99精品视频在线观看 | 亚洲波多野结衣 | 少妇bbb好爽 | 免费看的黄色片 | 中文字幕在线日本 | www,黄视频| 在线免费黄色av | 国内精品视频久久 | 久久久久久久免费看 | 久草在线在线精品观看 | 五月色丁香 | 99视频偷窥在线精品国自产拍 | 天堂av在线网站 | 九色91福利 | 狠狠干免费 | 99色在线视频 | 久久黄色成人 | 人人超碰免费 | 亚洲欧洲视频 | 国产亚洲欧洲 | 日本福利视频在线 | 99免费在线视频观看 | 最新av免费 | 夜夜操天天干, | 日韩免费观看一区二区 | 中文字幕视频 | av7777777| 一区 二区 精品 | 久久久国产精品人人片99精片欧美一 | 欧美日韩国产一区 | 最近日本韩国中文字幕 | 91色九色 | 国产精品久久久久一区二区国产 | 五月婷婷综合色拍 | 久色免费视频 | 99九九99九九九视频精品 | 国产高清视频免费 | 在线影视 一区 二区 三区 | 久久9精品| 激情在线网 | 天天天天天干 | 亚洲片在线观看 | 麻豆 videos| 国产精品va在线播放 | 免费视频国产 | 久久成人午夜视频 | 精品国产乱码久久 | 91精品视频在线看 | 免费观看一区 | 五月婷婷欧美视频 | 国产xxxxx在线观看 | 欧美一级片免费观看 | 婷婷在线资源 | 国产精品1区2区 | 亚洲免费不卡 | 99久久激情视频 | 日韩精品视频在线免费观看 | 99热这里只有精品8 久久综合毛片 | 欧美a级一区二区 | 免费看毛片网站 | 日韩在线视频国产 | 99爱视频 | 五月天久久久 | 视频在线观看入口黄最新永久免费国产 | 亚洲午夜精品久久久久久久久久久久 | 国产精品乱码久久久久久1区2区 | av在线免费观看黄 | 精品美女视频 | 在线视频观看你懂的 | 一区二区不卡在线观看 | 久久av中文字幕片 | 久久丁香 | 国产高清福利在线 | 探花系列在线 | 国产免费午夜 | 国产精品婷婷午夜在线观看 | 特级a老妇做爰全过程 | 亚洲精品字幕 | 在线91av| 97成人在线观看视频 | 五月婷婷综合色拍 | 成片免费观看视频 | 99精品电影 | 九九一级片 | 亚洲精品美女 | 91成人看片 | 91在线小视频 | 国产99久久九九精品 | 亚洲精品午夜一区人人爽 | 国内小视频 | 成人国产亚洲 | 在线免费国产 | 天天鲁天天干天天射 | 日韩视频图片 | 97国产精品一区二区 | 色偷偷88888欧美精品久久久 | 免费裸体视频网 | 精品国产aⅴ一区二区三区 在线直播av | 亚洲人成在线观看 | 毛片在线播放网址 | 懂色av懂色av粉嫩av分享吧 | 成年人免费在线观看网站 | 日韩网站在线免费观看 | 激情五月亚洲 | 日韩中文在线电影 | 久久精品2 | 深爱婷婷久久综合 | 日日干av| 99精品视频在线观看免费 | 欧美亚洲精品一区 | 国产中出在线观看 | 亚洲少妇自拍 | 国产免费一区二区三区最新 | 米奇影视7777| 最近中文字幕免费av | 日韩a级黄色片 | 久久精品播放 | av一区在线 | 天躁狠狠躁 | 欧美一级片免费观看 | 正在播放 国产精品 | 久久国产精品二国产精品中国洋人 | 国产综合在线观看视频 | 欧美人体xx | 狠狠干狠狠插 | 国产精品美女在线观看 | 精品视频123区在线观看 | 日韩电影在线观看一区二区 | 香蕉成人在线视频 | 成人av高清在线观看 | 狠狠艹夜夜干 | 草久久久久久久 | 99在线精品视频在线观看 | 国产精品久久久久久久久久直播 | 一区二区三区在线看 | 中文字幕在线色 | 中文字幕在线播放av | 成人国产精品免费观看 | 不卡中文字幕在线 | 中文字幕观看视频 | 久久久精品在线观看 | 欧美成人亚洲成人 | 一区二区欧美在线观看 | www亚洲国产 | 狠狠操狠狠干2017 | 粉嫩一二三区 | www久久国产 | 欧美 高跟鞋交 xxxxhd | 久久国产亚洲精品 | 欧美aaa大片 | 久久男人中文字幕资源站 | 色夜视频 | 亚洲精品欧美精品 | 亚洲最快最全在线视频 | 久草在线综合网 | 天天操天天射天天舔 | 在线看片一区 | 久久伊人精品一区二区三区 | 黄色av三级在线 | 中文字幕亚洲国产 | 韩国一区二区av | 国产在线观看你懂得 | 久久午夜免费观看 | 黄色的片子 | 免费久久精品视频 | 国产69精品久久app免费版 | 国产精品一区二 | 麻豆一二| 免费观看黄色av | 久久国产精品久久久 | 不卡的av片 | 国产美女免费观看 | 国产精品免费人成网站 | 不卡国产视频 | 日韩av男人的天堂 | 欧美日韩免费在线观看视频 | 中文字幕在线观看完整版电影 | 日韩综合一区二区三区 | 视频在线国产 | 欧美在线一 | 婷婷久久一区二区三区 | 精品久久久99 | 亚洲在线视频播放 | а中文在线天堂 | 欧美一级淫片videoshd | 成年人电影免费在线观看 | 97免费在线观看视频 | 亚洲一级片免费观看 | 五月天色丁香 | 久久天天综合网 | 日韩欧美综合 | 久久激情久久 | 久久综合九色综合久99 | 成人av一区二区兰花在线播放 | 精品久久久久久亚洲综合网 | 婷婷伊人综合 | 深夜免费小视频 | 国产精品成人自产拍在线观看 | 亚洲成人999 | 天天做天天爱夜夜爽 | 日韩在线观看网址 | 免费观看丰满少妇做爰 | 欧洲一区二区在线观看 | 精品国产乱子伦一区二区 | 97视频在线免费观看 | 久久久激情视频 | 色在线高清 | 国产成人无码AⅤ片在线观 日韩av不卡在线 | 国产精品毛片一区视频 | 中文字幕刺激在线 | 五月婷婷六月丁香激情 | 日韩区欠美精品av视频 | 亚洲高清在线观看视频 | 午夜 免费| 亚洲一区二区91 | 国产一区二区精品久久 | 婷婷丁香狠狠爱 | 黄色日本免费 | 久久午夜鲁丝片 | 91视频下载 | 成人动漫精品一区二区 | 精品久久久久免费极品大片 | 中文在线中文资源 | 国产婷婷在线观看 | 久久99精品波多结衣一区 | 亚洲开心色 | 三级黄色大片在线观看 | 五月婷婷久久综合 | 国产精品美女在线 | 国产精品久久久久久久久久免费看 | 91 中文字幕 | 欧美激情在线看 | 国产在线精 | 欧美激情综合五月 | 亚洲精品天天 | 免费观看性生活大片 | 精品国产一区二区三区在线 | 日日操夜夜操狠狠操 | 毛片网站在线看 | 久久av在线播放 | 国产vs久久 | 亚洲dvd | 丰满少妇高潮在线观看 | 亚洲午夜av电影 | 亚洲永久精品视频 | 国产成人在线观看 | 99热在线国产 | 日韩欧美高清在线观看 | 亚洲综合色丁香婷婷六月图片 | 毛片视频电影 | 久久这里有精品 | 久久天天躁| 婷婷五月在线视频 | 91视频在线免费看 | av片免费播放 | 亚洲天堂网在线播放 | 91亚洲在线观看 | www.777奇米 | 超碰在线观看av.com | 天天操天天摸天天射 | 香蕉视频色| 干av在线 | 久久天天躁狠狠躁亚洲综合公司 | 一级α片免费看 | 欧美韩国日本在线观看 | 中文字幕免费成人 | 在线欧美小视频 | 日韩高清在线一区二区 | 密桃av在线| 亚洲精品乱码久久久久久高潮 | 中文字幕在线观看免费观看 | 成年人网站免费观看 | 日韩精品专区 | 亚洲精品乱码久久久久v最新版 | 久草在线中文视频 | 国产中的精品av小宝探花 | 国产高清免费在线播放 | 久久久久免费精品国产小说色大师 | 少妇性xxx | 日韩欧美在线观看一区二区三区 | 91久久影院 | 五月激情综合婷婷 | 人人精久 | 在线看黄色av| 久久综合久久八八 | 91视频高清 | 免费在线观看av网站 | 国产资源在线视频 | 国产精品k频道 | 91九色在线观看 | 成人av片免费观看app下载 | 视频 国产区 | 色噜噜狠狠狠狠色综合 | 91女神的呻吟细腰翘臀美女 | 日韩三级.com| 亚洲欧美视频在线播放 | 999成人| 久久av免费| 91av亚洲| 亚洲美女精品视频 | 成 人 黄 色 视频 免费观看 | 国内精品久久久久影院优 | 99婷婷狠狠成为人免费视频 | 久久精品一二三 | 国产精品久久久久久吹潮天美传媒 | 免费精品国产va自在自线 | 国内精品久久久久久久久久久 | 亚洲视频1区2区 | 国产亚洲欧美一区 | 亚洲精品婷婷 | 久久99精品视频 | 欧美日韩在线视频免费 | 亚洲亚洲精品在线观看 | 国产精品美女久久久久久 | 免费亚洲电影 | 国产馆在线播放 | 九九爱免费视频 | 亚洲另类久久 | 97精品国产97久久久久久 | 国产 一区二区三区 在线 | 在线观看播放av | 日韩中文字幕网站 | 国产精品毛片 | 97人人添人澡人人爽超碰动图 | 久久综合色综合88 | 欧美精品一区二区免费 | 久久久久久久久久久久av | 热久久精品在线 | 91伊人久久大香线蕉蜜芽人口 | 天天爱综合 | 九精品 | 天天av在线播放 | 国产精品自产拍在线观看中文 | 亚洲影视九九影院在线观看 | 婷婷在线看 | 在线观看自拍 | 92国产精品久久久久首页 | wwwww.国产 | 亚洲成人精品在线 | 日日插日日干 | 黄免费网站 | 毛片永久免费 | 超碰午夜| 久香蕉| 99日精品 | 伊人丁香 | 午夜国产在线观看 | 久久久精品欧美一区二区免费 | 国产视频精品免费 | 人人草在线视频 | 久久久三级视频 | 丰满少妇在线观看网站 | 国产成人1区 | 月下香电影 | 日本韩国精品一区二区在线观看 | japanesexxxxfreehd乱熟 | 人人插人人搞 | 国产精品成人自产拍在线观看 | 粉嫩av一区二区三区入口 | 成人在线一区二区 | 国产乱码精品一区二区三区介绍 | 国产理论一区二区三区 | 高清视频一区二区三区 | 爱干视频| 久久精品久久精品久久精品 | 欧美精品三级在线观看 | 成人午夜在线观看 | 丝袜美腿一区 | 欧美精彩视频在线观看 | 性色视频在线 | 一区二区三区不卡在线 | 国产日韩欧美精品在线观看 | 亚洲综合在线五月 | 日韩免费网站 | 久久久在线免费观看 | 欧美日韩一二三四区 | 成人黄色片免费 | 欧美日韩中文在线观看 | 国产精品v a免费视频 | 香蕉色综合 | 国内精品久久久久久久97牛牛 | 成人av片在线观看 | 久久久福利视频 | 色天天综合久久久久综合片 | 不卡电影免费在线播放一区 | 福利电影一区二区 | 亚洲一区二区视频在线 | 午夜色婷婷 | 亚洲综合少妇 | 午夜精品久久久久久久99热影院 | 91人人在线 | av福利在线导航 | 91免费试看| 日韩中文字幕在线看 | 国产精久久久久久久 | 久久久久免费精品视频 | 超碰公开在线观看 | 91精品久久久久久综合乱菊 | 国产精品18毛片一区二区 | 一区二区视频免费在线观看 | 国产色综合天天综合网 | 久久久视频在线 | 开心色婷婷 | 麻豆视频在线 | 日日夜夜人人天天 | 亚洲 欧美日韩 国产 中文 | 国产午夜精品一区二区三区欧美 | 久久久免费毛片 | 99精品在线观看 | 国产视频在线观看一区 | 日韩三级不卡 | 丰满少妇高潮在线观看 | 中文网丁香综合网 | 天天干人人干 | 日韩在线观看一区二区 | 人人dvd| 欧美午夜精品久久久久久浪潮 | 久久草网 | 一区 二区电影免费在线观看 | 日韩免费电影网站 | 91成人午夜 | 精品产品国产在线不卡 | 亚洲精品国产视频 | 日韩av进入 | 黄色小说在线观看视频 | av免费在线网站 | 久久久免费毛片 | 国产精品毛片一区二区三区 | 久久精品视频在线免费观看 | 黄色91免费观看 | 国产美女在线免费观看 | 国产日韩视频在线观看 | 久久福利 | 国产精品久久久久免费a∨ 欧美一级性生活片 | 国产麻豆精品久久一二三 | 九九热re| 久久99精品国产91久久来源 | 国产精品久久一区二区三区, | 人人爽人人av | 亚洲综合视频在线 | 精品免费一区二区三区 | 夜夜操天天 | 国产精品久久久久久一区二区 | 国产成人一二片 | 免费在线播放av电影 | 特级毛片爽www免费版 | 91免费版在线观看 | 国产精品久久久久久久久久免费看 | 精品播放 | 亚洲成人av一区 | 中文字幕在线影院 | 日韩精品无 | 久久午夜网 | 国产精品一区二区三区久久久 | 精品欧美日韩 | 天天操天天干天天插 | 91成版人在线观看入口 | 日韩一区二区三区在线观看 | 成人午夜黄色影院 | 黄色软件大全网站 | 啪啪动态视频 | 在线视频 你懂得 | 国产精品一区二区在线播放 | 日韩欧美高清在线 | 黄色三级在线看 | 婷婷黄色片 | 在线免费观看av网站 | 国产一区二区久久久久 | 九色视频网址 | 国产婷婷精品 | 国产伦理一区二区三区 | 久久 一区 | 亚洲精品小视频 | www.啪啪.com| 欧美人交a欧美精品 | 国产成人福利片 | 99视频精品 | 天天综合中文 | 中文一二区 | 久久成人精品视频 | 久久婷婷丁香 | 国产成人在线免费观看 | 亚洲精品小区久久久久久 | 99亚洲视频| 国产一级片在线播放 | 青青草在久久免费久久免费 | 日韩精品不卡 | 最近日本韩国中文字幕 | 探花视频在线观看免费版 | 国产偷在线 | a天堂中文在线 | 亚洲 中文字幕av | 色99久久| 欧美a在线免费观看 | 日韩精品高清视频 | 欧美国产一区二区 | 国产人成免费视频 | 久久国产免费 | 最新av网址大全 | 一区二区三区在线免费观看 | 99久久毛片 | 日本成人中文字幕在线观看 | 国产精品久久久久久久毛片 | 国产精品久久久久久久免费观看 | 久久久久久久久久久久99 | 91亚洲网站 | 波多野结衣一区三区 | 手机av资源 | 日批在线看 | 2019国产精品| 97在线观看免费观看 | 久久99精品国产麻豆宅宅 | 很黄很污的视频网站 | 日韩av一区二区在线影视 | 日韩av影视在线观看 | 日韩一区二区三免费高清在线观看 | 男女激情网址 | 亚洲午夜av久久乱码 | 亚洲电影成人 | 天天射天天干天天爽 | 久久99国产综合精品免费 | 中文字幕电影在线 | 免费看三级网站 | 免费合欢视频成人app | 精品1区二区 | av成人免费| 96av在线| 在线观看亚洲视频 | 91av在线国产 | 日韩av片免费在线观看 | 久久久精品 一区二区三区 国产99视频在线观看 | 91桃色视频 | 久久精品91久久久久久再现 | 久久69精品| 亚洲成av人影院 | 免费成人短视频 | 黄色毛片电影 | 四虎影视成人永久免费观看视频 | 成人影视免费看 | 日韩高清成人在线 | 久久最新视频 | 最新av网站在线观看 | 99视频偷窥在线精品国自产拍 | 国产精品久久久久一区二区 | 97成人免费视频 | 成人黄色片在线播放 | 成人一区二区在线 | 激情五月激情综合网 | 丁香激情五月婷婷 | 国产亚洲va综合人人澡精品 | 国产一级二级在线 | 激情中文字幕 | 中文字幕 国产视频 | 天天做天天爱天天爽综合网 | 超碰人在线 | 九九免费在线观看 | 99久久久久久久久久 | 国产成人61精品免费看片 | 久久久久久久久久久精 | 一区二区三区播放 | 天天综合天天做天天综合 | 天天曰 | 日韩av不卡在线播放 | 亚州精品在线视频 | 国产精品永久在线 | 国产资源 | 国产精品麻 | 欧美在线观看视频一区二区三区 | 中日韩在线视频 | x99av成人免费 | 青春草视频在线播放 | av九九| www久久久 | 婷婷色综合 | 狠狠狠狠狠狠狠狠干 | 米奇四色影视 | 亚洲码国产日韩欧美高潮在线播放 | 日韩一级片大全 | 超碰在线98 | 婷婷精品进入 | 欧美日一级片 | 日本一区二区三区视频在线播放 | 日韩一区在线免费观看 | 国产精品一区二区av影院萌芽 | 国产精品美女久久久久久久久久久 | 91九色蝌蚪 | 欧美日韩性生活 | 蜜桃av久久久亚洲精品 | 色爱成人网 | 国产高清第一页 | 亚洲午夜精品一区 | 欧美精选一区二区三区 | 天天碰天天操 | 91精品在线麻豆 | 中文字幕久久久精品 | 国产免费视频一区二区裸体 | 天天草天天爽 | 美女黄频视频大全 | 成人毛片在线观看 | 久久伊99综合婷婷久久伊 | 日韩欧美一区二区三区黑寡妇 | 一级做a视频 | 国产1区在线 | 国产亚洲精品久久久久久大师 | 伊人官网| 伊人www22综合色| 精品毛片一区二区免费看 | 91香蕉视频污在线 | a级国产乱理伦片在线播放 久久久久国产精品一区 | 欧美福利视频一区 | 中文在线亚洲 | 精品国产乱码久久久久久1区二区 | 中文 一区二区 | 黄色在线观看免费网站 | 爱爱一区| 97香蕉久久超级碰碰高清版 | 精品91久久久久 | 婷婷伊人综合 | 国产精品毛片久久久 | 亚洲一区二区三区miaa149 | 久久久在线观看 | 黄色成年 | 国产午夜精品视频 | 国产精品 日韩 欧美 | 韩国一区二区三区在线观看 | 国产综合精品久久 | 欧美另类成人 | 国产高清视频在线观看 | 福利视频一区二区 | 热久久免费国产视频 | 毛片网站在线观看 | 日日躁你夜夜躁你av蜜 | 天天综合网 天天 | 精品欧美乱码久久久久久 | 久久视| 久久不射电影网 | 五月天丁香亚洲 | 精品免费视频123区 午夜久久成人 | 视频福利在线观看 | 激情伊人五月天 | 免费看污的网站 | 久操免费视频 | 韩国av三级 | 国产日韩中文在线 | 少妇18xxxx性xxxx片 | 久久精品高清 | 最新国产精品久久精品 | 久久91久久久久麻豆精品 | 99热都是精品 | 九九免费在线视频 | 日韩高清免费无专码区 | 天天视频亚洲 | 久久国产精品免费 | 婷婷六月天综合 | 日韩三级精品 | 天天干天天看 | 国产高清一区二区 | 国产在线看 | 免费亚洲精品视频 | 操处女逼 | 亚洲一级二级 | 成人黄色小说视频 | 国产黄色理论片 | 人人爽人人爽人人片av免 | 天天鲁一鲁摸一摸爽一爽 | 五月婷婷中文 | 久久婷婷国产色一区二区三区 | 青春草视频在线播放 | 国产在线中文字幕 | 麻豆免费精品视频 | 91污在线观看 | 91麻豆国产福利在线观看 | 五月婷婷婷婷婷 | 人人爱人人做人人爽 | 亚洲永久精品视频 | 日韩在线视频观看免费 | 日韩深夜在线观看 | 狠狠色丁香久久婷婷综合_中 | 精品免费视频 | 国产中文字幕91 | 成人黄在线 | 韩国av免费在线观看 | 国产精品毛片久久蜜 | 国产婷婷一区二区 | 97视频入口免费观看 | 99精品久久久久 | 五月婷婷综合在线视频 | 狠狠色狠狠色综合系列 | 亚洲精品在线观 | 婷婷婷国产在线视频 | 91久久一区二区 | 国产亚洲午夜高清国产拍精品 | av网址在线播放 | 久久精品黄色 | 夜夜爱av | 欧美一级久久 | 手机av电影在线观看 | 欧美在线视频精品 | 日韩91精品 | 97国产精品一区二区 | 欧美日韩国产亚洲乱码字幕 | 免费观看一区二区三区视频 | 亚洲精品美女久久久 | 成年人免费看 | 一区二区三区在线免费观看 | 激情五月色播五月 | 日韩精品久久久久久 | 99精品在线免费视频 | 91高清免费观看 | 国产高清福利在线 | 国产欧美中文字幕 | 亚洲欧美成人综合 | 亚洲成人av在线电影 | 国产在线精品一区二区三区 | 国产精品久久久久一区二区三区 | 国产999精品久久久久久 | 精品在线亚洲视频 | 久久99久久99精品免费看小说 | 91视频三区| 国产美女免费观看 | 在线观看日本高清mv视频 | 国产精品丝袜久久久久久久不卡 | 免费视频资源 | 99se视频在线观看 | 国产精品久久久久999 | 久久成人精品电影 | 麻豆影视网站 | 在线观看国产日韩 | 黄色电影在线免费观看 | 久久综合在线 | 成人手机在线视频 | 久久久久久久综合色一本 | 亚洲精品三级 | 一本—道久久a久久精品蜜桃 | 亚洲国产高清在线观看视频 | 久草| 日日碰狠狠躁久久躁综合网 | 伊人久久五月天 | 久久久久久久久久久精 | 午夜av免费看 | 狠狠色丁香久久综合网 | 欧美日韩在线观看一区二区 | 精品成人网 | 国产婷婷视频在线 | 韩国av在线播放 | 久久精品国产成人 | 久99视频 | 日日爽视频 | 国产午夜精品福利视频 | 日韩电影中文字幕在线 | 中文一区在线 | 69国产精品视频 | 国产中文在线字幕 | 日韩免费av在线 | 一二三区在线 | 免费精品久久久 | 国产精品成人品 | 玖玖爱在线观看 | 91中文在线视频 | 亚洲日本成人网 | 五月婷婷中文 | 国产一级视屏 | 91日韩在线 | 色偷偷男人的天堂av | 久久久国产精品视频 | 麻豆国产露脸在线观看 | 免费视频一级片 | 久久久久久久久久久久亚洲 | 最近高清中文在线字幕在线观看 | 国产精品女主播一区二区三区 | 麻豆影音先锋 | 久久久免费毛片 | 精品国产乱子伦一区二区 | 久久伊人综合 | 欧美成年人在线观看 | 久久久久久久看片 | 久草视频免费在线播放 | 亚洲欧美日韩国产精品一区午夜 | 成人福利在线观看 | 亚洲精品国产免费 | 精品一区二区久久久久久久网站 | 国产高清视频在线免费观看 | 精品一区av| 日韩午夜高清 | 天天操天天透 | 久久综合干 | 久久久久中文 | 黄色免费在线看 | 色91在线| 四虎影院在线观看av | 天天干 天天摸 天天操 | 狠狠做深爱婷婷综合一区 | 国产高清视频免费在线观看 | 欧美成人h版电影 | 婷婷色中文字幕 | 日韩在线免费看 | 国产精品18久久久久久久久 | 天堂v中文 | 国产99久久久国产精品 | 一级黄色免费 | 人人干人人做 | 国产高清久久久 | 97看片 | 丁香狠狠 | 亚洲九九九在线观看 | 在线播放日韩 | www.久久久com | 国产精品99久久久久久宅男 | 91片网| 一级黄色片在线免费观看 | 国产视频久久久久 | 中文字幕免费高清在线 | 久久久久久久久久久久99 | 日本黄色免费在线 | 久草在线视频看看 | 成人av免费| 不卡的av电影在线观看 | 日韩高清在线一区二区三区 | 国产福利精品在线观看 | 久久99久国产精品黄毛片入口 |