亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

圖書(shū)推薦系統(tǒng)畢設(shè)實(shí)戰(zhàn):Hadoop+PySpark+ALS完整指南

圖書(shū)推薦系統(tǒng)畢設(shè)實(shí)戰(zhàn):Hadoop+PySpark+ALS完整指南 1. 為什么圖書(shū)推薦系統(tǒng)值得作為大數(shù)據(jù)畢設(shè)題目每年到畢設(shè)選題季計(jì)算機(jī)專業(yè)的學(xué)生翻著題目列表來(lái)回糾結(jié)電商推薦系統(tǒng)做爛了股票預(yù)測(cè)容易翻車爬蟲(chóng)類題目又顯得技術(shù)深度不夠。如果你正在大數(shù)據(jù)方向徘徊我建議認(rèn)真考慮圖書(shū)推薦系統(tǒng)這個(gè)題目它在工作量適中、技術(shù)棧齊全、演示效果好、答辯有話說(shuō)這四個(gè)維度上平衡得相當(dāng)好。先說(shuō)實(shí)際價(jià)值。圖書(shū)推薦系統(tǒng)天然帶有數(shù)據(jù)量可以很大、用戶行為數(shù)據(jù)完整、推薦結(jié)果可解釋這些特點(diǎn)。一個(gè)正常的線上圖書(shū)平臺(tái)用戶對(duì)圖書(shū)的評(píng)分、收藏、借閱、瀏覽停留時(shí)長(zhǎng)都是典型的用戶-物品交互數(shù)據(jù)。這些數(shù)據(jù)做協(xié)同過(guò)濾再合適不過(guò)。而且圖書(shū)不像短視頻那樣有強(qiáng)時(shí)效性推薦效果相對(duì)穩(wěn)定你調(diào)試的時(shí)候不會(huì)因?yàn)榻裉斓臒衢T明天不熱了這種問(wèn)題干擾判斷。更重要的是這個(gè)題目天然需要Hadoop生態(tài)。圖書(shū)數(shù)據(jù)量級(jí)可以輕松做到百萬(wàn)級(jí)評(píng)分記錄單機(jī)Pandas處理起來(lái)開(kāi)始吃力而HDFS分布式存儲(chǔ)加PySpark分布式計(jì)算就有了用武之地。你去答辯的時(shí)候評(píng)委老師問(wèn)你為什么要用Hadoop這句話就非常好回答數(shù)據(jù)量超過(guò)單機(jī)內(nèi)存處理上限需要分布式存儲(chǔ)和分布式計(jì)算。整個(gè)邏輯鏈完整自洽。適合誰(shuí)來(lái)選我認(rèn)為三類同學(xué)可以優(yōu)先考慮一是學(xué)校要求畢設(shè)必須用到大數(shù)據(jù)平臺(tái)組件Hadoop、Spark這類的二是想在簡(jiǎn)歷里增加一個(gè)分布式計(jì)算推薦系統(tǒng)完整項(xiàng)目經(jīng)歷的三是本身對(duì)推薦算法感興趣想把協(xié)同過(guò)濾ALS模型吃透的。還需要說(shuō)清楚一個(gè)現(xiàn)實(shí)這里說(shuō)的圖書(shū)推薦系統(tǒng)落到畢設(shè)場(chǎng)景核心是兩條主線——一條是數(shù)據(jù)工程線從原始數(shù)據(jù)到HDFS存儲(chǔ)再到PySpark做ETL和特征工程另一條是推薦算法線用ALS矩陣分解產(chǎn)出TopN推薦結(jié)果。前面大部分時(shí)間會(huì)花在造數(shù)據(jù)、搭環(huán)境、調(diào)接口上真正寫(xiě)推薦算法的時(shí)間反而是少數(shù)。這一點(diǎn)先想明白后面節(jié)奏就不會(huì)亂。2. 技術(shù)選型Hadoop、PySpark、Python各自該干什么活畢設(shè)選題的技術(shù)棧最忌諱的就是堆名詞。Hadoop、Spark、Flask、Vue、MySQL、Redis全部塞進(jìn)去看起來(lái)豪華實(shí)際每個(gè)都浮于表面。我建議你按存儲(chǔ)層-計(jì)算層-應(yīng)用層-展示層來(lái)分清職責(zé)每層只用最適合的工具。2.1 存儲(chǔ)層Hadoop HDFS到底怎么用才不算裝樣子HDFS在整個(gè)項(xiàng)目里承擔(dān)的是原始數(shù)據(jù)倉(cāng)庫(kù)的角色。你生成的圖書(shū)信息CSV、用戶行為CSV、評(píng)分記錄CSV按月分目錄扔進(jìn)HDFS路徑可以設(shè)計(jì)成/data/book/books_info/ /data/book/user_profile/ /data/book/user_behavior/ /data/book/rating/為什么要把原始數(shù)據(jù)放進(jìn)HDFS而不直接用MySQL兩個(gè)原因。第一畢設(shè)評(píng)委想看的是你理解大數(shù)據(jù)處理的鏈路把數(shù)據(jù)放到分布式文件系統(tǒng)里才是這條鏈路的起點(diǎn)。你用pandas.read_csv讀完就完事那和普通Web項(xiàng)目沒(méi)區(qū)別了。第二HDFS支持?jǐn)?shù)據(jù)分區(qū)存儲(chǔ)后續(xù)你如果做增量更新直接把新文件按日期丟到對(duì)應(yīng)目錄PySpark讀取時(shí)用通配符即可。Hadoop部署方式我直接給結(jié)論本地虛擬機(jī)跑偽分布式足夠但條件允許的話強(qiáng)烈建議用3臺(tái)虛擬機(jī)或3臺(tái)云服務(wù)器搭一個(gè)真集群。偽分布式在答辯時(shí)容易露怯評(píng)委一句你這個(gè)DataNode只有1個(gè)和單機(jī)區(qū)別在哪就能讓你卡殼。三節(jié)點(diǎn)集群內(nèi)存16G或32G就能跑起來(lái)NameNode一個(gè)DataNode兩個(gè)這個(gè)配置對(duì)畢設(shè)來(lái)說(shuō)很體面了。2.2 計(jì)算層PySpark比純Scala更適合畢設(shè)場(chǎng)景Spark官方對(duì)Scala的支持最好但畢設(shè)項(xiàng)目里我勸你用PySpark。原因非常實(shí)際你的推薦算法、數(shù)據(jù)預(yù)處理、后續(xù)Web后端大概率都是用Python寫(xiě)的統(tǒng)一語(yǔ)言棧能省掉大量來(lái)回切換的認(rèn)知負(fù)擔(dān)。而且PySpark的DataFrame API和Pandas高度相似你寫(xiě)慣了Pandas之后切到Spark DataFrame幾乎是無(wú)痛遷移。PySpark在項(xiàng)目里具體干什么三件事一是讀取HDFS上的原始數(shù)據(jù)并做數(shù)據(jù)清洗比如去空值、去重復(fù)用戶、過(guò)濾評(píng)分異常值二是統(tǒng)計(jì)用戶的閱讀偏好分布產(chǎn)出可供大屏展示的聚合指標(biāo)三是執(zhí)行ALS推薦模型的訓(xùn)練和預(yù)測(cè)。這里有個(gè)關(guān)鍵點(diǎn)必須注意ALS算法在PySpark的MLlib里直接可調(diào)用但它的輸入格式要求是(userId, itemId, rating)三列且ID必須是整數(shù)類型。你的原始數(shù)據(jù)里用戶ID和圖書(shū)ID如果是字符串需要先用StringIndexer做映射。這一步很多人會(huì)漏導(dǎo)致模型訓(xùn)練直接報(bào)錯(cuò)。2.3 應(yīng)用層Flask做推薦API別在Web框架上浪費(fèi)太多時(shí)間推薦結(jié)果最終要能被前端調(diào)用需要一個(gè)輕量級(jí)的后端服務(wù)。我推薦Flask而不是Django或SpringBoot原因很簡(jiǎn)單Flask的路線最短一個(gè)app.py文件就能把推薦接口、統(tǒng)計(jì)接口、登錄接口全部包住。你可以設(shè)計(jì)四個(gè)核心接口/api/login用戶登錄返回用戶ID/api/recommend?user_idxxx給指定用戶返回TopN推薦書(shū)籍列表/api/stats/overview返回大屏需要的總體統(tǒng)計(jì)指標(biāo)總用戶數(shù)、總圖書(shū)數(shù)、總評(píng)分條數(shù)等/api/stats/trend返回按時(shí)間維度的評(píng)分趨勢(shì)數(shù)據(jù)用Flask還有個(gè)額外好處把PySpark訓(xùn)練好的ALS模型保存下來(lái)加載時(shí)直接用MLlib的Model類讀取接口內(nèi)部每次推薦只需要對(duì)用戶ID做一次批量預(yù)測(cè)耗時(shí)能控制在幾十毫秒內(nèi)演示效果非常流暢。3. 數(shù)據(jù)從哪里來(lái)造數(shù)才是讓項(xiàng)目活起來(lái)的第一關(guān)大數(shù)據(jù)項(xiàng)目最尷尬的情況是——環(huán)境和代碼都寫(xiě)好了但找不到像樣的數(shù)據(jù)。網(wǎng)上開(kāi)源的圖書(shū)數(shù)據(jù)集不是沒(méi)有比如Book-Crossing、豆瓣圖書(shū)數(shù)據(jù)集但要么語(yǔ)言混雜要么用戶行為字段太稀疏直接用效果并不理想。我的建議是用真實(shí)數(shù)據(jù)集的字段結(jié)構(gòu)做參考自己寫(xiě)腳本生成一套符合業(yè)務(wù)邏輯的模擬數(shù)據(jù)量級(jí)控制在50萬(wàn)到100萬(wàn)條評(píng)分記錄之間既體現(xiàn)大數(shù)據(jù)量又不至于讓訓(xùn)練時(shí)間失控。3.1 造數(shù)腳本背后要懂的業(yè)務(wù)邏輯造數(shù)不是random一把梭要考慮用戶行為的基本規(guī)律。真實(shí)場(chǎng)景里一個(gè)用戶一年最多看幾十本到上百本書(shū)評(píng)分集中在某個(gè)區(qū)間用戶輸入3分到5分居多1分2分很少閱讀類型偏好多樣性也不一樣。我在造數(shù)腳本里模擬了以下規(guī)則用戶ID從1到5000圖書(shū)ID從1到2000中國(guó)文學(xué)、計(jì)算機(jī)技術(shù)、經(jīng)濟(jì)管理、歷史傳記、科幻小說(shuō)、兒童教育等多個(gè)分類每個(gè)用戶隨機(jī)綁定2到3個(gè)偏好分類用戶評(píng)分概率分布5分占35%4分占30%3分占20%2分占10%1分占5%時(shí)間戳按近三年均勻分布模擬系統(tǒng)從上線到現(xiàn)在的積累過(guò)程生成完CSV之后順便寫(xiě)一個(gè)checksum腳本統(tǒng)計(jì)用戶表數(shù)量、圖書(shū)表數(shù)量、評(píng)分表數(shù)量、評(píng)分?jǐn)?shù)值范圍確認(rèn)數(shù)據(jù)沒(méi)有明顯異常再進(jìn)HDFS。3.2 大屏數(shù)據(jù)不能只靠一張表維度要拆開(kāi)圖書(shū)可視化大屏要展示哪些指標(biāo)這個(gè)需要在造數(shù)階段就設(shè)計(jì)好。我做的維度拆成三層第一層是總體指標(biāo)包括累計(jì)注冊(cè)用戶數(shù)、在架圖書(shū)數(shù)、累計(jì)評(píng)分條數(shù)、日均活躍用戶數(shù)這四張卡片放在大屏最頂部。第二層是分布類數(shù)據(jù)包括圖書(shū)分類銷量比例餅圖、用戶年齡段分布柱狀圖、評(píng)分分?jǐn)?shù)段分布漏斗圖。第三層是趨勢(shì)類數(shù)據(jù)包括每月評(píng)分?jǐn)?shù)量變化折線圖、熱門圖書(shū)Top10排行榜榜單滾動(dòng)排名。這些數(shù)據(jù)如果全部從推薦數(shù)據(jù)庫(kù)現(xiàn)查接口很慢。正確做法是在PySpark批處理階段就預(yù)先聚合好結(jié)果寫(xiě)入MySQL或ES的統(tǒng)計(jì)表大屏接口只做簡(jiǎn)單的SELECT。這也是大數(shù)據(jù)項(xiàng)目里常見(jiàn)的預(yù)計(jì)算思想答辯時(shí)可以重點(diǎn)講。4. 推薦系統(tǒng)核心鏈路ALS是怎么一步步跑通的圖書(shū)推薦算法不一定要很復(fù)雜但必須成體系。從數(shù)據(jù)處理到訓(xùn)練評(píng)估再到結(jié)果輸出每一步都有對(duì)應(yīng)的標(biāo)準(zhǔn)做法這才是評(píng)委想聽(tīng)的東西。這里我把整套鏈路拆開(kāi)講清楚。4.1 預(yù)處理階段清洗一對(duì)多、歸一化和數(shù)據(jù)切分拿到原始評(píng)分?jǐn)?shù)據(jù)后第一步清洗空值和異常值這一步用Spark SQL做最順手from pyspark.sql import SparkSession from pyspark.sql.functions import col spark SparkSession.builder.appName(BookRecommend).getOrCreate() df spark.read.csv(hdfs://node1:9000/data/book/rating/*.csv, headerTrue, inferSchemaTrue) df_clean df.dropna(subset[user_id, book_id, rating]) \ .filter((col(rating) 1) (col(rating) 5)) \ .dropDuplicates([user_id, book_id])注意dropDuplicates這一層。真實(shí)場(chǎng)景里用戶可能對(duì)同一本書(shū)反復(fù)評(píng)價(jià)建模時(shí)只保留一條記錄否則同一對(duì)(user_id, book_id)會(huì)同時(shí)出現(xiàn)在訓(xùn)練集和測(cè)試集評(píng)估指標(biāo)虛高。數(shù)據(jù)切分我用的是randomSplit([0.8, 0.2], seed42)訓(xùn)練集80%測(cè)試集20%。這里有一個(gè)畢設(shè)答辯高頻問(wèn)題你這個(gè)切分方式有沒(méi)有考慮時(shí)間因素標(biāo)準(zhǔn)回答是為了保證模型的泛化能力我們沒(méi)有直接按時(shí)間切分但對(duì)評(píng)分時(shí)間做了排序后加入訓(xùn)練集權(quán)重這樣能在一定程度上模擬最近行為影響更大的效果。你可以在代碼里多加一列時(shí)間權(quán)重評(píng)委印象分會(huì)明顯提升。4.2 模型訓(xùn)練參數(shù)怎么調(diào)才叫真的調(diào)參ALS模型的參數(shù)主要包括rank隱因子數(shù)量、maxIter最大迭代次數(shù)、regParam正則化系數(shù)。很多人寫(xiě)代碼就是ALS(rank10, maxIter10, regParam0.1)拍腦袋填進(jìn)去訓(xùn)練完就完事。我建議你正經(jīng)做一個(gè)參數(shù)組合實(shí)驗(yàn)from pyspark.ml.recommendation import ALS from pyspark.ml.evaluation import RegressionEvaluator param_grid [{rank: 8, maxIter: 10, regParam: 0.1}, {rank: 12, maxIter: 15, regParam: 0.2}, {rank: 16, maxIter: 20, regParam: 0.05}] for params in param_grid: als ALS(userColuser_id, itemColbook_id, ratingColrating, rankparams[rank], maxIterparams[maxIter], regParamparams[regParam], coldStartStrategydrop) model als.fit(train_df) predictions model.transform(test_df) evaluator RegressionEvaluator(metricNamermse, labelColrating, predictionColprediction) rmse evaluator.evaluate(predictions) print(frank{params[rank]}, reg{params[regParam]}, RMSE{rmse})當(dāng)你把三組RMSE結(jié)果整理成表格放進(jìn)論文里評(píng)委就知道你是真的調(diào)過(guò)參而不是跑了個(gè)Demo。按我經(jīng)驗(yàn)RMSE能壓到0.85到0.95之間就算正常低于0.8說(shuō)明可能有數(shù)據(jù)泄漏反而需要檢查。4.3 推薦產(chǎn)出從批量預(yù)測(cè)轉(zhuǎn)化為可用的TopN接口模型訓(xùn)練完成后需要對(duì)全量用戶生成推薦列表。注意ALS給出的predictions是(user_id, book_id, prediction)的笛卡爾預(yù)測(cè)結(jié)果你需要對(duì)它做排序截取from pyspark.sql.window import Window from pyspark.sql.functions import row_number window_spec Window.partitionBy(user_id).orderBy(col(prediction).desc()) top_recs predictions.withColumn(rank, row_number().over(window_spec)) \ .filter(col(rank) 10) top_recs.write.mode(overwrite).parquet(hdfs://node1:9000/recommend/result.parquet)把結(jié)果以Parquet格式寫(xiě)回HDFS比CSV更高效也顯得更專業(yè)。后端服務(wù)在啟動(dòng)時(shí)加載這份Parquet到內(nèi)存推薦接口只需要根據(jù)user_id做一次字典查找速度極快。這個(gè)設(shè)計(jì)在答辯時(shí)可以講成冷熱數(shù)據(jù)分離離線計(jì)算在線讀取又是一個(gè)加分項(xiàng)。5. 可視化大屏的真正工作量技術(shù)選型之外的事可視化大屏這個(gè)部分很容易被誤解為越炫越好實(shí)際上評(píng)委看的是你的大屏和數(shù)據(jù)鏈路之間的閉環(huán)關(guān)系。你選了圖表庫(kù)、畫(huà)了漂亮界面但數(shù)據(jù)指標(biāo)跟你的推薦系統(tǒng)沒(méi)有關(guān)系那這個(gè)大屏就只是個(gè)裝飾品。5.1 技術(shù)選型ECharts足夠別過(guò)度追求花哨圖書(shū)推薦系統(tǒng)的可視化用ECharts就夠了。Vue3 ECharts Axios的組合網(wǎng)上模板多、上手快做出來(lái)的效果也足夠應(yīng)付答辯。那些Three.js 3D地球、動(dòng)態(tài)粒子特效除非你前端基本功特別強(qiáng)否則不建議碰投入產(chǎn)出比極低。大屏布局分成五個(gè)區(qū)域頂部中間項(xiàng)目標(biāo)題 核心指標(biāo)卡片左側(cè)上方圖書(shū)分類評(píng)分分布柱狀圖左側(cè)下方用戶年齡段分布餅圖右側(cè)上方月度評(píng)分趨勢(shì)折線圖右側(cè)下方熱門圖書(shū)Top10排行榜中間區(qū)域留白給推薦系統(tǒng)的用戶畫(huà)像模擬演示這個(gè)稍后細(xì)說(shuō)。5.2 大屏頁(yè)面和后端接口怎么聯(lián)調(diào)不翻車首次聯(lián)調(diào)必然遇到跨域問(wèn)題。Flask后端默認(rèn)不允許跨域訪問(wèn)兩個(gè)方案一是用flask-cors庫(kù)配置簡(jiǎn)單二是在Vue的vite.config.js里配proxy代理轉(zhuǎn)發(fā)。我更推薦第二個(gè)因?yàn)椴渴饡r(shí)前端和后端可以共享同一個(gè)地址少很多麻煩// vite.config.js export default { server: { proxy: { /api: { target: http://localhost:5000, changeOrigin: true, rewrite: (path) path.replace(/^\/api/, /api) } } } }另外大屏的數(shù)據(jù)一定要考慮null安全。如果你的統(tǒng)計(jì)維度里有某個(gè)分類沒(méi)有任何數(shù)據(jù)后端接口返回nullECharts會(huì)直接渲染失敗。穩(wěn)妥的做法是在PySpark聚合時(shí)就把所有分類的表都LEFT JOIN補(bǔ)零保證每個(gè)分類統(tǒng)計(jì)值至少是0。這個(gè)細(xì)節(jié)很多人忽略演示當(dāng)天大屏某塊區(qū)域空白非常尷尬。5.3 額外加分做一個(gè)用戶畫(huà)像推薦解釋聯(lián)動(dòng)模塊這一點(diǎn)算是我自己的私貨。絕大多數(shù)畢設(shè)的推薦系統(tǒng)用戶點(diǎn)進(jìn)去只能看到一個(gè)冷冰冰的推薦列表沒(méi)有解釋為什么推薦這些書(shū)。我在大屏中間加了一個(gè)區(qū)域輸入一個(gè)用戶ID后端返回該用戶的偏好分類Top3和推薦理由比如因?yàn)槟?jīng)常閱讀Java編程類圖書(shū)所以為您推薦《深入理解Java虛擬機(jī)》。實(shí)現(xiàn)方式其實(shí)很簡(jiǎn)單ALS模型可以輸出每個(gè)用戶的特征向量你把特征向量和圖書(shū)分類標(biāo)簽算一個(gè)相關(guān)性取最高的分類作為推薦理由。這段邏輯代碼量不大但講PPT的時(shí)候可以圍繞它講整整兩分鐘——從用戶畫(huà)像構(gòu)建到推薦可解釋性都是當(dāng)前推薦系統(tǒng)研究的熱點(diǎn)話題答辯老師會(huì)非常感興趣。6. 完整開(kāi)發(fā)流程從零開(kāi)始我建議你這樣安排時(shí)間接這種畢設(shè)項(xiàng)目最怕的是前松后緊。前面兩個(gè)月在搭環(huán)境、調(diào)版本最后一個(gè)月瘋狂趕代碼導(dǎo)致論文和PPT質(zhì)量拉胯。我按兩周規(guī)劃的節(jié)奏來(lái)做如果你時(shí)間充裕可以適當(dāng)放慢但整體順序不要亂。6.1 環(huán)境準(zhǔn)備與Hadoop集群搭建階段虛擬機(jī)安裝Linux我用的CentOS 7.9或Ubuntu 20.04都行。JDK用1.8Hadoop用3.2.4或3.3.x版本Spark用3.2配套的PySpark版本。這里有一個(gè)非常容易踩的坑Hadoop和Spark的版本兼容性、Spark和PySpark的版本一致性不匹配的話會(huì)報(bào)各種奇怪的序列化錯(cuò)誤。集群搭建步驟列舉一下三臺(tái)虛擬機(jī)設(shè)置固定IP和hostname映射配置SSH免密登錄配置Hadoop的core-site.xml、hdfs-site.xml、yarn-site.xml格式化NameNode啟動(dòng)HDFS和YARN用jps命令驗(yàn)證各節(jié)點(diǎn)進(jìn)程安裝Spark配置spark-env.sh的JAVA_HOME和HADOOP_CONF_DIR這個(gè)過(guò)程預(yù)計(jì)兩到三天。如果你之前完全沒(méi)有搭過(guò)集群中間難免反復(fù)出問(wèn)題我建議每配置一個(gè)環(huán)節(jié)就檢查一次日志不要攢好幾個(gè)錯(cuò)誤再一起排查。6.2 數(shù)據(jù)生成與入庫(kù)階段寫(xiě)Python腳本生成模擬數(shù)據(jù)上傳到虛擬機(jī)再通過(guò)hdfs dfs -put命令放進(jìn)HDFS對(duì)應(yīng)目錄。這一步不太難但我提醒你生成的數(shù)據(jù)一定要分批次、按日期歸檔。批量生成的十萬(wàn)條和五萬(wàn)條都放在不同的日期目錄下不僅符合數(shù)據(jù)每日增量的常識(shí)后續(xù)統(tǒng)計(jì)趨勢(shì)數(shù)據(jù)也更方便。這里可以順便寫(xiě)一個(gè)數(shù)據(jù)質(zhì)量檢查腳本輸出數(shù)據(jù)總量和字段完整性報(bào)告后面寫(xiě)論文的時(shí)候能直接用。6.3 推薦訓(xùn)練與調(diào)優(yōu)階段這個(gè)階段要用PySpark寫(xiě)完整的ETL和訓(xùn)練腳本。注意開(kāi)發(fā)方式先在本機(jī)用小數(shù)據(jù)量比如5萬(wàn)條調(diào)通邏輯再放到集群跑全量數(shù)據(jù)。因?yàn)镾park任務(wù)的提交和調(diào)度有額外開(kāi)銷你在本地調(diào)通邏輯上集群后就能直接跑節(jié)省大量等待時(shí)間。提交任務(wù)用spark-submit命令spark-submit \ --master yarn \ --deploy-mode client \ --driver-memory 2g \ --executor-memory 2g \ --num-executors 3 \ train_recommend.py如果提交任務(wù)時(shí)總是報(bào)內(nèi)存不足調(diào)整executor內(nèi)存的同時(shí)還需要檢查虛擬機(jī)的可用內(nèi)存確保DataNode所在機(jī)器的物理內(nèi)存充足。6.4 后端接口與大屏聯(lián)調(diào)階段把訓(xùn)練好的模型文件和推薦結(jié)果保存好編寫(xiě)Flask后端啟動(dòng)前端Vue項(xiàng)目聯(lián)調(diào)。這個(gè)階段的重點(diǎn)是接口返回格式要保持統(tǒng)一建議封裝成{code, message, data}的結(jié)構(gòu)。前端大屏頁(yè)面的開(kāi)發(fā)可以基于現(xiàn)成的后臺(tái)管理模板阿里云DataV也有免費(fèi)的大屏模板可參考但注意不要全部照搬改一下顏色主題和模塊布局讓它匹配圖書(shū)推薦系統(tǒng)的風(fēng)格。我個(gè)人偏好深色科技藍(lán)背景不過(guò)圖書(shū)主題也可以嘗試米白淺色系配合書(shū)架質(zhì)感的卡片風(fēng)格給評(píng)委留下這個(gè)學(xué)生有設(shè)計(jì)感的印象。6.5 論文與PPT的素材對(duì)齊階段最后預(yù)留給寫(xiě)論文和做PPT的時(shí)間建議至少四到五天。論文里每個(gè)章節(jié)對(duì)應(yīng)的代碼截圖、運(yùn)行結(jié)果截圖、參數(shù)實(shí)驗(yàn)表格都要在這個(gè)階段統(tǒng)一整理。特別是系統(tǒng)測(cè)試環(huán)節(jié)要準(zhǔn)備用戶數(shù)從1000擴(kuò)展到5000時(shí)推薦接口響應(yīng)時(shí)間的變化這類數(shù)據(jù)用一張折線圖呈現(xiàn)這比滿篇文字描述更有說(shuō)服力。7. 排坑實(shí)錄我在這套項(xiàng)目里踩過(guò)的五個(gè)真實(shí)大坑下面這些坑都是我實(shí)際做類似項(xiàng)目時(shí)遇到過(guò)的不是網(wǎng)上文檔里常見(jiàn)的復(fù)制粘貼問(wèn)題。每一個(gè)都值得你提前知道。7.1 HDFS端口訪問(wèn)不通Namenode進(jìn)程卻在跑新手最容易懷疑防火墻、網(wǎng)絡(luò)配置搞了兩小時(shí)發(fā)現(xiàn)根本沒(méi)關(guān)防火墻。但有一種情況很隱蔽虛擬機(jī)重啟之后Hadoop沒(méi)有配置自動(dòng)啟動(dòng)你只啟動(dòng)了HDFS沒(méi)啟動(dòng)YARN。此時(shí)ResourceManager進(jìn)程不在你在YARN模式提交任務(wù)就會(huì)一直卡在ACCEPTED狀態(tài)。辦法是養(yǎng)成寫(xiě)一個(gè)start-all.sh的習(xí)慣把所有組件的啟動(dòng)指令放進(jìn)腳本每次開(kāi)啟虛擬機(jī)后依次執(zhí)行配合jps檢查六大進(jìn)程是否齊全。7.2 ALS訓(xùn)練時(shí)報(bào)Rating column should be numeric這個(gè)報(bào)錯(cuò)的原因要么是讀CSV時(shí)inferSchema沒(méi)有生效把rating讀成了字符串要么是用戶ID或圖書(shū)ID里有非數(shù)字字符。在清洗階段加一步轉(zhuǎn)換確保三個(gè)核心列都是數(shù)字類型問(wèn)題就能解決。7.3 評(píng)分?jǐn)?shù)據(jù)稀疏導(dǎo)致RMSE奇怪地高當(dāng)測(cè)試集里的用戶行為太少ALS得到的預(yù)測(cè)值會(huì)嚴(yán)重偏離真實(shí)評(píng)分。解決方法是提高模擬數(shù)據(jù)量到每條用戶至少20條評(píng)分記錄并在做切分時(shí)對(duì)冷啟動(dòng)用戶做剔除只保留訓(xùn)練集和測(cè)試集中都有行為的用戶。這個(gè)策略在論文里也可以作為處理冷啟動(dòng)問(wèn)題的改進(jìn)方案來(lái)寫(xiě)。7.4 大屏圖表首次加載空白接口通了但看不見(jiàn)圖這個(gè)坑大多出在ECharts容器沒(méi)有設(shè)置高度。ECharts的div必須顯式指定height否則圖表無(wú)法渲染。另一個(gè)常見(jiàn)問(wèn)題是異步加載數(shù)據(jù)時(shí)圖表初始化早于數(shù)據(jù)返回需要在setOption之前確保data非空??梢猿跏蓟瘯r(shí)先放一個(gè)加載中的占位參數(shù)數(shù)據(jù)返回后再填充。7.5 使用pip安裝pyspark時(shí)版本和Spark集群不一致本地pip install pyspark使用的版本如果和集群不一致連接時(shí)會(huì)報(bào)Spark version mismatch的錯(cuò)誤。解決辦法是在本地和集群統(tǒng)一install同一版本或者干脆本地不裝pyspark所有推薦邏輯都在集群上用spark-submit任務(wù)來(lái)執(zhí)行本地只用Pandas和Flask。8. 答辯時(shí)的講解節(jié)奏按這條線講十分鐘不冷場(chǎng)答辯環(huán)節(jié)往往是決定成績(jī)的關(guān)鍵一步。很多學(xué)生代碼做得不錯(cuò)但上臺(tái)介紹項(xiàng)目時(shí)邏輯混亂從環(huán)境搭建講到爬蟲(chóng)再跳到推薦算法評(píng)委完全抓不住重點(diǎn)。我的建議是把講解順序固定成業(yè)務(wù)鏈路而不是技術(shù)棧清單。開(kāi)場(chǎng)直接用一段業(yè)務(wù)場(chǎng)景引入想象一個(gè)圖書(shū)閱讀平臺(tái)用戶每天產(chǎn)生大量的評(píng)分行為我們的目標(biāo)是讓每個(gè)用戶進(jìn)入首頁(yè)時(shí)都能看到他可能感興趣的圖書(shū)同時(shí)為運(yùn)營(yíng)人員提供實(shí)時(shí)可視化數(shù)據(jù)決策依據(jù)。這段話講完評(píng)委立刻知道你做了什么、為什么做。然后按數(shù)據(jù)流動(dòng)順序講數(shù)據(jù)來(lái)源模擬用戶行為數(shù)據(jù)→ 數(shù)據(jù)存儲(chǔ)HDFS→ 數(shù)據(jù)處理PySpark ETL→ 模型訓(xùn)練ALS協(xié)同過(guò)濾→ 結(jié)果服務(wù)Flask API→ 展示層可視化大屏。每條鏈路都對(duì)應(yīng)你實(shí)際完成的功能評(píng)委問(wèn)任何一環(huán)你都能自然引出下一環(huán)。在最后幾分鐘主動(dòng)拋出你調(diào)參實(shí)驗(yàn)的RMSE對(duì)比表格、用戶畫(huà)像推薦解釋模塊的截圖以及系統(tǒng)性能測(cè)試折線圖。這三個(gè)東西是你區(qū)別于普通畢設(shè)的硬通貨也是評(píng)委最想看到的工作量證明。有一個(gè)小細(xì)節(jié)需要注意不要主動(dòng)提我使用的是模擬數(shù)據(jù)要表述為當(dāng)前系統(tǒng)的冷啟動(dòng)階段采用了構(gòu)造數(shù)據(jù)集驗(yàn)證算法可行性后續(xù)接入真實(shí)平臺(tái)數(shù)據(jù)時(shí)鏈路無(wú)需修改。這是實(shí)話也是技巧既能體現(xiàn)工程思維又堵住了評(píng)委關(guān)于數(shù)據(jù)來(lái)源的一大半追問(wèn)。9. 寫(xiě)在最后的偷懶技巧和心態(tài)建議整個(gè)項(xiàng)目做完我最大的體會(huì)是畢設(shè)考察的從來(lái)不是你用了多前沿的算法而是你能否把一個(gè)完整的系統(tǒng)從零建起來(lái)并且能講清楚每一層的設(shè)計(jì)決策。圖書(shū)推薦系統(tǒng)恰好是一個(gè)性價(jià)比很高的題目——它不至于簡(jiǎn)單到讓評(píng)委覺(jué)得沒(méi)東西問(wèn)也不至于復(fù)雜到讓你三個(gè)月都搞不定。有幾個(gè)偷懶但有效的小技巧可以分享一是Hadoop集群搭建完成后建議做一次快照。后續(xù)如果你改配置改崩了直接恢復(fù)快照省去重裝的時(shí)間。二是PySpark離線聚合的統(tǒng)計(jì)結(jié)果可以一次性用pandas.to_sql寫(xiě)入MySQL后面所有接口都查MySQL性能完全能打。三是大屏頁(yè)面如果實(shí)在不會(huì)設(shè)計(jì)就找一套開(kāi)源后臺(tái)模板改配色但務(wù)必把Logo、標(biāo)題、圖表數(shù)據(jù)都換成自己的項(xiàng)目?jī)?nèi)容千萬(wàn)不要留著模板自帶的示例數(shù)據(jù)跑去答辯。最后說(shuō)一點(diǎn)心態(tài)上的話。做畢業(yè)設(shè)計(jì)期間你一定會(huì)有兩到三次想換題、想放棄的瞬間尤其是環(huán)境配置反復(fù)報(bào)錯(cuò)的時(shí)候。我的經(jīng)驗(yàn)是每遇到一個(gè)問(wèn)題把它記錄在排錯(cuò)日志里哪怕只是兩行字。等答辯前回顧你會(huì)發(fā)現(xiàn)自己已經(jīng)解決了二十多個(gè)大大小小的問(wèn)題這些內(nèi)容全是論文系統(tǒng)調(diào)試章節(jié)的素材也是你答辯時(shí)最寶貴的談資。撐過(guò)環(huán)境搭建那道坎后面每一步都會(huì)越走越順。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
成人九九| 操逼视频亚洲| AA丁香综合激情| 精品国产片亚洲一区| 99九九久久| 亚洲动态色图| 日本三级日本三级99| 草蕉影视亚洲无码| 日本乱人伦片中文三区| 99re不伦| 欧美一级美片在线观看免费| 超碰日本97美女人妻人人玩人人爱| 中文字幕一区电影在线观看 | 日韩AV一区二区三区四四| 88在线一区二区三区| 欧美精品黑人猛交高潮| 色嗨嗨在线| 国产精品自拍欧美在线| 九九黄色网| 综合网久久| 北京美女一区二区| 一卡二卡三卡| 色综合色欲色综合色综合色综合| 国产毛片久久久久久久| 一级做a爰片性色毛片久久| 狠狠激情综合狠狠操中文字幕| 日韩欧美成人大香蕉| 亚州综合色| 久久久九九网站| 伊色久人大在线| 亚洲精品第一| 91美女国产在线| 91c色| 亚洲黄色网址| 97人妻碰碰中文无码久热丝袜| 欧美天天在线| 无码日韩网站| 午夜在线播放| 久久久艹艹艹| 韩三级a视频在线观看| 国产人妻精品久久久一区二区三区 | 97资源欧美| 人人操人人干xxx| www老逼91| 欧美色图电影| 蜜臀av网址| 国产精品久久久久久无码红治院| 精品女同一区| 无码免费一区二区三区啪啪| 九九九九热| 用力操死我| 中文字幕久热视频在线| 日本女人久久久| 91人妻超碰| 88xx成人精品视频| 9997se| 激情五月天视频| 亚洲人妻色图| 激情图片伦理国产一区二区日韩| 人人操人人操草草| 久久尹人大香焦视| 艳尻美人妻| 国产精品麻豆成人av| 国产久久日| 日本午夜福利影院| 日本欧美一区二区三区视频麻豆| 91老妇女| 色综和网| 亚洲成人av色网| 中文字幕第9页萱萱影音先锋| 日韩久草| 久久久久久久久久久六六| 在线免费观看日韩一区| 97干在线视频| 色哟哟av网址| 欧美综合加勒比在线| 一级A啪啪啪啪| 欧美日韩国产另类综合| 夜夜躁狠狠躁日日躁av| 中国黄色特级精品一区二区三区片| 天天综合网日韩7799| 久久三区四区| 精品然女一区二区| 欧美日韩少妇色情| 女人的久久久| 国模精品一区二区三区苹果色戒 | 成人片视频| 黄色av一区二区在线| 日B操| 99这里只有精品| 日本青青草在线| 久久一区,青青青青草视频在线播放| 加勒比久久综合网高清| 国产熟女完整版中字 | 97超碰资源网| 人妻夜夜爽天天爽麻豆三区网站| 国产无马av| 岛国黄| 精品一区二区三区免费古装毛片香港三级日本三级人妇 | 亚洲成人黄色在线观看| 国产精品久久| 日韩在线观看AV| 欧美性暴力猛交XXXX | 无码一区免费在线不卡| 1240青青草一区二区三区视频天爱| 色偷综合| 欧美九一精品久久久熟妇| 欧美亚男人的天堂| 超碰在线人妻不卡| 自拍丝袜美腿人妻| 日韩午夜国产| 超碰碰97| 中文字幕版| 狠狠欧美| 亚洲国产精品久久久久婷婷老年| 美女诱惑在线一区| 亚洲免费97免费| 人妻丝袜无 码视频专区| 91超级碰| 99精品在线观看| 大香蕉乱伦视频网| 久久久久久国产精品| 国产精品成人蜜臀AV在线| 国产中文精品一区二区在线观看| 欧美成人性爱视频免费观看| 一级久久久久久久久久久| 久久精品中文字幕无码l| 黑丝自慰喷水网站| 成年人一级黄色毛片大全在线观看| 国产人妖视频一区在线观看| 亚洲色图日韩精品| 狠狠色婷婷| 成人AV在线电影| 天天躁日日躁AAAXX| 亚洲蜜桃V妇女| 日本午夜久久电影| 91操碰| 男人亚洲91首页在线| 人妻少妇久久久| 99re9这里只有精品| 天天色香欲综合网| 亚洲AV乱码专区国产噜噜亚洲| 美国久久一二三四| 日本高清视频在线观看黄已三辽| 亚洲情色综合| 国产精品毛片?v一区二区三区| 做爱A级亚欧| 狠狠色综合网| 日本人妻天堂网站在线播放| www.黄色在线| 免费黄色视频网址| 狠操91,com| 日日骚一区二区三区| v91av| 国产91影院| 日韩图区 偷拍| ?亚洲伊人伊成久久人综合网| 久久婷婷亚洲| 99操| 亚洲性爱成人| 色播综合| 日韩美女,国产传媒,视频一区| 久久精品人妻一区二区三区| 国产福利电影| 日本午夜精品理论片A级APP发布| 亚洲一区二区三区麻豆传媒| 欧美性爱一区二区三区| 国产精品久久久久久亚洲色欲| 国产女生在线| 久久25| 97射欧美| 国产久久av| 天天日日夜夜| 好湿好紧视频| 国产51色综合久久免费| 九九热精品免费视频| av线电影| 91东京热男人的天堂| 亚洲中文字幕三级在线| 日本东京热大香蕉a片| 9久9久| 日本人妻伦在线中文字幕| 综合 欧美 亚洲 日本| 国语人妻精彩刺激| 97这里有精品| 国产精品久久久久中文字幕| 欧美日韩一干二干| 日韩欧美加勒比| wwwcaobibi| 日本97久久久精品| 亚洲丝袜综合| 欧美91久久久久| 亚洲欧美在线观看2021| 久久激情四射婷婷丁香五月天| 中文字幕 国产 精品| 久久九九网| 亚洲综合20p| 97视频620| 青青草好吊色| 亚州男人天堂| 国产精品suv一区| 麻豆人妻偷人精品无码视频| 国模私拍一区二区三区神乳| 在线视频一区二区传媒| 综合五月天| 操我无码| 亚洲性综合11| 91丨九色丨国产打屁股| 凹凸 69堂 在线播放| 欧美18老人禁| 91综合国产精品| 国产家庭乱伦表演| 白 大 人妻 区 在线| 97碰| 亚洲色图加勒比| 深夜啪啪啪视频免费| 两性综合网| 亚州欧美总和| 亚州AV无码国产精品| 色欧洲97| 亚洲一欧洲中文字幕在线| 农村妇女精品一区二区| 天天干天天操天天干天天操| 激情内射| 一区二区偷拍拍视频| av影院十区| 九九亚洲| 大香蕉78| 一区二区三区蜜桃成人撸久久东京热| 男人女人18禁片免费看网站| 亚洲日韩熟女人妻高清在线| 亚洲成人AB| 99久久久久| 78m啪啪啪| 97国产超湿| 久久丁香久草综合网| 神马久久久久久久久久久久| 亚洲一区二区三区中文字幕| 日本三级精品| 亚州色站 日韩电影| 日韩成人精品| 97精品国产手机| 最近2019中文字幕国语免费版| 老熟妇综合| 懂色天天爱天天日天天射天天澡| 玖玖资源视频一区二区三区| 天天欧美色| 老司机福利青青草| 97国产综合欧美| 欧 美 自 拍 偷 拍| 亚洲一区二区 麻豆传媒| 91动漫操逼视频| 伊人欧美大香蕉视频| 无码欧美有限公司| 国产精品视频一区二区三区八戒| 好吊色综合| 成人热久久精品| 精品国产一级久久| 级做a爱无码性色永久免费| 香蕉免费一区二区三区不读| www.色五月| 人人爱人人乐人人操| 亚洲色图第一页| 精品久久久av| av在线播放国产一区| 有码专区最新中文字幕有码| 青青伊人久久| 久久98| 亚洲日韩视频二区| 97日韩超碰超碰中文字幕| 色婷婷狠狠| 国产亚洲精品美女久久久| 精品少妇人妻| 91久久久久久久久18| 日韩超碰97| 色老久久| 97视频在线观看高清资源| 91色久| 国产无码高清操逼视频| 亚州综合在线| 夜夜 中文视频rt| 超碰97玖玖爱| 老鸭窝亚洲毛片| 91超级碰| 欧美性爱第一区| 久久久亚洲熟妇熟女| 欧美性五月| 97超碰免费人人性爱| 无码免费一区二区三区啪啪| 尤物一级在线免费观看| 日韩熟女乱伦中出| 视频国产成人精品日本亚洲18| 97碰碰日本乱偷人妻中文的| 嫩草一区二区在线观看| 色天使亚洲综合在线观看| 97精品一区| 欧美第一页| 中文字幕女同在线| 天天摸夜夜操视频| 亚洲永久AV无码精品秋霞| 国产精品小视频一区二区三区| 色婷婷av在线观看| 婷婷色网| 国产亚洲人妻综合日韩 久久| 成人性爱免费播放| 亚洲无码国产探花在线观看| 两女互慰AV高潮喷水在线观看| 亚洲欧美首页| 为用户提供免费看黄网址在线观看| 亚洲高清自拍| 久久久性| 日韩精品一区二区日韩| 人人妻人射| 曰韩操B| 亚洲熟女中文字幕在线| 98色网| 日本免费一区二| 久久欧洲| 欧美日韩美女精品久草一区二区三区 | 国产真乱mangent| 97精品| 人妻色偷色噜| 日韩激情啪啪啪| 青青久久手机线视频| 精品一区二区三区国产| 涩涩涩综合| 亚洲导航深夜福利| 国产对白刺激视频| 老熟妇乱轮| 超碰日韩人妻| 国产精选三级在线观看| 欧美日韩222| 天天综合网~91入口| 久草毛片| 精品久久久久久AV无码| www…国产操逼| 996热| 成人A片男人的天堂| 动漫av中文| 粉嫩av一区二区三区天美传媒 | 欧美天天干| 日本一级特级毛片视频| 成人性爱av.com| 免费日韩黄片| 熟妇在线视频一区二区| 韩国嫰模上门援交视频| 欧美色乱| 久久无码电影| 亚洲综合有玛| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 久久91视频| 亚洲天堂热| 国模不卡一本二本三电影| 日本黄页视频在线观看| 日韩成人高清一区二区| 亚洲 国产 精品一区| 欧插网站| 97国产精品久久久久| 老女人综合网| 亚洲美女自拍偷拍视频| 乱码熟妇人妻久久久| 丝袜美腿91| 亚洲欧美国产中文视频| 色婷婷丁香五月| 诱惑人妻欧美一区在线播放| 亚洲av噜噜噜噜噜噜| 欧美日韩国内不卡| 亚洲日韩久久精品一区| 久久大黄片| 激情五月天婷婷| 丰满丝袜少妇AV| 国产午夜精品在线观看| 超碰79人人乐| 欧美爱国产综合、| 屁屁影院一区二区三区国产| 啊灬快c我灬啊灬用力灬啊灬-国产精品性做久久久久久-成人AV | 久久最新免费视频23| 久草电影网| 97超碰人人操人人操| 91麻豆va国产精品| 蜜臀一二三区| 在线v中文字幕一区二区三区| 日本999精品| 性色AV蜜色av色欲av| 好吊妞转入那个网| 麻豆色约约| 亚洲成人性爱在线观看| 性感美女啊啊啊在线| 国产又黄又爽又刺激久久久久久 | 69视频入口| 色哟哟国产精品免费网址| 国产传媒日韩| 综合熟女| 无码一区免费在线不卡| 99综合网| 看一级黄色视频| 久久久久久久亚洲Av无码| 欧色性第一页| 天天影视之亚洲综合网| 老熟妇一区二区三区啪啪| 日韩中文字幕av在线播放| 天色综合网| 伊人国产视频| 久久久久久久久久久久97| 日本色日夜干| 97欧美性爱| 国模精品一区二区三区苹果色戒 | 丰满人妻一区二区三区性色| 强奸乱伦av电影| 熟女突然公开看18禁影片| 天天综合~91入口| 九九九九九九九九九五码| 茄子社区国产精品| 色婷婷一区二区三区久久| 久久久久久久| 欧美人妻一区| 色眯眯射| 午夜在线播放| 国产黄片精品在线| 日韩乱码Av| 九九九九97| 国产操逼视频在线观看| 欧美激情综合色综合啪啪五月| 大香蕉在线视频15| 日日躁夜夜躁狠狠躁超爽| 久久国产免费激情视频| 精精夜夜| 久操免费观看| 久热伊人| 亚洲性天堂| 99色综合| 另类图片天天影视| 激情网五月天| 黑人综合网| av优播| 中文字幕第7页| 天天操夜夜操狠很操| 亚洲棕合电彰| 日韩在线性爱免费视频| 亚州综合色图| 国产精品蜜臀久久久久无码AV| 日欧美色| 天天夜躁日日躁狠狠2002| 一区二区三区 丝袜 高跟 美腿| 91成人久久| 国产极品美女高潮无套在线观看| 亚州综合图片| 欧美十八禁导航成人| 亚州男人的天堂| 久久久国产亚洲精品系列| 欧洲亚洲人人爽爽视频| 欧美一区二区三区日韩| 亚洲91射| 日本裸体久久色噜噜| 乱伦a片视频| 精品人妻视频一区二区在线播放 | 搡老女人老91妇女熟女| 男人天堂黄片| 亚洲人妻日日日| 久艹伊人精品综合在线| 成人免费毛片| 熟人人妻少妇精品久久| 日韩美女高潮喷水视频| 五月婷婷六月激情| 欧美一级黄片视频在线| 91国模| 黑人精品久久97| 日韩国语字幕| 日本视频一区二区三区| 肉动漫无遮挡h在线观看| 亚洲一区制服诱惑| 九九九九日本 | 人妻81p| 欧美亚洲自拍另类人妻| 91美女视频在线观看| 亚洲人精品久久久| 综合网~91综合网| 亚洲高潮少妇| 欧美一级A片在线看视频性色| 天天操妹子| 91亚.色| 亚洲天堂日本| 中文字幕AV片| 91性| 国产和美国毛片| 九九九九欧美| 夜夜爽爽夜夜精品视频| 久久精9| 日本三级小说中文字幕| 天天淫人人妻日日色| 99热成人| 青青草原人妻| 欧美欲色| 久久九操在线观看| 99re在线视频这里只有精品| 久久视频少妇美女| 久久视频,这里只有精品 | 国产一在线观看| 翔田千里Av在线| 午夜啪啪片| 91丨九色丨国产打屁股| 98色网| 九一亚洲国产免费| 伊人久久亚洲色欲综合网站 | 韩国轻伦国内自拍一区| 欧美丝袜中文字幕07在线| 狠狠爱AV| 视频不卡中文字幕| 老外又粗又长一晚做五次| 蜜乳AV一区| 9久热| yazhousetuoumei| 久操在97| 欧综合网| 日韩国产乱子伦App| 九九色逼| 九九九久久久久| 久久99久久99精品天美传媒棢·纸:. | 在线中文字幕极品av| 亚洲免费看片| 神马午夜久久久| 91国产丝袜美女| 超碰78| 欧美色五月| 欧美色图亚州激情| 欧美色青| 岛园激情| 999 久久久| 综合网 欧美| 美女国产一区二区久久| 色情成人五月天| 精品二999| 久久久久人妻二区精品叶可怜| 久久婷婷影院| 制服诱惑亚洲一区二区三区在线观看| 凹凸视频在线一区二区| 吻戏激情性巴克| 密臀成人视频久久久| 亚洲欧洲中文日韩女优乱码| 久久9精品视频| 久久久97| 精品九九九九九九九| 亚洲av性爱电影| 超碰人人乐97| 蜜乳视频网站| 日本五十路在线| 中日亚韩免费视频| 久久↗↗| 日韩三级一区| 操逼网站网站| 黑人中出21连凳花野真衣| 色成人Www精品永久观看| 蜜桃精品一区二区三区ww| 色欲av国内精品久久久久久| 超碰爽人妻熟女Av| 操逼免费视频无码国产| 日日碰视频网| 高清无码网址| 欧美激情性爱视频网站| 日日妻色网| 色欲天天综合网| 天天看精品动漫视频一区| 国产性感在线观看| 欧美日韩中文亚洲v在线综合| 天天操熟妇| 综合国产97| 免费又黄又裸乳的视频| 欧美日韩小说| 熟女天天干| 极品白嫩美女白浆成人福利在线看| 正宗无毛一线天嫩逼| 1000部熟女视频在线观看| 亚洲综合影视| 国语国产操逼伊人AV网| 香蕉视频精品亚洲一区二区三区在线播| 夜夜操天| 99久久99九九99九九九| 欧美亚洲国产91在线| 美女诱惑久久| 综合天天。| 不卡人妻少妇精品毛片一区23区视频| 亚洲一欧洲中文字幕在线| 97天堂| 2020中文字幕在线| 精品99999久久久久久| HEYZO高无码国产精品227| 果冻传媒A片麻豆熟妇人妻| 日本五十路在线| 色9999日韩国产| 日本高清_区二区三区| 国产亚洲色停停久久99精品91| 综合九九| 97免费视频网| 台湾佬中文娱乐自偷自拍| 97在线视频观看| 精品国产丝袜一区二区三区乱码| 淫荡网址| 欧美天天综合| 射综合网| 九九九九AV| 在线小说视频一区| 2019天天干| 香蕉大久久久| 蜜乳av一区二区三区四区不卡| 欧美色图私拍91| 九九国产热| 久久99精品国产| 91欧美丨精品丨入口| 激情亚洲天堂| 美女大乳久久久久久久女人18| 久久首页| 青娱乐亚洲自拍| 日韩av乱伦| 亚洲日韩精品在线播放| 五月天激情小说| 天天添天天干电影| 91大学精品激情戏| 97香焦色区| 日本欧美色| 碰人碰碰人人开房人肉| 夜夜爽夜夜摸夜夜操免费视频| 香港久久久| 久久亚洲国产成人| 欧美人妻精品一区二区| 熟妇熟女亚洲天堂网| 91久久久视| 青青草男人天堂| 亚洲精品天天影视综合网 | 97色操| 亚洲 日本 国产 综合| 一级黄色视频网| 成功精品影院| 国产精品乱码久久久、久久| 欧美碰碰综合色| 亚洲精品久久久久毛片A片拉屎 | AV乱伦国产| 精品中文字幕第一页| 26uuu国产免费观看| 人人爽天天爽| 欧美亚洲系列| 九九九久千久久激情蜜桃在线看 | 成人欧美一区二区三区黑人一| 久久中日麻豆| 97综合激情| 亚洲最大成人a毛毛片| 国产老熟女| 色九九久九九| 欧美顶级黄片AAAAA在线免费看 | av天堂精品久久| 黄片不用下载在线观看| 国产乱码久久| 快灬快灬 一下爽蜜桃在线观看| 亚洲成人日韩小说| 99RE在线视频精品,这里只有精品| 91精品导航| 黑人黄片在线免费观看| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 另类视频在线| 欧美偷偷网| 手机在线播放国产福利| 99热这里只有精品9| 久草电影网| 欧美人妻精品一区二区| 精品视频久久区| 九九九九久久久| 日本免费二区三区| 欧美精品四区| 最新av中文字幕高清| 天天影视激情欧美| 6080YYY午夜理论片在线观看| 九九九九九九九九九五码| 欧亚性爱视频免费看| 综合色久欲| 亚洲熟妇自偷自拍另欧美| 国产福利一区二| 日韩熟妇二区| 日本爽爽爽爽爽爽免费视频| 和协影院中文字幕三区| 99热99在线播放激情| 69精品| 日韩少妇丰满亚洲| 久久综合九九| 久久黄色性爱视频| 91骚熟女| 日本三级日本三级三级人妇四虎| 99re在线观看| 男人的天堂亚洲| 欧美激情精品久久久久久| 亚欧韩av| 亚洲本色精品一区二区久久| 欧美在线伊人色| 26uuu性| 亚洲少妇激情一区二区三区| 熟妇操花| 精品69网| 91日日| 久久91精品国产9丨久久分亭| 屁股久久久久久久久| 国产九月婷婷| 国产午夜福利电影免费在线观看 | 欧美性第1页| 日日干日日| 免费啪啪av| 欧美日韩精品青青| 色爱综合网| 尤物视频偷拍免费| 日本午夜久久电影| 性综合网| 黄色一区三区| 国产日韩精品一区二区三区| 国产亚洲中文不卡二区| 久久香蕉国产线看观看亚洲女人| 婷婷综合在线观看| 不卡一区二区日本视频| 91少妇人妻| 亚州色国| 99丝袜福利在线播放| 中文字幕日韩精品久久| 夜色91| 人妻丝袜肏逼| 中文伊人大香蕉视频| 99久久久无码国产精品性男| 熟女激情综合网| 九九超碰综合网| 亚洲欧美天堂在线| 色99视频| 国产高清在线观看欧美| av网站免费看| 9久9久9久9久视频网站| 青青草伊人久久| 日本美女性生活久久久久久久| 激情网色| 思思视频免费看网站| 男人天堂新在线| 美女黑人91神马| 江都AV在线| 日本欧美国内在线| 超碰在线香蕉| 一道α片欧美| 欧美一二三级精品在线| 亚洲风情在线观看| 久久久999国产| ai欧美亚洲小说| 狠狠热这里都是精品| 色爱综合网| 国产激情久久| 欧美视频在线视频免费va| 亚洲色阁| 日韩大香蕉AV影片| 大香蕉92| 久久老熟女| 东北女人性交| 国产三级中文字幕粉嫩 | 国产三级在线现体验区| 亚洲欧美综合| 五月丁香黄色网| 麻豆美女丝袜人妻中文| 免费国产| 麻豆a'v电影| 少妇人妻激情四射| 亚洲性综合| 大香蕉之青青草原| 91麻豆一二三区| 嗯嗯啊好大| 懂色av中文字幕一区二区三区天美| 色大香蕉97N| 超碰国产情侣自拍网| 久久9亚洲| 狠狠色丁香| 人妻日日夜夜精品| 这里是精品| 91最新综合| 精品国产国产AV| 欧洲小说色图视频另类| 人妻黑丝袜电影| 欧美综色欧| 色妇综合网| 亚洲精品九九九| 超碰免费97| 国产操逼视频在线观看| 黄色电影观看久久9| 亚洲精品免费中文字幕| 一起草日韩| 国产精品一区二区黄片| 嗯啊不要啊在线 | 欧美亚洲se91| 久久精品一区| 啊嗯嗯啊好大好爽| 成熟熟女国产精品一区二区| 欧美白嫩在线放| 偷拍导航视频网站| 亚洲图片欧美| 吖在线不卡一区二区国产剧情 | 97最新在线播放视频| 九九热精品在线| 乱老熟女一区二区三区| 大香蕉日亚洲日本亚大 | 色哟哟511老熟女| 欧美第一页性| 欧美日韩国产人人| 人妻精品一区二区| 岛国片在线播放| www.99色| 人妻无码久久一区二区三区免费| 91天美传媒在线观看| 亚洲不卡一| 婷婷av在线中文字幕| 一区二区三区欧美激情| 又大又白奶子| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 午夜激情成人在线观看| 全球成人中文在线| 日本天天人人狠狠在线日美女| 欧美影音在线| 亚洲国产天堂| 精品视频免费在线一区| 欧美日韩操操操| 草b在线 | 伊人玖玖网| 大香蕉日韩| 亚洲国产婷婷在线播放| 6080yy午夜理论三级一区二区三区无码 | 日韩情色AV| 外国91| 嫩草影院在线观看精品| 亚洲免费精品一区| 亚洲诱惑天堂| 欧美性爱第一页久久| 国产成人亚洲精品无码古代早漏男 | 国产欧美一区激情交| 日本好吊色视频| 久久久久久网址| 亚洲欧美校园另类春色| 大香交| 国产一级操B视频| 日韩在线人妻网站| 伊人91| 欧美日韩国产黄色片| 屌妞视频久久久久久久久久久久| 亚洲在线a| 亚洲色图超碰在线| 日韩本不卡视频在线观看 | 热热热热日日漂亮永久永久国产日| 91天天综合日韩欧美| 亚洲中文字幕av| 少妇特黄一区二区三区| 日韩亚洲中文字幕在线| 亚洲中文字幕妇伦久久| 99av| 激情六月天| 啊啊啊爽爽| 色五月亚洲| 婷婷五月天无码| 97精品熟女少妇一区| 久久久久久九九九九-美女久久久久久久-成人AV | 怡红院亚洲怡春院av| 日韩人妻制服丝袜av| 天天综合欧美综合| 亚洲综合在线91| 日韩精品中文字幕二区| 国产97/欧美| 国产欧美一区激情交| 三级色影综合网| 五月婷婷六月丁香| 97精品一区二区视频| 天天操女人| 久操91视频| 久久久久9999妇女| 国产精品无码久久久久2025| 99热导航| 国产女同视频在线播放| 色综合超碰超| 色情五月丁香| 男女啊啊啊| 超碰97人妻免费在线| 欧美性天天影视| 天天综合-91入口| 97人人中文网| 亚洲h片在线免费观看| 男人天堂综合| 六月丁丁香| 日韩无码一级黄色av片| 天海翼久久| 国模吧 一区二区三区| 欧洲综合色| 青青草久久一区网| 国产黄片在线免费观看| 欧美色图另类图片| 熟妇无码视频三区| 亚欧无码在线| 中文字幕在线观看网址| 亚洲AV无码天美传媒一区| 日韩欧美大片免费高清啪啪| 媚薬在线视频麻豆| 国产色呦呦| 国产丝袜美女在线一区| 99在线啪| 四季AV综合网址| 久久久久久国产无码精品| 大香蕉日韩欧美| 午夜男人天堂| 日韩一区二区高清在线观看的| 日韩日韩日韩-国产乱码精品一区二区| 超碰人人妻| 久久这里是精品| 99热在线观看| 日本免费一区二区不卡 | 欧美亚洲影视| 久久久久9| 午夜.DJ高清在线观看免费7| 97bbn| 超碰爽人妻熟女Av| 国语精品内射在线观看| 日韩综合成人免费视频| 东北女人性交| 久久免费精品96| 日本精品一区三区| 免费在线观看国内色片网站网址| 超碰精品国产无码| 日韩一级二级三级| 91 亚欧| 欧亚日韩三区| 国产人伦精品一区二区三区| av天堂手机版追回 | 97久久久| 日本欧美一区二区三区免费| 曰韩中文人妻视频| 在线不欧美| 色777999综合| 97超碰中文字幕| 自拍欧美| 西西美女视频网| 婷婷国产精品九区| 91在线视频免费播放| 亚洲 欧美 制服 另类 自拍| 91制服丝袜中文字幕| 999久久芭蕾| 欧美性综合| 国产丸一视频| 欧美猛交黑寡妇中文字幕| 99热99在线| 亚洲码专区| 久久社区一区二区三区| 国产精品一区二区a| 亚洲91大片| 日韩亚洲美女一区久久| 97在线精品| 久久99综合| www.色操逼| 91狠狠综合久久| 黑人精品成人一区二区三区| 国产日韩区| ji熟女.com| 无码区蜜乳| 日本免费中文字幕在线| 亚洲成人精品在线一区| 97在线精品观看视频| 亚洲无码国产精品久久| 一区二区三区探花在线观看| 日韩性爱1级片视频| 在线无码操| 91在线精品| 成人美女av| 五月综合久久| 熟女人妻久久中文字幕一二区| 偷窥自拍亚洲色图| 久久99国产综合精品女同| 天天影视激情欧美| 青青草手机在线免费观看| 九九九精品色乱九九九| 欧美在线55555| 手机不卡视频不卡在线一二三区| 农村妇女精品一区二区| 老汉网| 全国男人天堂网| 欧美日韩不卡传媒| av毛片aaaaa免费看| 人人做天天爱| 人妻熟女av国产网站| 丁香六月婷婷久久综合| 亚洲最大91网| 国产白领连续中出在线观看| 五月色综合| 大香网伊人久久综合网eew| 新视频sss国产| 9久久精品| 影音先锋日本乱伦| 黄片免费看黄片免费看| 九九碰九九爱97超碰| 亚洲综合色男人网| 色婷婷综合久久中文字幕雪峰 | 国产大学生口爆吞精合集| 婷婷97| 97国伦国色| 欧美97免费| 久久久久九九九| 日韩不卡毛片Av免费高清| 久久欧美性爱视频| 色综合久| 美女毛片999| 老熟妇一区二区三区| 男女日B国产| 成人免费在线网站| 久久国产精品,久久国产| 天天拍天| 拍拍拍拍大尺度黄色三级片拍拍拍拍拍照| 午夜啊啊| 日韩99精品视频综合区| 这里都是精品在线观看| 一区麻豆 高清中文字幕| 日本黄色精品专区网站| 久久九九国产精品| 久久9 9 9精品| 九九亚洲精品| 亚拍在线| 欧美天天综合网| 精品国产www久久| 色av中文字| 久久后入制服| 国内毛片热久久思思热| 亚洲天堂人妻一区二区| 九九九热精品| 日韩中文字幕精品一区在线| 人妻少妇视频在线播放| 中亚黄色三级大片| 视频国产成人精品日本亚洲18| 超碰免费在线| 99国产精品自在自在| 亚州一区二区成人片免费| 五月天色图影视| 欧美九九九九九| 国产成人无码高清| 精品97精品97| 日韩视频中文字幕| 久操网线| 国产盗摄美女如厕大神作品在线观看| 精品久| 超碰av在线| 欧美性爱一区二区三区| 思思久热在线精品66| 欧洲色| 天天久久久久久| 爱av免费| 久久久不能久久久久| 精品国产乱码久久久久久网站入口| 人人干人人搞人人摸| 久久精品中文| 欧美探花网| 老司机免费视频在线91| 色欲Av人妻精品一区二| 国产黄a三级三级三级av在线看| 校园春色美腿丝袜| 亚洲欧美日韩精品久| 亚洲第91页 | 中文字幕十五区| 国产91亚洲精品一区二区三区| 成人贴图日韩欧美| 中文字幕乱码在线| 麻豆区99999| 国产91美女视频| 日韩有码免费视频| 啊啊啊 在线| 色五月婷婷麻豆在| 国产一区二区三区高清视频| 久草精品热视| 国产v片在线免费观看| 深爱五月天| 中文一区二区三区影院| 亚洲最大黄网| 福利视频香蕉免费一区二区在线| 97在线免费看| 高潮毛片无遮挡高清免费| 亚洲视频一二区| 日本国产欧美高清在线| 乱老熟女一区二区三区| 国产91久久九九免费精品无码| 综合天天。| 亚洲国产精品无码AV在线| 久9久精品视频| 搡老人老9丨女老熟人| 啊灬啊灬啊灬啊灬高潮奶出了免费视| 综合亚洲欧美精品日韩?v| 亚洲乱色视频一区、二区在线| AV乱伦专区| 欧美人人天天网| 天天躁日日躁AAAXX| 日本欧美不卡| 开心五月婷婷| 综合伊人网12色| 91国产伊人大香蕉| 色色激情五月天| 中文字幕精品一区欧美| 欧美激色| 国模一区二区三区| 欧洲人妻视频| 中文久久96| 可以看的av| 欧美在线永久天堂| 97国产精选| 久久久com| 人人天天干干| 欧洲在线性爱视频| 狠狠躁久久躁| 800zy一区二区| 成人八戒网站| 东北女人性交| 2020中文字幕| 日韩不卡av一二三| 日本伦乱九九九综合| 肉丝中文无码高清| 色色色色色色色色色色色色色色综合| 亚欧无码在线| 亚洲天堂男人| 亚洲男人天堂手机版| 精品国产99| 亚洲少妇综合在线播放| 欧美情色贴图| 丁香五月天堂| 久久久亚洲| 超碰偷拍| 超碰97导航| 天天舔天天 | 一起草av| 久久这里是精品| 亚洲激情视频| 啊啊啊水好多| 97精品97久久| 嗯阿好爽好紧| 色婷五月天| 丁香五月天啪啪| 日日日日做夜夜夜夜无码| 欧美十八禁视频| 91综合网站| 国产精品69久久久久孕妇欧美| 91久久国外网| 91麻豆天美传媒HD| 日韩性爱视频免费在线| 亚洲高清综合网| 大乔未久88一区| 国产精品久久久999| 亚洲国产青青| 激情五月天校园春色网| 亚洲色欲一区二区三区| 夜夜夜久久| 五月综合色| 久久人人看| 26uuu偷拍亚洲欧洲综合| 免费αV在线视频| 欧美亚洲自拍另类人妻| 九月伊人中文字幕| 天天做天天爱| 欧美不在线| 亚洲影院成人| 伊人五月天婷婷| 青娱乐福利99| 少妇精品久久| 99久久久久久亚洲精品不卡| 亚洲中字幕日本一区二区三区| 99夜夜操| 国产路线专区|