จะรู้ได้อย่างไรว่าปัญหาการเรียนรู้เครื่องของคุณสิ้นหวัง?


207

ลองนึกภาพสถานการณ์การเรียนรู้ของเครื่องมาตรฐาน:

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

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

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

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


1
ปัญหานี้สามารถตอบได้ในแง่การปฏิบัติ (เช่น @StephanKolassa) หรือในแง่แน่นอน (ทฤษฎีบทบางอย่างที่แสดงแบบจำลองที่กำหนดสามารถเรียนรู้ปัญหาหากเงื่อนไขบางอย่างพอใจ) คุณต้องการแบบไหน
Superbest

3
เสียงคล้ายกับปัญหาการหยุดคลาสสิกของวิทยาการคอมพิวเตอร์? สมมติว่าคุณมีอัลกอริทึม A ของความซับซ้อนตามอำเภอใจซึ่งค้นหาข้อมูลอินพุต D มองหาโมเดลการทำนายและอัลกอริทึมจะหยุดเมื่อพบโมเดล "ดี" สำหรับข้อมูล หากไม่มีการเพิ่มโครงสร้างที่สำคัญใน A และ D ฉันไม่เห็นว่าคุณจะบอกได้อย่างไรว่า A จะหยุดให้อินพุต D หรือไม่คุณจะบอกได้อย่างไรว่าในที่สุด A จะประสบความสำเร็จหรือค้นหาต่อไปตลอดไป?
Matthew Gunn

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

3
จากคำตอบของ @ StephenKolassa คำถามอีกข้อหนึ่งที่คุณสามารถแยกออกได้คือ 'ฉันควรนำงานของฉันกลับไปยังประเด็นที่ผู้เชี่ยวชาญและพูดคุยเกี่ยวกับผลลัพธ์ของฉัน (หรือขาดผลลัพธ์) ณ จุดใด
Robert de Graaf

หัวข้อที่เกี่ยวข้องด้วย: stats.stackexchange.com/questions/28057/…
Jan Kukacka

คำตอบ:


241

Forecastability

คุณถูกต้องว่านี่เป็นคำถามของการคาดการณ์ มีการไม่กี่บทความใน forecastabilityในIIF ของผู้ประกอบการที่มุ่งเน้นวารสารสุขุม (การเปิดเผยแบบเต็ม: ฉันเป็นผู้แก้ไขที่เกี่ยวข้อง)

ปัญหาคือการคาดการณ์นั้นยากที่จะประเมินในกรณี "ง่าย"

ตัวอย่างเล็ก ๆ น้อย ๆ

สมมติว่าคุณมีซีรี่ส์เวลาเช่นนี้ แต่ไม่พูดภาษาเยอรมัน:

ไข่

คุณจะสร้างแบบจำลองจุดสูงสุดขนาดใหญ่ในเดือนเมษายนได้อย่างไรและคุณจะรวมข้อมูลนี้ไว้ในการคาดการณ์อย่างไร

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

ในทำนองเดียวกันสมมติว่าคุณมีเส้นสีน้ำเงินด้านล่างและต้องการสร้างแบบจำลองสิ่งที่เกิดขึ้นใน 2010-02-28 ดังนั้นจึงแตกต่างจากรูปแบบ "ปกติ" ใน 2010-02-27:

เกมฮอกกี้

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

สุดท้ายให้ดูที่:

ค่าผิดปกติ

นี่คือช่วงเวลาของการขายประจำวันที่Cash and Carryร้าน (ทางขวาคุณมีตารางง่ายๆ: 282 วันมียอดขายเป็นศูนย์ 42 วันเห็นยอดขาย 1 ... และอีกวันหนึ่งมียอดขาย 500. ) ฉันไม่รู้ว่ามันคืออะไร

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

สรุป

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

[T] ที่นี่เป็นที่รู้จักกันดี มีบางสิ่งที่เรารู้ว่าเรารู้ นอกจากนี้เรายังรู้ว่ามีสิ่งแปลกปลอมที่รู้จัก กล่าวคือเรารู้ว่ามีบางสิ่งที่เราไม่รู้ แต่ก็มีสิ่งแปลกปลอมที่ไม่ทราบ - สิ่งที่เราไม่รู้เราไม่รู้

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

วิธีเดียวในการจัดการกับสิ่งเหล่านี้คือการรวบรวมความรู้เกี่ยวกับโดเมน

สรุปผลการวิจัย

