基于Spark和Flask的一個可伸縮的電影推薦系統

jopen 9年前發布 | 13K 次閱讀 Spark 推薦引擎

 這份Apache Spark教程可以指導你逐步了解如何使用 MovieLens 數據集,基于 協同過濾 建立一個電影推薦系統。協同過濾使用 Spark的交替最小方差(ALS) 算法。

該教程由兩部分組成。第一部分是關于在Spark的RDDs(Resilient Distributed Datasets,是一個并行的容錯數據結構,可以讓用戶顯示地將數據存儲到磁盤和內存中,并能控制數據的分區)中獲取并解析電影和評分數據。第二部分是關于建立和使用推薦系統,并在稍后的在線推薦系統中沿用它。這兩部分最近都發布在了 Codementor.io

第一部分: 建立推薦系統

第二部分: 建立并運行web服務

這份教程可以被單獨用來建立基于MovieLens數據集的電影推薦系統。單從使用這個數據集或這個算法方面來看都不算是創新(我推薦你看 EdX course 或是 Google 的例子)。因為我們把重點放在最終得到一個在線環境下可用的模型,并且在不同情形下都可以使用。教程的第二部分解釋了在Spark模型上如何使用Python、Flask建立web服務。通過這些工作,你就能夠開發一個完整的在線電影推薦服務。

快速開始

本教程的應用程序已經擁有自己的 代碼倉庫(repository) 了 ,未來還會繼續發展。請盡情fork開發自己的應用吧!

文件server/server.py啟動了 CherryPy 服務器,這個服務器會運行 Flask 的app.py以啟動一個基于Spark的RESTful web服務器engine.py。通過API我們就可以實現在線電影推薦了。

關于如何運行使用這個服務的詳細指導請參考 筆記第二部分

謝謝分享!

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!