מערכת AI לקידוד אבחנות ICD-10: ארכיטקטורה ודיוק של 92-96%

ניתוח רשומות רפואיות באופן ידני גוזל זמן ובכל זאת יוצר אי-התאמות בקודים. אנו מפתחים ומתאימים לפי דרישה מערכת לקידוד אבחנות אוטומטי: כללים, אימון על התיוג שלכם, בקרה על רשומות שנויות במחלוקת. הפתרון מקצר את זמן הניתוח ושומר על דיוק ברמה של 92-96%.

תחומי פיתוח AI

שאלות נפוצות

העבודות האחרונות

  • פיתוח אפליקציית ווב עבור FEEDME
    פיתוח אפליקציית ווב עבור FEEDME
    1365
  • פיתוח חנות מקוונת לחברת FURNORO
    פיתוח חנות מקוונת לחברת FURNORO
    1330
  • עיצוב לוגו לחברת B2B Advance
    עיצוב לוגו לחברת B2B Advance
    776
  • פיתוח אפליקציית ווב עבור Enviok
    פיתוח אפליקציית ווב עבור Enviok
    1077
  • פיתוח לוגו חברת AIDER
    פיתוח לוגו חברת AIDER
    1022
  • פיתוח CRM עבור Chasseurs
    פיתוח CRM עבור Chasseurs
    1113

קידוד אוטומטי של אבחנות: היכן אובדת הדיוק

השרשרת «רישום הרופא → קוד ICD» נשברת לא בשלב הסטטיסטיקה, אלא בקלט. טקסט חופשי בתיק הרפואי נכתב לצורך הטיפול, ולא לצורך המסווג: קיצורים, מילים נרדפות, סימונים מקומיים, סדר מילים שתלוי בהרגל של מחלקה מסוימת. לאחר מכן אדם הופך את האבחנה לקוד, והוא משחזר את התמונה לפי הרישום, ולא לפי הבדיקה.

טעויות בקידוד ידני קשורות лишь במעט למיומנותו של המקודד. המקורות העיקריים — המבנה הרב-צירי של ICD-10, שבו אבחנה אחת מורכבת מכמה סעיפים, וקודים שנויים במחלוקת: מצבי גבול, שילובים של מחלה עיקרית ומחלה נלווית, בחירה בין תת-סעיף מפורט לסעיף «לא מפורט». אותו טקסט בדיוק שני אנשים שונים מתייגים אחרת — זו הנורמה בתחום, ולא מחדל.

צוואר הבקבוק של התיוג הוא התפוקה. כדי שהקוד יהיה ניתן לשחזור, יש לנרמל את הרישום: לפרוס ראשי תיבות, להפריד הקשר של שלילה («נשלל», «בספק», «בעבר») מקביעה, להבחין בין המחלה העיקרית לרקע.

בעבודה שוטפת אלה שעות של קריאה מונוטונית, והקשב יורד ככל שמתקרב סוף המשמרת: הפערים גדלים, ואיתם גדל היקף ההחזרות הידניות לקידוד מחדש.

קידוד אוטומטי של אבחנות מכוון בדיוק לפערים האלה, ולא לסטטיסטיקה בדיעבד. המודל קורא את הניסוח המקורי, מציע רשימה מדורגת של קודים עם ציון ביטחון לכל אחד, ומקרים שנויים במחלוקת עוברים לבדיקה אנושית — במקום ניתוח ידני טוטלי. נבחן כיצד זה בנוי והיכן עובר הגבול בין החלטה אוטומטית לבקרה מחייבת.

מה נותן הפתרון: מהירות ניתוח, דיוק, רשומות שנויות במחלוקת

המעגל פועל לא כ«נחש את הקוד לפי השורה», אלא כקו ייצור: נרמול טקסט הרישום, חילוץ ישויות קליניות, התאמה לסעיפים של ICD-10, דירוג קודי מועמדים לפי ביטחון. קוד מעל הסף עובר לאישור אוטומטי, מתחתיו — לתור לניתוח ידני. בזרימה רציפה זה מאפשר ניתוח רשומות מהיר פי 4-6 מהזנה ידנית.