ฉันได้ข้อสรุปสามข้อจากนี้:

  1. คุณมักจะต้องรวมความรู้ในการสร้างแบบจำลองและการทำนายของคุณ
  2. แม้ว่าจะมีความรู้เกี่ยวกับโดเมนคุณก็ไม่สามารถรับประกันได้ว่าจะได้รับข้อมูลที่เพียงพอสำหรับการคาดการณ์และการคาดการณ์ของคุณเพื่อให้ผู้ใช้ยอมรับได้ ดูว่าผิดขอบเขตด้านบน
  3. หาก "ผลลัพธ์ของคุณมีความสุข" คุณอาจหวังมากกว่าที่คุณจะทำได้ หากคุณคาดการณ์การโยนเหรียญอย่างยุติธรรมแสดงว่าไม่มีความแม่นยำสูงกว่า 50% อย่าเชื่อถือมาตรฐานความถูกต้องของการพยากรณ์ภายนอกเช่นกัน

บรรทัดล่าง

นี่คือวิธีที่ฉันจะแนะนำแบบจำลองอาคาร - และสังเกตว่าจะหยุดเมื่อใด:

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

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


10
+1 สำหรับคำตอบที่น่าอัศจรรย์ที่ฉันเห็นด้วยทั้งหมด ฉันไม่ยอมรับมัน (ยัง) เนื่องจากยังคงหวังคำตอบอื่น ๆ เนื่องจากปัญหานั้นกว้าง
ทิม

1
แน่ใจ ฉันชอบที่จะเห็นมุมมองของคนอื่นด้วยเช่นกัน!
Stephan Kolassa

9
If you are forecasting a fair coin toss, then there is no way to get above 50% accuracy.. คุณพูดทุกอย่างที่นั่น
Walfrat

