วิทยาศาสตร์คอมพิวเตอร์

ถาม - ตอบสำหรับนักเรียนนักวิจัยและผู้ปฏิบัติงานด้านวิทยาการคอมพิวเตอร์

1
การลบรายการที่ซ้ำกันได้อย่างมีประสิทธิภาพและมีค่าใช้จ่ายหน่วยความจำเหลือน้อย
ฉันต้องการกรองรายการจำนวนเต็มอย่างมีประสิทธิภาพสำหรับรายการที่ซ้ำกันในแบบที่ต้องเก็บชุดผลลัพธ์เท่านั้น วิธีนี้สามารถเห็นได้: เรามีช่วงของจำนวนเต็ม S={1,…,N}S={1,…,N}S = \{1, \dots{}, N\} กับ NNN ใหญ่ (พูด 2402402^{40}) เรามีฟังก์ชั่น f:S→Sf:S→Sf : S \to S มีการชนหลายครั้ง (ภาพมีการกระจายอย่างสม่ำเสมอ SSS) เราต้องไปเก็บของ f[S]f[S]f[S], นั่นคือ {f(x)|x∈S}{f(x)|x∈S}\{f(x) | x \in S\} ฉันมีการประมาณความแม่นยำ (ความน่าจะเป็น) ของสิ่งที่ |f[S]||f[S]||f[S]| คือและสามารถจัดสรรโครงสร้างข้อมูลล่วงหน้าได้ (พูด |f[S]|≈230|f[S]|≈230|f[S]| \approx 2^{30}) ฉันมีความคิดเล็กน้อย แต่ฉันไม่แน่ใจว่าอะไรจะเป็นวิธีที่ดีที่สุด: บิตเซตไม่อยู่ในคำถามเนื่องจากชุดอินพุตไม่พอดีกับหน่วยความจำ ตารางแฮช แต่ (1) ต้องการหน่วยความจำโอเวอร์เฮดประมาณ 150% |f[S]||f[S]||f[S]| และ (2) …

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

3
การเข้ารหัส Huffman ดีที่สุดเสมอหรือไม่
ข้อกำหนดของการเข้ารหัสที่จะนำหน้าเป็นผลลัพธ์ฟรีในต้นไม้ขนาดใหญ่เนื่องจากต้นไม้ต้องสมบูรณ์ มีเกณฑ์ที่การจัดเก็บข้อมูลที่ไม่มีการเข้ารหัสความยาวคงที่จะมีประสิทธิภาพมากกว่าการเข้ารหัสข้อมูลหรือไม่?

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

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

5
เราต้องรู้คณิตศาสตร์มากน้อยเพียงใดในการทำความเข้าใจคณิตศาสตร์ / โครงสร้างแยกสำหรับวิทยาศาสตร์คอมพิวเตอร์
ปกติมหาวิทยาลัยจะสอนโครงสร้างทางคณิตศาสตร์ / ไม่ต่อเนื่อง คำถามของฉันคือต้องรู้ว่าต้องเข้าใจเรื่องนี้มากน้อยแค่ไหน แคลคูลัสเป็นสิ่งที่จำเป็นหรือ precalculus ทำได้ดีหรือไม่? เราจำเป็นต้องทำการพิสูจน์ก่อนที่จะสามารถเข้าใจเรื่องนี้ได้หรือไม่? ขอบคุณสำหรับคำตอบของคุณ หมายเหตุ: ฉันขอโทษถ้าสิ่งนี้ถูกถามแล้ว หลังจากการสอบสวนของฉันฉันไม่พบคำถามที่คล้ายกัน หากคุณเชื่อว่าเป็นกรณีนี้โปรดแชร์สิ่งที่ได้รับคำตอบและฉันยินดีที่จะจบ / ลบเรื่องนี้

1
การแปลงไวยากรณ์นิพจน์ทางคณิตศาสตร์
ในบทความการแยกวิเคราะห์นิพจน์โดย Recursive Descent โดย Theodore Norvell (1999)ผู้เขียนเริ่มต้นด้วยไวยากรณ์ต่อไปนี้สำหรับนิพจน์ทางคณิตศาสตร์: E --> E "+" E | E "-" E | "-" E | E "*" E | E "/" E | E "^" E | "(" E ")" | v ซึ่งค่อนข้างแย่เพราะมันคลุมเครือและซ้ำซาก ดังนั้นเขาจึงเริ่มต้นจากการลบการเรียกซ้ำซากด้านซ้ายออกจากผลลัพธ์นั้นเป็นดังนี้: E --> P {B P} P --> v | "(" E …

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