הדיוק בקודים שאושרו אוטומטית — 92-96% התאמה למסקנת המקודד במדגם מוחזק. היתרה נוגעת בעיקר לאבחנות מורכבות: מחלה עיקרית בתוספת נלוות, קודים עם מאפיין נוסף, מקרים שבהם הניסוח השתנה במהלך הטיפול. שם קוד בודד אינו שלם, ולכן המערכת מחזירה סט קודים ומציינת איזה קטע ברישום מאשש כל אחד.

רשומות שנויות במחלוקת — 5-8% מהזרימה — אינן מנוחשות: אלה ניסוחים חסרים, קיצורים מקומיים, אזכורים סותרים בשדות שונים, קלט בכתב יד. הן עוברות למקודד עם הדגשת הקטע והמועמדים הקרובים, ולכן ההחלטה אורכת שניות במקום ניתוח מאפס.

הזמן שהתפנה אצל המקודד מוקדש בדיוק למקרים האלה ולעדכון כללי הניתוח, וכל החלטה שלו הופכת לדוגמה מתויגת — שיעור האישור האוטומטי עולה מחודש לחודש.

מצבי עבודה: כללים, למידה על תיוג, היברידי

המצבים נבדלים לא ב«אינטליגנציה» של המודל, אלא במקור הקוד ובמי שאחראי לטעות. כללי הקידוד של ICD נותנים תוצאה דטרמיניסטית בניסוחים טיפוסיים, למידה על תיוג מכלילה לטקסט החופשי של הרופא, ומצב היברידי משלב את שני המקורות. מבחירת המצב תלוי היכן בדיוק ייווצרו הטעויות וכמה רשומות יעברו לבדיקה ידנית של הקודים.

כיצד לבחור מצב

מצב מתי מתאים מגבלות
כללים ומילון מילים נרדפות לאבחנות זרימה אחידה, פרופיל מחלקה צר, דרישה להסביר כל קוד אינו מכסה ניסוחים שמחוץ למילון, הרחבת המילון — עבודה ידנית, התראות שווא על הומונים
למידה על תיוג ניסוחים שונים, קיים ארכיון עם קודים מאושרים נדרש היקף תיוג, רגיש לשינוי מהדורה של המסווג, קשה להסביר את ההחלטה לרופא
מצב היברידי מקורות מעורבים, נדרש דיוק גבוה עם עבודה ידנית מתונה שני מעגלים בתחזוקה, יש לנתח את הפערים ביניהם בנפרד

המצב ההיברידי בנוי כך: הכללים והמילון מספקים מועמד עם נימוק, המודל מדרג את האפשרויות ומסמן רשומות שבהן הביטחון שלו נמוך מהסף. מקרים כאלה עוברים לבדיקה ידנית של הקודים, והשאר מקודד אוטומטית.

שיעור הרשומות שהגיעו למומחה הוא מדד עבודה: הוא עולה בעת עדכון המסווג ומרמז היכן להשלים את המילון או התיוג.

שלבי ההטמעה: מביקורת רשומות ועד מסירה

