ผลทางทฤษฎีหลังโครงข่ายประสาทเทียม


13

ฉันเพิ่งครอบคลุมโครงข่ายประสาทเทียมในหลักสูตรการเรียนรู้ของเครื่อง Coursera และฉันต้องการทราบทฤษฎีเพิ่มเติมเบื้องหลังพวกเขา ฉันพบว่าแรงจูงใจที่พวกเขาเลียนแบบชีววิทยาค่อนข้างน่าพอใจ

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

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

คำตอบ:


16

นี่คือคำพูดจาก " A Backward Look to the Future " โดย ET Jaynes

ใหม่ Adhockeries

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

เซตของฟัซซีนั้นค่อนข้างชัดเจนสำหรับทุกคนที่ได้รับการฝึกอบรมในการอนุมานแบบเบย์ - การประมาณค่าความน่าจะเป็นแบบเบย์ก่อน พวกเขาถูกสร้างขึ้นเพียงเพราะผู้ปฏิบัติงานของพวกเขายังคงคิดว่าน่าจะเป็นในแง่ของ "การสุ่ม" ที่ควรจะมีอยู่ในธรรมชาติ แต่ไม่เคยกำหนดไว้อย่างดี; และได้ข้อสรุปว่าทฤษฎีความน่าจะไม่สามารถใช้ได้กับปัญหาดังกล่าว ทันทีที่มีการรับรู้โอกาสในการระบุข้อมูลที่ไม่สมบูรณ์เหตุผลในการแนะนำชุด Fuzzy จะหายไป

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

