เหตุใด KNN จึงไม่ใช่ "อิงตามโมเดล"


10

ESLบทที่ 2.4 ดูเหมือนว่าจะจัดประเภทการถดถอยเชิงเส้นเป็น "ตามโมเดล" เนื่องจากมันถือว่าในขณะที่ไม่มีการประมาณแบบเดียวกันสำหรับเพื่อนบ้านที่อยู่ใกล้เคียง k แต่ทั้งสองวิธีไม่ได้ตั้งสมมติฐานเกี่ยวกับใช่ไหม(x)xβ(x)

ในภายหลังใน 2.4 มันยังพูดว่า:

  • กำลังสองน้อยที่สุดสมมติว่าใกล้เคียงกันมากกับฟังก์ชันเชิงเส้นทั่วโลก(x)
  • k- เพื่อนบ้านที่ใกล้ที่สุดสมมติว่ามีค่าใกล้เคียงกันกับฟังก์ชันคงที่ในพื้นที่(x)

การสันนิษฐาน KNN ดูเหมือนว่ามันจะเป็นทางการได้ (แม้ว่าไม่แน่ใจว่าการทำเช่นนั้นจะนำไปสู่อัลกอริทึม KNN ในวิธีที่สมมติว่าเป็นเส้นนำไปสู่การถดถอยเชิงเส้น)

ดังนั้นหาก KNN ไม่ใช่แบบจำลองจริงๆแล้วทำไม? หรือฉันอ่านผิด ESL

คำตอบ:


8

มันค่อนข้างยากที่จะเปรียบเทียบ kNN และการถดถอยเชิงเส้นโดยตรงเนื่องจากเป็นสิ่งที่แตกต่างกันมาก แต่ฉันคิดว่าประเด็นสำคัญที่นี่คือความแตกต่างระหว่าง "การสร้างแบบจำลอง" (x)"และ" มีสมมติฐานเกี่ยวกับ (x)"

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

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

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

แก้ไข: ย้ำด้านล่างนี้เพื่อแสดงชัดเจนนี้อีกครั้ง (ดูความคิดเห็น)

เป็นที่ชัดเจนว่าทั้งการถดถอยเชิงเส้นและวิธีเพื่อนบ้านที่ใกล้ที่สุดมีจุดมุ่งหมายในการทำนายมูลค่าของ Y=(x) สำหรับใหม่ x. ขณะนี้มีสองวิธี การถดถอยเชิงเส้นดำเนินต่อไปโดยสมมติว่าข้อมูลตรงกับเส้นตรง (บวกลบเสียงรบกวนบางส่วน) ดังนั้นค่าของ y เท่ากับค่าของ(x)คูณความชันของเส้น กล่าวอีกนัยหนึ่งนิพจน์เชิงเส้นจะจำลองข้อมูลเป็นเส้นตรง

ตอนนี้วิธีเพื่อนบ้านที่ใกล้ที่สุดไม่สนใจว่าข้อมูลดูเหมือนว่าอย่างไร (ไม่ได้เป็นแบบจำลองข้อมูล) นั่นคือพวกเขาไม่สนใจว่ามันจะเป็นเส้นพาราโบลาวงกลม ฯลฯ สิ่งที่มันสันนิษฐานก็คือ (x1) และ (x2) จะคล้ายกันถ้า x1 และ x2มีความคล้ายคลึงกัน โปรดทราบว่าข้อสันนิษฐานนี้เป็นจริงโดยประมาณสำหรับโมเดลเกือบทั้งหมดรวมถึงที่กล่าวถึงข้างต้นทั้งหมด อย่างไรก็ตามวิธีการ NN ไม่สามารถบอกได้ว่าคุณค่าของ(x) เกี่ยวข้องกับ x (ไม่ว่าจะเป็นเส้นพาราโบลา ฯลฯ ) เนื่องจากมันไม่มีรูปแบบของความสัมพันธ์นี้มันก็แค่สมมติว่ามันสามารถประมาณได้โดยการมองเข้าไปใกล้จุด


"มีรูปแบบเฉพาะ f (x)" สิ่งนี้หมายความว่าอย่างไร ดูเหมือนว่าเราสามารถทำให้สมมติฐานเป็นทางการว่า f เป็นค่าคงที่ในท้องถิ่น มันเป็นเพียงแค่ที่ KNN ไม่สามารถได้รับจากการทำพิธีเช่นนี้หรือไม่?
อเล็กซ์

"การถดถอยเชิงเส้นมักจะมีความคิดที่ดีเกี่ยวกับค่า f (x) สำหรับค่า x ที่มองไม่เห็นจากค่าของ x" ไม่แน่ใจว่าสิ่งที่คุณหมายถึงคือ ... คุณยังต้องการพารามิเตอร์ของตัวแบบเชิงเส้น ตามที่คุณต้องการพารามิเตอร์สำหรับ KNN (แม้ว่าจะเกี่ยวข้องกับพารามิเตอร์มากขึ้น)
Alec

คะแนนที่ดีฉันพยายามแก้ไขคำตอบของฉันเพื่อให้ชัดเจนขึ้นและหวังว่าจะตอบคะแนนของคุณได้ (จำกัด จำนวนตัวอักษรสำหรับความคิดเห็นต่ำ)
Saulius Lukauskas

