การประยุกต์ใช้วิธีการเรียนรู้ของเครื่องในเว็บไซต์ StackExchange


37

ฉันมีหลักสูตรการเรียนรู้ของเครื่องภาคการศึกษานี้และอาจารย์ขอให้เราหาปัญหาในโลกแห่งความจริงและแก้ปัญหาโดยหนึ่งในวิธีการเรียนรู้ของเครื่องที่เปิดตัวในชั้นเรียนเป็น:

ฉันเป็นหนึ่งในแฟน ๆ ของstackoverflowและstackexchangeและทราบว่าการทิ้งฐานข้อมูลของเว็บไซต์เหล่านี้ถูกเปิดเผยต่อสาธารณะเพราะมันยอดเยี่ยม! ฉันหวังว่าฉันจะได้พบกับความท้าทายในการเรียนรู้ของเครื่องที่ดีเกี่ยวกับฐานข้อมูลเหล่านี้และแก้ไขมัน

ความคิดของฉัน

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

กรุณาบอกฉัน :

ฉันต้องการถามชุมชนสถิติในฐานะคนที่มีประสบการณ์เกี่ยวกับ ML สองคำถาม:

  1. คุณคิดว่าคำแนะนำแท็กเป็นปัญหาที่มีโอกาสแก้ไขได้หรือไม่? คุณมีคำแนะนำเกี่ยวกับเรื่องนี้หรือไม่? ฉันกังวลเล็กน้อยเพราะ stackexchange ยังไม่ได้ใช้คุณสมบัติดังกล่าว

  2. คุณมีความคิดอื่น / ดีกว่าสำหรับโครงการ ML ที่ยึดตามฐานข้อมูล stackexchange หรือไม่ ฉันพบว่ามันยากที่จะเรียนรู้จากฐานข้อมูล stackexchange


การพิจารณาเกี่ยวกับข้อผิดพลาดของฐานข้อมูล: ฉันต้องการที่จะชี้ให้เห็นว่าถึงแม้ว่าฐานข้อมูลจะมีขนาดใหญ่และมีหลายกรณี แต่ก็ไม่สมบูรณ์และตัดให้ผิดพลาด สิ่งที่ชัดเจนคืออายุของผู้ใช้ที่ไม่น่าเชื่อถือ แม้กระทั่งแท็กที่เลือกไว้สำหรับคำถามนั้นไม่ถูกต้อง 100% อย่างไรก็ตามเราควรพิจารณาถึงเปอร์เซ็นต์ความถูกต้องของข้อมูลในการเลือกปัญหา

การพิจารณาเกี่ยวกับปัญหาของตัวเอง:โครงการของฉันไม่ควรเกี่ยวกับdata-miningหรืออะไรทำนองนี้ มันควรจะเป็นการประยุกต์ใช้วิธีการ ML ในโลกแห่งความจริง

คำตอบ:


28

