版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、蘇州大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)學(xué)院(部)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院題 目基于深度神經(jīng)網(wǎng)絡(luò)的音樂推薦系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)目 錄摘 要1前 言3第一章緒 論41.1論文研究背景31.2音樂推薦算法描述51.3論文的內(nèi)容和意義51.4本文的組織結(jié)構(gòu)5第二章推薦算法簡介72.1音樂推薦方法72.1.1 基于內(nèi)容的音樂推薦算法72.1.2 基于用戶協(xié)同過濾的音樂推薦算法72.1.3 混合推薦算法82.2 音樂評價(jià)的指標(biāo)92.3本章小結(jié)10第三章基于神經(jīng)網(wǎng)絡(luò)的音樂推薦算法及設(shè)計(jì)113.1數(shù)據(jù)集及預(yù)處理113.1.1 音頻讀取113.1.2 音頻分析123.2卷積神經(jīng)網(wǎng)絡(luò)133.3激勵函數(shù)153.3.1 介紹153.3
2、.2 激勵函數(shù)的選擇163.4損失函數(shù)163.5優(yōu)化器163.6模型設(shè)計(jì)及訓(xùn)練結(jié)果173.7本章小結(jié)19第四章混合方法的設(shè)計(jì)與實(shí)現(xiàn)204.1基于用戶的協(xié)同過濾算法204.1.1冷處理問題204.1.2稀疏性問題204.2用戶相似度計(jì)算214.3模型搭建234.4本章小結(jié)23第五章系統(tǒng)展示245.1功能介紹245.2用戶初始化255.3其他推薦方式25第六章 總結(jié)與展望276.1 本文總結(jié)276.2后續(xù)工作展望27參考文獻(xiàn)28致 謝29II摘 要由于以往的音樂推薦算法大多局限于基于標(biāo)簽內(nèi)容的推薦或者是單一的協(xié)同過濾推薦,在表現(xiàn)上并不是特別令人滿意,不得不承認(rèn)一個基于內(nèi)容的音樂推薦算法是必不可少的
3、,但是在此之上加入?yún)f(xié)同過濾算法并細(xì)分為行為協(xié)同過濾與用戶本身協(xié)同過濾,且將幾種算法做一個簡單的獎懲措施,讓用戶自己選擇自己的喜好,自己訓(xùn)練自己的音樂推薦系統(tǒng)與音樂推薦算法才是一個合理的優(yōu)秀的音樂推薦算法。根據(jù)現(xiàn)有的神經(jīng)網(wǎng)絡(luò)框架TensorFlow以及集成API tflearn我們可以輕松的使用工具對我們的數(shù)據(jù)集進(jìn)行訓(xùn)練從而得到一個輸入為音頻輸出為類型的多層神經(jīng)網(wǎng)絡(luò),在此基礎(chǔ)之上將音樂做一個分類并給予標(biāo)簽定義,并在用戶錄入的過程中給予用戶同樣的標(biāo)簽值,從而獲得優(yōu)秀的推薦效果本論文主要實(shí)現(xiàn)了一個以基于內(nèi)容部分的音樂推薦算法與基于用戶協(xié)同過濾部分的音樂推薦算法相結(jié)合的混合音樂推薦算法,并進(jìn)行初步的推
4、薦展示。關(guān)鍵詞:音樂;協(xié)同過濾;TensorFlow;算法1AbstractBecause in the past mostly confined to music recommendation algorithm based on the label content is single collaborative filtering recommendation or recommend, on the performance is not particularly satisfactory, have to admit that a music recommendation algorit
5、hm based on content is indispensable, but on top of this join collaborative filtering algorithm and subdivided into collaborative filtering and the collaborative filtering the user itself, and several algorithms to do a simple rewards and punishments measures, allows users to choose their own prefer
6、ences, training their own music recommendation system and music recommendation algorithm is a reasonable good music recommendation algorithm.According to the existing neural network framework TensorFlow and integration API tflearn we can easily use tools to our training data set to obtain an input f
7、or the audio output for types of multilayer neural networks, on this basis to do the music classification and given a label definition, and in the process of user input to give the user the same tag value, recommend to obtain good effect。The whole process of the development of the system module foll
8、ows the steps of the software work project development process, and combines the object-oriented analysis and design method to design the database. In the design of the algorithm, the Python language is adopted, and the open source framework of Google is used in the training machine learning process
9、.Keywords: Music;CF;Tensorflow;algorithm2前 言21世紀(jì)是信息化時(shí)代,隨著信息技術(shù)和網(wǎng)絡(luò)技術(shù)的發(fā)展,與人們的日常生活早已建立了離不開的聯(lián)系。對網(wǎng)絡(luò)音樂服務(wù)來說,不管是音樂下載服務(wù),或者是網(wǎng)絡(luò)音樂電臺服務(wù),都需要用到優(yōu)秀的內(nèi)容推薦系統(tǒng)去輔助整個系統(tǒng)。個性化音樂推薦系統(tǒng)是目前最流行的應(yīng)用方法之一。現(xiàn)有的基于內(nèi)容的音樂推薦系統(tǒng)通常采用兩階段的方法。他們首先提取傳統(tǒng)的音頻內(nèi)容特征,如梅爾頻率倒譜系數(shù)(1),然后預(yù)測用戶偏好。然而,這些傳統(tǒng)的特性最初不是為音樂推薦而設(shè)計(jì)的,不能捕捉音頻中的所有相關(guān)信息,從而限制推薦性能?;谏疃刃湃蔚男履P途W(wǎng)絡(luò)和概率圖模型,我們統(tǒng)
10、一進(jìn)入一個自動化的過程,同時(shí)學(xué)習(xí)。從音頻內(nèi)容的特點(diǎn),并提出個性化的建議。與現(xiàn)有的基于深度學(xué)習(xí)的模型,我們的模型優(yōu)于他們在暖啟動不依賴協(xié)同過濾(CF)的冷啟動階段。然后,我們提出了一種有效的混合方法無縫集成自動學(xué)習(xí)的功能,我們的混合方法不僅大大改善了CF的性能,也優(yōu)于傳統(tǒng)的基于特征的混合方法。本系統(tǒng)在基于內(nèi)容的音樂推薦部分采用了Google開源框架Tensorflow的CNN模型,音樂系統(tǒng)的實(shí)現(xiàn)基于Django(后臺服務(wù)器端)+Layui(前端模板框架)+Mysql數(shù)據(jù)庫+Redis緩存數(shù)據(jù)庫,在基于用戶的協(xié)同過濾部分采用了有關(guān)矩陣相似度之間的計(jì)算方程。(1) 梅爾頻率倒譜系數(shù) (Mel-Fre
11、quency Cepstral Coefficients,MFCCs)就是組成梅爾頻率倒譜的系數(shù)。他們派生自音頻片段的倒譜(cepstrum)表示(anonlinear”spectrun-of-a-spectrum”)。倒譜和梅爾頻率倒譜的區(qū)別在于,梅爾頻率倒譜的頻帶劃分是在梅爾刻度上等距劃分的,它比用于正常的對數(shù)倒頻譜中的線性間隔的頻帶更能近似人類的聽覺系統(tǒng)。這種頻率彎曲可以更好的表示聲音,例如音頻壓縮。第一章緒 論本章首先介紹了論文的研究背景,其次簡單介紹了本文所做的主要內(nèi)容,在本章的最后介紹了論文的組織結(jié)構(gòu)。1.1論文研究背景近年來,在互聯(lián)網(wǎng)大數(shù)據(jù)發(fā)展日益高漲的今天,各種應(yīng)用開始使用推薦
12、算法,如新聞推薦類的今日頭條,短視頻類的抖音、快手,網(wǎng)易云音樂的私人FM(調(diào)頻廣播),荔枝FM的推薦,傳統(tǒng)視頻網(wǎng)站的愛奇藝,bilibili等,都開始使用推薦算法使得自己所擁有的或者說是面向的用戶群體更為廣泛,而全自動化、優(yōu)良的推薦算法使得相關(guān)工作人員擺脫了原有的手工設(shè)置權(quán)重,提高了工作效率。在過去,一款沒有內(nèi)容推薦的APP所有人打開都是一樣的,但是現(xiàn)如今所有的APP每個人打開所得到的推薦內(nèi)容是不一樣的,無論是新聞系的今日頭條,還是短視頻系列的所有APP,以及推薦算法和推薦系統(tǒng)的出現(xiàn),使得有一股隱形的力量在挖掘用戶留下的各種顯示和隱式反饋,如觀看記錄,評分紀(jì)錄,瀏覽歷史等等,根據(jù)用戶的停留時(shí)間
13、,點(diǎn)擊頻率,來挖掘出用戶的特征及個人喜好,從而推薦的內(nèi)容和信息便會主動地迎合用戶,達(dá)到用戶的理想需求。在過去的相關(guān)推薦里音樂推薦往往是由基于內(nèi)容的音樂推薦算法作為推薦主體,或者是以CF(協(xié)同過濾)推薦算法作為推薦主體實(shí)現(xiàn)的,在這個推薦過程中往往有一些不足。最初的音樂推薦是基于MFCCs的兩階段推薦,第一階段為提取音樂特征,第二步則由特征推薦用戶,但是MFCCs并不能完美的表達(dá)出所有的音樂特征,包括音樂的作者、音樂的類型、音樂的語種等等,換言之,根據(jù)頻譜所做到的僅僅是將音頻部分幾乎完全擬合,或者是說音頻矩陣距離較短的一批次音樂劃分為一個類型,且不論不同時(shí)間長度的音樂會有什么影響,相同的音頻真的可
14、以給用戶帶來優(yōu)良的體驗(yàn)嗎?并不是,音樂是分類型的,例如常見的搖滾,HIPHOP,雷鬼,純音樂,亦或是分類更為詳盡的電影原聲、游戲原聲等,這些音樂類型屬于音樂的高級屬性。一個用戶喜歡A類型的音樂(例如HIPHOP),一款基于內(nèi)容的推薦算法便會一直推薦hiphop的歌曲,這樣是不合理的,所以人工的設(shè)置權(quán)重的方法應(yīng)運(yùn)而生,但是非自動化的推薦方法永遠(yuǎn)是不合理且不實(shí)時(shí)的,所以在這樣的背景下,提出了一種基于內(nèi)容與用戶協(xié)同過濾的混合推薦方法。1.2 音樂推薦算法描述音樂是互聯(lián)網(wǎng)中的重要組成部分,目前的音樂網(wǎng)站或者媒體中擁有數(shù)以千萬計(jì)的音樂,假如用戶要自己收聽每一首音樂來判斷自己喜歡不喜歡這首音樂,且不談用戶
15、能不能聽完這么多音樂,如果每首音樂都要聽完才能判斷自己是否喜歡這首音樂的話,那么會有越來越少的用戶去選擇新歌,去聽一些自己沒有聽過的音樂。推薦算法正是為解決此類問題而產(chǎn)生的。目前市面上電影推薦算法數(shù)不勝數(shù),但大多數(shù)應(yīng)用的還是協(xié)同過濾算法,基于用戶或者基于內(nèi)容、評分等等,根據(jù)關(guān)鍵詞過濾掉無關(guān)信息,然后把結(jié)果返回給用戶。網(wǎng)易云音樂作為國內(nèi)最大的音樂媒體,每天處理海量的新用戶與新歌新專輯的信息,它所使用的是混合推薦算法,并且加入了深度學(xué)習(xí),介于網(wǎng)易云平臺擁有的大量使用人群,所以他的數(shù)據(jù)集是豐富多樣但充滿噪點(diǎn)的,網(wǎng)易云音樂的推薦算法種類繁多,基于音樂內(nèi)容部分有同類型的歌曲推薦,基于用戶本身屬性的協(xié)同過
16、濾我們可以看到很多評論區(qū)下方會有置頂?shù)耐窃u論,這是因?yàn)榫W(wǎng)易云音樂在處理一個數(shù)據(jù)量較為稀疏的用戶時(shí)使用到了基于用戶所在地的協(xié)同過濾推薦,即相似的用戶屬性則給用戶帶來相似的推薦。當(dāng)然了,推薦算法非常的多,但是想要找到一種適合的算法確實(shí)有一定的難度,每種算法都有一定的優(yōu)缺點(diǎn),有各自的局限領(lǐng)域,這樣推薦算法的選擇就成了一個難題,設(shè)計(jì)者往往需要測試多種算法,了解它的原理及概念,最后再逐一篩選找到最適合的那一個或多個算法。具體的音樂推薦算法將在第二章中詳細(xì)介紹。1.3論文的內(nèi)容和意義論文的主要內(nèi)容有:1、 對現(xiàn)有的音樂推薦算法做深入的了解,總結(jié)分析他們的優(yōu)點(diǎn)與缺點(diǎn),并對他們的不足進(jìn)行分析,為我們設(shè)計(jì)音樂
17、推薦算法做下基礎(chǔ)2、 搭建基于神經(jīng)網(wǎng)絡(luò)的內(nèi)容部分的音樂推薦算法并利用Google開源框架Tensorflow對神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練3、 基于已有的數(shù)據(jù)集進(jìn)行拆分,獲得測試集與訓(xùn)練集并對獲得的推薦方法進(jìn)行評測。本文在訓(xùn)練方向選用機(jī)器學(xué)習(xí)的開源庫Tflearn(基于Google框架TensorFlow),在音樂頻譜分析方向選用了Linux的Sox應(yīng)用以及python的eyed3庫。1.4論文的組織架構(gòu)全文共分六章,各章的內(nèi)容安排如下:第一章:緒論,本章主要介紹課題項(xiàng)目背景,開發(fā)目標(biāo)和意義。第二章:推薦算法簡介,對現(xiàn)在大多數(shù)的推薦算法進(jìn)行介紹。第三章:基于內(nèi)容的音樂推薦部分,主要是對音樂推薦系統(tǒng)的功能需
18、求的詳細(xì)分析。第四章:混合算法的設(shè)計(jì)與實(shí)現(xiàn),主要是介紹基于音樂內(nèi)容的部分與用戶協(xié)同過濾相結(jié)合的系統(tǒng)權(quán)重訓(xùn)練。第五章:系統(tǒng)實(shí)現(xiàn),主要介紹了系統(tǒng)的主要頁面和部分功能。第六章:總結(jié)與展望,對課題進(jìn)行總結(jié),并對以后的改進(jìn)進(jìn)行展望。第二章推薦算法簡介2.1 音樂推薦的方法本文以推薦算法的發(fā)展路途,將推薦算法分為傳統(tǒng)的推薦算法和非傳統(tǒng)的推薦算法。傳統(tǒng)的推薦算法有基于內(nèi)容推薦、協(xié)同過濾推薦、基于知識推薦、基于效用推薦、基于關(guān)聯(lián)規(guī)則推薦、組合推薦等等,以下對部分進(jìn)行介紹:2.1.1 基于內(nèi)容的音樂推薦方法基于內(nèi)容部分(Content-Based Recommendations CB)的音樂推薦算法是一個最為經(jīng)
19、典的音樂推薦算法,其原理就是對物品進(jìn)行相似度計(jì)算,由用戶過去感興趣的商品進(jìn)行依據(jù)相似度高低排序的商品推薦。在音樂推薦的領(lǐng)域中也是絕大多數(shù)音樂推薦算法所使用的方法,常見的標(biāo)簽內(nèi)容信息由藝術(shù)家,發(fā)行時(shí)間,流派,播放時(shí)長等構(gòu)成,簡單的推薦算法往往由單一label實(shí)現(xiàn)推薦過程,例如給用戶推薦多首同藝術(shù)家的歌曲,或是同屬一個流派的 音樂。這樣的推薦過程帶來的效果是不合理的,當(dāng)然了處理過程有很多種優(yōu)化方法, 例如進(jìn)行數(shù)據(jù)歸一化處理,權(quán)衡各個不同指標(biāo)之間的權(quán)重。除此以外還有muti-labels多特征推薦,例如Cyril Laurier1提出的將音樂基于標(biāo)簽進(jìn)行分類方法,將音樂劃分為幾個比較大的類,通過各個
20、不同的label實(shí)現(xiàn)音樂本身與類之間的映射關(guān)系。上文中提到過的MFCCs就是其中一種,通常是以音樂音頻本身之間的相似度計(jì)算通過聚類將音樂文件進(jìn)行分類,從而進(jìn)行的同批次推薦方法。2.1.2 基于用戶協(xié)同過濾的推薦方法協(xié)同過濾算法(Collaborative Filtering Recommendation)是推薦系統(tǒng)領(lǐng)域中使用最早最經(jīng)典和可行性最好的算法之一,基于用戶本身或是用戶行為的推薦算法原理大多相似,即計(jì)算不同用戶之間的相似度問題,在處理單一用戶數(shù)據(jù)的時(shí)候可以通過所處地域,所受教育程度,性別等特征將用戶進(jìn)行簡單劃分,這可以用于處理協(xié)同過濾中會遇到的冷啟動或者是稀疏性問題,基于用戶行為的推薦
21、算法大多由用戶收聽歷史和決策行為影響。稀疏性問題是協(xié)同過濾無法避免遇到的問題,數(shù)據(jù)集的極端往往會造成推薦結(jié)果糟糕的情況,所以要解決這些問題需要認(rèn)真考慮。圖2.1 協(xié)同過濾的推薦過程2.1.3 混合推薦算法由于各種推薦方法都有優(yōu)缺點(diǎn),所以在實(shí)際中,組合推薦(Hybrid Recommendation)經(jīng)常被采用。在現(xiàn)有系統(tǒng)中最常見的做法是基于內(nèi)容與基于協(xié)同過濾的混合推薦算法。最簡單的做法就是分別用基于內(nèi)容的方法和協(xié)同過濾推薦方法去產(chǎn)生一個推薦預(yù)測結(jié)果,然后用某方法組合其結(jié)果。,組合推薦一個最重要原則就是通過組合后要能避免或彌補(bǔ)各自推薦技術(shù)的弱點(diǎn)。常見的組合方式有以下幾種:變換(Switch):根
22、據(jù)問題背景和實(shí)際情況或要求決定變換采用不同的推薦技術(shù)。加權(quán)(Weight):加權(quán)多種推薦技術(shù)結(jié)果?;旌?Mixed):同時(shí)采用多種推薦技術(shù)給出多種推薦結(jié)果為用戶提供參考。特征組合(Feature combination):組合來自不同推薦數(shù)據(jù)源的特征被另一種推薦算法所采用。圖2.2 推薦算法優(yōu)缺點(diǎn)2.2 音樂推薦的指標(biāo)1.平均誤差MAE(Mean Absolute Error)平均絕對誤差 MAE是對推薦算法質(zhì)量評價(jià)的標(biāo)準(zhǔn)之一 ,它通過計(jì)算預(yù)測評分與真實(shí)評價(jià)數(shù) 據(jù)上的差別來衡量推薦結(jié)果的準(zhǔn)確性。MAE的值越小 ,推薦準(zhǔn)確性越高。假設(shè)預(yù)測的用戶評分集合表示為P1,.PN,對應(yīng) 的實(shí)際用戶評分集合
23、為 q1,.qN ,則MAE的計(jì)算公式為2.準(zhǔn)確率與召回率(Precision & Recall)準(zhǔn)確率和召回率是廣泛用于信息檢索和統(tǒng)計(jì)學(xué)分類領(lǐng)域的兩個度量值,用來評價(jià)結(jié)果的質(zhì)量。其中精度是檢索出相關(guān)文檔數(shù)與檢索出的文檔總數(shù)的比率,衡量的是檢索系統(tǒng)的查準(zhǔn)率;召回率是指檢索出的相關(guān)文檔數(shù)和文檔庫中所有的相關(guān)文檔數(shù)的比率,衡量的是檢索系統(tǒng)的查全率。以下為定義:1.Precision Rate = 提取出的正確信息條數(shù)/提取出的信息條數(shù) 2.Recall Rate = 提取出的正確信息條數(shù)/樣本中的信息條數(shù) 3.F1 = Precision Rate * Recall Rate * 2/(Preci
24、sion Rate + Recall Rate) (F1即為正確率和召回率的調(diào)和平均值)。其中Precision Rate與Recall Rate兩者取值在0和1之間,越接近1,查準(zhǔn)率或查全率就越高。R(u):對用戶u推薦的N個物品的集合。T(u):數(shù)據(jù)集中用戶u真實(shí)評分過的物品集合。2.3 本章小結(jié)本章主要介紹了以往比較流行的一些傳統(tǒng)推薦算法,并分析總結(jié)了它們的優(yōu)缺點(diǎn),簡單介紹了新的推薦算法的原理和一些常用的評價(jià)指標(biāo),為課題的研究準(zhǔn)備了一些基礎(chǔ)知識,下章將進(jìn)行基于神經(jīng)網(wǎng)絡(luò)的推薦算法設(shè)計(jì)。29第三章 基于神經(jīng)網(wǎng)絡(luò)的內(nèi)容推薦算法的設(shè)計(jì)3.1數(shù)據(jù)集及預(yù)處理3.1.1 數(shù)據(jù)集的選擇在音樂領(lǐng)域的機(jī)器學(xué)
25、習(xí)有注明的數(shù)據(jù)集MillionSongDataset,是一個由The Echo Nest提供的數(shù)據(jù)集,分析labels的過程是由眾多音樂學(xué)者進(jìn)行人工的判斷,所以在音樂的判斷過程極為準(zhǔn)確,且在數(shù)據(jù)調(diào)用及分析方向提供了眾多強(qiáng)有力的接口,所以在最初的數(shù)據(jù)集選擇中我選擇了它。圖3.1 MillionSong DataSet在使用MillionSongDataSet提供的與正文數(shù)據(jù)集同樣結(jié)構(gòu),包含社交關(guān)系,用戶播放歷史的1G輕量級數(shù)據(jù)集作為本次實(shí)驗(yàn)的數(shù)據(jù)集之后,數(shù)據(jù)的眾多影響因子可以自行的選擇,例如有關(guān)社交亦或是地域所帶來的影響,但是在發(fā)現(xiàn)數(shù)據(jù)集沒有對語種進(jìn)行區(qū)別而大多數(shù)數(shù)據(jù)近乎全為英文的時(shí)候,個人考慮
26、到現(xiàn)有的互聯(lián)網(wǎng)開放資源似乎也可以做到一個簡單的這樣的數(shù)據(jù)集,所以依靠爬蟲以歌單為個體對某音樂平臺的數(shù)據(jù)進(jìn)行了獲取?;A(chǔ)的數(shù)據(jù)集設(shè)計(jì)理念是由以下幾個部分構(gòu)成的,歌單本身作為一個單位,歌單的labels,歌單的熱度(綜合評論數(shù)與收聽人數(shù))歌單本身包含大量的歌曲,歌曲有以下屬性:ID(唯一編號), 歌詞(可以做詞頻統(tǒng)計(jì)并為音樂系統(tǒng)的實(shí)現(xiàn)做基礎(chǔ)),歌曲的labels(以矩陣形式表明歌曲的各個參數(shù)的屬性),歌曲的熱度,歌曲的語種,歌曲的作者,歌曲所屬專輯,歌曲的相冊封面。而歌單本身在某音樂平臺的評論中可以提取相應(yīng)的詞頻從而獲得歌單的關(guān)鍵詞,即作為labels存在,另外在本系統(tǒng)中,采取了以歌單模擬用戶的方
27、法, 即一個歌單代表了一個用戶,這是因?yàn)樵谀骋魳菲脚_中有一個設(shè)計(jì)理念,即用戶所喜歡的歌曲和用戶所創(chuàng)建的歌單本質(zhì)上的類都是歌單,所以在爬蟲的過程中,絕大多數(shù)歌單即是用戶喜歡的音樂,那么在歌單處理的過程中變會生成另一組用戶數(shù)據(jù)。用戶數(shù)據(jù)由以下屬性組成:用戶的所處地,用戶的收聽歷史,用戶的特征偏愛矩陣。在本次實(shí)驗(yàn)中采取了如下圖所示的數(shù)據(jù)結(jié)構(gòu):圖3.2 歌單爬取結(jié)果由該表單中的數(shù)據(jù)進(jìn)行提取分析便可以得到我們的音樂部分?jǐn)?shù)據(jù)集:用戶: 用戶ID, 用戶收聽歷史, 用戶年齡,用戶性別,用戶所在地區(qū)。歌曲: 歌曲ID, 歌曲曲風(fēng), 歌曲名稱, 藝術(shù)家, 歌詞。評分?jǐn)?shù)據(jù)則由歌單組成,其中對于用戶單曲循環(huán)的音樂評
28、分為5分,用戶所喜歡的音樂評分為4分,用戶正常聽完的歌曲為3分,用戶進(jìn)行切歌的歌曲為2分,用戶選擇不在喜歡的歌曲為1分。3.1.2 音頻讀取與分析在音頻文件的分析軟件中,選擇了Linux平臺下的Sox軟件,可以將一首音樂的眾多tips展示給用戶。表3.1 Sox音頻部分屬性列表Samples read: 20889600Length (seconds): 236.843537Scaled by: 2147483647Maximum amplitude: 0.996857Minimum amplitude: -0.993195Midline amplitude: 0.001831Mean nor
29、m: 0.084509Mean amplitude: 0RMS amplitude: 0.119258Maximum delta: 0.729645Minimum delta: 0Mean delta: 0.058931RMS delta: 0.0806Rough frequency: 4743Volume adjustment: 1.003在擁有了Sox之后我們再使用語言集成的eyed3庫,基于Sox平臺的音頻分析庫,eyed3庫可以通過對音頻文件的讀取提取出音頻的包含藝術(shù)家或是曲風(fēng)眾多屬性,在eyed中可以將音樂的頻譜輸出為一個一維矩陣,也就是一個數(shù)組形式,例如:圖3.3 某音樂文件頻譜輸
30、出的一維矩陣表現(xiàn)為2180404, 2180403, 2001415.一個長為140萬位的數(shù)組,接下來就是對音頻文件的分析。首先需要將音樂文件分解成兩塊部分,一塊為標(biāo)簽部分,一塊為音頻頻譜部分。標(biāo)簽部分包含了所屬專輯,專輯藝術(shù)家,創(chuàng)作時(shí)間,時(shí)長,流派等等屬性,而頻譜部分則表現(xiàn)為圖3.1.1的樣式。接下來需要對音樂文件做一個分類的過程,首先在我們下載的批量音樂中,只有一半的數(shù)據(jù)在tips里是擁有Genre屬性的,即為流派或者是類別,我們需要對這部分做一個劃分,其中70%作為我們的訓(xùn)練集,30%作為我們的測試集。對數(shù)據(jù)進(jìn)行劃分之后便需要開始構(gòu)造一個神經(jīng)網(wǎng)絡(luò)模型。3.2 卷積神經(jīng)網(wǎng)絡(luò)卷積神經(jīng)網(wǎng)絡(luò)(C
31、onvolutional Neural Network,CNN)是一種前饋神經(jīng)網(wǎng)絡(luò),它的人工神經(jīng)元可以響應(yīng)一部分覆蓋范圍內(nèi)的周圍單元,對于大型圖像處理有出色表現(xiàn)。 它包括卷積層(convolutional layer)和池化層(pooling layer)。圖3.4 卷積核的卷積過程在保留原有特征的情況下使用卷積核對原有圖片進(jìn)行卷積,可以將大圖縮小且將原有特征放大。圖內(nèi)的字母abcdefghijkl即為一張3*4*1(RGB)的圖片,在本次實(shí)驗(yàn)中即為音樂頻譜圖,Kernel即為卷積內(nèi)核,卷積的計(jì)算過程即為使用卷積核在原圖片上依次按照步長挪動,進(jìn)行矩陣乘法計(jì)算從而獲得一個保存了原有特征的2*3*
32、1的新矩陣【5】。在確認(rèn)了卷積神經(jīng)網(wǎng)絡(luò)之后我們對模型以及訓(xùn)練過程做一個評估,首先第一個要考慮到的問題是音樂文件的長度各不相同,不同的音樂在矩陣的寬度上表現(xiàn)不一致,這不利于我們建立模型,此外,在大多數(shù)音樂中都有一個verse的概念,一首音樂的前半段與后半段往往音頻相似度極高,所以我們需要對音樂做以下處理。1、 切片處理,為了迎合不同音樂的長度,我們需要對音樂進(jìn)行如下圖所示的切片處理圖3.5 原頻譜圖圖3.6 切分后的頻譜圖對每首不同長度的音樂以固定單位切分單位,定義為P。2、 排除擾亂信息,一首音樂的大多數(shù)部分是重復(fù)的,且在對音樂進(jìn)行切片之后有不少無用的信息,需要對圖3.1.4中的部分無效數(shù)據(jù)進(jìn)
33、行篩選,例如圖1_0,有一半的值為0,這里有幾種方法去解決這個問題:一是對不同的圖片,從1-C(C是總圖片數(shù))做數(shù)據(jù)歸一化處理,二是其他圖片進(jìn)行權(quán)重設(shè)置加入總訓(xùn)練,因?yàn)橐还灿蠧張圖片假設(shè)特征等于 , 其中Wi 是一個shape為M, P的權(quán)重矩陣,b是偏移量,如果對所有的labels進(jìn)行一個數(shù)組的創(chuàng)建,即表現(xiàn)為0.2, 0.1, 0.11, 0.13.0.28類似這樣的以總labels數(shù)目K作為長度的一維矩陣,在獲取到某音樂的Labels值之后我們可以對反饋的值進(jìn)行處理。三是寫一個判斷在處理數(shù)據(jù)的時(shí)候自動跳過某些片段,這樣的處理方法都是可以接納的。3.3激勵函數(shù)3.3.1 介紹我們在進(jìn)行訓(xùn)練的
34、過程就是一個對數(shù)據(jù)分類的過程,所以我們需要用到特殊的激勵函數(shù),激勵函數(shù)的作用是將數(shù)據(jù)非線性的分割開。即將原有的y = Wx 變成非線性的AF(Wx)其中,AF就是激勵函數(shù),以下為幾種常見的激勵函數(shù):l Sigmoid激勵函數(shù):即在上圖3.2.3中所演示的函數(shù),值域?yàn)?0, 1)l Relu激勵函數(shù)2:f(x) = max(0, x),值域?yàn)?,+)l SoftMax3:,值域?yàn)?, 13.3.2 激勵函數(shù)的選擇上文中提到過有關(guān)音樂labels的格式,理想狀態(tài)中的格式應(yīng)當(dāng)是一個一維矩陣,矩陣的 寬度即為當(dāng)前數(shù)據(jù)集所擁有的所有音樂種類的數(shù)目,矩陣中的每個權(quán)重所代表的意義則是當(dāng)前音樂所對應(yīng)音樂種類的
35、可能性大小,例如一首音樂的搖滾的數(shù)值在7.144, 流行比重在1.1255,以此類推,作為理解我們應(yīng)當(dāng)是把labels這一欄目的所有數(shù)據(jù)作為概率的存在,所以比較適合我們的數(shù)據(jù)分類訓(xùn)練的有softmax激勵函數(shù),將數(shù)據(jù)歸一化,如果在labels中有負(fù)值我們也可以將其統(tǒng)一(負(fù)值需要進(jìn)行處理)。在訓(xùn)練的過程中我們不可避免的會遇到出現(xiàn)負(fù)值的情況,所以在訓(xùn)練的過程中我們需要使用relu激勵函數(shù)4來避免這個問題,在訓(xùn)練過程中及時(shí)的將出現(xiàn)偏移的負(fù)值函數(shù)進(jìn)行清零操作,從而不會影響我們的訓(xùn)練過程。3.4 損失函數(shù)損失函數(shù)是在優(yōu)化過程中作為優(yōu)化對象的函數(shù),也是形容計(jì)算所得概率與實(shí)際數(shù)值差值的函數(shù),與通常意義上的距
36、離有著類似的含義,所以在距離中較為知名的幾種選擇都可以使用在損失函數(shù)中,例如最小平方誤差準(zhǔn)則(MSE),即歐式距離,表達(dá)公式為:意義非常直觀,其中G(X)為預(yù)測向量,當(dāng)預(yù)測向量與實(shí)際值相差越大,歐式距離越大,反之則歐式距離越小,對其進(jìn)行求導(dǎo)可以獲得:除此之外,科學(xué)家為了解決sigmoid激活函數(shù)的梯度消失現(xiàn)象提出了Cross Entropy 這個(可能是基于熵理論導(dǎo)出來的)損失函數(shù),其形式為:它的合理性較直觀:當(dāng)y = 0時(shí)、起作用的只有后半部分,此時(shí)越接近0、C就越小;y=1的情況幾乎同理。下面給出其導(dǎo)數(shù)形式6:而在當(dāng)時(shí)Sigmoid激活函數(shù)中遇到梯度消失現(xiàn)象的原因就是因?yàn)槠鋵?dǎo)函數(shù)形式為,添
37、加了Cross entropy之后可以將其約去。而使用softmax + Cross entropy可由TensorFlow自帶的函數(shù)softmax_cross_entropy_with_logits_v2進(jìn)行計(jì)算。3.5 優(yōu)化器有了損失函數(shù)之后我們就要選擇一種優(yōu)化算法去慢慢減少loss,常見的優(yōu)化算法有梯度下降法,這里引入一個學(xué)習(xí)效率的概念,事實(shí)上一個優(yōu)化器所做的就是在每一步對損失方程進(jìn)行求導(dǎo)按照學(xué)習(xí)效率(在普通梯度下降法中為某定制)進(jìn)行減少,定值的學(xué)習(xí)效率往往會帶來兩個問題,當(dāng)效率過大時(shí)有可能會遇到永遠(yuǎn)無法找到該極小值,假設(shè)人站在盆地,谷底則為我們需要的極小值,學(xué)習(xí)效率則為我們所邁出的步長
38、,學(xué)習(xí)效率在較大的情況下可能無法走到我們需要的點(diǎn),步長過小的情況下又可能導(dǎo)致學(xué)習(xí)效率過于緩慢。所以針對學(xué)習(xí)效率方面有另外幾種優(yōu)化器做選擇,本次實(shí)驗(yàn)中使用的優(yōu)化器是Rmsprop7,RMSProp通過引入一個衰減系數(shù),讓r每回合都衰減一定比例。具體實(shí)現(xiàn):需要:全局學(xué)習(xí)速率, 初始參數(shù), 數(shù)值穩(wěn)定量,衰減速率中間變量: 梯度累計(jì)量r(初始化為0)每步迭代過程:1. 從訓(xùn)練集中的隨機(jī)抽取一批容量為m的樣本x1,xmx1,xm,以及相關(guān)的輸出yi2. 計(jì)算梯度和誤差,更新r,再根據(jù)r和梯度計(jì)算參數(shù)更新量相比于AdaGrad,這種方法很好的解決了深度學(xué)習(xí)中過早結(jié)束的問題,但是又引入了新的超參,衰減系數(shù),
39、而且優(yōu)化器依然依賴于全局學(xué)習(xí)速率。具體如何實(shí)現(xiàn)優(yōu)化器并不用我們多做糾結(jié),tflearn提供了集成的API,只需將optimizer設(shè)置為rmsprop即可。3.6模型設(shè)計(jì)及訓(xùn)練結(jié)果通過前文分析,接下來就是直接對卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行操作的部分了。網(wǎng)絡(luò)一共分為4層,第一層是由音樂頻譜二維向量的輸入,下一層是由多個卷積核(依照檢索到的歌曲Genre數(shù)目來決定卷積核的數(shù)量)對原輸入向量進(jìn)行步長為1的卷積,與一個max-pooling的池化層,下一層是一個長度擴(kuò)倍的卷積層與池化層,下一層是密集連接層,將池化后輸出的張量reshape為一個一維向量,通過Relu激活函數(shù)與權(quán)重相乘,最后是Dropout正則化防
40、止網(wǎng)絡(luò)過擬合。在確定了所有需要準(zhǔn)備的工序之后開始對模型進(jìn)行訓(xùn)練圖 3.7 生成labels圖為加入數(shù)據(jù)集之后將各種類型添加到labels中去。隨后會生成權(quán)重與偏移量的矩陣,并開始進(jìn)行訓(xùn)練。圖3.8 訓(xùn)練過程中的loss與acc其中l(wèi)oss是損失值,而acc便是準(zhǔn)確率,在經(jīng)過多次迭代之后我們會獲得如下圖所示的數(shù)據(jù)準(zhǔn)確率。圖 3.9 訓(xùn)練集結(jié)果圖3.10 測試集結(jié)果3.7 本章小結(jié)本章節(jié)主要實(shí)現(xiàn)了基于神經(jīng)網(wǎng)絡(luò)的內(nèi)容部分推薦算法設(shè)計(jì),從結(jié)果圖3.11來看,訓(xùn)練的準(zhǔn)確率大概在0.7左右,由于音樂種類的多樣性所以這個結(jié)果基本可行,在我們的混合推薦算法中使用基于內(nèi)容的推薦算法不成問題。第四章 混合方法的設(shè)
41、計(jì)與實(shí)現(xiàn)本章主要介紹基于用戶協(xié)同過濾的音樂推薦算法結(jié)合到第三章所提及的音樂算法。4.1基于用戶的協(xié)同過濾算法協(xié)同過濾推薦與基于內(nèi)容的推薦算法相比8,有下列優(yōu)點(diǎn):(1)能夠過濾難以進(jìn)行機(jī)器自動基于內(nèi)容分析的信息。如藝術(shù)品、音樂;(2)能夠基于一些復(fù)雜的,難以表達(dá)的概念(信息質(zhì)量、品位)進(jìn)行過濾;(3)推薦的新穎性。協(xié)同過濾有很多這樣那樣的問題,在本次實(shí)驗(yàn)中主要解決以下幾個部分:4.1.1 冷啟動問題即一個新用戶在剛加入這個系統(tǒng)的時(shí)候沒有合適的歷史行為記錄為其進(jìn)行最準(zhǔn)確的推薦9。在這里本次實(shí)驗(yàn)提供了一個用戶初始化的操作。在第三章中我們提及過對所有音樂進(jìn)行檢索之后會生成一個包含所有l(wèi)abels在內(nèi)的
42、所有種類的數(shù)組,將其設(shè)為一個系統(tǒng)的常量,在用戶初次登錄系統(tǒng)的時(shí)候顯示初始化界面,把所有在第三章有記錄在內(nèi)的顯示復(fù)選框給用戶選擇偏好,那么這樣可以對用戶進(jìn)行一個較好的推薦方式(用戶labels與收聽歷史與評分是兩個屬性,前者針對大類,后者針對歌曲)。那么在用戶進(jìn)行初始化之后推薦列表可以由以下兩個部分組成:一是與用戶labels相似度較高的用戶所喜歡的音樂(相似度計(jì)算由后文提到),二是labels本身所包含的歌曲,在歌曲進(jìn)行入庫操作的時(shí)候我們會將其劃分某些labels內(nèi)。上文中提及過,本系統(tǒng)的用戶歷史記錄由歌單決定,即一首歌單入庫的同時(shí)模擬生成一個收聽記錄為歌單包含歌曲的用戶,那么在圖內(nèi)可以很清晰
43、的看到與第三章中提到的音樂本身Genre完全不同的概念,用戶給歌單賦予的標(biāo)簽,其中有關(guān)語種的刪除掉(我們針對語種寫了一個歌曲判斷歌詞的機(jī)制),剩余的就是用戶給予歌曲或者是歌單的主觀屬性,那么這些主觀屬性與第三章中提及的genre在本次系統(tǒng)設(shè)計(jì)中作為兩個獨(dú)立卻又相當(dāng)有關(guān)聯(lián)的數(shù)據(jù)并行存在為兩條屬性。4.1.2 稀疏性問題協(xié)同過濾的過程中無法避免碰到數(shù)據(jù)的稀疏性問題,眾所周知,歌曲的數(shù)目相對于一個用戶能聽到的所有音樂是龐大的,也許一個用戶究其一生聽不到整個音樂系統(tǒng)中1%的歌曲,那么數(shù)據(jù)稀疏性問題隨之而來,如何處理用戶在一堆0之中的1成為一個難題,以下提出兩種解決方案:1、 對用戶收聽歷史進(jìn)行初始化1
44、0上文中提及過的用戶對歌曲的評分機(jī)制中,默認(rèn)為歌曲所屬labels計(jì)算的平均得分,那么用戶在生成歷史矩陣的時(shí)候即便沒有聽過這首音樂也會對這首音樂有一個簡單的評分,公式:,其中L(i)的意義是Labels(i),i即為歌曲,一首歌曲的所有屬于的labels所占權(quán)重乘以歸一化后的labels(i)的所占比重的值即為用戶對這首音樂的初始打分。這個方法優(yōu)點(diǎn)在于一首新音樂一旦加入該系統(tǒng),所有的用戶都可以及時(shí)的更新對這首音樂的打分,并且在用戶聽歌的過程中因?yàn)閷Ω枨M(jìn)行過歸一化處理所以不會出現(xiàn)某熱門歌曲長時(shí)間占領(lǐng)不下的局面。2、 只記錄用戶聽過的歌曲采用皮爾森相關(guān)系數(shù)進(jìn)行計(jì)算那么在1中提及的計(jì)算方法有一個問
45、題便是在數(shù)據(jù)量極大的情況下用戶之間計(jì)算相似度的過程是一個極為緩慢的過程,假設(shè)數(shù)據(jù)庫中有100W條音樂記錄,那么用戶的收聽歷史就將是以一個長度為100W的json串形式存儲在數(shù)據(jù)庫中,而非純矩陣形式,因?yàn)樵趯?shí)際生產(chǎn)環(huán)境中,用戶的收聽記錄或者是打分記錄必然需要歌曲的ID作為key值,而非理想環(huán)境中的純數(shù)組形式,所以在加載過程中將會十分的緩慢,所以引入一個概念,皮爾森相關(guān)系數(shù)11,公式如下:公式是對兩個用戶之間共同評分過的歌曲進(jìn)行計(jì)算相似度計(jì)算,在兩個用戶之間取交集往往會減少大量的運(yùn)算,缺點(diǎn)也很明顯,小眾歌曲或者是非熱門榜單太過于依賴由其他部分的推薦系統(tǒng)實(shí)現(xiàn)推薦,這種推薦方式往往把用戶套在了一個可見
46、的范圍中,并且需要大量的用戶數(shù)據(jù)進(jìn)行支撐,在沒有大量用戶數(shù)據(jù)的情況下表現(xiàn)的很糟糕。4.2 用戶相似度公式常見的用戶相似度公式(即距離公式):1、 同現(xiàn)相似度,計(jì)算公式為:其中N(i)是喜歡物品i的人的數(shù)量,而分子部分則是喜歡i與喜歡j的用戶的交集數(shù)據(jù)2、歐式距離,計(jì)算公式為:即為最常見的距離計(jì)算公式3、余弦相似度,計(jì)算公式為:即兩個向量之間的夾角余弦值。4、皮爾森相關(guān)系數(shù),具體公式在上一章節(jié)提及過。那么在我們實(shí)際的生產(chǎn)環(huán)境中所最適合使用的便是皮爾森相關(guān)系數(shù)與余弦相似度這兩種,考慮到數(shù)據(jù)量的問題我們可以在系統(tǒng)中配置某個常量使得在數(shù)據(jù)量少的時(shí)候與多的時(shí)候采取不同的相似度計(jì)算方法。4.3 模型搭建基
47、于用戶協(xié)同過濾的部分采取了一個簡單神經(jīng)網(wǎng)絡(luò),將數(shù)據(jù)拆分為訓(xùn)練集與測試集,輸入層為一個1,所有Genre的數(shù)量的一維向量,輸出為一個1, 所有歌曲的數(shù)量的一維矩陣,測試過程中以用戶的genre偏好作為輸入,將用戶的原輸出遮去20%,再由系統(tǒng)所得的推薦結(jié)果與之進(jìn)行匹配所得即為準(zhǔn)確率,即上文中提及的召回率Recall Rate = 提取出的正確信息條數(shù) / 樣本中的信息條數(shù)。圖4.1 協(xié)同過濾訓(xùn)練結(jié)果可以看到訓(xùn)練準(zhǔn)確率大約在0.5左右,并不是很高,但是綜合考慮到個人數(shù)據(jù)的稀疏性問題,即在用戶的收聽歷史中的交集比MillionDataset低上許多,這個結(jié)果還是可以理解的,那么接下來就是對其進(jìn)行系統(tǒng)推
48、薦了。4.4 本章小結(jié)本章主要進(jìn)行了混合推薦算法部分的實(shí)現(xiàn),根據(jù)訓(xùn)練結(jié)果生成音樂特征矩陣和用戶特征矩陣,并根據(jù)這兩個特征矩陣做評分預(yù)測,使用計(jì)算余弦相似度的方法將得到的用戶特征進(jìn)行對比,從而獲得結(jié)果,從準(zhǔn)確率來看,結(jié)果可以接受但仍有很高的提升空間。第五章 系統(tǒng)展示5.1 功能介紹在上文中討論完協(xié)同過濾與基于內(nèi)容的推薦算法之后我們勢必提出了一種混合這兩種方法組成的新型推薦方法,那么如何在兩種大算法多種小算法之間尋得一個合適的平衡或者是權(quán)重,那么我們就要提出一個新的概念。事實(shí)上,權(quán)重的訓(xùn)練過程類似于一個強(qiáng)化學(xué)習(xí)的過程,我們將系統(tǒng)搭建完成之后給予每個推薦部分一個初始權(quán)重,且總和為1,那么每當(dāng)用戶進(jìn)行
49、了一次評分操作之后就會對除了用戶自身屬性與歷史記錄屬性的矩陣進(jìn)行變化以外還會對我們的推薦算法進(jìn)行一個優(yōu)化,例如我一旦拒絕了由某個推薦算法提供的歌曲之后,便會進(jìn)行以下更改:其中R(AC)為當(dāng)次行為的評分,而STATEMENT為一個用戶設(shè)置的常量,概念類似于學(xué)習(xí)效率,那么后面的這一塊就類似于獎懲值的定義,每次多出來的部分或者是少掉的部分按照剩下的幾種算法權(quán)重平均攤開。那么在權(quán)重的問題解決之后自然歌單的組成問題就迎刃而解,按照權(quán)重排序,提出類似訓(xùn)練集中batch的概念,按照batch對歌曲進(jìn)行推薦,例如當(dāng)配置batch為20時(shí),每20首歌為一個組,那么這20首音樂按照之前訓(xùn)練的算法的權(quán)重進(jìn)行推薦即可
50、。另外還有用戶偏愛類型畫像,喜歡該歌曲的用戶還喜歡,與本歌類似的歌曲等功能。5.2 用戶初始化前文中提及過在一個新用戶加入系統(tǒng)的時(shí)候往往會有數(shù)據(jù)稀疏的問題,所以當(dāng)一個用戶加入系統(tǒng)的時(shí)候我們會對其進(jìn)行一個個性初始化,如下圖所示。圖5.1 初始化部分復(fù)選框在上文的訓(xùn)練過程中我們統(tǒng)計(jì)獲得了一共長為64的labels值,那么在用戶新登入的時(shí)候會先跳轉(zhuǎn)到一個有64個復(fù)選框的頁面,讓用戶進(jìn)行一個簡單的選擇之后生成一個用戶偏愛genre的矩陣,從而系統(tǒng)后臺接受到用戶矩陣之后對現(xiàn)有的用戶進(jìn)行篩選,而后尋找到與該用戶相似的用戶,將相似的用戶所喜歡的歌曲進(jìn)行TOPN算法篩選出來,而后再對用戶所喜歡的幾種類型歌曲中,依照5.1中提到過的學(xué)習(xí)之后的權(quán)重進(jìn)行分配,即batch/N*基于內(nèi)容部分算法的權(quán)重?cái)?shù)量的歌曲,依據(jù)歌曲的評論/數(shù)量進(jìn)行歸一化之后可以得到歌曲的相對評分,同樣進(jìn)行排序之后對用戶進(jìn)行展示。另外還收集了用戶的個人信息對之后的系統(tǒng)的冷啟動完善推薦做準(zhǔn)備圖5.2 個人信息更改頁面部分用戶登入界
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 監(jiān)理組織內(nèi)部人員管理制度13
- 2026年生物科技服務(wù)公司特殊技術(shù)服務(wù)項(xiàng)目管理制度
- 早餐鍋貼技術(shù)培訓(xùn)課件
- 特發(fā)性血小板減少性紫癜課件
- 公路項(xiàng)目培訓(xùn)課件
- 第六單元寫作《表達(dá)要得體》課件-2025-2026學(xué)年統(tǒng)編版語文八年級上冊
- 消化道傳染病培訓(xùn)課件
- 肺結(jié)核主管護(hù)師培訓(xùn)課件
- 2026年航空貨運(yùn)服務(wù)培訓(xùn)
- 2026年寵物用品設(shè)計(jì)培訓(xùn)
- 廣東省花都亞熱帶型巖溶地區(qū)地基處理與樁基礎(chǔ)施工技術(shù):難題破解與方案優(yōu)化
- 生鮮乳安全生產(chǎn)培訓(xùn)資料課件
- 基于知識圖譜的高校學(xué)生崗位智能匹配平臺設(shè)計(jì)研究
- GB 4053.3-2025固定式金屬梯及平臺安全要求第3部分:工業(yè)防護(hù)欄桿及平臺
- 2026年《必背60題》高校專職輔導(dǎo)員高頻面試題包含詳細(xì)解答
- 2026年八年級生物上冊期末考試試卷及答案
- 工程顧問協(xié)議書
- 2026年沃爾瑪財(cái)務(wù)分析師崗位面試題庫含答案
- 廣東省汕頭市金平區(qū)2024-2025學(xué)年九年級上學(xué)期期末化學(xué)試卷(含答案)
- 江蘇省G4(南師大附中、天一、海安、海門)聯(lián)考2026屆高三年級12月份測試(G4聯(lián)考)生物試卷(含答案)
- 資產(chǎn)清查合同范本
評論
0/150
提交評論