ทำไม L1 จึงเป็นแบบอย่างสำหรับรุ่นที่กระจัดกระจาย


97

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


4
โดยทั่วไปจะมีการกระจัดกระจายจากขอบคมที่วางอยู่บนแกนของ isosurface คำอธิบายแบบกราฟิกที่ดีที่สุดที่ฉันเคยพบคือวิดีโอนี้: youtube.com/watch?v=sO4ZirJh9ds
felipeduque

1
มีบทความในบล็อกบนchioka.in/
prashanth

ตรวจสอบโพสต์ต่อไปนี้ของปานกลาง มันอาจช่วยmedium.com/@vamsi149/…
solver149

คำตอบ:


111

พิจารณา vectorโดยที่มีขนาดเล็ก และบรรทัดฐานของตามลำดับจะได้รับจากx=(1,ε)R2l 1 l 2 xε>0l1l2x

||x||1=1+ε,  ||x||22=1+ε2

ตอนนี้พูดได้ว่าเป็นส่วนหนึ่งของขั้นตอนการ regularization บางอย่างที่เรากำลังจะลดขนาดของหนึ่งในองค์ประกอบของโดย\หากเราเปลี่ยนเป็นบรรทัดฐานที่ได้คือ δεx11-δxδεx11δ

||x(δ,0)||1=1δ+ε,  ||x(δ,0)||22=12δ+δ2+ε2

ในทางกลับกันการลดโดยจะให้บรรทัดฐาน δx2δ

||x(0,δ)||1=1δ+ε,  ||x(0,δ)||22=12εδ+δ2+ε2

สิ่งที่ต้องแจ้งให้ทราบที่นี่เป็นที่ที่สำหรับโทษระเบียบระยะขนาดใหญ่ผลในการลดมากขึ้นในบรรทัดฐานกว่าการทำเพื่อระยะขนาดเล็ก0 อย่างไรก็ตามสำหรับการลงโทษการลดลงก็เหมือนกัน ดังนั้นเมื่อการลงโทษโมเดลโดยใช้บรรทัดฐานมันไม่น่าเป็นไปได้สูงที่ทุกสิ่งจะถูกตั้งค่าเป็นศูนย์เนื่องจากการลดบรรทัดฐานจากถึงนั้นแทบจะไม่มีเลยเมื่อมีขนาดเล็ก ในทางกลับกันการลดลงของบรรทัดฐานจะเท่ากับเสมอx 1 x 20 l 1 l 2 l 2 ε 0 ε l 1 δl2x1x20l1l2l2ε0εl1δโดยไม่คำนึงถึงปริมาณที่ถูกลงโทษ

วิธีคิดอีกอย่าง: มันไม่มากนักที่บทลงโทษของช่วยกระตุ้นให้เกิด sparsity แต่การที่บทลงโทษในบางแง่มุมทำให้เกิดความไม่ชัดเจนโดยการให้ผลตอบแทนที่ลดลงเมื่อองค์ประกอบใกล้เข้ามาl 2l1l2


3
ขอบคุณสำหรับคำตอบ! แม้ว่าฉันจะไม่มั่นใจในจุดสุดท้าย หากคุณเรียกใช้การถดถอยเชิงเส้นที่ไม่มีการลงโทษคุณจะแทบไม่ได้รับการแก้ปัญหาแบบเบาบาง (ในขณะที่การเพิ่มการลงโทษ L1 มักจะทำให้คุณเบาบาง) ดังนั้นการลงโทษ L1 ในความเป็นจริงจึงส่งเสริมให้เกิด Sparsity โดยการส่งค่าสัมประสิทธิ์ที่เริ่มต้นใกล้ศูนย์ถึงศูนย์อย่างแน่นอน
Stefan Wager

