แนะนำภาพยนตร์ที่มีคุณสมบัติเพิ่มเติมโดยใช้การกรองร่วมกัน


17

ฉันกำลังพยายามสร้างระบบการแนะนำโดยใช้การกรองร่วมกัน ฉันมี[user, movie, rating]ข้อมูลปกติ ฉันต้องการรวมคุณสมบัติเพิ่มเติมเช่น 'ภาษา' หรือ 'ระยะเวลาของภาพยนตร์' ฉันไม่แน่ใจว่าเทคนิคใดที่ฉันสามารถใช้สำหรับปัญหาดังกล่าว

กรุณาแนะนำการอ้างอิงหรือแพคเกจในหลาม / R

คำตอบ:


17

นี่เป็นแหล่งข้อมูลบางส่วนที่อาจเป็นประโยชน์:

  • Recommenderlab - กรอบและโอเพนซอร์สซอฟต์แวร์สำหรับการพัฒนาและการทดสอบขั้นตอนวิธีการคำแนะนำ: http://lyle.smu.edu/IDA/recommenderlab ที่สอดคล้องกับRแพคเกจrecommenderlab: http://cran.r-project.org/package=recommenderlab

  • บล็อกโพสต์ต่อไปนี้แสดงให้เห็นถึงการใช้งานrecommenderlabแพคเกจ (ซึ่ง IMHO สามารถใช้กับเครื่องมือแนะนำโอเพ่นซอร์สใด ๆ ) สำหรับการสร้างแอปพลิเคชั่นแนะนำภาพยนตร์โดยใช้ตัวกรองการทำงานร่วมกัน : http://scn.sap.com/community/developer-center/hana / บล็อก / 2013/11/06 / ภาพยนตร์คำแนะนำโดยการใช้ประโยชน์จาก-R

  • งานวิจัยเกี่ยวกับระบบ recommender - หน้าเว็บที่ดีกับทรัพยากรในหัวข้อการบำรุงรักษาโดย Recommenderlab นำนักพัฒนาไมเคิล Hahsler: http://michael.hahsler.net/research/recommender

  • ปูนเครื่องยนต์แนะนำ - โอเพนซอร์สเครื่องมือแนะนำปรับแต่งสำหรับHadoopและPigเขียนในPythonและJava: https://github.com/mortardata/mortar-recsys บริษัท สนับสนุนการพัฒนาโครงการนี้Mortar Dataนำเสนอแพลตฟอร์มคลาวด์เชิงพาณิชย์ทั่วไปสำหรับการพัฒนาและการโฮสต์โครงการซอฟต์แวร์วิทยาศาสตร์ข้อมูลรวมถึงแพลตฟอร์มที่อิงMortar Recommendation Engine(การพัฒนาและโฮสต์โครงการสาธารณะฟรี): http: //www.mortardata ดอทคอม มอร์ตาร์ดาต้าให้ความช่วยเหลือในรูปของฟอรัมถามตอบสาธารณะ ( https://answers.mortardata.com ) รวมถึงบทช่วยสอนที่ครอบคลุมในการสร้างเครื่องมือแนะนำโดยใช้เทคโนโลยีแบบเปิด ( http://help.mortardata.com/data_apps/recommendation_engine )

  • "รู้เบื้องต้นเกี่ยวกับระบบ Recommender" - เป็นที่เกี่ยวข้อง Coursera แน่นอน (MOOC) ซึ่งเนื้อหาและคำอธิบายให้ข้อมูลเพิ่มเติมในหัวข้อ: https://www.coursera.org/course/recsys

  • PredictionIO - ซอฟต์แวร์เซิร์ฟเวอร์การเรียนรู้แบบโอเพ่นซอร์สซึ่งอนุญาตให้สร้างแอปพลิเคชั่นวิทยาศาสตร์ข้อมูลรวมถึงระบบการแนะนำ : http://prediction.io (ซอร์สโค้ดมีอยู่ใน GitHub: https://github.com/PredictionIO ) PredictionIOมีเอ็นจินการแนะนำในตัว ( http://docs.prediction.io/current/engines/itemrec/index.html ) และสนับสนุนภาษาการเขียนโปรแกรมและกรอบงานที่หลากหลายผ่านRESTfulAPIs รวมถึง SDK / ปลั๊กอิน PredictionIO รักษาAmazon Machine ImageในAWS ตลาดสำหรับการปรับใช้งานในโครงสร้างพื้นฐาน AWS: https://aws.amazon.com/marketplace/pp/B00ECGJYGE.

  • โครงการซอฟต์แวร์โอเพนซอร์สเพิ่มเติมที่เกี่ยวข้องกับหัวข้อ (ค้นพบผ่านMLOSSเว็บไซต์ในการเรียนรู้ซอฟต์แวร์โอเพนซอร์สซอฟต์แวร์: http://www.mloss.org ):

  • R โพสต์บล็อกที่เกี่ยวข้องต่อไปนี้เป็นที่น่าสนใจ:


4

แทนที่จะใช้การกรองแบบร่วมมือกันฉันจะใช้วิธีการแยกตัวประกอบแบบเมทริกซ์โดยที่ผู้ใช้และภาพยนตร์ต่างก็แสดงคุณสมบัติเวกเตอร์ของคุณสมบัติแฝงซึ่งผลิตภัณฑ์ dot ให้คะแนน โดยทั่วไปแล้วเพียงเลือกอันดับ (จำนวนของคุณลักษณะ) โดยไม่คำนึงถึงคุณลักษณะที่เป็นตัวแทนและอัลกอริทึมทำส่วนที่เหลือ เช่นเดียวกับ PCA ผลลัพธ์ไม่สามารถแปลได้ทันที แต่ให้ผลลัพธ์ที่ดี สิ่งที่คุณต้องการทำคือขยายเมทริกซ์ภาพยนตร์เพื่อรวมคุณสมบัติเพิ่มเติมที่คุณกล่าวถึงและตรวจสอบให้แน่ใจว่าพวกมันคงที่เนื่องจากอัลกอริทึมประเมินเมทริกซ์สองตัวที่ใช้การเปลี่ยนแปลงปกติ รายการที่เกี่ยวข้องในเมทริกซ์ผู้ใช้จะเริ่มต้นแบบสุ่มจากนั้นประเมินโดยอัลกอริทึมการแยกตัวประกอบเมทริกซ์ มันเป็นวิธีการที่หลากหลายและมีประสิทธิภาพ แต่ใช้ความเข้าใจในการเรียนรู้ของเครื่อง

ฉันเห็นสมุดบันทึก ipython ที่สวยงามสักพักหนึ่ง แต่ฉันไม่สามารถหาได้ในขณะนี้ดังนั้นฉันจะแนะนำคุณไปยังอีกคนหนึ่งซึ่งในขณะที่ไม่ดีเท่านี้ก็ยังคงชี้แจงคณิตศาสตร์บางส่วน


ขอบคุณฉันกำลังมองหาบางอย่างในบรรทัดเหล่านี้ มันจะมีประโยชน์อย่างมากหากคุณสามารถอ้างอิงถึงการกวดวิชาหรือโน๊ตบุ๊ค ipython พูดคุยเกี่ยวกับเรื่องนี้
Sidhha
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.