העבודה מתנהלת בשלבים עוקבים: כל שלב נשען על התוצאה של הקודם, ולכן הבעיה נראית בשלב שלה ולא בקבלה. להלן סדר טיפוסי, שאנו מתאימים למעגל של הלקוח ולדרישות הגנת הנתונים.

  1. ביקורת רשומות רפואיות. אנחנו לוקחים חתך אנונימי לתקופה ובודקים באיזו צורה מגיעה האבחנה: טקסט חופשי, קיצורים, קודים שכבר הוזנו. בפלט — מפת איכות נתונים ורשימת מחלקות שהמערכת מחויבת להבחין ביניהן.

  2. תרשים עיבוד הנתונים. אנחנו מגדירים את מקור הרשומות — אינטגרציה עם מערכת המידע הרפואית או ייצוא מתוזמן, — את נקודות האנונימיזציה ואת סדר האחסון. את התרשים מתאמים עם האחראי על הנתונים האישיים.

  3. הגדרת הכללים. אנחנו אוספים מילוני מילים נרדפות וקיצורים, כללי עדיפות בין קודים קרובים, מאפיינים מפורטים מחייבים. זה מקבע את מה שהרופא מיישם אוטומטית ומסיר חלק מהפערים עוד לפני המודל.

  4. תיוג אמת המידה והלמידה. רופאים מומחים מתייגים מדגם אמת מידה, מקרים שנויים במחלוקת מנותחים בפורום, והמודל לומד על נתונים מוסכמים. תוצאת השלב — גרסה עם דיוק קבוע לפי מחלקות.

  5. בדיקה על מדגם מוחזק. אנחנו מריצים את המערכת על רשומות שהיא לא ראתה: בנפרד על אבחנות נפוצות, בנפרד על ניסוחים נדירים ומעורבים. את הפערים מנתחים ומתקנים או את הכללים או את הלמידה.

  6. מסירה לתפעול. אנחנו מוסרים נוהל לניתוח טעויות, ניטור איכות וסדר למידה משלימה, מדריכים את העובדים ונשארים בתמיכה.

כל שלב נסגר בתוצר — מפת נתונים, תרשים, סט כללים, דוח מדדים — שהלקוח מקבל ובודק.

ערכת המסירה: כללים, מילונים, נהלי בקרה

המודל הוא רק חלק מהמערכת. לצידו מקבל הלקוח ערכה שלפיה ניתן להפעיל ולתחזק קידוד אוטומטי של אבחנות בכוחות עצמו, ללא תלות מתמדת בנו. להלן מה שנותר בידיים לאחר המסירה.

  • סט כללי קידוד. כיצד לבחור אבחנה עיקרית, כיצד לקודד מצבים נלווים וסיבוכים, מה לעשות עם ניסוחים לא מפורטים. הכללים קובעים סדר עדיפויות ומפרטים במפורש מקרים שבהם המערכת מחויבת להעביר את ההחלטה לאדם.
  • מילון התאמות. טבלה בין ניסוחי הרופאים לקודי ICD-10: מילים נרדפות, קיצורים, שגיאות הקלדה טיפוסיות, דוגמאות מהפרקטיקה שלכם. מנוהל לפי גרסאות — רואים מה ומתי השתנה.
  • נוהל בקרת איכות. איזה שיעור מקרים עובר לבדיקה מדגמית, כיצד מנתחים פערים, באיזו ירידת דיוק מופעל עדכון מחדש של הכללים.
  • הוראות למקודדים. מה לעשות כשהמערכת מחזירה שתי אפשרויות קרובות, כיצד לתעד מקרה שנוי במחלוקת ולאן להפנות אותו.
  • תרשים האינטגרציה. הנקודות שבהן הקוד נכנס למערכת הרשומות, היכן הרופא מאשר או משנה את התוצאה, אילו נתונים מועברים ובאיזו צורה.
  • סדר העדכון. מי מכניס ניסוחים חדשים למילון, מי מאשר תיקונים בכללים וכיצד בודקים שהעדכון לא שבר מקרים שכבר עובדים.

ערכה כזו מאפשרת לשנות את הכללים למהדורה חדשה של המסווג או להסכמות פנימיות של הקליניקה בעצמכם — בלי לאמן מחדש את המודל בכל שלב.

פרקטיקה: דיוק ניתוח הרשומות לפני ואחרי שינוי הכללים

לפני השינוי כללי ניתוח האבחנות חיו בתוך הקוד: פירוט לכל תבנית רישום, מילון עם סעיפים כפולים וניסוחים חופפים. בעבודה השוטפת הדיוק על דוגמאות מוכנות נראה סביר, אבל על רשומות אמיתיות הוא צנח — המקודד תיקן ידנית כשליש מהאפיזודות.