2
@StefanWager อาจจะเป็นเรื่องที่พูดเกินจริง แต่ฉันคิดว่ามันเป็นเรื่องจริงที่ไม่มีอะไรพิเศษเกี่ยวกับการลงโทษที่นี่: การสำหรับใด ๆก็จะทำให้เกิดการ (อาจเป็นเพราะพวกมันไม่ใช่แบบนูน) หากคุณเพียงต้องการจริงๆแล้วการลงโทษ (เป็นสัดส่วนกับจำนวนของรายการที่ไม่เป็นศูนย์) เป็นวิธีที่จะไปมันก็เกิดขึ้นว่ามันเป็นฝันร้ายที่จะทำงานด้วย ลิตรαแอลฟา1 ลิตร0l1lαα1l0
bnaul

1
ใช่ที่ถูกต้อง. มีบรรทัดฐานมากมายที่นำไปสู่ ​​sparsity (เช่นที่คุณกล่าวถึงบรรทัดฐาน Lp ใด ๆ ที่มี p <= 1) โดยทั่วไปบรรทัดฐานใด ๆ ที่มีมุมคมที่ศูนย์ทำให้เกิดการเบาบาง ดังนั้นกลับไปที่คำถามเดิม - บรรทัดฐาน L1 ทำให้เกิดการ sparsity โดยการไล่ระดับสีไม่ต่อเนื่องที่ศูนย์ (และการลงโทษอื่น ๆ ที่มีคุณสมบัตินี้จะทำเช่นกัน)
Stefan Wager

3
ในกรณีที่ทุกคนต้องการอ่านเพิ่มเติมมีวรรณกรรมที่ใช้งานเกี่ยวกับฟังก์ชั่นการลงโทษแบบไม่นูนซึ่งเป็นทางเลือกแทนมาตรฐาน L1 (เช่นเมื่อเร็ว ๆ นี้papers.nips.cc/paper/… )
Stefan Wager

1
คำตอบที่ดีฉันสงสัยมานานแล้วจนกระทั่งฉันพบสิ่งนี้
Hady Elsahar

72

ด้วยโมเดลที่กระจัดกระจายเราคิดว่าแบบจำลองที่มีน้ำหนักมากเป็น 0 ดังนั้นเราจึงมีเหตุผลเกี่ยวกับวิธีที่การทำให้เป็นมาตรฐานของ L1 มีแนวโน้มที่จะสร้างน้ำหนัก 0

พิจารณารูปแบบที่ประกอบด้วยน้ำหนักw_m)(w1,w2,,wm)

ด้วยการทำให้เป็นมาตรฐาน L1 คุณจะลงโทษโมเดลด้วยฟังก์ชันการสูญเสีย =.Σ i | W ฉัน|L1(w)Σi|wi|

ด้วยการทำให้เป็นปกติ L2 คุณจะลงโทษโมเดลด้วยฟังก์ชันการสูญเสีย =1L2(w)12Σiwi2

หากใช้การไล่ระดับสีแบบไล่ระดับคุณจะทำให้น้ำหนักเปลี่ยนไปในทิศทางตรงกันข้ามของการไล่ระดับสีด้วยขนาดขั้นตอนคูณด้วยการไล่ระดับสี ซึ่งหมายความว่าการไล่ระดับสีที่ชันมากขึ้นจะทำให้เราก้าวขึ้นไปได้มากขึ้นในขณะที่การไล่ระดับสีแบบเรียบมากขึ้นจะทำให้เราก้าวไปสู่ขั้นตอนที่เล็กลง ให้เราดูการไล่ระดับสี (subgradient ในกรณีของ L1):η

dL1(w)dw=sign(w)โดยที่sign(w)=(w1|w1|,w2|w2|,,wm|wm|)

dL2(w)dw=w

หากเราพล็อตฟังก์ชั่นการสูญเสียและเป็นอนุพันธ์ของโมเดลที่ประกอบด้วยเพียงพารามิเตอร์เดียวดูเหมือนว่า L1 นี้:

ป้อนคำอธิบายรูปภาพที่นี่

