● STREAMING
NORMAL — BASELINE
breaths/min
RRR
BASE
WARN
ALERT
DANGER 30
CUSUM
REC
RECOVERY
SLEEP
SLEEP
HRV
HRV
ALL CLEAR
Loading…
ABNORMAL — EDEMA PROGRESSION
breaths/min
RRR
BASE
WARN
ALERT
DANGER 30
CUSUM
REC
RECOVERY
SLEEP
SLEEP
HRV
HRV
⚠️MONITORING
Loading…

อัลกอริทึมจำแนกความรุนแรง RRR ของแมว

ระบบวิเคราะห์แบบไฮบริด (Clinical-Statistical Hybrid) ที่ออกแบบมาเป็นพิเศษเพื่อติดตามอัตราการหายใจขณะพัก (Resting Respiratory Rate: RRR) ของแมว เพื่อตรวจจับภาวะน้ำท่วมปอดในระยะเริ่มต้นอย่างแม่นยำ พร้อมลดปัญหาการเตือนผิดพลาด (False Alarms)

บทสรุปผู้บริหาร (Executive Summary)

อัลกอริทึมของ SafeMeow พัฒนาขึ้นเพื่อตรวจสอบความผิดปกติของการหายใจในแมว (สำหรับพยากรณ์ภาวะน้ำท่วมปอด - Pulmonary Edema) โดยทั่วไปการตั้งเกณฑ์เตือนแบบคงที่มักทำให้เกิดปัญหาแจ้งเตือนผิดพลาด (เช่น แมวกำลังฝัน กำลังเลียขน หรือมีความตื่นเต้นชั่วคราว) SafeMeow จึงแก้ไขด้วย ระบบประเมินสองเกณฑ์ร่วมกัน (Dual-Criteria System) ซึ่งต้องพบทั้ง การเบี่ยงเบนจากค่าอ้างอิงปกติ (Static Baseline Deviation) และ แนวโน้มที่สูงขึ้นผิดปกติ (Trend Forecast) ก่อนจึงจะเริ่มยกระดับการเตือนภัย

ตัวชี้วัดหลัก (Core Metrics)

1. ค่าอ้างอิงปกติ (Baseline & SD)
คำนวณแยกตามรายตัวของแมวตัวนั้นๆ จากช่วงเวลาที่แมวมีสภาวะปกติสุขภาพดี:
Baseline = ค่าเฉลี่ย(RRR ช่วงปกติ)
SD = ส่วนเบี่ยงเบนมาตรฐาน(RRR ช่วงปกติ)
ช่วยสร้างโปรไฟล์สุขภาพเฉพาะตัวของแมวแต่ละตัวได้อย่างแม่นยำ
2. ดัชนีการเปลี่ยนแปลงสะสม (CUSUM)
การใช้แผนภูมิควบคุมผลรวมสะสม (Cumulative Sum) เพื่อติดตามการขยับสูงขึ้นอย่างเป็นระบบของ RRR เมื่อสะสมสูงขึ้นจนเกินเกณฑ์:
CUSUM (cu) ≥ 5.0
จะเป็นสัญญาณบ่งชี้ว่าอาจเริ่มเกิดการสะสมของของเหลวในปอดทีละนิด
3. ความน่าจะเป็นในการทะลุเกณฑ์ (Forecast)
ตัวแบบพยากรณ์อัจฉริยะที่ส่งออกมาเป็นค่าความน่าจะเป็นที่ RRR จะพุ่งทะลุเส้นขอบเขตอันตรายในระยะอันใกล้ แนวโน้มผิดปกติจะถูกเปิดใช้งานเมื่อ:
โอกาสในการพุ่งเกินเกณฑ์ (bp) ≥ 15%

ขั้นตอนการประมวลผลการแจ้งเตือน (Classification Logic)

สำหรับข้อมูล RRR ทุกๆ ข้อมูลที่อ่านเข้ามา อัลกอริทึมจะประเมินทั้ง โซนระดับ (Zones) (อิงจากส่วนเบี่ยงเบนทางสถิติและเกณฑ์ทางคลินิกสัตวแพทย์) ควบคู่กับ แนวโน้มการเปลี่ยนแปลง (Trends) (ค่า CUSUM และ โอกาสการพุ่งทะลุเกณฑ์)

🚨 Hard Alert
ระดับฉุกเฉิน: ทำงานทันทีเมื่อ ค่าเฉลี่ยการหายใจ (Rolling Mean: rm) ≥ 30 ครั้ง/นาที ซึ่งเป็นค่าเกณฑ์วิกฤตสากลของสัตวแพทย์ที่แสดงถึงภาวะหัวใจล้มเหลว (Heart Failure) ในแมว
⚠️ Alert
ระดับอันตราย: ทำงานเมื่อแมวอยู่ใน โซนอันตราย (Alert Zone) (rm ≥ Baseline + 3σ หรือเพิ่มขึ้นจากเดิม ≥ 30%) ร่วมกับ มี แนวโน้มอันตราย (Alert Trend) (มีโอกาสทะลุเกณฑ์ bp ≥ 15%)
⚠️ Warning
ระดับเฝ้าระวัง: ทำงานเมื่อแมวอยู่ใน โซนเตือนภัย (Warning Zone) (rm ≥ Baseline + 2σ หรือเพิ่มขึ้นจากเดิม ≥ 20%) ร่วมกับ มี แนวโน้มการสะสมค่าสูงขึ้น (Warning Trend) (มีค่า CUSUM cu ≥ 5.0)
✅ Normal
สภาวะปกติ: อัตราการหายใจขณะพักของแมวอยู่ในเกณฑ์เสถียรและปลอดภัย

การเขียนโปรแกรมใช้งาน (Code Implementation)

โค้ด JavaScript ที่ใช้ประมวลผลข้อมูลในหน้าแดชบอร์ดหลัก:

// อัปเดตระดับความรุนแรงตามอัลกอริทึมที่ปรับแต่งร่วมกับสัตวแพทย์
DATA.forEach(d => {
  // 1. ตรวจสอบโซนค่า (เช็กค่าเฉลี่ยเคลื่อนที่เทียบกับเกณฑ์สถิติและเกณฑ์คลินิกสัตวแพทย์)
  const inWarnZone = d.rm >= warnThreshold || d.rm >= clinWarnThreshold;
  const inAlertZone = d.rm >= alertThreshold || d.rm >= clinAlertThreshold;

  // 2. ตรวจสอบแนวโน้มการเปลี่ยนแปลง (ตรวจผลรวมสะสม CUSUM และอัตราพยากรณ์พุ่งทะลุ)
  const inWarnTrend = d.cu >= 5.0;
  const inAlertTrend = d.bp >= 0.15;

  // 3. การตัดสินใจร่วมสองเกณฑ์ (Dual-Criteria Classification)
  if (d.rm >= 30) {
    d.sev = 'hard_alert'; // ฉุกเฉินสูงสุด (เกณฑ์วิกฤตสัตวแพทย์)
  } else if (inAlertZone && inAlertTrend) {
    d.sev = 'alert';      // อันตราย: ค่าเกินเกณฑ์ร่วมกับแนวโน้มมีความน่าจะเป็นทะลุสูง
  } else if (inWarnZone && inWarnTrend) {
    d.sev = 'warning';    // เฝ้าระวัง: ค่าเกินเกณฑ์ร่วมกับดัชนี CUSUM สูงขึ้น
  } else {
    d.sev = 'normal';
  }
});