בפרויקט קידוד אבחנות הוצאנו את הכללים מהקוד לסט נפרד שניתן לערוך, ואת המילון הבאנו להיררכיה של המהדורה הנוכחית של WHO: הסרנו כפילויות של סעיפים, קבענו עדיפות לתת-סעיפים מפורטים, ותיארנו כללים הקשריים לשילובי אבחנות.

המודל מחזיר קוד רק כשהוא נשען על טקסט הרישום — אם אין עוגן, הרשומה עוברת לניתוח אנושי, ולא מקבלת את הקוד הקרוב ביותר.

את המדדים לפני ואחרי חישבנו על אותה זרימה בדיוק. הדיוק עלה ל-92–96% בהתאם לפרופיל המחלקה, שיעור התיקונים הידניים קטן בערך פי שלושה, וסוג הטעות «הקוד אינו מאושש בטקסט» כמעט נעלם.

בקרה על מדגם מוחזק — רשומות שלא השתתפו לא בהגדרת הכללים ולא בתיקוני המילון: הפער מול מדגם העבודה אינו עולה על שתי נקודות, כלומר העלייה אינה התאמה לדוגמאות ספציפיות.

הכללים מנוהלים בגרסאות: כל שינוי מורץ על מדגם מוחזק לפני היציאה, והרגרסיה נראית לפני שהיא מגיעה למקודד. בדיוק זה שומר על הדיוק בזרימה השוטפת, ולא בדוח.

מה לעשות אם חלק מהאבחנות עובר לעיבוד ידני?

קידוד אוטומטי של אבחנות אינו חייב לכסות מאה אחוז מהרשומות — חלק תמיד עובר לעיבוד ידני של הקודים. השאלה אינה כיצד להסיר את האדם לחלוטין, אלא כמה רשומות הוא מנתח ובאיזה סדר. אם לא מסדירים את היתרה, התור לבדיקה גדל מהר יותר מהרווח שמגיע מהאוטומציה.

את זה מנהל סף הביטחון של המערכת. עבור כל רשומה מחזיר המודל קוד והערכת ביטחון עצמית: מעל הסף הרשומה עוברת לזרימה הראשית בלי מעורבות אדם, מתחתיו — לתור לבדיקה.

הסף אינו קבוע, אלא הגדרה עם מחיר ישיר: הזזה מטה מצמצמת את העיבוד הידני אך מעלה את שיעור הטעויות שיצופו מאוחר יותר; הזזה מעלה מפחיתה את הסיכון אך מעבירה למומחים יותר רשומות ממה שהם מנתחים במשמרת.

לכן את התור בונים לא לפי זמן ההגעה, אלא לפי סיכון. למעלה עולות רשומות שבהן המועמדים החלופיים קרובים בהערכה, שבהן מופיע קוד נדיר או ניסוח אבחנה חסר, ושבהן ניכר פער בין הטקסט לקוד הנבחר.

המומחה אינו מחפש קוד מאפס: הוא רואה כמה אפשרויות סבירות ביותר עם ציון על איזה קטע נשענה המערכת, ומאשר את הבחירה בשניות.

כך הופכת האוטומציה החלקית למצב עבודה, ולא לשלב ביניים. שלושה רבעים מהרשומות עוברים בלי אדם, היתרה מתחלקת בין המשמרות באופן צפוי, ושיעור ההחזרות לבדיקה חוזרת יורד — לא מפני שהמודל הפך לחסר שגיאות, אלא מפני שמקרים שנויים במחלוקת נתפסים לפני הייצוא. את הסף ואת כללי התור אנו קובעים בשלב התכנון, יחד עם מדדי העומס על המומחים.

שאלות נפוצות: נתונים, אינטגרציה, בקרת איכות

