หลักฐานที่แสดงว่าการคูณเมทริกซ์สามารถทำได้ในเวลากำลังสอง?


59

มันมีการคาดเดากันอย่างกว้างขวางว่าเลขชี้กำลังที่ดีที่สุดสำหรับการคูณเมทริกซ์นั้นจริง ๆ แล้วเท่ากับ 2 คำถามของฉันง่าย:ω

เหตุผลอะไรบ้างที่เรามีความเชื่อว่า ?ω=2

ฉันรู้ขั้นตอนวิธีการอย่างรวดเร็วเช่นทองแดง-Winograd แต่ผมไม่ทราบว่าทำไมเหล่านี้อาจได้รับการพิจารณาหลักฐาน2ω=2

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


12
ฉันสงสัยว่าคำตอบนั้นส่วนใหญ่เป็นสุนทรียศาสตร์และการขาดเหตุผลที่ดีสำหรับมันมีขนาดใหญ่กว่า 2 มีกระดาษใน FOCS '05 ที่ให้การสร้างทฤษฏีกลุ่มสำหรับเมทริกซ์ mult ที่ตรงกับเลขชี้กำลังที่รู้จักในปัจจุบันและยังให้ 2 คาดเดากลุ่มตามทฤษฎีซึ่งบ่งบอกถึง 2 PDFω=2
Mark Reitblatt

5
ไม่กี่ปีที่ผ่านมาผมได้สนทนากับ Strassen ที่เขาบอกว่าเขาเชื่อ2 แต่ฉันไม่แน่ใจว่าเหตุผลของเขาคืออะไร ω>2
Ryan Williams

2
@ ไรอันเราหวังว่า Strassen จะอ่าน cstheory.stackexchange :)
Steve Flammia

3
มีขอบเขตต่ำกว่า (ภายใต้ข้อ จำกัด บางอย่าง) เนื่องจาก Ran Raz ดังนั้นการคาดเดาที่ดีกว่าคือไม่ประสบความสำเร็จ (แต่น้อยที่สุดคือ ) Ω(nlogn)ω=22
Yuval Filmus

5
@Yuval, @Steve: 1)ถูกกำหนดเป็นขีด จำกัด 2) เรารู้อยู่แล้วว่าอะไรก็ตามที่คือมันไม่ประสบความสำเร็จ (เป็น inf และไม่ใช่นาที) เห็นนี้กระดาษทองแดง-Winograd: dx.doi.org/10.1137/0211038 จากนามธรรม: "เลขชี้กำลังสำหรับการคูณเมทริกซ์เป็นจุด จำกัด นั่นคือมันไม่สามารถรู้ได้โดยอัลกอริทึมเดียวใด ๆ " (ได้รับรายละเอียดของผลของพวกเขาผมคิดว่าคำสั่งนี้ไม่สามารถค่อนข้างจะต้องดำเนินการอย่างไร้เดียงสาที่มูลค่า แต่ส่วนใหญ่จะเป็นวิชา.)ωω
โจชัว Grochow

คำตอบ:


20

