รูปแบบการจัดประเภทสำหรับการทำนายเรตภาพยนตร์


11

ฉันค่อนข้างใหม่ในการขุดข้อมูลและฉันกำลังทำงานกับรูปแบบการจัดหมวดหมู่สำหรับการทำนายการจัดอันดับภาพยนตร์

ฉันได้รวบรวมชุดข้อมูลจาก IMDB และฉันวางแผนที่จะใช้ต้นไม้ตัดสินใจและแนวทางเพื่อนบ้านที่ใกล้ที่สุดสำหรับแบบจำลองของฉัน ฉันต้องการที่จะรู้ว่าเครื่องมือการขุดข้อมูลที่สามารถใช้งานได้อย่างอิสระสามารถให้การทำงานที่ฉันต้องการ

คำตอบ:


5

ไฮน์

มีเครื่องมือและ libs จำนวนมากพร้อมฟังก์ชันการทำงานที่มีอยู่

ตัวเลือกใดขึ้นอยู่กับว่าคุณต้องการใช้ gui สำหรับงานของคุณหรือไม่หรือต้องการฝังไว้ในโปรแกรมอื่น

เครื่องมือขุดข้อมูลแบบสแตนด์อโลน (มี ohters เช่น WEKA พร้อมอินเตอร์เฟส Java):

  • Rapid Miner
  • ส้ม
  • Rattle gui สำหรับ R
  • KNIME

ข้อความที่ใช้:

  • GNU R

libs:

  • Scikit สำหรับ Python
  • ควาญช้างบน Hadoop

หากคุณรู้ภาษาการเขียนโปรแกรมดีพอฉันจะใช้ lib สำหรับภาษานั้นหรือลอง R ถ้าไม่ใช่คุณอาจลองใช้เครื่องมือตัวใดตัวหนึ่งกับ gui

ตัวอย่างต้นไม้ใน R:

# we are using the iris dataset
data(iris)

# for our tree based model we use the rpart package
# to download it type install.packages("rpart")
library(rpart)

# Building the tree
fit <- rpart(Species ~ Petal.Length + Petal.Width, method="class", data=iris)

# Plot the tree
plot(fit)
text(fit)

ตามที่แนะนำการวิเคราะห์ด้วย R ต้องการให้คุณเขียนโค้ดด้วยตัวเอง แต่คุณจะพบแพ็คเกจสำหรับงานการจำแนกประเภทส่วนใหญ่ซึ่งจะทำงานนอกกรอบ ภาพรวมสามารถดูได้ที่นี่มุมมองงานการเรียนรู้ของเครื่อง

ในการเริ่มต้นกับ RapidMinder คุณควรดู Youtube มีหน้าจอ screencasts แม้สำหรับต้นไม้ตัดสินใจ


1
ฉันต้องการ downvote แต่คุณเป็นคนใหม่ดังนั้น: คุณเพียงแค่ระบุชุดเครื่องมือ (คำตอบที่ค่อนข้างทั่วไป) โดยไม่มีการสาธิตว่าทำไมมันจึงเหมาะสำหรับงานเฉพาะของ OP ผมขอแนะนำให้รายละเอียดมากขึ้นมิฉะนั้นคำตอบของคุณจะถูกแทนที่ด้วยstats.stackexchange.com/questions/2007/... ไม่มีความผิดโปรดใช้มันเป็นคำแนะนำที่เป็นมิตร :)
Steffen

@steffen: กราบรับของ audijenz 4 upvotes และ 0 downvotes พูดเป็นอย่างอื่น ฉันเชื่อว่าเขาตอบคำถามอย่างดี มันถามว่า "เครื่องมือการทำเหมืองข้อมูลที่ให้บริการฟรีสามารถให้ฟังก์ชันที่ฉันต้องการ" และคำตอบก็เป็นเช่นนั้น จริง ๆ แล้วมากกว่าคำตอบใด ๆ ในชุดข้อความที่คุณเชื่อมโยง
rolando2

1
@ rolando2 ฉันได้เพิ่มความคิดเห็นก่อนที่จะ audijenz แก้ไขมันและฉันมีคำตอบที่แก้ไขแล้ว upvoted;)
steffen

@steffen: ฉันยืนแก้ไข!
rolando2

5

Wekaเป็นชุดเครื่องมือเรียนรู้เครื่องจักรแบบโอเพ่นซอร์สฟรี พวกเขามี GUI รวมถึง API ที่จะโทรจากรหัส Java ของคุณหากคุณต้องการ

พวกเขามีอัลกอริทึมการจำแนกประเภทมากมายรวมถึงอัลกอริทึมต้นไม้ตัดสินใจ สิ่งเหล่านี้มีอยู่ใน UI เพื่อนบ้านที่ใกล้ที่สุดที่ยุ่งยากมากขึ้นอีกนิดและมันดูเหมือนว่าคุณจะต้องใช้ API โดยตรง