3
การใช้ความรู้เกี่ยวกับโดเมนคุณสามารถเพิ่มฟีเจอร์ใหม่ให้กับสองกรณีแรก (เช่นเวลาจนถึงวันอีสเตอร์และหมายเลขการดูทีวี ไม่ว่าในกรณีใดสถานการณ์จะสิ้นหวัง ส่วนที่น่าสนใจคือการบอกความรู้เกี่ยวกับโดเมนที่หายไปจากชุดข้อมูลของการโยนเหรียญอย่างยุติธรรม
Karolis Juodelė

4
@ KarolisJuodelė: นั่นคือจุดของฉัน เราไม่สามารถแม้แต่จะรู้ว่าเมื่อสถานการณ์ของเราสิ้นหวังถ้าเราพูดคุยกับผู้เชี่ยวชาญ ... แล้วบางครั้งผู้เชี่ยวชาญไม่สามารถช่วยให้เราทั้งสองและมี "ไม่รู้ไม่ทราบ" ที่ผู้เชี่ยวชาญซึ่งน่ากลัวคนอื่นอาจทราบ.
Stephan Kolassa

57

คำตอบจากสเตฟานโคลัสซ่านั้นยอดเยี่ยม แต่ฉันอยากจะเพิ่มเติมว่ามักจะมีเงื่อนไขหยุดเศรษฐกิจ:

  1. เมื่อคุณทำ ML สำหรับลูกค้าไม่ใช่เพื่อความสนุกคุณควรดูจำนวนเงินที่ลูกค้ายินดีจ่าย หากเขาจ่ายเงินให้ บริษัท ของคุณ 5,000 ยูโรและคุณใช้เวลาหนึ่งเดือนในการหาแบบจำลองคุณจะเสียเงิน ฟังดูไม่สำคัญ แต่ฉันเห็นว่า "ต้องมีวิธีแก้ปัญหา !!!!" - การคิดซึ่งนำไปสู่ค่าใช้จ่ายมากเกินไป ดังนั้นหยุดเมื่อเงินหมดและสื่อสารปัญหาให้กับลูกค้าของคุณ
  2. หากคุณทำงานเสร็จแล้วคุณมักจะรู้สึกว่าเป็นไปได้กับชุดข้อมูลปัจจุบัน พยายามที่จะนำไปใช้กับจำนวนเงินที่คุณสามารถสร้างรายได้กับแบบจำลองถ้าจำนวนเล็กน้อยหรือลบสุทธิ (เช่นเนื่องจากเวลาในการรวบรวมข้อมูลพัฒนาโซลูชัน ฯลฯ ) คุณควรหยุด

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

ในขณะที่ฉันมุ่งเน้นไปที่เศรษฐศาสตร์เมื่อทำงานเกี่ยวกับผลิตภัณฑ์เชิงพาณิชย์กฎนี้ยังใช้กับสถาบันการศึกษาหรือโครงการที่สนุกสนาน - ในขณะที่เงินมีความกังวลน้อยกว่าในสถานการณ์เช่นนี้เวลายังคงเป็นสินค้าหายาก เช่น. ในสถาบันการศึกษาคุณควรหยุดทำงานเมื่อคุณไม่ได้ผลลัพธ์ที่เป็นรูปธรรมและคุณมีโครงการอื่นที่น่าสนใจมากกว่าที่คุณสามารถทำได้ แต่อย่าวางโครงการนั้น - โปรดเผยแพร่ผลลัพธ์ที่เป็นโมฆะหรือ "ต้องการข้อมูลเพิ่มเติม / อื่น ๆ " ซึ่งเป็นสิ่งสำคัญเช่นกัน!


1
+1 เป็นจุดที่ดีอย่างแน่นอน! ฉันเดาคำตอบทั้งหมดสำหรับคำถามนี้อาจดูเหมือน "ชัดเจน" แต่ฉันไม่ได้เห็นสิ่งที่ "ชัดเจน" เหล่านี้ทั้งหมดมารวมกันเพื่อการอ้างอิง
ทิม

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

2
ฉันคิดว่า "ไม่มีใครจะใช้ ist และเป็นกระป๋อง" ควรเปลี่ยนเป็น "ไม่มีใครจะใช้มันและเป็นกระป๋อง" - นี่เป็นความหมายที่คุณต้องการหรือไม่
Silverfish

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

2
@ChristianSauer จากประสบการณ์ของฉันในฐานะวิศวกรปัญหาของความไม่ตรงกันระหว่างเซ็นเซอร์ (cf gauges) และจุดประสงค์ที่มีประโยชน์น่าจะเป็นสิ่งประดิษฐ์ของทรานซิสเตอร์
Robert de Graaf

9

มีวิธีอื่น ถามตัวเอง -

  1. ใครหรืออะไรทำให้การคาดการณ์ที่ดีที่สุดของตัวแปรนี้คืออะไร "
  2. อัลกอริทึมการเรียนรู้ของเครื่องของฉันสร้างผลลัพธ์ที่ดีกว่าหรือแย่กว่าการคาดการณ์ที่ดีที่สุดหรือไม่?

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

ความสามารถในการปรับปรุงของคุณขึ้นอยู่กับสองสิ่ง:

  1. คุณใช้ข้อมูลเดียวกันกับผู้เชี่ยวชาญที่ดีที่สุดในงานนี้หรือไม่?
  2. คุณใช้ข้อมูลอย่างมีประสิทธิภาพในฐานะผู้เชี่ยวชาญที่ดีที่สุดในงานนี้หรือไม่?

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

ฉันเห็นด้วยกับสเตฟานซึ่งโดยปกติแล้ววิธีที่ดีที่สุดในการทำเช่นนี้คือถามผู้เชี่ยวชาญด้านโดเมน


1
ที่จริงแล้วคำตอบของคุณขัดแย้งกับ @StephanKolassa คำตอบที่ซึ่งเขาอ้างถึงวรรณกรรมแนะนำว่าการคาดการณ์มาตรฐานค่อนข้างทำให้เข้าใจผิด
ทิม

1
@Tim: การเปิดเผยแบบเต็ม - ลิงก์นั้นไปยังบทความเกี่ยวกับเกณฑ์มาตรฐานที่ฉันเขียนเอง อย่างไรก็ตามฉันยืนหยัดด้วยข้อสรุปของฉัน: ความต้องการการคาดการณ์ความแม่นยำทั้งหมดที่ฉันเคยเห็นอาจเปรียบเทียบแอปเปิ้ลกับส้ม ฉันค่อนข้างสงสัยเกี่ยวกับการมองหาเกณฑ์มาตรฐานภายนอก นอกจากนี้ฉันคิดว่าคำตอบนี้ค่อนข้างจะเป็นคำถาม เมื่ออัลกอริทึม ML ของคุณพัฒนาบน "ที่รู้จักกันดีที่สุด" คุณจะรู้ได้อย่างไรว่าคุณสามารถปรับปรุงให้ดีขึ้นได้อีกหรือว่าเราได้บรรลุ The Plateau of Hopelessness หรือไม่?
Stephan Kolassa

1
กรณีการใช้งานล่าสุดของฉันค่อนข้างแตกต่างกัน ฉันพยายามที่จะทำนายว่าใครมีความเสี่ยงต่อการฆ่าตัวตายจากการโพสต์บนอินเทอร์เน็ต มีการทดสอบทางจิตวิทยาหลายแบบที่สามารถใช้วัดความรุนแรงของภาวะซึมเศร้าเช่น PHQ9 จากการทดสอบทางการแพทย์ที่ใช้กันอย่างแพร่หลายมีงานจำนวนมากเกี่ยวกับความถูกต้องและความน่าเชื่อถือเช่น "The PHQ-9 ความถูกต้องของการวัดความรุนแรงแบบย่อของภาวะซึมเศร้า" ฉันพบว่าความน่าเชื่อถือและมาตรการอื่น ๆ ในกระดาษนั้นเป็นจุดเริ่มต้นที่ดีสำหรับผลลัพธ์ที่น่าจะเกิดขึ้นจากการเรียนรู้ของเครื่อง
กาวินพอตเตอร์

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