1
สามารถเชื่อมต่อแบบขนานได้หรือไม่?
สมมติว่าเราต้องการเข้าร่วมความสัมพันธ์สองเรื่องในภาคแสดง อยู่ใน NC หรือเปล่า ฉันรู้ว่าการพิสูจน์ว่ามันไม่ได้อยู่ในอร์ทแคโรไลนาก็เท่ากับการพิสูจน์ว่าดังนั้นฉันจึงยอมรับหลักฐานว่ามันเป็นปัญหาแบบเปิดเป็นคำตอบP≠NCP≠NCP\not=NC ฉันสนใจกรณีทั่วไปและกรณีเฉพาะ (เช่นอาจมีโครงสร้างข้อมูลเฉพาะบางอย่างที่สามารถขนานกันได้) แก้ไข: เพื่อนำคำชี้แจงบางอย่างจากความคิดเห็นมาไว้ในโพสต์นี้: เราสามารถพิจารณา equijoin A.x=B.yA.x=B.yA.x = B.yโดย ในโปรเซสเซอร์เดียวอัลกอริทึมแบบแฮชจะทำงานในO(|A|+|B|)O(|A|+|B|)O(|A|+|B|)และนี่คือวิธีที่ดีที่สุดที่เราสามารถทำได้เนื่องจากเราต้องอ่านแต่ละชุด ถ้าภาคแสดงเป็น "กล่องดำ" ที่เราต้องตรวจสอบแต่ละคู่จะมีคู่และแต่ละคนสามารถอยู่ในหรือไม่ดังนั้นความเป็นไปได้ การตรวจสอบแต่ละคู่แบ่งความเป็นไปได้ในช่วงครึ่งดังนั้นดีที่สุดที่เราสามารถทำได้คือ(AB)|A|⋅|B||A|⋅|B||A|\cdot|B|2ab2ab2^{ab}O(ab)O(ab)O(ab) สามารถเข้าร่วม (หรือประเภทที่สามบางส่วน) เหล่านี้เพื่อปรับปรุงเป็นในโปรเซสเซอร์หลายตัวได้หรือไม่?logknlogk⁡n\log^k n

1
ทำไมความซับซ้อนของการลบรอบการลบ
เราต้องการแก้ปัญหาการไหลของต้นทุนที่น้อยที่สุดด้วยอัลกอริทึมการยกเลิกเชิงลบทั่วไป นั่นคือเราเริ่มต้นด้วยการไหลที่ถูกต้องแบบสุ่มและจากนั้นเราจะไม่เลือกวัฏจักรเชิงลบ "ดี" ใด ๆ เช่นรอบต้นทุนเฉลี่ยขั้นต่ำสุด แต่ใช้ Bellman-Ford เพื่อค้นหารอบที่น้อยที่สุดและเพิ่มตามรอบการค้นพบ Letเป็นจำนวนโหนดในกราฟจำนวนขอบความจุสูงสุดของขอบในกราฟและVVVAAAยูยูUWWWค่าใช้จ่ายสูงสุดของขอบในกราฟ จากนั้นสื่อการเรียนรู้ของฉันอ้างสิทธิ์: ค่าใช้จ่ายสูงสุดที่จุดเริ่มต้นต้องไม่เกิน UWAยูWAUW การเพิ่มไปตามวัฏจักรลบหนึ่งครั้งจะช่วยลดต้นทุนได้อย่างน้อยหนึ่งหน่วย ขอบล่างสำหรับต้นทุนต่ำสุดคือ 0 เพราะเราไม่อนุญาตให้มีค่าใช้จ่ายติดลบ แต่ละรอบการลบสามารถพบได้ใน O ( Vก)O(VA)O(VA) และพวกเขาก็ทำตามความซับซ้อนของอัลกอริทึม O(V2UW)O(V2AยูW)O(V^2AUW). ฉันเข้าใจเหตุผลที่อยู่เบื้องหลังการอ้างสิทธิ์แต่ละข้อ แต่คิดว่าความซับซ้อนนั้นแตกต่างกัน โดยเฉพาะจำนวนสูงสุดของการเพิ่มจะได้รับจากหนึ่งหน่วยของการไหลต่อการเสริมการใช้ค่าใช้จ่ายจากUWAยูWAUW ถึงศูนย์ทำให้เราได้มากที่สุด UWAยูWAUWaugmentations เราจำเป็นต้องค้นพบวัฏจักรเชิงลบสำหรับแต่ละดังนั้นเราจึงเพิ่มจำนวนสูงสุดของการขยายเวลาที่จำเป็นในการค้นพบรอบ (VAVAVA) และมาถึงที่ โอ(A2VยูW)O(A2VยูW)O(A^2VUW) สำหรับอัลกอริทึม นี่อาจเป็นข้อผิดพลาดในสื่อการเรียนรู้ (นี่เป็นข้อความที่อาจารย์ให้ไว้ไม่ใช่จากบันทึกของนักเรียนจากหลักสูตร) ​​หรือเหตุผลของฉันผิด?