ใช่ฉันคิดว่าการคาดคะเนของแท็กเป็นสิ่งที่น่าสนใจและสิ่งหนึ่งที่คุณมีโอกาสดีในการ "ประสบความสำเร็จ"

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

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

  1. การวิเคราะห์เชิงพรรณนาขั้นพื้นฐานเกี่ยวกับพฤติกรรมของผู้ใช้ : ฉันเดาว่ามีรูปแบบรายสัปดาห์ที่ชัดเจนมากต่อการมีส่วนร่วมของผู้ใช้ในเว็บไซต์นี้ ไซต์จะได้รับการเข้าชมมากที่สุดเมื่อใด กราฟการมีส่วนร่วมของผู้ใช้บนเว็บไซต์มีลักษณะอย่างไรจัดแบ่งตามชั่วโมงในแต่ละสัปดาห์ คุณต้องการปรับสำหรับการเปลี่ยนแปลงที่อาจเกิดขึ้นกับความนิยมโดยรวมของเว็บไซต์เมื่อเวลาผ่านไป สิ่งนี้นำไปสู่คำถามความนิยมของเว็บไซต์เปลี่ยนไปอย่างไรตั้งแต่เริ่มก่อตั้ง? การมีส่วนร่วมของผู้ใช้ "ทั่วไป" แตกต่างกันไปตามเวลาตั้งแต่เข้าร่วมอย่างไร ฉันเดาว่ามันจะเพิ่มขึ้นอย่างรวดเร็วในช่วงเริ่มต้นจากนั้นที่ราบสูงและอาจมุ่งหน้าลงใต้หลังจากสองสามสัปดาห์หรือประมาณนั้นเพื่อเข้าร่วม
  2. การส่งคำถามและคำตอบที่เหมาะสมที่สุด : การรับข้อมูลเชิงลึกของคำถามแรกนั้นดูเหมือนจะนำไปสู่คำถามที่น่าสนใจกว่า บอกว่าฉันมีคำถามที่ฉันต้องการคำตอบ หากฉันต้องการเพิ่มความน่าจะเป็นในการได้รับการตอบกลับฉันควรส่งเมื่อใด หากฉันตอบคำถามและต้องการเพิ่มจำนวนการลงคะแนนให้มากที่สุดฉันควรส่งคำตอบเมื่อใด บางทีคำตอบของทั้งสองนี้อาจแตกต่างกันมาก สิ่งนี้แตกต่างกันไปตามหัวข้อของคำถาม (พูดเช่นตามที่กำหนดโดยแท็กที่เกี่ยวข้อง) อย่างไร
  3. การสรุปกลุ่มผู้ใช้และหัวข้อ : ผู้ใช้คนใดที่เหมือนกันมากที่สุดในแง่ของความสนใจอีกครั้งอาจวัดจากแท็ก? หัวข้อใดที่คล้ายคลึงกันมากที่สุดตามที่ผู้ใช้เข้าร่วม คุณสามารถนึกภาพความสัมพันธ์เหล่านี้ได้หรือไม่? การถ่ายทำสิ่งนี้คือการพยายามคาดการณ์ว่าผู้ใช้คนใดมีแนวโน้มที่จะส่งคำตอบสำหรับคำถามเฉพาะ (ลองจินตนาการถึงการจัดหาเทคโนโลยีดังกล่าวให้กับ SE เพื่อให้ผู้ใช้สามารถได้รับการแจ้งเตือนคำถามที่น่าสนใจไม่ใช่แค่ใช้แท็ก)
  4. การรวมกลุ่มของผู้ตอบแบบสอบถามตามพฤติกรรม : ดูเหมือนว่ามีรูปแบบพฤติกรรมพื้นฐานที่แตกต่างกันเล็กน้อยเกี่ยวกับวิธีที่ผู้ตอบใช้เว็บไซต์นี้ คุณสามารถสร้างคุณสมบัติและอัลกอริทึมการจัดกลุ่มเพื่อตอบกลุ่มตามพฤติกรรมของพวกเขาได้หรือไม่ กลุ่มตีความได้หรือไม่
  5. การแนะนำแท็กใหม่ : คุณสามารถหาคำแนะนำสำหรับแท็กใหม่โดยอ้างอิงจากหัวข้อที่สรุปจากคำถามและคำตอบในฐานข้อมูลได้หรือไม่ ตัวอย่างเช่นฉันเชื่อว่าเมื่อเร็ว ๆ นี้มีการเพิ่มแท็ก [แบบจำลองผสม] เนื่องจากมีคนสังเกตว่าเราได้รับคำถามมากมายที่เกี่ยวข้อง แต่ดูเหมือนว่าวิธีการดึงข้อมูลควรสามารถแยกหัวข้อดังกล่าวได้โดยตรงและอาจแนะนำให้ผู้ดูแล
  6. การเรียนรู้สถานที่ตั้งทางภูมิศาสตร์แบบกึ่งสำเร็จรูป : (อันนี้อาจจะค่อนข้างงุนงงจากมุมมองความเป็นส่วนตัว ) ผู้ใช้บางคนแสดงรายการที่พวกเขาอยู่ คนอื่นทำไม่ได้ การใช้รูปแบบการใช้งานและคำศัพท์ที่อาจเกิดขึ้น ฯลฯ คุณสามารถกำหนดพื้นที่ความมั่นใจทางภูมิศาสตร์ให้กับสถานที่ของผู้ใช้แต่ละคนได้หรือไม่? โดยสังหรณ์ใจดูเหมือนว่านี่จะมีความแม่นยำมากขึ้นในแง่ของลองจิจูดมากกว่าละติจูด
  7. การติดธงทำซ้ำอัตโนมัติและคำถามที่เกี่ยวข้องมากที่สุด : ไซต์มีฟีเจอร์ที่คล้ายกันกับแถบที่เกี่ยวข้องในระยะขอบด้านขวา การค้นหาข้อมูลที่ซ้ำซ้อนเกือบทั้งหมดและการแนะนำสิ่งเหล่านั้นอาจเป็นประโยชน์ต่อผู้ดูแล การทำสิ่งนี้ข้ามไซต์ในชุมชน SE ดูเหมือนจะเป็นเรื่องใหม่
  8. Churn Prediction และการเก็บข้อมูลผู้ใช้ : การใช้คุณสมบัติจากประวัติของผู้ใช้แต่ละคนคุณสามารถคาดเดาได้ในครั้งต่อไปที่คุณคาดหวังที่จะเห็นพวกเขา? คุณสามารถทำนายความน่าจะเป็นที่พวกเขาจะกลับไปที่ไซต์ตามเงื่อนไขว่าพวกเขาหายไปนานแค่ไหนและมีลักษณะการทำงานในอดีตของพวกเขาหรือไม่? สิ่งนี้สามารถใช้เช่นพยายามที่จะสังเกตเห็นเมื่อผู้ใช้มีความเสี่ยง "ปั่น" และมีส่วนร่วมพวกเขา (พูดผ่านทางอีเมล) ในความพยายามที่จะรักษาพวกเขา วิธีการทั่วไปจะยิงอีเมลหลังจากที่ไม่มีการใช้งานเป็นระยะเวลาหนึ่ง แต่ผู้ใช้แต่ละคนแตกต่างกันมากและมีข้อมูลจำนวนมากเกี่ยวกับผู้ใช้จำนวนมากดังนั้นจึงสามารถพัฒนาวิธีการที่เหมาะสมยิ่งขึ้น