และเช่นนี้สำหรับ L2:

ป้อนคำอธิบายรูปภาพที่นี่

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

ลองนึกภาพว่าคุณเริ่มต้นด้วยรูปแบบที่มีและการใช้{2} ในภาพต่อไปนี้คุณสามารถดูว่าการลดลงของการไล่ระดับสีโดยใช้ L1-normalization ทำให้การอัปเดต 10 รายการเป็นอย่างไร , จนกว่าจะถึงแบบจำลองที่มี :w1=5η=12w1:=w1ηdL1(w)dw=w1121w1=0

ป้อนคำอธิบายรูปภาพที่นี่

ใน constrast ด้วย L2-normalization โดยที่การไล่ระดับสีคือทำให้ทุกขั้นตอนมีครึ่งทางสู่ 0 นั่นคือเราทำการอัปเดต ดังนั้นโมเดลไม่เคยมีน้ำหนักถึง 0 ไม่ว่าเราจะดำเนินการตามขั้นตอนจำนวนเท่าใด:η=12w1w1:=w1ηdL2(w)dw=w112w1

ป้อนคำอธิบายรูปภาพที่นี่

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


3
ใครบางคนสามารถอธิบายฉันได้ว่าทำไมเราจะไม่เข้าสู่วงวนไม่สิ้นสุดเมื่อเราเริ่มน้ำหนัก w1 = 5.1 แทนที่จะเป็น 5ให้ w = 0.1, w> 0 ดังนั้นอนุพันธ์บางส่วนของเราจึงเท่ากับ 1จากนั้นใช้ขั้นตอนที่สองตอนนี้ w <0 => อนุพันธ์ = -1:ดังนั้นเราจะแกว่งไปเรื่อย ๆ ใกล้ 0W ฉันr s T s ทีอีพี = 0.1 - 0.5 * ( + 1 ) = > W = - 0.4
η=0.5
wfirst step=0.10.5(+1)=>w=0.4
wsecondstep=0.40.5(1)=0.1.
อเล็กซ์ Yashin

5
@AlexYashin ที่ถูกต้อง - หากเราอัปเดตเฉพาะน้ำหนักตามการทำให้เป็นมาตรฐาน L1 เราอาจพบว่ามีตุ้มน้ำหนักที่แกว่งไปมาใกล้ 0 แต่เราไม่เคยใช้การปรับน้ำหนักแบบปกติเพียงอย่างเดียว เราใช้การทำให้เป็นปกติร่วมกับการเพิ่มประสิทธิภาพฟังก์ชั่นการสูญเสีย ด้วยวิธีดังกล่าวการทำให้เป็นมาตรฐานจะทำให้น้ำหนักมีค่าเป็นศูนย์ในขณะที่เราในเวลาเดียวกันพยายามที่จะผลักดันน้ำหนักให้เป็นค่าที่ปรับการทำนายให้เหมาะสม ด้านที่สองคืออัตราการเรียนรู้ ด้วยอัตราการเรียนรู้ที่น้อยกว่าเราสามารถใกล้เคียงกับค่าที่การทำให้เป็นระเบียบอาจแกว่งไปมารอบตัวเราซึ่งเราสามารถละเลยได้
Kent Munthe Caspersen

1
ทำไมdL2(w)/dwโมดูล 'และไม่ใช่แค่เชิงเส้น?
mrgloom

1
@mrgloom dL2(w)/dwสามารถอ่านได้เนื่องจากการเปลี่ยนแปลงของL2(w)น้ำหนักต่อการเปลี่ยนแปลง เนื่องจากการทำให้เป็นมาตรฐาน L2 กำลังสองจะทำให้น้ำหนักมีL2(w)การเปลี่ยนแปลงมากขึ้นสำหรับการเปลี่ยนแปลงน้ำหนักเดียวกันเมื่อเรามีน้ำหนักที่สูงกว่า นี่คือเหตุผลที่ฟังก์ชั่นนูนเมื่อคุณพล็อต อย่างไรก็ตามสำหรับ L1 การL1(w)เปลี่ยนแปลงของน้ำหนักต่อการเปลี่ยนแปลงเท่ากันโดยไม่คำนึงถึงน้ำหนักของคุณ - สิ่งนี้นำไปสู่ฟังก์ชันเชิงเส้น
Kent Munthe Caspersen