ฉันคิดว่าRapid Minerอาจสนับสนุนสิ่งนี้ แต่ฉันไม่ได้ใช้เพื่อวัตถุประสงค์ดังกล่าวมาก่อน

คุณอาจพิจารณาRแต่อาจต้องใช้มือเล็กน้อยสกปรก

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


ขอบคุณ Michael ฉันลอง Weka สำหรับอัลกอริธึมทรีตัดสินใจ แต่ฉันพบว่าค่าตัวเลขไม่ได้รับการสนับสนุนสำหรับอัลกอริธึมทรีการตัดสินใจส่วนใหญ่ ในชุดข้อมูลของฉันฉันมีค่าตัวเลขเช่นการให้คะแนน (เลเบลคลาส), งบประมาณ, id ผู้กำกับ, นักแสดง id ฯลฯ ดังนั้นฉันจะจัดการกับค่าตัวเลขเหล่านั้นได้อย่างไร? (ฉันไม่แน่ใจว่าฉันควรเปิดเธรดใหม่สำหรับคำถามของฉัน) คุณมีข้อเสนอแนะใด ๆ เกี่ยวกับอัลกอริทึมที่เหมาะสมอื่น ๆ ?
K Hein

2
@ K Hein 1) ฉันแนะนำให้ใช้ Random ป่า (RF) แทน DT ดูเช่นstats.stackexchange.com/questions/10001/... 2) ตัวแปรที่เป็นตัวเลข: RF สามารถจัดการป้ายกำกับที่เป็นตัวเลขและไม่ต่อเนื่องคุณควรลองทั้งสองวิธี Director_id, actor_id ไม่ใช่คุณลักษณะที่เป็นตัวเลข แต่เป็นบูลีน (นักแสดงเข้าร่วมหรือไม่) หรือชื่อ (นักแสดงหลัก) สามารถแยกงบประมาณได้หรือให้ RF จัดการได้ ในกรณีนี้อัลกอริทึมค้นหาจุดแยกที่ดีที่สุด ฉันแนะนำให้เล่นและกลับมาใหม่ในภายหลังด้วยคำถามที่เฉพาะเจาะจงมากขึ้น;)
steffen

@steffen ขอบคุณ steffen! ฉันจะลองใช้ RF แต่ยังมีคำถามสองสามข้อเกี่ยวกับความคิดเห็นของคุณ สมมติว่าถ้าฉันต้องการที่จะนำนักแสดงชายคนนั้นเป็นบูลีนดังนั้นสำหรับนักแสดงที่ไม่ซ้ำกันแต่ละคนฉันมีแอตทริบิวต์บูลีนเช่น isActor1Particated (พูดกับนักแสดงชาย = 1)? หากฉันต้องการเปลี่ยน actor_id เป็นแอตทริบิวต์ที่ระบุฉันควรดำเนินการอย่างไร ฉันจะขอบคุณมากถ้าคุณสามารถให้คำอธิบายบางอย่างกับฉันเป็นจริงใหม่ในพื้นที่การขุดข้อมูล
K Hein

1
@ KHein ความคิดของฉันที่อยู่เบื้องหลังข้อเสนอแนะคือการ จำกัด นักแสดงให้กับคนที่สำคัญที่สุดโดยการสร้างฟีเจอร์เช่น first_actor, second_actor เป็นต้นอย่างไรก็ตามวิธีจัดการกับข้อมูลความยาวของตัวแปร (นักแสดงผู้กำกับคำหลัก ฯลฯ ) เป็นหัวข้อสำหรับ คำถามแยกต่างหาก
steffen

@KHein เมื่อคุณถาม "วิธีการจัดการกับข้อมูลที่มีความยาวตัวแปร" คำถามโปรดเชื่อมโยงไปที่นี่ :-)
คาร์เรนคุก

1

อาจเป็น ... WEKA? http://www.cs.waikato.ac.nz/ml/weka/


1
(-1): ถึงแม้ว่า Weka จะเป็นเครื่องมือขุดข้อมูลจริง ๆ ซึ่งมีการใช้งาน NN และ DT แต่คำตอบนั้นเป็นคำตอบทั่วไปซึ่งสามารถตอบคำถามได้มากมาย หากคุณคิดว่า Weka เหมาะสำหรับงานพิเศษในการทำนายการจัดอันดับที่ให้ข้อมูลที่กระจัดกระจายในระดับสูงมากทำไมคุณไม่แสดงตัวอย่าง (หรือลิงค์ไปยังตัวอย่าง) ไม่มีความผิดใด ๆ โปรดใช้เป็นข้อเสนอแนะที่เป็นมิตร
steffen
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.