การออกแบบเวกเตอร์คุณสมบัติสำหรับการแยกแยะระหว่างรูปคลื่นเสียงที่แตกต่างกัน


10

พิจารณาสัญญาณรูปคลื่นที่ 4 ต่อไปนี้:

signal1 = [4.1880   11.5270   55.8612  110.6730  146.2967  145.4113  104.1815   60.1679   14.3949  -53.7558  -72.6384  -88.0250  -98.4607]

signal2 = [ -39.6966   44.8127   95.0896  145.4097  144.5878   95.5007   61.0545   47.2886   28.1277  -40.9720  -53.6246  -63.4821  -72.3029  -74.8313  -77.8124]

signal3 = [-225.5691 -192.8458 -145.6628  151.0867  172.0412  172.5784  164.2109  160.3817  164.5383  171.8134  178.3905  180.8994  172.1375  149.2719  -51.9629 -148.1348 -150.4799 -149.6639]

signal4 = [ -218.5187 -211.5729 -181.9739 -144.8084  127.3846  162.9755  162.6934  150.8078  145.8774  156.9846  175.2362  188.0448  189.4951  175.9540  147.4631  -89.9513 -154.1579 -151.0851]

สัญญาณ

เราสังเกตว่าสัญญาณ 1 และ 2 ดูคล้ายกันและสัญญาณ 3 และ 4 นั้นคล้ายกัน

ฉันกำลังมองหาอัลกอริทึมที่ใช้เป็นสัญญาณอินพุทและแบ่งพวกมันออกเป็นกลุ่ม m โดยที่สัญญาณภายในแต่ละกลุ่มคล้ายกัน

ขั้นตอนแรกในขั้นตอนวิธีการดังกล่าวมักจะมีการคำนวณเวกเตอร์คุณลักษณะสำหรับแต่ละสัญญาณ: \Fi

ตัวอย่างเช่นเราอาจกำหนดให้เวกเตอร์คุณลักษณะเป็น: [width, max, max-min] ในกรณีนี้เราจะได้รับคุณสมบัติของเวกเตอร์ดังต่อไปนี้:

F1=[13,146,245]

F2=[15,145,223]

F3=[18,181,406]

F4=[18,189,408]

สิ่งสำคัญเมื่อตัดสินใจเลือกฟีเจอร์เวกเตอร์คือสัญญาณที่คล้ายกันจะได้รับฟีเจอร์เวกเตอร์ที่อยู่ใกล้กันและสัญญาณที่ต่างกันจะได้รับเวกเตอร์ฟีเจอร์ที่อยู่ห่างกัน

ในตัวอย่างข้างต้นเราจะได้รับ:

|F2F1|=22.1,|F3F1|=164.8

ดังนั้นเราจึงสรุปได้ว่าสัญญาณ 2 นั้นคล้ายคลึงกับสัญญาณ 1 มากกว่าสัญญาณ 3 มาก

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

สัมประสิทธิ์โคไซน์ไม่ต่อเนื่องในกรณีนี้คือ:

F1 = [94.2496  192.7706 -211.4520  -82.8782   11.2105]

F2 = [61.7481  230.3206 -114.1549 -129.2138  -65.9035]

F3 = [182.2051   18.6785 -595.3893  -46.9929 -236.3459]

F4 = [148.6924 -171.0035 -593.7428   16.8965 -223.8754]

ในกรณีนี้เราจะได้รับ:

|F2F1|=141.5,|F3F1|=498.0

อัตราส่วนไม่ค่อนข้างใหญ่เท่ากับเวกเตอร์คุณลักษณะที่เรียบง่ายด้านบน นี่หมายความว่าเวกเตอร์คุณลักษณะที่ง่ายกว่าดีกว่าหรือ

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

ตัวอย่างเช่น signal3 ถูกดึงออกมาจากพล็อตนี้ระหว่างตัวอย่างที่ 217 และ 234 สัญญาณที่ 4 ถูกแยกออกมาจากพล็อตอื่น

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

คุณสมบัติเวกเตอร์สามารถส่งไปยังอัลกอริทึมการจัดกลุ่มเช่น k- หมายถึงที่จะรวมกลุ่มสัญญาณด้วยเวกเตอร์คุณสมบัติใกล้กัน

มีใครบ้างไหมที่มีประสบการณ์ / คำแนะนำในการออกแบบเวกเตอร์ฟีเจอร์ที่สามารถแยกแยะสัญญาณรูปคลื่นได้หรือไม่?

อัลกอริทึมการจัดกลุ่มที่คุณจะใช้ด้วย

ขอบคุณล่วงหน้าสำหรับคำตอบ!


สิ่งที่เกี่ยวกับผลคูณดีของสัญญาณเข้าด้วยหนึ่งในเทมเพลต M คุณจะเลือกอันที่มีข้อผิดพลาดน้อยที่สุด สำหรับฉันแล้วฉันจะเป็นจุดเริ่มต้นของฉัน คุณเคยลองแบบนี้บ้างไหม?
Spacey

สวัสดีโมฮัมหมัด! ปัญหาคือฉันไม่ทราบรูปแบบของคลื่นล่วงหน้า ฉันสนใจสัญญาณทั้งหมดที่อยู่รอบ ๆ ยอดเขาและพวกเขาอาจมีหลายรูปแบบที่ฉันไม่ทราบล่วงหน้า
Andy

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

สวัสดี A_A! 1. ขนาดของเวกเตอร์จะลดลง ในกรณีของสัญญาณ 3 จาก 18 ถึง 5 เมื่อใช้สัมประสิทธิ์โคไซน์ไม่ต่อเนื่อง 2. มีการปรับให้เรียบ สัญญาณดังและฉันไม่สนใจความผันผวนอย่างรวดเร็ว
Andy

3
คนเรียนรู้ด้วยเครื่องจะโต้แย้งว่าคุณไม่ควรทิ้งข้อมูลใด ๆ - ระบบควรเรียนรู้ทุกสิ่ง แน่นอนว่าพวกเขาเป็นคนเดียวกับที่ออกแบบอัลกอริทึมที่ใช้เวลานับล้านปีในการทำงาน ในสาระสำคัญคุณต้องการทิ้งข้อมูลให้น้อยที่สุดเท่าที่จะทำได้และเรียนรู้เกี่ยวกับสิ่งที่เหลืออยู่ สิ่งนี้ทำให้ฉันเป็นปัญหาที่ควรทำในกรอบของ Bayesian (ตรงไปตรงมาเนื่องจากการประมวลสัญญาณส่วนใหญ่ควรเป็นทุกวันนี้) แต่นั่นไม่ได้หมายความว่าการทำงานในคุณสมบัติเด่นนั้นไม่สำคัญ
Henry Gomersall

คำตอบ:


2

คุณต้องการเพียงเกณฑ์วัตถุประสงค์เพื่อแยกสัญญาณหรือเป็นสิ่งสำคัญที่พวกเขามีความคล้ายคลึงกันเมื่อฟังโดยใครบางคน? แน่นอนว่าจะต้อง จำกัด ให้คุณส่งสัญญาณอีกเล็กน้อย (มากกว่า 1,000 ตัวอย่าง)

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