1
@KentMuntheCaspersen คำอธิบายที่น่าทึ่ง! ขอบคุณสำหรับกราฟและความพยายามที่คุณลงทุนเพื่อทำให้เข้าใจง่าย!
layser

15

รูปที่ 3.11 จากองค์ประกอบของการเรียนรู้ทางสถิติโดย Hastie, Tibshirani และ Friedman เป็นตัวอย่างที่ดีมาก:ป้อนคำอธิบายรูปภาพที่นี่

คำอธิบาย:เป็นค่าประมาณกำลังสองน้อยที่สุดที่ไม่ จำกัด เครื่องหมายจุดสีแดง (ตามที่อธิบายไว้ในคำบรรยายภาพของรูปนี้) รูปทรงของฟังก์ชั่นข้อผิดพลาดสี่เหลี่ยมน้อยในแง่ของพารามิเตอร์และ\ฟังก์ชันข้อผิดพลาดจะถูกย่อให้เล็กสุดที่ MLEและค่าจะเพิ่มขึ้นเมื่อจุดสีแดงขยายออก ภูมิภาคเพชรและดิสก์เป็นภูมิภาคที่เป็นไปได้สำหรับการถดถอยแบบLasso ( ) และการถดถอยแบบสัน ( ) ตามลำดับ ในแต่ละวิธีเรากำลังมองหาจุดตัดของรูปไข่สีแดงและพื้นที่สีฟ้าเนื่องจากมีวัตถุประสงค์เพื่อลดฟังก์ชันข้อผิดพลาดให้น้อยที่สุดขณะที่ยังคงความเป็นไปได้เบต้า1β2 β L1L2β^β1β2β^L1L2

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


16
ภาพประกอบไม่น่าเชื่อถือมากหากไม่มีข้อมูลเพิ่มเติม เช่นทำไมรูปทรงของข้อผิดพลาดควรอยู่ในตำแหน่งที่อยู่ในรูป?
wabbit

@HrishikeshGanu ในที่สุดก็มีเวลาแก้ไขโพสต์
Zhanxiong

รูปทรงทั้งหมดจะมีรูปแบบเดียวกัน ...
kjetil b halvorsen

1
โปรดทราบว่าการใช้ขอบ L1 นั้นต้องการเฉพาะเมื่อมีความแปรปรวนต่างกันเหนือและแกน กล่าวอีกนัยหนึ่งเมื่อการกระจายของ Redline ไม่สมมาตรบนแกนแนวทแยงหากสมมาตรขอบทั้งหมดจะมีระยะทาง / ค่า / ค่าใช้จ่ายเท่ากัน β^β1β2β1=β2
Tautvydas

13

ได้ดูในรูปที่ 3.11 (หน้า 71) ขององค์ประกอบของการเรียนรู้ทางสถิติ มันแสดงตำแหน่งของ unconstrainedที่ย่อฟังก์ชัน squared error ให้น้อยที่สุดวงรีแสดงระดับของฟังก์ชัน error error และตำแหน่งที่อยู่ภายใต้ข้อ จำกัดและ<T β1( β )<T2( β )<Tβ^β^1(β^)<t2(β^)<t

สิ่งนี้จะช่วยให้คุณเข้าใจในเชิงเรขาคณิตมากซึ่งขึ้นอยู่กับข้อ จำกัดคุณจะได้รับส่วนประกอบที่เป็นโมฆะ นี่เป็นเพราะพื้นลูกมี "ขอบ" บนแกน1 { x : 1 ( x ) 1 }11{x:1(x)1}