ฉันต้องการเพิ่มความคิดเห็นของ Mark Reitblatt และคำตอบของ Amir Shpilka ครั้งแรกหนึ่งในการคาดเดาที่หยิบยกโดย Cohn, Kleinberg, Szegedy และ Umans ไม่ใช่กลุ่มเชิงทฤษฎี แต่เป็น combinatorial หมดจด (Conj. 3.4 ในบทความ FOCS '05 ) การคาดเดานี้บอกว่า "ความจุ USP ที่แข็งแกร่งคือ " Coppersmith และ Winograd ในการแสดงอัลกอริธึมที่ดีที่สุดในปัจจุบันสำหรับการคูณเมทริกซ์แสดงให้เห็นว่าความสามารถของ USP คือหมายเลขเดียวกัน (แม้ว่าพวกเขาจะไม่ได้พูดแบบนี้) แม้ว่าจะมีความแตกต่างระหว่าง USP ที่แข็งแกร่งและ USPs แต่นี่ก็เป็นหลักฐานที่แสดงว่าการคาดเดาของพวกเขานั้นมีเหตุผลอย่างน้อยก็เป็นไปได้322/3322/3

(สำหรับการคาดเดาอื่น ๆ ของพวกเขา 4.7 ซึ่งเป็นกลุ่มตามทฤษฎีฉันไม่ทราบถึงหลักฐานที่คล้ายคลึงกันใด ๆ เกี่ยวกับความน่าเชื่อถือนอกเหนือไปจากสัญชาตญาณ)

ประการที่สองฉันเห็นด้วยกับ Amir Shpilka ว่าสตริงของอัลกอริทึมที่ผ่านมามีความรู้สึกที่ค่อนข้างเฉพาะกิจ อย่างไรก็ตามหนึ่งในสิ่งที่ดีเกี่ยวกับวิธีการแบบกลุ่มตามหลักทฤษฎีคืออัลกอริทึมก่อนหน้านี้เกือบทั้งหมด (ไม่ใช่ทั้งหมด) สามารถใช้วลีในวิธีนี้ได้ แม้ว่าการก่อสร้างแบบกลุ่มตามทฤษฎีต่างๆใน [CKSU] อาจดูเหมือนเป็นการเฉพาะกิจเพียงเล็กน้อย แต่ในบริบทของกรอบการทำงานแบบกลุ่มทฤษฎีพวกมันดูมีความเป็นธรรมชาติและมีความโฆษณาน้อยกว่าฉันอย่างน้อย อัลกอริทึมก่อนหน้า


เมื่อฉันคิดถึงความจุฉันคิดถึงชุดและชุดโบราณที่เป็นอิสระ พจนานุกรมระหว่าง USP และการสร้างกราฟพื้นฐานที่ชัดเจนคืออะไรและมีโครงสร้างของกราฟเหล่านี้หรือไม่
....

28

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


20

มีการเปรียบเทียบที่ฉันใช้เพื่อพิสูจน์การคาดเดาที่กับตัวเอง ฉันรู้ว่านี่เป็นวิธีแก้ปัญหาที่น่ารักแต่ทว่ามันก็ช่วยฉันได้เป็นอย่างดีในการทำความเข้าใจกับสัญชาตญาณเบื้องหลัง Cohn และคณะ กระดาษ.ω=2

การคูณ Convolution และเมทริกซ์นั้นคล้ายคลึงกัน หากและจะ -by-เมทริกซ์และแล้วเจ) หากและมีเวกเตอร์มีความยาวและแล้ว(IK) ในทั้งสองกรณีผลลัพธ์สุดท้ายคือเวกเตอร์ที่ประกอบด้วยผลรวมของผลิตภัณฑ์ แต่โครงสร้างเชิงสัมพันธ์ในข้อมูลอินพุตนั้นแตกต่างกัน สำหรับบิดเราสามารถใช้ FFT การคำนวณคำตอบในเวลาแทนเล็กน้อย2) ในทำนองเดียวกันอาจคาดหวังABnnC=ABC(i,j)=k=1nA(i,k)B(k,j)ABnC=ABC(i)=k=1nA(k)B(ik)O(n2) ˜ O (n2)O~(n)O(n2)O~(n2)เวลาอัลกอริธึมสำหรับการคูณเมทริกซ์ คำถามคืออะไรอะนาล็อกของการแปลงฟูริเยร์ที่สามารถช่วยในการคูณเมทริกซ์คืออะไร?


-1

มีโอกาสมากขึ้นว่ามันเป็น2)) การมีดูเหมือนเป็นจริงเพราะการเก็บหนังสืออย่างต่อเนื่องไม่ได้ดูเหมือนว่ามันจะขยายω = 2O(n2log(n2))ω=2


1
คุณเข้าใจผิดความหมายของ : มันเป็น infimum ของทุกดังกล่าวว่าคูณเมทริกซ์จะสามารถแก้ไขได้ในเวลาc) หากมีขั้นตอนวิธีการคูณเมทริกซ์, infimum นี้จะยังคงเป็น2BTW มีในรูปแบบของวงจรเลขคณิตที่มีสัมประสิทธิ์ล้อมรอบ c O ( n c ) O ( n 2 บันทึก10 n ) 2 Ω ( n 2บันทึกn )ωcO(nc)O(n2log10n)2Ω(n2logn)
Sasho Nikolov

@SashoNikolov ขอบคุณที่ชี้ให้เห็น มีใครลองฝึกโครงข่ายประสาทสำหรับ boolean matmul A * B = C หรือไม่? [รายการ, รายการ B, รายการ C] -> Bool (คูณถูกต้องหรือไม่ถูกต้อง) อยากรู้ว่าวงจรไล่ระดับสีที่เหมาะสม / dropouts เกิดขึ้นได้อย่างไร หากวงจรที่ผ่านการฝึกอบรมมีตัวดึงดูดใกล้กับการสลายตัวที่สำคัญ ใน 3x3, 4x4, 5x5, 6x6 ดูเหมือนว่าหนึ่งชั่วโมงของ GPU จะให้ผลลัพธ์ที่น่าสนใจ
Chad Brewbaker
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.