การพัฒนาใหม่ที่ยอดเยี่ยมคือ Neural Nets ซึ่งหมายถึงระบบของอัลกอริทึมที่มีคุณสมบัติใหม่ที่ยอดเยี่ยมเช่นสมองของมนุษย์ปรับตัวเพื่อให้พวกเขาสามารถเรียนรู้จากข้อผิดพลาดในอดีตและแก้ไขตัวเองโดยอัตโนมัติ (ว้าว! . อันที่จริงเราไม่แปลกใจที่เห็นว่า Neural Nets มีประโยชน์อย่างมากในการใช้งานหลายอย่าง มากกว่าชุด Fuzzy หรือ AI อย่างไรก็ตามในปัจจุบันมุ้งมีสองข้อบกพร่องในทางปฏิบัติ; (a) พวกมันให้ผลลัพธ์ที่กำหนดโดยอินพุตปัจจุบันบวกกับข้อมูลการฝึกอบรมที่ผ่านมา ผลลัพธ์นี้เป็นค่าประมาณจริง ๆเกี่ยวกับการตอบสนองที่เหมาะสมบนพื้นฐานของข้อมูลทั้งหมดที่อยู่ในมือ แต่มันก็ไม่ได้บ่งบอกถึงความถูกต้องแม่นยำและดังนั้นจึงไม่ได้บอกเราว่าเราอยู่ใกล้เป้าหมายมากแค่ไหน (นั่นคือจำเป็นต้องมีการฝึกอบรมมากขึ้น) (b) เมื่อมีการเรียกใช้การตอบกลับแบบไม่เชิงเส้นหนึ่งฟังก์ชันที่ไม่ใช่เชิงเส้น "sigmoid" แบบไม่เชิงเส้นที่เก็บไว้ภายในซึ่งมีแอมพลิไฟเออร์และการผสมเชิงเส้นที่หลากหลายสามารถทำการประมาณได้ในระดับหนึ่ง (หมายเหตุ: เน้นที่เหมือง)

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

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

ความเห็นไม่กี่:

  1. Point (a) เพิกเฉยต่อการพัฒนาใน Bayesian Neural Networks ซึ่งเริ่มขึ้นในช่วงปลายยุคแปดสิบและต้นยุคต้น (แต่สังเกตว่ากระดาษของ Jaynes เขียนในปี 1993) ลองดูที่โพสต์นี้ ลองพิจารณาอ่านวิทยานิพนธ์ระดับปริญญาเอกที่สวยงามของ Yarin Gal และดูการนำเสนอที่ยอดเยี่ยมนี้โดย Zoubin Ghahramani

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


2
+1 ไม่มีอะไรที่น่าพอใจไปกว่าการรู้ว่าที่ใดที่สามารถค้นหาการอ้างอิงที่ถูกต้องแม่นยำสำหรับคำตอบ
Sycorax พูดว่า Reinstate Monica

5
เนื่องจากอุปกรณ์เฉพาะกิจแสดงให้เห็นว่าพวกเขาทำงานในหลาย ๆ สถานการณ์มันจะมีประสิทธิภาพที่จะแสดง (หรือหักล้าง) ว่าพวกเขาเพียงพอดีกับกรอบ Bayesian และดังนั้นได้รับความเข้าใจที่ลึกซึ้งยิ่งขึ้นของ adhockeries ซึ่งมีการใช้งานอย่างกว้างขวางเหล่านี้ วัน นี่เป็นงานที่ฉันสนใจ
Tom Artiom Fiodorov

1

ก่อนอื่นเราจะไม่ซ้อนฟังก์ชันเชิงเส้นเข้าด้วยกันเพื่อให้ได้ฟังก์ชันที่ไม่เชิงเส้น มีเหตุผลที่ชัดเจนว่าทำไม NNs อาจไม่ทำงานเช่นนั้น: การซ้อนฟังก์ชันเชิงเส้นเข้าด้วยกันจะทำให้ได้ฟังก์ชันเชิงเส้นอีกครั้ง

สิ่งที่ทำให้ NNs ไม่เป็นเชิงเส้นคือฟังก์ชั่นการเปิดใช้งานที่อยู่ด้านหลังฟังก์ชั่นเชิงเส้น! อย่างไรก็ตามในหลักการคุณพูดถูก: เราแค่แบ่งโลจิสติกส์จำนวนมาก (ไม่ใช่แบบเชิงเส้น!) เข้าด้วยกันและ ... tadaa: เราได้สิ่งที่ดีออกมา ... มันยุติธรรมไหม ปรากฎว่า (จากมุมมองทางทฤษฎี) จริง ๆ แล้วมันยุติธรรม แม้เลว: การใช้ที่มีชื่อเสียงโด่งดังและเป็นที่รู้จักทฤษฎีบทของหิน Weierstrassเราก็พิสูจน์ให้เห็นว่าเครือข่ายประสาทที่มีเพียงหนึ่งชั้นที่ซ่อนอยู่และไม่มีฟังก์ชั่นการส่งออกที่โหนดสุดท้ายคือพอที่จะ approximize ใด ๆฟังก์ชั่นอย่างต่อเนื่อง (และเชื่อฉัน, ฟังก์ชั่นอย่างต่อเนื่องสามารถจะน่าเกลียด สัตว์ร้ายดู "ขั้นบันไดปีศาจ": https://en.wikipedia.org/wiki/Cantor_distribution[a,b]x↦=b+a1ϕ1(x)+...+alϕl(x)l

ทำไมเราถึงใช้ NN แบบลึก? เหตุผลก็คือทฤษฎีบท SW- ข้างต้นรับประกันได้เพียงว่ามีขนาดเลเยอร์ขนาดใหญ่เพียงพอเพื่อให้เราสามารถเข้าใกล้ฟังก์ชั่นเป้าหมายของเรา (หวังอย่างต่อเนื่อง) อย่างไรก็ตามขนาดเลเยอร์ที่ต้องการอาจมีขนาดใหญ่มากจนคอมพิวเตอร์ไม่สามารถจัดการเมทริกซ์น้ำหนักของขนาดนั้นได้ NNs ที่มีเลเยอร์ที่ซ่อนอยู่ดูเหมือนจะเป็นการประนีประนอมระหว่าง 'ความถูกต้อง' และการคำนวณที่ดี ฉันไม่ทราบผลลัพธ์ทางทฤษฎีใด ๆ ที่ชี้ไปยังทิศทางของ 'ความเป็นไปได้' ของ NNs ที่เพิ่มขึ้นเมื่อใส่เลเยอร์ที่ซ่อนอยู่มากขึ้นเมื่อเปรียบเทียบกับการเพิ่มขนาดของเลเยอร์ที่ซ่อนอยู่เพียงอย่างเดียว แต่อาจมีทรัพยากรบางอย่างบนเว็บ ...

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

อะไรทำให้ NNs มีความโดดเด่นในทุกรุ่น? เหตุผลที่แท้จริงที่เราใช้ NN มากในทุกวันนี้ก็เนื่องมาจากเหตุผลสองประการต่อไปนี้:

  1. พวกเขามาพร้อมกับคุณสมบัติ 'สตรีมมิ่ง' อย่างเป็นธรรมชาติ
  2. เราสามารถแมงดาพวกเขาให้สูงสุดในหลายทิศทาง

TfTTTฯลฯ ) ขึ้นอยู่กับคุณสมบัตินี้ ผู้คนพยายามใส่คุณสมบัติการสตรีมนี้ไปยังรุ่นอื่น ๆ (เช่นการเพิ่มความสามารถในการไล่ระดับสี) แต่มันไม่ได้เกิดขึ้นตามธรรมชาติและไม่ถูกคำนวณเหมือนในการตั้งค่า NN

โดย 2 ฉันหมายถึงว่าผู้คนได้ฝึกอบรม NNs เพื่อทำสิ่งที่แปลกประหลาดที่สุด แต่โดยหลักการแล้วพวกเขาใช้เฟรมเวิร์กเดียวกัน: การซ้อนฟังก์ชันที่เรียบเนียนเข้าด้วยกันแล้วปล่อยให้คอมพิวเตอร์ (เช่น PyTorch / Tensorflow) ทำคณิตศาสตร์สกปรกสำหรับคุณ อนุพันธ์ของฟังก์ชั่นการสูญเสียน้ำหนักน้ำหนัก ตัวอย่างหนึ่งจะเป็นกระดาษนี้ที่ซึ่งผู้คนใช้วิธี RL และสถาปัตยกรรมของ NN เพื่อเรียนรู้ภาษาที่ซับซ้อนของสารเคมีโดยการสอนวิธีการใช้งานในหน่วยความจำ (!) ลองทำอย่างนั้นกับ gradient boosting ;-) เหตุผลที่พวกเขาต้องทำนั่นคือภาษาของสารเคมีนั้นอย่างน้อยก็เป็น 'ยากที่จะเรียนรู้' เป็นภาษาของวงเล็บ (เช่นวงเล็บเปิดทุกอันจะปิดหนึ่งอันในภายหลังในคำว่า ) เนื่องจากภาษา SMILES ที่ผู้คนใช้ในการอธิบายโมเลกุลประกอบด้วยสัญลักษณ์ '(' และ ')' จากวิทยาการคอมพิวเตอร์เชิงทฤษฎี (ลำดับชั้นของ Chomsky) เรารู้ว่าไม่มีใครสามารถอธิบายภาษานี้ด้วยออโตมาตาปกติ แต่เราต้องการออโตมาตาแบบกดลง (เช่นออโตมาตะที่มีหน่วยความจำสแต็ค) นั่นคือแรงจูงใจสำหรับพวกเขา (ฉันเดา) ว่าจะสอนเรื่องประหลาดนี้ให้กับ NN


-1

"ทำไมมันทำงานเมื่อมันได้ผล?"

n

ดังนั้นการเรียนรู้ของเครื่องทั้งหมดก็คล้ายกัน

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

ไม่มีใครถามคำถามที่คุณถามอย่างน้อยไม่ได้อยู่ในสิ่งพิมพ์ที่ฉันรู้

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

แน่นอนปัญหาคือขนาดชุดฝึกอบรมจะไม่ไปไหน

ดังนั้นฉันคิดว่าเป็นเวลาที่ดีในการ (1) ถามคำถามนี้ (2) เพื่อพัฒนาเครื่องมือทางคณิตศาสตร์เพื่อตอบคำถามเกี่ยวกับอัลกอริทึมการเรียนรู้ของเครื่องที่เป็นไปได้ทั้งหมดและ (3) ตอบคำถามนี้

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