1
@ พระคาร์ดินัล นั่นเป็นคำตอบที่ยอดเยี่ยมและด้วยความพร้อมของข้อมูลทั้งหมดนี้ก็จะทำให้โครงการที่น่าสนใจ
richiemorrisroe

1
คำแนะนำส่วนใหญ่ของคุณดูเหมือนจะใช้ได้จริงและเกี่ยวข้องกับ ML อย่างไรก็ตามบางคนควรจัดการกับข้อมูลที่ผิดพลาดและไม่สมบูรณ์ น่าเศร้าที่ฉันไม่มีความรู้เชิงลึกเกี่ยวกับการขุดและกำจัดข้อมูลและไม่มีเวลาเพียงพอที่จะเรียนรู้ ฉันหวังว่าสมาชิกคนอื่น ๆ ของสถิติทำงานบางอย่างเกี่ยวกับความคิดเหล่านี้และให้มีส่วนร่วมกับชุมชนของ SE และสร้างความประทับใจให้พวกเขา :)
ไอแซก

2
@Isaac รายการที่ฉันให้ไว้ไม่ได้มีไว้เพื่อครอบงำ มันมีจุดประสงค์เพียงเพื่อช่วยในการระดมสมอง ขึ้นอยู่กับลักษณะของโครงการฉันคิดว่าการจัดการ 1-2 คนนั้นจะเป็นสิ่งที่คาดหวังมากที่สุด ไชโย
พระคาร์ดินัล

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

9

ฉันกำลังคิดเกี่ยวกับการทำนายแท็กด้วยเช่นกันฉันชอบความคิดนี้ ฉันรู้สึกว่ามันเป็นไปได้ แต่คุณอาจต้องเอาชนะปัญหาหลายอย่างก่อนที่คุณจะไปถึงชุดข้อมูลสุดท้ายของคุณ ดังนั้นฉันคาดการณ์การคาดคะเนแท็กอาจต้องใช้เวลานาน นอกเหนือจากแท็กที่ไม่ถูกต้องขีด จำกัด สูงสุด 5 แท็กอาจมีบทบาทได้ นอกจากนี้บางแท็กยังเป็นหมวดหมู่ย่อยของสินค้าอื่น ๆ (เช่น“ การเปรียบเทียบหลายรายการ” สามารถดูได้ในหมวดหมู่ย่อยของ“ การทดสอบนัยสำคัญ”)

ฉันไม่ได้ตรวจสอบว่ามีการรวมเวลาลงคะแนนไว้ในฐานข้อมูลที่สามารถดาวน์โหลดได้หรือไม่ แต่โครงการที่ง่ายและน่าสนใจกว่านั้นคือการคาดคะเนจำนวนคะแนนสุดท้าย (อาจหลังจาก 5 เดือน) สำหรับคำถามที่ขึ้นอยู่กับคะแนนโหวตครั้งแรก และเวลาในการยอมรับคำตอบ


จากสิ่งที่ฉันจำได้สำหรับผู้ใช้แต่ละคนคุณจะได้รับการลงคะแนนพร้อม date + ID คำถาม
chl

(+1) สำหรับการทำนายการโหวต ความคิดที่ดี!
steffen

