亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        電影推薦系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

        2021-03-29 10:02:56
        物聯(lián)網(wǎng)技術(shù) 2021年3期
        關(guān)鍵詞:頁(yè)面用戶信息

        (廣西大學(xué) 計(jì)算機(jī)與電子信息學(xué)院,廣西 南寧 530004)

        0 引 言

        推薦系統(tǒng)[1-2]可以根據(jù)用戶的興趣、特點(diǎn)、需求等,為用戶提供信息服務(wù)。與一般的搜索引擎不同的是,推薦系統(tǒng)是通過(guò)研究用戶自身的興趣偏好來(lái)進(jìn)行個(gè)性化的推薦。一個(gè)好的推薦系統(tǒng),能自動(dòng)挖掘用戶的興趣點(diǎn),引導(dǎo)用戶發(fā)現(xiàn)自己的信息需求,同時(shí),通過(guò)為用戶提供個(gè)性化的推薦服務(wù)從而與用戶建立聯(lián)系,使得用戶對(duì)推薦系統(tǒng)產(chǎn)生依賴。

        視頻推薦是根據(jù)當(dāng)前熱門的視頻,研究用戶的一些個(gè)性化數(shù)據(jù),為用戶提供個(gè)性化的視頻推薦服務(wù),以增加用戶黏度,從而提高視頻網(wǎng)站流量。對(duì)在線電影提供商而言,在線視頻推薦系統(tǒng)[3]的推薦效率對(duì)公司的經(jīng)濟(jì)效益會(huì)產(chǎn)生直接的影響,甚至?xí)绊懙焦镜陌l(fā)展。

        1 相關(guān)技術(shù)介紹

        1.1 協(xié)同過(guò)濾算法

        推薦領(lǐng)域比較成熟的算法有基于內(nèi)容的推薦算法、協(xié)同過(guò)濾算法、基于規(guī)則的推薦算法、基于效用的推薦算法、基于知識(shí)的推薦算法等。本文采用基于用戶的協(xié)同過(guò)濾算法[4-7]實(shí)現(xiàn)個(gè)性化的電影推薦服務(wù)?;谟脩舻膮f(xié)調(diào)過(guò)濾算法的主要步驟如下:

        (1)尋找與目標(biāo)用戶興趣相似的用戶集合;

        (2)找到這個(gè)集合中的用戶所喜歡的,然后把目標(biāo)用戶沒(méi)有接觸過(guò)的物品推薦給目標(biāo)用戶。

        該算法的核心就是計(jì)算兩個(gè)用戶之間的興趣相似度,給定用戶u和用戶v,令N(u)表示用戶u感興趣的物品集合,N(v)表示用戶v感興趣的物品集合,通過(guò)余弦相似度公式計(jì)算出兩兩用戶之間的相似度,進(jìn)行比較,最終篩選出與目標(biāo)用戶相似度最高的用戶集合。余弦相似度公式為:

        1.2 爬蟲技術(shù)

        爬蟲是一種能自動(dòng)運(yùn)行的程序,其功能是從網(wǎng)絡(luò)上爬取到特定的數(shù)據(jù)。Scrapy是一個(gè)基于Python的開源爬蟲框架[8],包含多種中間件接口。目前Scrapy已廣泛應(yīng)用于數(shù)據(jù)挖掘、檢測(cè)和自動(dòng)化測(cè)試等項(xiàng)目上,采用Scrapy爬取豆瓣網(wǎng)上的電影信息作為本系統(tǒng)個(gè)性化推薦的基礎(chǔ)數(shù)據(jù)。

        2 電影推薦系統(tǒng)的設(shè)計(jì)

        2.1 總體功能模塊設(shè)計(jì)

        本文設(shè)計(jì)的電影推薦系統(tǒng)包含以下六大功能模塊:用戶注冊(cè)登錄、個(gè)人標(biāo)簽管理、電影篩選和查找、個(gè)性化推薦服務(wù)、個(gè)人喜好列表、影評(píng)管理。其中個(gè)性化推薦模塊是系統(tǒng)的核心模塊。

        2.2 數(shù)據(jù)庫(kù)設(shè)計(jì)

        本系統(tǒng)采用MySQL數(shù)據(jù)庫(kù),在Django model[9]基礎(chǔ)上額外設(shè)計(jì)了4個(gè)數(shù)據(jù)表:電影信息表、用戶額外信息表、評(píng)論表、愛(ài)好行為表。

        (1)電影信息表用于存儲(chǔ)電影信息,結(jié)構(gòu)見(jiàn)表1所列。

        表1 電影信息表

        (2)用戶額外信息表是基于Django models中的User表創(chuàng)建的,User表包含了用戶名、密碼、E-mail等信息,那么用戶額外信息表只需存儲(chǔ)額外的用戶信息,結(jié)構(gòu)見(jiàn)表2所列。

        表2 用戶額外信息表

        (3)評(píng)論表是用來(lái)存儲(chǔ)用戶的影評(píng)內(nèi)容,結(jié)構(gòu)見(jiàn)表3所列。

        表3 評(píng)論表

        (4)愛(ài)好行為表就是用于存儲(chǔ)用戶對(duì)一部電影的行為,行為類型分為三種:want(想看)、like(喜歡)、dislike(不喜歡),結(jié)構(gòu)見(jiàn)表4所列。

        表4 愛(ài)好行為表

        3 電影推薦系統(tǒng)的實(shí)現(xiàn)

        3.1 爬取數(shù)據(jù)

        進(jìn)入本系統(tǒng)后,系統(tǒng)首先會(huì)在后臺(tái)采用Scrapy框架爬取豆瓣電影網(wǎng)上的實(shí)時(shí)電影信息數(shù)據(jù)作為基礎(chǔ)數(shù)據(jù)集。實(shí)時(shí)電影信息主要包括:電影名、上映時(shí)間、主演、類型、評(píng)分、簡(jiǎn)介、封面圖片等。當(dāng)采用Scrapy將數(shù)據(jù)爬取下來(lái)后,還需要寫爬蟲規(guī)則,采用CSS與Xpath結(jié)合的解析規(guī)則進(jìn)行解析,解析出來(lái)再經(jīng)過(guò)數(shù)據(jù)清洗就可直接存儲(chǔ)到數(shù)據(jù)庫(kù)。

        3.2 系統(tǒng)首頁(yè)

        為了獲得個(gè)性化的電影推薦服務(wù),第一次使用本系統(tǒng)的用戶需要注冊(cè)成為系統(tǒng)會(huì)員,此時(shí)出現(xiàn)的是注冊(cè)頁(yè)面。當(dāng)用戶成功登錄系統(tǒng)后,系統(tǒng)會(huì)跳轉(zhuǎn)到電影大廳,即系統(tǒng)首頁(yè),此時(shí)系統(tǒng)出現(xiàn)的是默認(rèn)推薦的電影信息,用戶可以在此選擇自己喜歡的電影進(jìn)行收藏。針對(duì)不同的用戶,系統(tǒng)首頁(yè)是不一樣的,針對(duì)喜歡“2017年評(píng)分最高的美國(guó)動(dòng)作片”篩選出來(lái)的電影,如圖1所示。

        圖1 系統(tǒng)首頁(yè)

        3.3 標(biāo)簽管理模塊

        對(duì)剛注冊(cè)成功的用戶,系統(tǒng)會(huì)跳轉(zhuǎn)到標(biāo)簽管理頁(yè)面,如圖2所示。用戶通過(guò)此頁(yè)面管理標(biāo)簽,系統(tǒng)針對(duì)用戶設(shè)置的標(biāo)簽進(jìn)行個(gè)性化推薦。這些標(biāo)簽都可以修改,當(dāng)用戶的喜好改變了,即可從用戶名下拉列表中選擇“我的標(biāo)簽”進(jìn)入標(biāo)簽管理頁(yè)面。

        圖2 標(biāo)簽管理頁(yè)面

        3.4 個(gè)性化推薦模塊

        個(gè)性化推薦模塊分為4個(gè)子模塊:站內(nèi)推薦、我的標(biāo)簽、猜你喜歡、類似推薦。

        (1)“站內(nèi)推薦”子模塊

        站內(nèi)推薦是推薦當(dāng)前最新的電影資源,根據(jù)后臺(tái)數(shù)據(jù)庫(kù)里所存儲(chǔ)的最新電影信息獲得最新的電影資源,并將這些資源顯示在系統(tǒng)前端頁(yè)面。

        (2)“我的標(biāo)簽”子模塊

        該模塊的實(shí)現(xiàn)流程是獲取用戶喜愛(ài)的標(biāo)簽,根據(jù)標(biāo)簽過(guò)濾電影信息,最后按照推薦指數(shù)進(jìn)行排序,最后獲取推薦指數(shù)高的推薦給目標(biāo)用戶。具體流程是:首先根據(jù)用戶喜歡的標(biāo)簽,對(duì)電影類型進(jìn)行統(tǒng)計(jì),篩選出符合類型的電影;然后根據(jù)豆瓣評(píng)分、評(píng)分人數(shù)來(lái)進(jìn)行排序,之后對(duì)比結(jié)果;最后過(guò)濾掉用戶的喜好列表中的電影,得到結(jié)果再取排在最前面的幾個(gè)電影作為最終結(jié)果。這樣每種用戶喜歡的元素都篩選出前N個(gè),最終推薦給用戶,如圖3所示。

        圖3 根據(jù)用戶喜歡的電影的標(biāo)簽得到的推薦

        (3)“猜你喜歡”子模塊

        “猜你喜歡”子模塊使用了基于用戶的協(xié)同過(guò)濾算法結(jié)合標(biāo)簽統(tǒng)計(jì)計(jì)算的方法進(jìn)行推薦,該方法是傳入目標(biāo)用戶的感興趣電影集與其他所有用戶的數(shù)據(jù)集(包括:用戶ID、用戶電影興趣列表),經(jīng)過(guò)計(jì)算返回一個(gè)相似度從高到低的字典,字典形式為{用戶ID:相似度}。系統(tǒng)根據(jù)返回的字典獲取推薦的電影信息,經(jīng)過(guò)過(guò)濾處理后推薦給用戶。這里涉及到冷啟動(dòng)問(wèn)題,就是當(dāng)用戶興趣列表為0,導(dǎo)致無(wú)法計(jì)算興趣相似度,因此采用根據(jù)標(biāo)簽與推薦指數(shù)計(jì)算的方法來(lái)代替推薦結(jié)果。具體流程是:

        Step 1:獲取目標(biāo)用戶喜好列表;

        Step 2:根據(jù)余弦相似度公式計(jì)算目標(biāo)用戶與其他用戶之間的相似度;

        Step 3:根據(jù)相似度進(jìn)行由高到低的排序,獲取前5個(gè)用戶的喜好列表;

        Step 4:根據(jù)前5個(gè)用戶喜好列表,過(guò)濾掉不包含目標(biāo)用戶喜愛(ài)標(biāo)簽與已存在目標(biāo)用戶喜愛(ài)列表的電影;

        Step 5:將步驟4得到的電影集進(jìn)行豆瓣評(píng)分與評(píng)分人數(shù)的總和比較;

        Step 6:最終篩選出前2部電影,進(jìn)行推薦。推薦結(jié)果如圖4所示。

        圖4 采用協(xié)同過(guò)濾算法得出的推薦結(jié)果

        在這個(gè)模塊中存在一個(gè)推薦指數(shù),這個(gè)推薦指數(shù)是根據(jù)豆瓣評(píng)分與評(píng)分人數(shù)來(lái)計(jì)算的,假設(shè)豆瓣評(píng)分為R,評(píng)分人數(shù)為P。評(píng)分公式為:R=(P/2)·0.6+(P/10 000)·0.4。

        也就是評(píng)分轉(zhuǎn)為5分滿分后權(quán)重取0.6,評(píng)論人數(shù)為每萬(wàn)人評(píng)得1分后權(quán)重取0.4,最后相加得到推薦指數(shù),推薦指數(shù)最大為5星。

        (4)“類似推薦”子模塊

        系統(tǒng)根據(jù)目標(biāo)電影的標(biāo)簽,對(duì)數(shù)據(jù)庫(kù)中其他所有電影進(jìn)行統(tǒng)計(jì)、過(guò)濾,得到標(biāo)簽相同和推薦指數(shù)(推薦指數(shù)與“猜你喜歡”模塊的推薦指數(shù)算法是一致的)靠前的電影,過(guò)濾掉用戶以前接觸過(guò)的電影后將剩下的電影推薦給用戶。

        3.5 電影查詢模塊

        電影查詢模塊能方便地讓用戶搜索自己所喜歡的電影,本系統(tǒng)支持電影名模糊搜索、演員模糊搜索。

        3.6 喜好列表模塊

        喜好列表模塊是一個(gè)與用戶進(jìn)行交互的模塊,用戶可選擇電影添加到“喜歡”列表或“不喜歡”列表。為了增強(qiáng)體驗(yàn)感,使用Ajax異步請(qǐng)求來(lái)實(shí)現(xiàn)。后臺(tái)數(shù)據(jù)庫(kù)接收到用戶的反饋后進(jìn)行判斷,確定是否是用戶的新的喜好,如果是則更新該用戶的這個(gè)喜好記錄。用戶對(duì)電影的喜好設(shè)置在兩個(gè)地方:“電影詳情”頁(yè)面如圖5所示;“猜你喜歡”頁(yè)面如圖6所示。

        圖5 用戶在“電影詳情”頁(yè)面的反饋按鈕

        圖6 用戶在“猜你喜歡”頁(yè)面的反饋按鈕

        3.7 影評(píng)管理模塊

        影評(píng)是每個(gè)電影網(wǎng)站必不可少的功能之一,它是用戶對(duì)一部電影的觀后感,不僅能對(duì)其他用戶起到一定的指導(dǎo)作用,還可以影響系統(tǒng)的推薦效率。影評(píng)模塊通過(guò)Ajax異步提交表單信息,后臺(tái)把提交的原始評(píng)論信息進(jìn)行存儲(chǔ),再到前臺(tái)通知是否評(píng)論成功。

        4 結(jié) 語(yǔ)

        隨著影視行業(yè)的飛速發(fā)展,每年的電影數(shù)量都在劇增,這對(duì)視頻推薦提出了更高的要求,而本系統(tǒng)具有個(gè)性化的推薦功能以及一定的商業(yè)價(jià)值。本系統(tǒng)現(xiàn)已部署在線并穩(wěn)定提供服務(wù),由于系統(tǒng)使用簡(jiǎn)單,交互性良好,推薦準(zhǔn)確,得到了使用用戶的一致好評(píng)。

        猜你喜歡
        頁(yè)面用戶信息
        大狗熊在睡覺(jué)
        刷新生活的頁(yè)面
        訂閱信息
        中華手工(2017年2期)2017-06-06 23:00:31
        關(guān)注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        關(guān)注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        關(guān)注用戶
        商用汽車(2016年4期)2016-05-09 01:23:12
        如何獲取一億海外用戶
        展會(huì)信息
        同一Word文檔 縱橫頁(yè)面并存
        淺析ASP.NET頁(yè)面導(dǎo)航技術(shù)
        最新中文字幕亚洲一区| 中文字幕一区二区在线看| 国产精品一久久香蕉国产线看观看| 亚洲欧美日韩精品中文乱码| 亚洲精品AⅤ无码精品丝袜无码| 亚洲av高清资源在线观看三区| 我的极品小姨在线观看| 久久久精品人妻一区二区三区游戏| 天天综合天天爱天天做| 色偷偷亚洲第一成人综合网址| 亚洲国产精品福利片在线观看| 国产精品 视频一区 二区三区| AV教师一区高清| 免费高清视频在线观看视频| 开心五月激情五月天天五月五月天 | 亚洲中字幕永久在线观看| 国产精品农村妇女一区二区三区 | 国内精品免费一区二区三区| 久久96国产精品久久久| 国产性生大片免费观看性| 色婷婷日日躁夜夜躁| 亚洲蜜芽在线精品一区| 久久久精品人妻一区二区三区免费| 国产成人无码精品久久久免费 | 日本一区二区不卡精品| 无遮挡18禁啪啪羞羞漫画| 99精品免费久久久久久久久日本| 一本一本久久a久久精品| 亚洲色婷婷综合开心网| 国产免费人成视频在线观看 | 女人18毛片a级毛片| 少妇饥渴偷公乱a级无码 | 精品亚洲一区二区三区在线播放| 人妻少妇精品中文字幕专区| 热久久国产欧美一区二区精品| 国产一区二区三区在线观看免费| 精品国产亚洲一区二区在线3d| 国内偷拍第一视频第一视频区| 91久久综合精品久久久综合 | 人妻丰满熟妇一二三区| 久久精品国产亚洲av麻豆瑜伽|