ข้อแตกต่างของการแนะนำตามรายการและผู้ใช้ใน Mahout


15

ฉันอยากจะรู้ว่าผู้ใช้ควานช้างตามและคำแนะนำตามรายการแตกต่างกันอย่างไร

มันกำหนดว่า

ตามผู้ใช้ : แนะนำรายการโดยการค้นหาผู้ใช้ที่คล้ายกัน สิ่งนี้มักจะยากต่อการปรับขนาดเนื่องจากลักษณะของผู้ใช้แบบไดนามิก

รายการตาม : คำนวณความคล้ายคลึงกันระหว่างรายการและให้คำแนะนำ รายการมักจะไม่เปลี่ยนแปลงมากนักดังนั้นสิ่งนี้จึงสามารถคำนวณได้จากบรรทัด

แต่ถึงแม้ว่าจะมีข้อเสนอแนะสองแบบให้เลือก แต่สิ่งที่ฉันเข้าใจคือทั้งสองอย่างนี้จะใช้ตัวแบบข้อมูลบางตัว (เช่น 1,2 หรือ 1,2, .5 เป็น item1, item2, value หรือ user1, user2, value โดยที่ value ไม่ได้ บังคับ) และจะทำการคำนวณทั้งหมดตามการวัดความคล้ายคลึงกันและฟังก์ชั่น build-in ของผู้แนะนำที่เราเลือกและเราสามารถเรียกใช้คำแนะนำจากผู้ใช้ / รายการตามข้อมูลเดียวกัน (นี่คือสมมติฐานที่ถูกต้องหรือไม่?)

ดังนั้นฉันอยากรู้ว่าอัลกอริทึมทั้งสองแบบนี้แตกต่างกันอย่างไร

คำตอบ:


11

คุณถูกต้องว่าทั้งสองรุ่นทำงานกับข้อมูลเดียวกันโดยไม่มีปัญหาใด ๆ รายการทั้งสองทำงานในเมทริกซ์ของการจัดอันดับรายการผู้ใช้

ในวิธีการใช้งานตามขั้นตอนวิธีการผลิตให้คะแนนสำหรับรายการต์iโดยผู้ใช้uโดยการรวมการจัดอันดับของผู้ใช้อื่น ๆที่คล้ายกับu' uคล้ายกันที่นี่หมายความว่าการให้คะแนนของผู้ใช้สองคนมีความสัมพันธ์สูงเพียร์สันหรือความคล้ายโคไซน์หรือสิ่งที่คล้ายกัน

ในวิธีการตามรายการเราให้คะแนนiโดยuโดยดูที่ชุดของรายการi'ที่คล้ายกับi(ในความหมายเดียวกันข้างต้นยกเว้นตอนนี้เราจะดูคะแนนที่รายการได้รับจากผู้ใช้) ที่uได้รับการจัดอันดับ แล้วรวมการจัดอันดับโดยuการi'เป็นคะแนนตามคำทำนายสำหรับui

วิธีการที่ใช้ไอเท็มถูกประดิษฐ์ขึ้นที่ Amazon ( http://dl.acm.org/citation.cfm?id=642471 ) เพื่อจัดการกับความท้าทายในระดับของพวกเขาด้วยการกรองตามผู้ใช้ จำนวนของสิ่งที่พวกเขาขายนั้นมีน้อยกว่าและน้อยกว่าไดนามิกมากกว่าจำนวนผู้ใช้ดังนั้นความคล้ายคลึงกันของไอเท็มไอเท็มสามารถคำนวณแบบออฟไลน์และเข้าถึงได้เมื่อจำเป็น


21

อัลกอริทึมตามรายการ

for every item i that u has no preference for yet

  for every item j that u has a preference for

    compute a similarity s between i and j

    add u's preference for j, weighted by s, to a running average

 return the top items, ranked by weighted average

อัลกอริธึมตามผู้ใช้

for every item i that u has no preference for yet

 for every other user v that has a preference for i

   compute a similarity s between u and v

   add v's preference for i, weighted by s, to a running average

 return the top items, ranked by weighted average

รายการเทียบกับผู้ใช้:

1) ผู้แนะนำขยายจำนวนของรายการหรือผู้ใช้ที่พวกเขาต้องจัดการดังนั้นจึงมีสถานการณ์ที่แต่ละประเภทสามารถทำงานได้ดีกว่าอีกประเภทหนึ่ง

2) การประมาณความคล้ายคลึงกันระหว่างรายการมีแนวโน้มที่จะมาบรรจบกันเมื่อเวลาผ่านไปมากกว่าความคล้ายคลึงกันระหว่างผู้ใช้

3) เราสามารถคำนวณและแคชความคล้ายคลึงกันที่มาบรรจบกันซึ่งสามารถให้ข้อได้เปรียบด้านประสิทธิภาพแก่ผู้แนะนำรายการ

4) รายการแนะนำที่ขึ้นอยู่กับรายการเริ่มต้นด้วยรายการของรายการที่ต้องการของผู้ใช้และไม่จำเป็นต้องมีรายการที่ใกล้เคียงที่สุดเนื่องจากผู้แนะนำตามผู้ใช้ทำ


คำเตือนที่เป็นธรรม: ลิงก์ไม่ได้รับการยอมรับว่าเป็นคำตอบในเว็บไซต์นี้ ฉันแนะนำให้แก้ไขหรือลบก่อนที่คุณจะได้รับ downvotes!
sheldonkreger

1
เป็นไปได้มากว่ามีการพิมพ์ผิดใน "อัลกอริทึมแบบผู้ใช้" - บรรทัดที่สี่ควรเริ่มต้นด้วย "เพิ่มการตั้งค่าของฉันสำหรับ i ... "
Bernardo Aflalo

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