เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

เสียงที่ซ้ำกันหลายครั้ง

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

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

ใน workspace มี DataFrame สองชุด ได้แก่ normal และ abnormal ซึ่งมีรูปร่างเป็น (n_times_points, n_audio_files) และเก็บข้อมูลเสียงของการเต้นหัวใจหลายครั้ง นอกจากนี้ยังมีตัวแปร sfreq สำหรับความถี่การสุ่มตัวอย่าง และฟังก์ชันช่วยพล็อตกราฟ show_plot_and_make_titles() พร้อมใช้งานแล้ว

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Machine Learning สำหรับข้อมูล Time Series ใน Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • สร้างอาร์เรย์เวลาสำหรับไฟล์เสียงเหล่านี้ (ไฟล์เสียงทุกไฟล์มีความยาวเท่ากัน)
  • จากนั้นรวมค่าจาก DataFrame ทั้งสองชุดเข้าด้วยกัน (normal และ abnormal ตามลำดับนี้) เพื่อให้ได้อาร์เรย์เดียวที่มีรูปร่างเป็น (n_audio_files, n_times_points)
  • สุดท้าย ใช้โค้ดที่เตรียมไว้เพื่อวนลูปผ่านแต่ละรายการในลิสต์ / แกน แล้วพล็อตข้อมูลเสียงตามเวลาในออบเจ็กต์แกนที่สอดคล้องกัน
  • พล็อตเสียงหัวใจปกติในคอลัมน์ซ้าย และเสียงหัวใจผิดปกติในคอลัมน์ขวา

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

fig, axs = plt.subplots(3, 2, figsize=(15, 7), sharex=True, sharey=True)

# Calculate the time array
time = np.arange(____) / ____

# Stack the normal/abnormal audio so you can loop and plot
stacked_audio = np.hstack([____, ____]).T

# Loop through each audio file / ax object and plot
# .T.ravel() transposes the array, then unravels it into a 1-D vector for looping
for iaudio, ax in zip(stacked_audio, axs.T.ravel()):
    ax.plot(time, iaudio)
show_plot_and_make_titles()
แก้ไขและรันโค้ด