+1 นี่อธิบายได้ดี 'ความแตกต่างระหว่าง "การสร้างแบบจำลอง f (x)" และ "มีข้อสมมติฐานเกี่ยวกับ f (x)"' รวบรวมความคิดได้เป็นอย่างดี IMO บางทีวิธีอื่นในการวางสิ่งนี้คือการพิจารณาว่าการสร้างแบบจำลองจำนวน f (x) เพื่อสร้างสมมติฐานเกี่ยวกับกระบวนการสร้างข้อมูลในขณะที่ knn ไม่ได้ทำสิ่งนี้ แต่เพียงแค่ตัวเลขที่มูลค่าของตัวเลขที่กำหนดอาจคล้ายคลึงกับค่าของ ข้อมูล.
gung - Reinstate Monica

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

5

การถดถอยเชิงเส้นเป็นรูปแบบที่ใช้เพราะมันทำให้สมมติฐานเกี่ยวกับโครงสร้างของข้อมูลเพื่อสร้างแบบจำลอง เมื่อคุณโหลดชุดข้อมูลลงในโปรแกรมทางสถิติและใช้เพื่อรันการถดถอยเชิงเส้นผลลัพธ์จะเป็นแบบจำลอง:^(X)=β^X. คุณสามารถป้อนข้อมูลใหม่ในโมเดลนี้และรับเอาต์พุตที่คาดการณ์ได้เนื่องจากคุณได้ตั้งสมมติฐานเกี่ยวกับวิธีสร้างตัวแปรเอาต์พุต

ด้วย KNN ไม่มีแบบจำลองเลย - มีเพียงข้อสันนิษฐานว่าข้อสังเกตที่อยู่ใกล้กัน X- พื้นที่อาจจะทำงานในทำนองเดียวกันในแง่ของตัวแปรเอาท์พุท คุณไม่ป้อนการสังเกตใหม่ลงใน 'แบบจำลอง KNN' คุณเพียงแค่กำหนดว่าการสังเกตที่มีอยู่ใดจะคล้ายกับการสังเกตใหม่และทำนายตัวแปรผลลัพธ์สำหรับการสังเกตใหม่จากข้อมูลการฝึกอบรม


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

1
หากมีคนขอให้คุณปรับการคาดการณ์ของคุณคุณสามารถทำได้หากคุณใช้การถดถอยเชิงเส้นโดยอธิบายความสัมพันธ์ระหว่างอินพุตและเอาต์พุตของแบบจำลองของคุณ ตัวแบบพยายามอธิบายความสัมพันธ์อินพุต / เอาท์พุต b / w KNN ไม่พยายามอธิบายความสัมพันธ์ b / w อินพุตและเอาต์พุตดังนั้นจึงไม่มีรูปแบบ
tjnel

4

คำว่าแบบจำลองนั้นมีความหมายเหมือนกันกับ "การกระจายแบบอิง" เมื่อพูดถึงวิธีการจัดกลุ่ม การถดถอยเชิงเส้นทำให้สมมติฐานแบบกระจาย (นั่นคือข้อผิดพลาดแบบเกาส์เซียน) KNN ไม่ได้ทำการตั้งสมมติฐานใด ๆ นั่นคือความแตกต่าง


1
นี่ทำให้ฉันรู้สึกถึงความแตกต่างอย่างเป็นทางการมากที่สุดถึงแม้ว่า ESL จะไม่ได้แสดงการถดถอยเชิงเส้นด้วยวิธีนี้ พวกเขาแนะนำฟังก์ชั่นค่าใช้จ่ายข้อผิดพลาดกำลังสองชนิดแรกโดยพลการ (แทนที่จะทำ MLE สำหรับแบบเกาส์เซียน) ใช้เพื่อค้นหาว่าเราควรทำนาย f (x) = E (Y | X = x) อธิบายว่า KNN ประมาณอย่างไร ภายใต้สมมติฐานที่แน่นอนและจากนั้นก็สมมติว่า f เป็นเส้นตรงเพื่อให้ได้การถดถอยเชิงเส้น
อเล็กซ์

ข้อเสนอที่น่าสนใจ แต่มันจะดีกว่ามากถ้าเรามีข้อมูลอ้างอิงเกี่ยวกับเรื่องนี้
ivanmp

0

kNN อิงตามอินสแตนซ์

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

นี่คือวิธีที่ kNN ทำงาน: จากการสังเกตใหม่เราจะคำนวณระยะห่างระหว่างการสังเกตใหม่นี้และการสังเกตอื่น ๆ ทั้งหมดในชุดข้อมูลการฝึกอบรม จากนั้นคุณจะได้เพื่อนบ้าน (คนที่ใกล้เคียงที่สุดกับการสังเกตใหม่)

ถ้า k=5จากนั้นเราดูข้อสังเกต 5 ข้อที่ใกล้เคียงที่สุด "ฟังก์ชั่นคงที่ในท้องถิ่น" หมายความว่าหลังจากเลือกการสังเกตทั้ง 5 นี้เราไม่สนใจระยะทาง พวกเขาเหมือนกันพวกเขามีความสำคัญเหมือนกันสำหรับการทำนาย

จะหารูปแบบได้อย่างไร

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

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