ความสัมพันธ์ระหว่างความซับซ้อนในการคำนวณและข้อมูล


11

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

ใครสามารถแนะนำฉันเกี่ยวกับความสัมพันธ์ระหว่างความซับซ้อนในการคำนวณ (ในแง่ของ CS) และเอนโทรปีในแง่ของทฤษฎีสารสนเทศ?

เพื่ออธิบายเพิ่มเติมอีกเล็กน้อยมาตรการเช่นความซับซ้อนของ Lempel-Ziv ดูเหมือนฉันจะไม่สามารถวัดความซับซ้อนได้เพราะพวกเขาทำให้ข้อมูลที่สับสน (กับผู้ใช้) ทำให้สับสน มาตรการอื่น ๆ เช่น[Causal State Splitting Reconstruction][1]นั้นไม่ค่อยมีใครรู้จัก แต่มีคุณสมบัติที่น่าดึงดูดว่ากระบวนการแบบสุ่มมีความซับซ้อนเป็นศูนย์เนื่องจากจำเป็นต้องมีสถานะซ่อนเร้นเป็นศูนย์เพื่อแสดงถึงกระบวนการสุ่มแบบคงที่


1
คุณช่วยอธิบายความหมายของคำว่า "ซับซ้อน" ในสาขาของคุณได้ไหม? มันหมายความว่าเซลล์ประสาทกำลังยิงอย่างมีความหมายหรือมากกว่านั้นเข้าร่วม?
vs

@vs: มีคำจำกัดความการแข่งขันมากมายสำหรับ "complex" บางคนบอกว่ากระบวนการที่ซับซ้อนที่สุดคือว่าด้วยเอนโทรปีที่สูงที่สุด อย่างไรก็ตามนั่นก็หมายความว่ากระบวนการสุ่มนั้นซับซ้อนซึ่งดูเหมือนจะไม่สมจริงทางชีววิทยา ถึงกระนั้นการ "ยิงอย่างมีความหมาย" ก็ใกล้กว่า "มากขึ้น ... มีส่วนร่วม" แม้ว่าจะเป็นไปได้ว่า
mac389

1
เราเข้าใจว่าความซับซ้อนหมายถึงเอนโทรปีที่มากขึ้นจากสาขาของเรา ฉันถามคำถามนั้นเพื่อทำความเข้าใจความหมายของฟิลด์ที่ซับซ้อน ดังนั้น "" การเข้าร่วมที่มีความหมายมากขึ้น "ก็ใกล้เข้ามาโอเคนี่คือการเดาของฉันสำหรับฉัน" การมีส่วนร่วมที่มีความหมายมากกว่า "หมายถึงเซลล์ประสาทกำลังสื่อสาร" ฉลาด "หรือ" ค่อนข้างตอบสนองต่อสิ่งเร้า "สำหรับ มักจะเกี่ยวข้องกับเอนโทรปีที่สูงขึ้นหรือข้อมูลในทฤษฎีสารสนเทศ
vs

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

1
@ mac389 เราอาจหมายถึงสิ่งใด ๆ ก็ตามที่มีความซับซ้อนของวัตถุ ตัวอย่างบางส่วน ได้แก่ : ความซับซ้อนของ Kolmogorov (ซึ่งคุณได้รับคำตอบ) และแนวคิดต่าง ๆ ของความซับซ้อนของ Kolmogorov ที่ จำกัด เวลา เมื่อคุณมีกลุ่มวัตถุที่มีขนาดแตกต่างกันเราจะดูว่าเวลา / พื้นที่ (เป็นฟังก์ชั่นขนาดวัตถุ) ใช้อัลกอริทึมในการรับรู้ว่าวัตถุนั้นเป็นของคลาสหรือไม่ คุณมีปัญหาการสร้างแบบจำลองที่ไม่น่ารำคาญพอสมควรที่นี่ฉันคิดว่า
Sasho Nikolov

คำตอบ:


9

มีการเชื่อมต่อที่เพียงพอระหว่างทฤษฎีข้อมูลและความซับซ้อนในการคำนวณเพื่อทำหลักสูตรบัณฑิตศึกษาเช่นหลักสูตรนี้: http://www.cs.princeton.edu/courses/archive/fall11/cos597D/


ขอบคุณพร้อมด้วยการสนทนากับคนที่มีความรู้มากกว่านี้เป็นสิ่งที่ฉันกำลังมองหา
mac389

7

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

หนึ่งความคิดของความลึกนั้นสังหรณ์ใจ: สตริงจะลึกถ้ามันมีคำอธิบายสั้น ๆ แต่วิธีเดียวที่จะสร้างสตริงจากคำอธิบายสั้น ๆ นั้นใช้เวลาจำนวนมาก นี่คือความคิดของความลึกและอื่น ๆ อีกมากมายได้รับการแนะนำและพัฒนาใน [1] การอ้างอิงมาตรฐานอื่น ๆ คือ [2] ฉันจะดูสิ่งเหล่านั้นแล้วทำการค้นหาข้อมูลอ้างอิงล่วงหน้า