1
โครงการนี้ดูดีโดยเฉพาะอย่างยิ่งถ้าเราคาดการณ์จำนวนผู้ใช้ vpvote เร็ว ๆ นี้ งานต่อไปคือการบอกผู้ใช้ว่ากำลังถือคำถามของเขา / เธอไว้ที่ไหนและการปรับปรุงใดที่ทำให้คำถามของเขาเป็นที่นิยม อย่างไรก็ตามเช่นเคยการเลือกคุณสมบัติเป็นงานที่สำคัญและท้าทายจริง ๆ และประสิทธิภาพของการทำนายเช่นนั้นขึ้นอยู่กับการเลือกนี้ TL; DR ฉันชอบความคิดของคุณ
ไอแซค

2

นี่เป็นคำถามที่ดี ฉันก็คิดว่าชุดข้อมูล StackExchange ที่เปิดเผยต่อสาธารณชนจะทำให้วิชาที่ดีสำหรับการวิเคราะห์ สิ่งเหล่านี้เป็นสิ่งที่ผิดปกติอย่างมากที่อาจเป็น testbeds ที่ดีสำหรับวิธีการทางสถิติแบบใหม่ การมีข้อมูลจำนวนมากที่มีโครงสร้างที่ดีนั้นเป็นเรื่องผิดปกติในทุก ๆ อัตรา

cardinalแนะนำสิ่งต่าง ๆ มากมายซึ่งจริง ๆ แล้วจะมีประโยชน์สำหรับ StackExchange ฉันจะไม่ จำกัด ตัวเองในเรื่องนี้

นี่คือหนึ่งในผู้สมัครที่เห็นได้ชัดสำหรับการวิเคราะห์แม้ว่าจะไม่มีการใช้ที่ชัดเจนที่อยู่ในใจ มันเป็นผลที่เห็นได้ชัดเจนว่าผู้ใช้ตัวแทนระดับสูงมีแนวโน้มที่จะได้รับ upvotes มากกว่าสิ่งอื่น ๆ ที่เท่าเทียมกัน อย่างไรก็ตามเอฟเฟ็กต์นี้อาจไม่สำคัญกับโมเดล เนื่องจากเราไม่สามารถเปรียบเทียบประโยชน์ที่มีกับผู้ใช้ได้อย่างง่ายดายแนวทางที่ชัดเจนคือการสมมติว่าคำตอบของผู้ใช้มีประโยชน์เท่าเทียมกันเสมอ (ไม่เป็นความจริงโดยทั่วไป แต่ต้องเริ่มต้นที่ไหนสักแห่ง) จากนั้นเพิ่มคำศัพท์เงินเฟ้อ . จากนั้นหนึ่งอาจ (ฉันคิดว่า) เพิ่มในเงื่อนไขที่จะบัญชีสำหรับคำตอบของเขาได้ดีขึ้นด้วยประสบการณ์ที่เพิ่มขึ้น บางทีนี่อาจจัดการโดยอนุกรมเวลาบางชนิด ฉันไม่แน่ใจว่าช่วงเวลาของข้อมูลจะมีผลกับสิ่งนี้อย่างไร มันอาจเป็นการออกกำลังกายที่น่าสนใจ

ฉันจะเพิ่มตัวอย่างเพิ่มเติมถ้า / เมื่อฉันคิดถึงพวกเขา

มีใครบ้างที่ทราบงานวิจัยทางสถิติที่อ้างอิงข้อมูล SE นอกจากนี้Isaacยังกล่าวว่าข้อมูลมีข้อผิดพลาด ไม่มีใครรู้อะไรเพิ่มเติมเกี่ยวกับเรื่องนี้?


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

@cardinal: คุณมีลิงค์ไปยังโพสต์บล็อกหรือไม่ ฉันไม่แน่ใจว่าฉันเข้าใจประโยคสุดท้ายของคุณ เทสฉันคิดว่าเอฟเฟกต์นั้นเป็นของจริงและเห็นได้ชัดอย่างน้อยถ้าชื่อผู้ใช้คือ Skeet แต่ ณ จุดนี้นี่เป็นเพียงความประทับใจเล็กน้อย แต่ก็น่าประทับใจ ดังนั้นหากคุณต้องการคุณสามารถแทนที่ "ผลที่เห็นได้ชัดเจน" ด้วยสมมติฐาน แน่นอนว่าการวิเคราะห์นั้นจะพยายามยืนยันหรือปฏิเสธเช่นเดียวกับการวัดความแข็งแรงของผลกระทบถ้ามันมีอยู่จริง
Faheem Mitha

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