לפני ההערכה עולה אותו סט שאלות: מהיכן מגיעים הנתונים, כיצד הפתרון ישתלב במעגל הקיים ומי אחראי לאיכות התיוג. אנחנו עונים מראש — מזה תלויים גם הארכיטקטורה וגם היקף העבודה.

כיצד להטמיע זאת במערכת הרפואית הקיימת?

את ליבת מערכת הרשומות איננו משנים: בקלט מוזן טקסט המסקנה, ובפלט המערכת מחזירה קוד ICD-10 עם ביטחון והפניה לקטע שהשפיע עליו. הרופא רואה את ההצעה בחלון העבודה ומאשר או מתקן אותה — ניתן להשיק בהדרגה, ממחלקה אחת.

כיצד מוגנים הנתונים האישיים?

אנחנו מבצעים אנונימיזציה לפני הכניסה למודל: שם מלא, פרטי קשר ומספרי מסמכים נמחקים, והקשר למטופל נשמר בנפרד, במעגל של הלקוח. הגישה ליומנים מופרדת לפי תפקידים, והפניות נרשמות בלוג. בעת הצורך העיבוד נפרס כולו בתוך התשתית של הקליניקה.

מה קורה בעת עדכון מילון ה-ICD?

המילון מנוהל בגרסאות: המהדורה החדשה מורצת תחילה על מקרים היסטוריים עם קוד נכון ידוע, ורק לאחר מכן נכנסת לעבודה. הגרסה הקודמת נשמרת, ולכן החזרה לאחור אורכת דקות ואינה דורשת הגדרה מחדש.

כיצד אתם בודקים את איכות התיוג?

אנחנו אוספים מדגם אמת מידה: רופאים מומחים מתייגים מסקנות, מקרים שנויים במחלוקת מנותחים בפורום — כך נוצרת גבול מוסכם של התשובה הנכונה. את הדיוק מחשבים בנפרד עבור קבוצות אבחנות נדירות ומורכבות, שבהן הטעות יקרה מכול, ואת הפערים מוסיפים לסט הלמידה.

נדון במשימה ונחזור עם הערכה ותוכנית עבודה

כדי שהערכת פרויקט הקידוד תהיה ענייני, ולא «לפי תחושה», אנחנו זקוקים לחתך אמיתי של הנתונים שלכם. קידוד אוטומטי של אבחנות נבחן רק על הניסוחים שלכם: בייצוא ממוסד אחר יש לקסיקון אחר, קיצורים משלו וסדר שדות משלו. לכן ההתחלה היא דיון במשימה ובקורפוס הרשומות, ולא תיאור «באופן כללי».

מה לשלוח להתחלה:

  • 200–500 רשומות אנונימיות עם טקסט האבחנה — ואם קיים, עם קוד שכבר הוזן;
  • מילון הקודים שלפיו אתם עובדים: ICD-10 מלא, אזורי או פנימי;
  • 10–15 מקרים שנויים במחלוקת שבהם המקודדים חלקו בדעותיהם;
  • מבנה שדות הרישום: מה הרופא ממלא בשדה חובה ומה בטקסט חופשי;
  • דרישות למעגל העיבוד — האם מותר לצאת לרשת חיצונית וכיצד נשמרים הנתונים;
  • מדד יעד: איזה שיעור רשומות מותר לשלוח לבדיקה ידנית.

בתגובה נחזיר הערכת היקף העבודה ותוכנית הטמעה: תרשים עיבוד, היקף התיוג והלמידה המשלימה, ריצת בדיקה על הרשומות שלכם עם דיוק לפי קודים ושיעור סירובים, הרכב האינטגרציה עם מערכת הרשומות שלכם ושלבים עם נקודות קבלה.

אם בתום ריצת הבדיקה הדיוק במחלקות נדירות יהיה נמוך מהמוצהר, זה יהיה גלוי לפני תחילת השלב הראשי, ולא אחריו.