[1] L. Antunes, L. Fortnow, D. van Melkebeek, NV Vinodchandran ความลึกของการคำนวณ: แนวคิดและการประยุกต์ใช้ Theoret คอมพ์ วิทย์ 354 (3): 391--404 นอกจากนี้ยังได้อย่างอิสระจากหน้าเว็บของผู้เขียน

[2] CH เบนเน็ตต์ ความลึกเชิงตรรกะและความซับซ้อนทางกายภาพ ใน R. Herken (Ed.), เครื่องจักรทัวริงสากล: การสำรวจครึ่งศตวรรษ, สำนักพิมพ์มหาวิทยาลัยออกซ์ฟอร์ด, Oxford (1988), 227–2550


ขอบคุณมากสำหรับคำตอบนี้ ความลึกเชิงตรรกะดูเหมือนจะใกล้เคียงกับความซับซ้อนของฉัน
mac389

3

สิ่งแรกที่นึกขึ้นได้ว่าเป็นสิ่งที่คุณอาจพบว่ามีความน่าดึงดูดใจคือความซับซ้อนของ Kolmogorov ฉันคิดว่ามันน่าหลงใหลและเมื่อคุณไม่ได้พูดถึงมันฉันคิดว่ามันน่าจะคุ้มค่าที่จะพูดถึง

ที่ถูกกล่าวว่าวิธีการทั่วไปในการตอบคำถามนี้อาจขึ้นอยู่กับทฤษฎีภาษาและออโตมาตา ออปชัน จำกัด ที่กำหนดแน่นอนคือตัวประมวลผลสตริง O (n) นั่นคือจากสตริงที่มีความยาว n พวกมันจะประมวลผลสตริงในขั้นตอน n อย่างแม่นยำ (สิ่งนี้ขึ้นอยู่กับวิธีการที่คุณกำหนดออโตเมทริก จำกัด แน่นอนอย่างแม่นยำอย่างไรก็ตาม DFA ไม่ต้องการขั้นตอนเพิ่มเติมอย่างแน่นอน) Nondeterministc finite automata รับรู้ภาษาเดียวกัน (ชุดของสตริง) เป็น DFAs และสามารถแปลงเป็น DFAs ได้ แต่เพื่อจำลอง NFA บนเครื่องที่ต่อเนื่องและกำหนดได้คุณต้องสำรวจพื้นที่ "ต้นไม้" ซึ่งสามารถเพิ่ม ซับซ้อนอย่างมาก ภาษาปกติไม่ "ซับซ้อน" มากนักในแง่การคำนวณ

คุณสามารถดูระดับอื่น ๆ ของลำดับชั้นของภาษา Chomsky ได้เช่นกัน - ไม่มีบริบทที่กำหนดขึ้นมา, ไม่มีบริบท ภาษาที่นับได้และภาษาที่ไม่สามารถตัดสินใจได้

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

โดยทั่วไปแล้วฉันจะไม่แปลกใจถ้าภาษาที่สูงขึ้นในลำดับชั้นของ Chomsky (ด้วยความซับซ้อนที่สูงขึ้น) ก็มีแนวโน้มที่จะมีความเอนโทรปีที่สูงขึ้นในแง่ของข้อมูลและทฤษฎี ที่ถูกกล่าวว่าคุณอาจจะพบกับตัวอย่างมากมายในความคิดนี้และฉันไม่รู้ว่ามีบุญใด ๆ เลย

นอกจากนี้อาจมีการถามที่ดีกว่าใน "theoretical cs" (cstheory) StackExchange


ฉันย้ายไปแล้วและขอบคุณสำหรับคำแนะนำของคุณ
mac389

1

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

สิ่งเหล่านี้ค่อนข้างทั่วไปและเป็นนามธรรม: ปัญหาสามารถแก้ไขได้ทั้งหมดแม้ในหลักการหรือไม่? มันต้องใช้เครื่องประเภทนี้หรือเปล่า? การแนะนำแนวคิดเหล่านี้ยังคงเป็นหัวข้อวิทยาศาสตร์คอมพิวเตอร์ระดับบัณฑิตศึกษาและเนื้อหาแนะนำมักจะอ้างอิงถึงลำดับชั้นของ Chomsky ซึ่งแผนที่ (และสวยงาม! ข้อกำหนดภาษาคณิตศาสตร์

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

ดังนั้นจึงมีความคิดที่ดีบางอย่างฉันคิดว่า

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