การวัดความสัมพันธ์ตามเวฟเลตนั้นคุ้มค่ากับการคำนวณหรือไม่?


9

ฉันใช้ทั้งสหสัมพันธ์และการเชื่อมโยงกันเป็นมาตรการของความสัมพันธ์ระหว่างสัญญาณ ฉันคิดว่าวิธีความถี่เวลาจะให้สิ่งที่ดีที่สุดในโลกนี้

คำถามของฉันคือว่าข้อมูลพิเศษนี้เพิ่มเพียงพอต่อภาพรวมของสัญญาณเพื่อปรับค่าใช้จ่ายในการคำนวณที่เกี่ยวข้องกับการแปลงเวฟเล็ตให้เป็นส่วนหนึ่งของการคำนวณหรือไม่?

การอ้างอิง: บทความArXiv : "เทคนิคข้ามความสัมพันธ์ในโดเมนเวฟเล็ตสำหรับการตรวจจับคลื่นความโน้มถ่วงสุ่ม" โดย S.Klimenko, G.Mitselmakher, A.Sazonov


ค่าใช้จ่ายในการคำนวณเพิ่มเติมเท่าไหร่ คุณสามารถทำให้เร็วขึ้นด้วย FFT หรือ FWT ได้หรือไม่
endolith

@endolith สมมติว่าฉันจะรวมอัลกอริทึมเหล่านั้นแล้วฉันคิดว่า
jonsca

1
การเชื่อมโยงกันและสหสัมพันธ์สามารถใช้ FFT ซึ่งก็คือ O (N log N) ในขณะที่ FWT เป็น O (N) ดังนั้นวิธีการเวฟเล็ตอาจเร็วขึ้นจริงหรือ ผมไม่ได้มีความเข้าใจที่ชัดเจนของเรื่องนี้ แต่แม้จะมีการถามครั้งที่สอง: math.stackexchange.com/questions/28581/... stackoverflow.com/questions/1787536/...
endolith

1
อย่างไรก็ตามคุณควรใช้สิ่งที่เหมาะสมที่สุดกับสิ่งที่คุณพยายามจะทำ นี่เหมือนกับถามว่า "ไหนดีกว่ากันไขควงหรือค้อน"
endolith

1
@ jonsca สัญชาตญาณของคุณถูกต้องจริงๆ เห็นได้ชัดว่าการแปลง DWT เป็นตัวแปรเวลาและคุณสมบัตินี้อาจนำไปสู่การหาประโยชน์บางอย่าง ฉันกำลังทำสิ่งเดียวกันกับโครงการที่ฉันกำลังทำอยู่ มีวัตถุประสงค์เพื่อประเมิน TDOA (หน่วงเวลาการมาถึง) ระหว่างสัญญาณทั้งสองดังนั้นก่อนอื่นเลยฉันเปลี่ยนมันโดยใช้ (เขียนด้วยมือ) DWT จากนั้นฉันก็เชื่อมโยงมันเข้าด้วยกัน นี่คือลิงค์ไปยังกระดาษที่คุณสามารถอ่านได้จากดรอปบ็อกซ์สาธารณะของฉัน ( dl.dropbox.com/u/4724281/waveletBasedTDOA.pdf )
Spacey

คำตอบ:


5

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

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

สังเกตุการผลิตnเอาต์พุตจากnอินพุทจริงการแปลงเวฟเล็ตหลายระดับในPyWaveletsจะเร็วกว่า FFT ของ NumPy เมื่อ n มากกว่า 4096

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

อย่างไรก็ตาม

  1. มันคือ Python และการใช้งานสองอย่างนั้นอาจมีประสิทธิภาพแตกต่างกันมาก ฉันไม่รู้ด้วยซ้ำว่าwavedec()จะได้รับการพิจารณาว่าเป็นการแปลงเวฟเล็ตอย่างรวดเร็วหรือไม่ พวกเขาใช้ตัวย่อDWTในเอกสารของพวกเขา Haar DWT และ FWT เหมือนกันหรือไม่
  2. เวลาจะแตกต่างกันไปขึ้นอยู่กับเวฟเล็ตที่ใช้ เวฟเมเยอร์ใช้เวลา 6 เท่าของ Daubechies ในการสร้างข้อมูลจำนวนเท่ากัน
  3. ฉันยังไม่เข้าใจวิธีที่ FWT จัดเรียงระนาบเวลาความถี่หรือหากการผลิตnเอาต์พุตเพียงพอที่จะได้รับการวัดความเหมือนกันแบบเดียวกันกับการเชื่อมโยงข้ามวงกลมแบบn -point โดยใช้ FFT (โดยทางเทคนิคแล้วมันเป็นระนาบเวลาไม่ใช่ความถี่เวลา แต่ฉันคิดว่ามันเหมือนกันกับเวฟเล็ต Morlet ที่ซับซ้อน ?) FWT เป็น "การสุ่มตัวอย่างวิกฤต" ของเครื่องบินและผลิตข้อมูลจำนวนเท่ากันกับ FFT ดังนั้นจึงดูเหมือนว่ายุติธรรมที่จะเปรียบเทียบพวกเขา

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


3

สายนี้ช้ามาก แต่อาจคุ้มค่า ...

ระนาบช่วงเวลาไม่เหมือนกับระนาบเวลาความถี่แม้ว่ามันอาจมีประโยชน์เช่นกัน สัญญาณในสถานที่ต่าง ๆ ในระนาบเวลาที่เกี่ยวข้องx(เสื้อ)x(Δs(เสื้อ-Δเสื้อ))ที่ไหน Δs เลื่อนคุณขึ้น (หรือลง) ในระดับและ Δเสื้อกะคุณในเวลา การแปลงแบบเดียวกันในระนาบเวลาความถี่คือx(เสื้อ)x(เสื้อ-Δเสื้อ)อีผมΔωเสื้อที่ไหน Δωเป็นการเปลี่ยนความถี่ ถ้าสัญญาณของคุณx(เสื้อ) เป็นคลื่นไซน์, การแปลงสองอย่างนั้นเหมือนกัน

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

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

นอกจากนี้ยังเป็นที่พึงปรารถนาที่จะคิดถึงสถานที่ในระนาบเวลาที่มีความหนาแน่นของพลังงาน วิธีนี้อำนวยความสะดวกโดยใช้เวฟเล็ตวิเคราะห์เช่นเวฟเล็ต Morlet ที่กล่าวถึงก่อนหน้านี้ วิธีการหนึ่งที่ยอดแปลไม่แปรเปลี่ยนและ analyticity กับเวลาในการคำนวณเป็นที่ซับซ้อนแบบ dual-ต้นไม้แปลงเวฟเล็ต การทำสิ่งเดียวกันในระนาบเวลาความถี่นั้นอาจจะง่ายกว่า: ทำ Hilbert โดยประมาณเปลี่ยนสัญญาณของคุณเป็นอันดับแรกโดยทำ FFT โดยให้ความถี่ลบเป็นศูนย์ทั้งหมดตามด้วย IFFT

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

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