โดยทั่วไปแล้วหนังสือเล่มนี้เป็นหนังสืออ้างอิงที่ดีเกี่ยวกับเรื่องนี้ทั้งคำอธิบายที่เข้มงวดและมีภาพประกอบที่ดี


3
ฉันคิดว่าย่อหน้าที่สองของคุณเป็นกุญแจ ... อย่างน้อยสำหรับสัญชาตญาณของฉัน: l1 "บอล" เป็นเหมือนเพชรที่มีหนามแหลมตามแนวแกน แกน
Wayne

2
ใช่ฉันใช้ที่จะจินตนาการถึงการเพิ่มประสิทธิภาพการเคลื่อนไหวของจุดส่งไปยังกองกำลังสอง: สถานที่น่าสนใจที่มีต่อข้อ จำกัดขอบคุณที่ฟังก์ชั่นข้อผิดพลาดยกกำลังสองที่น่าสนใจที่มีต่อ 0 Thaks ไปหรือบรรทัดฐาน ที่นี่ "รูปทรงเรขาคณิต" ของแรงดึงดูดนี้เปลี่ยนพฤติกรรมของจุด หากคุณแก้ไขเล็ก ๆหรือลูกในสิ่งที่มันได้อย่างอิสระสามารถย้ายก็จะเลื่อนตามแนวชายแดนของลูกในการสั่งซื้อที่จะไปอยู่ใกล้กับ\ ผลที่ได้จะแสดงบนภาพประกอบในหนังสือเล่ม aforementionned และ ...121β^121β2β^
เอลวิส

3
หนังสือเล่มนี้ดี แต่ไม่เคยอธิบายว่ามาจากไหนและมีคณิตศาสตร์อยู่เบื้องหลัง
13985

2

คำตอบที่ไม่ใช่ทางคณิตศาสตร์อย่างง่ายคือ:

สำหรับ L2: เทอมการลงโทษเป็นกำลังสองดังนั้นการsquaring ค่าเล็กน้อยจะทำให้เล็กลง เราไม่ต้องทำให้มันเป็นศูนย์เพื่อให้บรรลุเป้าหมายของเราเพื่อให้ได้ข้อผิดพลาดกำลังสองต่ำสุดเราจะได้รับก่อนหน้านั้น

สำหรับ L1: ระยะจุดโทษเป็นที่แน่นอนเราอาจจำเป็นต้องไปที่ศูนย์ที่มีตัวเร่งปฏิกิริยาที่จะทำให้ขนาดเล็กขนาดเล็กไม่มี

นี่คือมุมมองของฉัน


ไม่น่าเชื่อสำหรับฉัน
Tyler 十三将士归玉门

2

L1 Norm กับ L2 Norm

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

คำอธิบายโดยละเอียดเพิ่มเติมได้ที่ลิงค์ต่อไปนี้: คลิกโพสต์เกี่ยวกับวิทยาศาสตร์ข้อมูล


นี่เป็นคำอธิบายที่ดี แต่ความเห็นเพิ่มเติมเกี่ยวกับการแสดงออกของฟังก์ชั่นค่าใช้จ่ายตัวอย่างก็มีประโยชน์เช่นกัน นั่นคือรูปร่างวงกลมของข้อผิดพลาดทั่วไปดูเหมือนง่าย แต่รูปร่างที่แคบยาว (ใช้ในตัวอย่างอื่นด้วย) ไม่ดูเหมือนเล็กน้อยและอธิบายตนเอง (ที่นี่ฉันกำลังพูดถึงฟังก์ชั่นค่าใช้จ่ายด้านซ้ายบนในรูปที่ 8 (b): ทำไมทิศทางหลักหันไปทางจุดและไม่พูดรูปทรงจะเป็น แตกต่างกันและจุดย่อขนาดจะไม่อยู่ที่ 0!)β 1 = 12β1=1L 1β1=0L1
Nutle
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.