4
ระยะทางที่สั้นที่สุดระหว่างจุดใน A และจุดใน B
ให้สองเซตและแต่ละอันมีจุดเชื่อมต่อจุดบนเครื่องบินคำนวณระยะทางที่สั้นที่สุดระหว่างจุดหนึ่งในและจุดหนึ่งในคือ\}AAABBBnnnAAABBBmin { dist(p,q) | p∈A∧q∈B }min { dist(p,q) | p∈A∧q∈B }\min \space \{\mbox{ } \text{dist}(p, q) \mbox{ } | \mbox{ } p \in A \land q \in B \space \} ฉันไม่แน่ใจว่าฉันถูกหรือไม่ แต่ปัญหานี้คล้ายกับปัญหาที่สามารถแก้ไขได้โดยการเขียนโปรแกรมเชิงเส้นในเรขาคณิตเชิงคำนวณ อย่างไรก็ตามการลดลงของ LP ไม่ตรงไปตรงมา นอกจากนี้ปัญหาของฉันยังเกี่ยวข้องกับการค้นหาสเปคที่บางที่สุดระหว่างจุดสองชุดซึ่ง LP สามารถแก้ไขได้อย่างชัดเจนในO(n)O(n)O(n)ในพื้นที่สองมิติ

3
สาขาวิทยาศาสตร์คอมพิวเตอร์คืออะไรที่ศึกษาว่าโปรแกรม Anti Virus ทำงานอย่างไร
เป็นการออกกำลังกายเล็กน้อยในออโตมาตา จำกัด เพื่อแสดงว่าไม่มีอัลกอริทึมที่สามารถตรวจจับไวรัสทั้งหมด แต่มี บริษัท ซอฟต์แวร์จำนวนมากที่จำหน่ายซอฟต์แวร์ต่อต้านไวรัส มีส่วนใดส่วนหนึ่งของ CS ที่เกี่ยวข้องกับไวรัสและไวรัสหรือไม่? PS: ฉันไม่ได้ถามเกี่ยวกับเหตุผลที่ไม่ใช่ CS ที่เกี่ยวข้องกับการมี AV หรือไม่ แต่เฉพาะหมวดหมู่ / เรื่องภายใน CS ที่พวกเขาเข้ามาถ้ามี หาก AV ไม่ใช่วิชาใน CS ดังนั้นนั่นเป็นคำตอบที่ยอมรับได้มีการอ้างอิงใด ๆ ในบริบท CS กับไวรัสและ AV หรือไม่?

3
วิธีที่จะรู้สึกอย่างสังหรณ์ใจว่าภาษาเป็นปกติ
ให้ภาษาฉันจะพูดโดยตรงอย่างไรโดยไม่ดูกฎการผลิตภาษานี้ไม่ปกติL = {anขnคn}L={anbncn} L= \{a^n b^n c^n\} ฉันสามารถใช้เลมม่าสูบน้ำ แต่ผู้ชายบางคนบอกว่าแค่ดูไวยากรณ์ว่านี่ไม่ใช่เรื่องปกติ มันเป็นไปได้ยังไงกัน?

1
อัลกอริธึมการเรียนรู้ของเครื่องตาม“ การลดความเสี่ยงเชิงโครงสร้าง” หรือไม่?
ซึ่งการเรียนรู้เครื่องอัลกอริทึม (นอกเหนือจาก SVM) ที่ใช้หลักการของการลดความเสี่ยงโครงสร้าง ?

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