計(jì)算機(jī)畢業(yè)設(shè)計(jì)Python+Spark音樂推薦系統(tǒng) 音樂大數(shù)據(jù) 音樂數(shù)據(jù)分析 音樂可視化
一、本課題研究的主要背景、目的和意義
互聯(lián)網(wǎng)在如今的爆發(fā)式發(fā)展已經(jīng)改變了我們的生活方式,互聯(lián)網(wǎng)上資源的爆發(fā)式增長讓獲取有效信息成為了新的難題。用戶接觸到的信息非常有限。于是很多提出幫助用戶快速精準(zhǔn)找到所需信息的解決方案誕生了,例如搜索引擎,推薦系統(tǒng)等。
目前大型的音樂門戶類網(wǎng)站的歌曲庫規(guī)模往往包含上千萬首的歌曲,這些歌曲被劃分成不同的語種、流派、年代、主題、心情、場(chǎng)景等,包含的信息非常的豐富,存在著嚴(yán)重的信息過載。對(duì)于系統(tǒng)中每一位音樂用戶來說,都不可能去收聽曲庫內(nèi)的每一首歌, 很多時(shí)候用戶的需求往往是“一首或幾首好聽的歌曲”這種模糊的需求,如何根據(jù)用戶在系統(tǒng)中產(chǎn)生的行為信息去龐大的歌曲庫中挖掘出用戶可能感興趣的音樂,這就需要個(gè)性化音樂推薦系統(tǒng)綜合考慮用戶偏好、時(shí)間、地點(diǎn)、環(huán)境等各種復(fù)雜的特征,準(zhǔn)確的從上千萬的海量歌曲庫中挑選出此時(shí)此刻最適合這個(gè)用戶聆聽的個(gè)性化音樂,給廣大的用戶帶來美的享受,真正做到眾口可調(diào)。
二、本課題研究已有的工作基礎(chǔ),附證書、報(bào)告、文獻(xiàn)翻譯
經(jīng)過河南工學(xué)院兩年的培養(yǎng),掌握基礎(chǔ)Mysql語言外,另外學(xué)習(xí)了基礎(chǔ)的Python、Java、Android、Html/CSS、JavaScript等編程語言,可設(shè)計(jì)一些由上述所需要的語言所完成的基礎(chǔ)軟件系統(tǒng)。此外可熟練使用Java語言進(jìn)行編程工作,對(duì)于完成該系統(tǒng)所使用的Intellij?IDEA編程軟件以及NavicatPremium15數(shù)據(jù)庫軟件可以靈活運(yùn)用,以及對(duì)于Tomcat、maven、?SpringBoot的環(huán)境的搭建等也有應(yīng)用能力并且使其運(yùn)用到所做的項(xiàng)目當(dāng)中去。通過學(xué)習(xí)清楚了解其分析方法,并使用Java語言編程實(shí)踐了過一些項(xiàng)目。在學(xué)習(xí)Java開發(fā)的過程中,曾與同學(xué)多次合作參與Java有關(guān)的項(xiàng)目,比如基于JavaEE的油畫商城、基于JavaEE的通訊錄管理系統(tǒng)等。
本課題主要是通過spring boot框架來完成整個(gè)設(shè)計(jì)工作。音樂推薦系統(tǒng)的前臺(tái)設(shè)計(jì)主要使用的Vue + Vue-Router + Vuex + Axios + ElementUI技術(shù)來添加進(jìn)入整體頁面所需要的元素和整體頁面的框架,使用CSS技術(shù)對(duì)原來的頁面進(jìn)行一些修飾與調(diào)整,最后使用JS與jQuery技術(shù)來實(shí)現(xiàn)基礎(chǔ)頁面的呈現(xiàn)與效果。后臺(tái)設(shè)計(jì)則是使用Java技術(shù)來實(shí)現(xiàn)每個(gè)頁面模塊的響應(yīng)與實(shí)現(xiàn),以及數(shù)據(jù)庫之間的搭建,然后使用數(shù)據(jù)庫技術(shù)來實(shí)現(xiàn)每個(gè)頁面模塊數(shù)據(jù)的操作,最后通過SpringBoot架構(gòu)來實(shí)現(xiàn)每個(gè)模塊應(yīng)實(shí)現(xiàn)的功能。從而從用戶偏好、時(shí)間、地點(diǎn)、環(huán)境等各種復(fù)雜的特征,準(zhǔn)確的從上千萬的海量歌曲庫中挑選出此時(shí)此刻最適合這個(gè)用戶聆聽的個(gè)性化音樂,給廣大的用戶帶來美的享受,真正做到眾口可調(diào)。
?
?
?
?
?
三、研究的內(nèi)容和可行性論證
論文主要研究的是基于多模式協(xié)同過濾算法而開發(fā)的音樂推薦系統(tǒng)。設(shè)計(jì)思路是用戶通過登陸進(jìn)入系統(tǒng),根據(jù)用戶選擇至少5位藝人進(jìn)行收藏,以此來初步確定用戶欣賞音樂的傾向。另外,用戶還可以從大家的推薦中搜索自己 喜愛的音樂,或者從品味相似的好友中找到適合自己的音樂。在不同需求下,完成用戶信息的管理、歌曲打分的管理、歌曲推薦的管理、等功能。
通過詳細(xì)的需求分析和成功經(jīng)驗(yàn)的借鑒,采集到足夠的信息。采用先進(jìn)科學(xué)和適合需求的設(shè)計(jì)方法,有助于實(shí)現(xiàn)對(duì)系統(tǒng)進(jìn)行科學(xué)、嚴(yán)謹(jǐn)、全面、完整的設(shè)計(jì),簡化設(shè)計(jì)流程,降低出錯(cuò)率。本系統(tǒng)是利用NavicatPremium15創(chuàng)建了數(shù)據(jù)庫,NavicatPremium15是一個(gè)功能強(qiáng)大、高性能的數(shù)據(jù)庫管理系統(tǒng)軟件,提供了一整套數(shù)據(jù)庫管理體系結(jié)構(gòu),功能可靠。給音樂推薦系統(tǒng)提供了一個(gè)良好的技術(shù)保障。Intellij?IDEA是一種基于Windows的優(yōu)秀的計(jì)算機(jī)程序開發(fā)語言軟件,它采用可視化的開發(fā)方法,是一種易用、快速、高效的應(yīng)用軟件開發(fā)工具。自問世以來經(jīng)歷了多個(gè)版本的更新,日漸完善,它強(qiáng)大的功能為實(shí)現(xiàn)用戶的要求提供保證。Intellij?IDEA為開發(fā)人員提供了強(qiáng)大的兼容應(yīng)用程序的有效工具,從而將Java程序設(shè)計(jì)語言提高到了一個(gè)新境界,已經(jīng)成為程序開發(fā)人員的最佳選擇,而且也是方便快捷的開發(fā)功能完善的數(shù)據(jù)庫應(yīng)用程序的出色工具。
對(duì)本系統(tǒng)從以下三個(gè)方面進(jìn)行可行性論證:
1、技術(shù)可行性
該平臺(tái)的開發(fā)需要掌握J(rèn)ava、Mysql、Html/Css、JavaScript等基礎(chǔ)語言的應(yīng)用以及Tomcat、Maven、SpringBoot框架的使用,由于有些語言是開過課程的,關(guān)于這方面的編程書也有很多,學(xué)習(xí)與使用起來也更方便一點(diǎn)。
2、操作可行性
該軟件系統(tǒng)開發(fā)操作雖然有一定難度,但是只要克服框架這一些難點(diǎn),其余的大部分還是跟平常自己所使用技術(shù)相關(guān)。
3、經(jīng)濟(jì)可行性
在經(jīng)濟(jì)方面,所用到的軟件編譯環(huán)境都能從網(wǎng)上下載,并且可以免費(fèi)安裝到自己的電腦上,所以在經(jīng)濟(jì)可行性方面,完全沒有問題,符合經(jīng)濟(jì)的可行性。
四、擬解決的關(guān)鍵問題及難點(diǎn)
1.?平臺(tái)的搭建。在課題開始之前需要安裝開發(fā)環(huán)境,其中框架需要配置正確的參數(shù)和安裝環(huán)境,這里的參數(shù)配置是相對(duì)困難的。
2.?系統(tǒng)里的數(shù)據(jù)從網(wǎng)易云中獲取,存放到自己的數(shù)據(jù)庫中,網(wǎng)易云網(wǎng)頁版爬取時(shí)有反扒機(jī)制,并不容易獲取。
3.?推薦算法的實(shí)現(xiàn)。系統(tǒng)選擇使用協(xié)同過濾算法。算法的正確實(shí)現(xiàn)是推薦頁面實(shí)時(shí)更新的關(guān)鍵。算法實(shí)現(xiàn)不僅要求數(shù)據(jù)格式正確還要求算法代碼的正確編寫。
4.?推薦頁面實(shí)時(shí)更新。前端頁面能夠運(yùn)行起來是很容易的,在后端數(shù)據(jù)推薦算法的實(shí)現(xiàn)后,前端的信息能夠及時(shí)變化是非常必要的。在系統(tǒng)開發(fā)完成之后,一位用戶獲取一次推薦是比較容易的,多位用戶獲取多次推薦,且要得到及時(shí)反映是比較困難的。
?
五、擬采取的研究方法(方案、技術(shù)路線等)
本課題根據(jù)人們的需求隨著數(shù)據(jù)量的不斷增大在不斷的增加,而且人們對(duì)音樂的追求也隨著也隨著這些不斷的增多。個(gè)性化推薦系統(tǒng)的產(chǎn)生順從了時(shí)代的發(fā)展,在不遠(yuǎn)的將來,個(gè)性化推薦系統(tǒng)必能大放異彩。
1、本課題實(shí)施的技術(shù)路線
(1)掌握 java基礎(chǔ)語言的應(yīng)用,實(shí)現(xiàn)對(duì) SpringBoot 框架的應(yīng)用。
(2)研究分析這項(xiàng)新技術(shù)的研發(fā),可以有效避免音樂推薦的商業(yè)化行為。因?yàn)樗耆挥帽容^音樂的點(diǎn)擊率、用戶關(guān)注度和評(píng)價(jià)信息,因此不會(huì)產(chǎn)生冷啟動(dòng)、稀疏性和擴(kuò)展性問題,而對(duì)于用戶心理或情緒上的波動(dòng)又具有明顯的針對(duì)性,不失為一種人性化的音樂推薦技術(shù)。
2、針對(duì)本課題研究的內(nèi)容,確定使用如下方案。
(1)根據(jù)課題要求查閱資料,查閱文獻(xiàn)。
(2)根據(jù)查詢的相關(guān)資料,結(jié)合任務(wù)書需求,進(jìn)行需求分析。
(3)合理的系統(tǒng)設(shè)計(jì)。
(4)各模塊正常實(shí)現(xiàn)。
(5)測(cè)試功能實(shí)現(xiàn)是否正常



















