版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
主講人:AiPPT時(shí)間:20XX.XXPOWERPOINTDESIGN202XPowerPointDesign------------------影評(píng)數(shù)據(jù)分析與電影推薦Catalogue目錄工具選擇2.1.明確目標(biāo)與數(shù)據(jù)準(zhǔn)備電影推薦初步分析3.4.總結(jié)與展望5.--------------PowerPointDesign明確目標(biāo)與數(shù)據(jù)準(zhǔn)備01PARTPOWERPOINTDESIGN目標(biāo)明確性本案例目標(biāo)明確,旨在根據(jù)用戶對(duì)不同電影的評(píng)分情況實(shí)現(xiàn)新的電影推薦。階段性目標(biāo)包括“找出和某用戶有類似觀影愛好的用戶”、“找出和某一個(gè)電影有相似的觀眾群的電影”等。數(shù)據(jù)準(zhǔn)備是根據(jù)要實(shí)現(xiàn)的目標(biāo)要求,收集、積累、清洗和整理所需要的數(shù)據(jù)。在實(shí)際操作時(shí),有時(shí)候明確目標(biāo)和數(shù)據(jù)準(zhǔn)備并沒有完全嚴(yán)格的時(shí)間界限。數(shù)據(jù)采集與處理在進(jìn)行數(shù)據(jù)采集時(shí),需要根據(jù)實(shí)際的業(yè)務(wù)環(huán)境來采用不同的方式,例如使用爬蟲、對(duì)接數(shù)據(jù)庫(kù)、使用接口等。本案例需要的是用戶的對(duì)電影的評(píng)分?jǐn)?shù)據(jù),所以可以使用爬蟲獲取豆瓣電影影評(píng)數(shù)據(jù)。獲取的數(shù)據(jù)有兩個(gè)文件:包含加密的用戶ID、電影ID、評(píng)分值的用戶評(píng)分文件ratings.csv和包含電影ID和電影名稱的電影信息文件movies.csv。本案例的數(shù)據(jù)較為簡(jiǎn)單,所以基本上可以省去特征方面的復(fù)雜處理過程。分析目標(biāo)設(shè)定實(shí)際操作中,如果獲取的數(shù)據(jù)質(zhì)量無法保證,就需要對(duì)數(shù)據(jù)進(jìn)行清洗,包括對(duì)數(shù)據(jù)格式的統(tǒng)一、缺失數(shù)據(jù)的補(bǔ)充等。在數(shù)據(jù)清洗完成后還需要對(duì)數(shù)據(jù)進(jìn)行整理,例如根據(jù)業(yè)務(wù)邏輯進(jìn)行分類、去除冗余數(shù)據(jù)等。而在數(shù)據(jù)整理完成之后需要選擇合適的特征,而且特征的選擇也會(huì)根據(jù)后續(xù)的分析進(jìn)行變化。而關(guān)于特征的處理有一個(gè)專門的研究方向,就是特征工程,也是數(shù)據(jù)分析過程中很重要而且耗時(shí)的部分。數(shù)據(jù)清洗必要性本案例中,由于數(shù)據(jù)較為簡(jiǎn)單,主要集中在用戶對(duì)電影的評(píng)分?jǐn)?shù)據(jù),因此在數(shù)據(jù)清洗和整理方面的工作相對(duì)較少。但仍然需要確保數(shù)據(jù)的準(zhǔn)確性和完整性,以便為后續(xù)的分析和推薦提供可靠的基礎(chǔ)。數(shù)據(jù)準(zhǔn)備總結(jié)數(shù)據(jù)清洗與整理--------------PowerPointDesign工具選擇02PARTPOWERPOINTDESIGN01Pandas(PythonDataAnalysisLibrary)是一個(gè)強(qiáng)大的分析結(jié)構(gòu)化數(shù)據(jù)的工具集,它的使用基礎(chǔ)是Numpy(提供高性能的矩陣運(yùn)算),用于數(shù)據(jù)挖掘和數(shù)據(jù)分析,同時(shí)也提供數(shù)據(jù)清洗功能。Pandas的主要數(shù)據(jù)結(jié)構(gòu)是Series(一維數(shù)據(jù))與DataFrame(二維數(shù)據(jù)),這兩種數(shù)據(jù)結(jié)構(gòu)足以處理金融、統(tǒng)計(jì)、社會(huì)科學(xué)、工程等領(lǐng)域里的大多數(shù)數(shù)據(jù)。本案例中使用的是二維數(shù)據(jù),所以更多操作是DataFrame相關(guān)的。DataFrame是Pandas中的一個(gè)表格型的數(shù)據(jù)結(jié)構(gòu),包含有一組有序的列,每列可以是不同的值類型(如數(shù)值、字符串、布爾型等),DataFrame既有行索引也有列索引,可以被看作是由Series組成的字典。Pandas工具介紹02開發(fā)工具選擇比較適合嘗試性開發(fā)的工具JupyterNotebook。JupyterNotebook是一個(gè)交互式筆記本,支持運(yùn)行40多種編程語(yǔ)言。JupyterNotebook的本質(zhì)是一個(gè)Web應(yīng)用程序,便于創(chuàng)建和共享文學(xué)化程序文檔,支持實(shí)時(shí)代碼,數(shù)學(xué)方程,可視化和markdown。由于其靈活交互的優(yōu)勢(shì),所以很適合探索性質(zhì)的開發(fā)工作。其安裝和使用比較簡(jiǎn)單,這里就不做詳細(xì)介紹,而是推薦使用很方便的使用方式,就是使用VSCode開發(fā)工具,可以直接支持Jupyter,不需要手動(dòng)啟動(dòng)服務(wù)。JupyterNotebook選擇數(shù)據(jù)分析工具使用Pandas可以輕松地處理大規(guī)模的結(jié)構(gòu)化數(shù)據(jù),進(jìn)行數(shù)據(jù)的篩選、排序、統(tǒng)計(jì)等操作,為數(shù)據(jù)分析提供了強(qiáng)大的支持。而JupyterNotebook則提供了便捷的代碼編寫和執(zhí)行環(huán)境,支持實(shí)時(shí)的代碼調(diào)試和結(jié)果展示,使得整個(gè)數(shù)據(jù)分析過程更加直觀和高效。02工具使用優(yōu)勢(shì)選擇Pandas作為數(shù)據(jù)分析工具是因?yàn)槠鋸?qiáng)大的數(shù)據(jù)處理能力和對(duì)結(jié)構(gòu)化數(shù)據(jù)的良好支持,能夠高效地完成數(shù)據(jù)的清洗、整理和分析工作。而選擇JupyterNotebook作為開發(fā)工具,則是因?yàn)槠浣换ナ降奶攸c(diǎn)非常適合進(jìn)行探索性的數(shù)據(jù)分析和模型構(gòu)建,能夠方便地展示分析過程和結(jié)果。01工具選擇合理性工具選擇總結(jié)--------------PowerPointDesign初步分析03PARTPOWERPOINTDESIGN用戶評(píng)分?jǐn)?shù)據(jù)結(jié)構(gòu)首先可以先使用pandas的head()函數(shù)來看一下rating的結(jié)構(gòu)。head是DataFrame的成員函數(shù),用于返回前n行數(shù)據(jù)。其中n是參數(shù),代表選擇的行數(shù),默認(rèn)是5??梢钥吹剑脩鬒D是經(jīng)過長(zhǎng)度一致的字符串(實(shí)際是經(jīng)過MD5處理的字符串),影片ID是數(shù)字,所以在之后的分析過程中影片ID可能會(huì)被當(dāng)作數(shù)字來進(jìn)行運(yùn)算。如果想看一下一共有多少條數(shù)據(jù),可以查看rating.shape,輸出的(1048575,3)代表一共有將近105萬(wàn)條數(shù)據(jù),3則是對(duì)應(yīng)的上面提到的3列。然后我們可以看一下用戶的評(píng)論情況,例如數(shù)據(jù)中一共有多少人參與評(píng)論,每個(gè)人評(píng)論的次數(shù)。由于ratings數(shù)據(jù)中每個(gè)用戶可以多部影片進(jìn)行評(píng)分,所以可以按用戶進(jìn)行分組,然后使用count()來統(tǒng)計(jì)數(shù)量。而為了查看方便,可以對(duì)分組計(jì)數(shù)后的數(shù)據(jù)進(jìn)行排序。再使用head()函數(shù)查看排序后的情況??梢钥闯鲈u(píng)分最多的用戶ID是535e6f7ef1626bedd166e4dfa49bc0b4,一共評(píng)論了1149次。這里movie_id和rating的數(shù)據(jù)是相同的,是由于其計(jì)數(shù)規(guī)則是一致的,所以屬于冗余數(shù)據(jù)。但是head()函數(shù)能看到的數(shù)據(jù)太少,所以可以使用describe()函數(shù)來看統(tǒng)計(jì)信息。用戶評(píng)論情況統(tǒng)計(jì)用戶角度分析接下來,我們可以用相似的辦法,從電影的角度來看數(shù)據(jù)的分布情況,例如每一部電影被評(píng)論的次數(shù)。要獲取每一部電影的評(píng)分次數(shù)就需要通過對(duì)影片的ID進(jìn)行分組和計(jì)數(shù),但是為了提高數(shù)據(jù)的可觀性,可以通過關(guān)聯(lián)操作將影片的名稱顯示出來。通過pandas的merge函數(shù),我們可以很容易做到數(shù)據(jù)的關(guān)聯(lián)操作??梢钥吹?,被評(píng)分次數(shù)最多的電影就是《尋龍?jiān)E》,一共被評(píng)分320次。同樣,user和rating的數(shù)據(jù)是一致的,屬于冗余數(shù)據(jù)。然后我們來看一下詳細(xì)的統(tǒng)計(jì)數(shù)據(jù)和直方圖。電影評(píng)分次數(shù)統(tǒng)計(jì)01接下來同樣要對(duì)評(píng)分值進(jìn)行觀察。從統(tǒng)計(jì)數(shù)據(jù)中可以看出所有電影的平均分?jǐn)?shù)和中位數(shù)很接近,大約是3.3左右,說明整體的分布比較均勻。然后我們可以將評(píng)分次數(shù)和評(píng)分值進(jìn)行結(jié)合進(jìn)行觀察。從輸出的數(shù)據(jù)可以看出,有些電影如《尋龍?jiān)E》本身被評(píng)分的次數(shù)很多,但是綜合評(píng)分并不高,這也符合實(shí)際的情況。從plot()方法輸出的散點(diǎn)圖中可以看到,總體上數(shù)據(jù)還是呈現(xiàn)“>”分布,但是在評(píng)分次數(shù)在100和200左右出現(xiàn)了比較分散的情況,和之前的直方圖是相對(duì)應(yīng)的,這也許也是一種特殊現(xiàn)象,而是否是一種規(guī)律就需要更多的數(shù)據(jù)來分析和研究。電影評(píng)分值觀察02電影角度分析--------------PowerPointDesign電影推薦04PARTPOWERPOINTDESIGN協(xié)同過濾推薦算法推薦算法大致可以分為三類:協(xié)同過濾推薦算法、基于內(nèi)容的推薦算法和基于知識(shí)的推薦算法。其中協(xié)同過濾算法是誕生較早且較為著名的算法,其通過對(duì)用戶歷史行為數(shù)據(jù)的挖掘發(fā)現(xiàn)用戶的偏好,基于不同的偏好對(duì)用戶進(jìn)行群組劃分并推薦品味相似的商品。協(xié)同過濾推薦算法分為兩類,分別是基于用戶的協(xié)同過濾算法(user-basedcollaborativefiltering),和基于物品的協(xié)同過濾算法(item-basedcollaborativefiltering)?;谟脩舻膮f(xié)同過濾算法是通過用戶的歷史行為數(shù)據(jù)發(fā)現(xiàn)用戶對(duì)商品或內(nèi)容的喜歡(如商品購(gòu)買,收藏,內(nèi)容評(píng)論或分享),并對(duì)這些喜好進(jìn)行度量和打分。根據(jù)不同用戶對(duì)相同商品或內(nèi)容的態(tài)度和偏好程度計(jì)算用戶之間的關(guān)系,然后在有相同喜好的用戶間進(jìn)行商品推薦。其中比較重要的就是距離的計(jì)算,可以使用余弦相似性、Jaccard來實(shí)現(xiàn)。整體的實(shí)現(xiàn)思路就是:使用余弦相似性構(gòu)建鄰近性矩陣,然后使用KNN算法從鄰近性矩陣中找到某用戶臨近的用戶,并將這些臨近用戶點(diǎn)評(píng)過的影片作為備選,然后將鄰近性的值作為權(quán)重作為推薦的得分,相同的分?jǐn)?shù)可以累加,最后排除該用戶已經(jīng)評(píng)價(jià)后的影片。部分腳本如代碼清單10-13所示。代碼中給出的是基于用戶的協(xié)同過濾算法,可以試著寫出基于影片的協(xié)同過濾算法來試下電影推薦,然后對(duì)比算法的優(yōu)良性。基于用戶的協(xié)同過濾算法推薦算法介紹鄰近性矩陣建立ratings_pivot=ratings.pivot('user','movie_id','rating')ratings_pivot.fillna(value=0)m,n=ratings_pivot.shapeuserdist=np.zeros([m,m])foriinrange(m):forjinrange(m):userdist[i,j]=np.dot(ratings_pivot.iloc[i,],ratings_pivot.iloc[j,])/np.sqrt(np.dot(ratings_pivot.iloc[i,],ratings_pivot.iloc[i,])*np.dot(ratings_pivot.iloc[j,],ratings_pivot.iloc[j,]))proximity_matrix=pd.DataFrame(userdist,index=list(ratings_pivot.index),columns=list(ratings_pivot.index))推薦電影列表獲取deffind_user_knn(user,proximity_matrix=proximity_matrix,k=10):hbrs=userdistdf.sort(user,ascending=False)[user][1:k+1]returnnhbrsdefrecommend_movie(user,ratings_pivot=ratings_pivot,proximity_matrix=proximity_matrix):nhbrs=find_user_knn(user,proximity_matrix=proximity_matrix,k=10)recommendlist={}fornhbridinnhbrs.index:ratings_nhbr=ratings[ratings['user']==nhbrid]formovie_idinratings_nhbr['movie_id']:ifmovie_idnotinrecommendlist:recommendlist[movie_id]=nhbrs[nhbrid]else:recommendlist[movie_id]=recommendlist[movie_id]+nhbrs[nhbrid]ratings_user=ratings[ratings['user']==user]formovie_idinratings_user['movie_id']:ifmovie_idinrecommendlist:recommendlist.pop(movie_id)output=pd.Series(recommendlist)recommendlistdf=pd.DataFrame(output,columns=['score'])s=['movie_id']returnrecommendlistdf.sort('score',ascending=False)推薦算法實(shí)現(xiàn)--------------PowerPointDesign總結(jié)與展望05PARTPOWERPOINTDESIGN01本章通過一個(gè)利用機(jī)器學(xué)習(xí)進(jìn)行的影評(píng)數(shù)據(jù)分析案例,展示了從數(shù)據(jù)準(zhǔn)備、工具選擇、初步分析到電影推薦的完整過程。數(shù)據(jù)分析是信息時(shí)代的一個(gè)基礎(chǔ)而又重要的工作,面對(duì)飛速增長(zhǎng)的數(shù)據(jù),如何從這些數(shù)據(jù)中挖掘到更有價(jià)值的信息成為一個(gè)重要的研究方向。在明確分析目標(biāo)后,我們進(jìn)行了數(shù)據(jù)采集、清洗和整理,選擇了合適的工具進(jìn)行數(shù)據(jù)分析,并從用戶和電影兩個(gè)角度進(jìn)行了初步分析。最后,我們實(shí)現(xiàn)了基于用戶的協(xié)同過濾算法,為用戶推薦了他們可能喜歡的電影。02分析過程回顧通過本項(xiàng)目的實(shí)施,我們成功地實(shí)現(xiàn)了一個(gè)電影推薦系統(tǒng),能夠根據(jù)用戶的評(píng)分?jǐn)?shù)據(jù)為用戶推薦他們可能感興趣的電影。這個(gè)系統(tǒng)不僅展示了數(shù)據(jù)分析的整個(gè)過程,還提供了一個(gè)實(shí)際的應(yīng)用場(chǎng)景,展示了機(jī)器學(xué)習(xí)在推薦系統(tǒng)中的應(yīng)用。項(xiàng)目成果項(xiàng)目總結(jié)算法優(yōu)化與改進(jìn)未來,我們可以進(jìn)一步優(yōu)化和改進(jìn)推薦算法,例如嘗試不同的相似性計(jì)算方法,或者結(jié)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版天然氣供應(yīng)合同爭(zhēng)議解決機(jī)制范本模板3篇
- 二零二五年度環(huán)保設(shè)施建設(shè)合同樣本4篇
- 2025年度全國(guó)牛羊肉批發(fā)市場(chǎng)聯(lián)動(dòng)購(gòu)銷合同
- 二零二五版林木種子繁殖與推廣合同4篇
- 2025年度高層住宅勞務(wù)作業(yè)分包合同實(shí)施細(xì)則
- 2025年度離婚后知識(shí)產(chǎn)權(quán)歸屬及使用合同3篇
- 2025版工業(yè)用地購(gòu)置與房屋租賃合同
- 二零二五年度企業(yè)品牌形象設(shè)計(jì)合同-@-1
- 2025年信息技術(shù)內(nèi)部控制合同規(guī)范與信息安全保障
- 二零二五版電子元器件更換及升級(jí)合同范本3篇
- 報(bào)建協(xié)議書模板
- 汽車配件購(gòu)銷合同范文
- 貴州省2024年中考英語(yǔ)真題(含答案)
- 施工項(xiàng)目平移合同范本
- (高清版)JTGT 3360-01-2018 公路橋梁抗風(fēng)設(shè)計(jì)規(guī)范
- 胰島素注射的護(hù)理
- 云南省普通高中學(xué)生綜合素質(zhì)評(píng)價(jià)-基本素質(zhì)評(píng)價(jià)表
- 2024年消防產(chǎn)品項(xiàng)目營(yíng)銷策劃方案
- 聞道課件播放器
- 03軸流式壓氣機(jī)b特性
- 五星級(jí)酒店收入測(cè)算f
評(píng)論
0/150
提交評(píng)論