You are on page 1of 196

‫ מערכת בינה עסקית לניתוח בתי חולים בתוכנית‬:‫שם הפרויקט‬

‫ ברחבי ארה"ב‬Medicare ‫הבריאות של‬


Project Name: BI & Predictive Analytics systems for
Medicare’s health care organizations in the United States

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

‫‪2‬‬
‫תקציר מנהלים‬
‫מערכות הבריאות ברחבי ארה"ב השייכות לתוכנית ‪ Medicare‬מציגות נתונים רבים ומגוונים לגבי‬
‫השירות שהם נותנים‪ .‬תוכנית ‪ Medicare‬מחולקת למספר שירותי בריאות שונים בהתאם לביטוח של‬
‫אותו מבוטח‪ ,‬ומבטחת כ‪ 50-‬מיליון תושבים אמריקאים בכל שנה‪ Medicare .‬מנגישים את המידע הרב‬
‫הקיים במאגרי הארגון לעיון הציבור‪ .‬באתר זה ניתן למצוא נתונים רבים‪ ,‬החל מאילו בתי חולים שייכים‬
‫לתוכנית ועד להתמחויות הרופא לפי בית חולים‪.‬‬
‫באתר יש הצגה ויזואלית בסיסית של חלק מהנתונים הקיימים כמו הצגת מדדים על בתי החולים לפי‬
‫טבלאות שמסודרות עפ"י נושאים שונים‪ .‬המידע הקיים באתר מספק מידע בסיסי מאוד עפ"י טבלה‬
‫נבחרת אחת ולא יודע להצליב מידע‪ ,‬וזאת האפשרות היחידה שמצאנו ברשת בנוגע לבסיס הנתונים של‬
‫‪ Medicare‬ושליפת נתונים ממנו‪.‬‬
‫לכן אנחנו מזהים שקיים פער ביכולת לזהות את המצב הנוכחי של בתי החולים ברחבי ארצות הברית‬
‫מבחינת טבלאות המדדים שהם מופיעים בהם‪ ,‬אין הצלבות מידע והפקת תובנות וכן קיים פער בהצגת‬
‫מצב זה לציבור‪ .‬בנוסף‪ ,‬לא קיימת שום יכולת ניתוח וחיזוי לגבי מצב ב"ח בעתיד‪.‬‬
‫אחת התוצאות שנגרמות עקב חוסר בזיהוי תחזיות עתידיות היא סגירת בתי חולים בארה"ב‪ ,‬הנגרמת‬
‫מהערכה כספית לא נכונה של מבוטחי ‪ .Medicare‬ובפרויקט נתמקד הן במצב של כלל בתי החולים‪ ,‬והן‬
‫במצב של מספר בתי חולים ספציפיים מכיוון שהלקוחות שלנו הם מנהלי בתי חולים‪ ,‬מטופלים‬
‫ו‪( ,CMS-The Centers for Medicare & Medicaid Services -‬סוכנות פדרלית במחלקת הבריאות‬
‫של ארה"ב שמנהלת את תוכנית ‪ Medicare‬ועוד תוכניות רפואה אחרות)‪.‬‬
‫השלבים שנבצע כדי לגבש את תמונת המצב של בתי החולים הם‪ )1( :‬ריכוז כמויות משמעותיות של‬
‫נתונים שמגיעים ממאגר איסוף הנתונים שהתבצע ע"י )‪ Medicare. (2‬מניפולציה על הנתונים‪ )3( .‬בניית‬
‫תמונת מצב רובסטית לגבי בתי החולים‪ )4( .‬בניית מודלים‪.‬‬
‫הפרויקט יתמקד בכל מחזור החיים האנליטי החל מאיסוף הנתונים‪ ,‬טיובם‪ ,‬חקירתם‪ ,‬שימוש בהם‬
‫להבנת המצב הנוכחי‪ ,‬שימוש בנתונים לבניית מודלי חיזוי‪ ,‬בניית מודלי חיזוי והצגת כלל התובנות‬
‫בממשקים ויזואליים נוחים לשימוש‪.‬‬
‫הפרויקט יכלול מספר אבני בניין‪ :‬תהליכי איסוף המידע‪ ,‬תהליכי טיוב המידע‪ ,‬תהליכי הצגת נתוני עבר‬
‫והווה (‪ )BI‬ותהליכי הצגת תחזיות (‪.)Predictive Analytics‬‬

‫‪3‬‬
‫הערך אותו אנו רוצים להביא הוא הצגת תחזיות אמינות אשר הנהלות בתי החולים שישתמשו במערכת‬
‫יוכלו להשתמש בה לצורך היערכות נכונה לקראת שירותי הרפואה אותם הם מספקים וכך יוכלו לחסוך‬
‫הוצאות לא נכונות ונתינת שירותי רפואה איכותיים למטופליהם‪.‬‬
‫שימוש נוסף בנתונים ויצירת דוחות יהיה עבור מטופלים שיקבלו מידע רלוונטי שיעזור להם בקבלת‬
‫החלטות טיפול‪ .‬בנוסף‪ ,‬נוכל להביא ערך ל‪ CMS-‬בהצגת המצב הנוכחי בצורה ברורה‪ ,‬כך שיוכלו לדעת‬
‫כיצד לבקר את בתי החולים שתחת תוכנית ה‪ ,Medicare-‬כדי להבטיח טיפול רפואי איכותי‪.‬‬
‫במהלך כתיבת מסמך זה ניתחנו חלק משאלות המחקר המפורטות מטה‪ ,‬כמו כן הצלחנו לייצור מודל‬
‫אשר תחת תנאים מסויימים חוזה הכנסה נקייה של בית חולים בתוצאות מרשימות למדי‪ .‬באחת‬
‫מהשאלות הסקנו בנסיון לבצע קלסיפיקציה לציון בית חולים לפי מספר רב של מדדי הערכת ביצועים‪,‬‬
‫שיעורים למיניהן (כמו תמותה‪ ,‬ניתוחים וכו') ומצאנו שעבור ציונים מסויימים ניתן לבצע קלסיפיקציה‬
‫בעזרת המדדים והציונים‪.‬‬
‫במסמך זה בא לידי ביטוי בעיקר ניתוח האנליזות מקצה לקצה‪ .‬תחילת חקירת אלגוריתמים שונים‪ ,‬סינון‬
‫של מה שלא רלוונטי והעמקה בכאלה שיהיו יותר שימושיים עבורנו בהמשך‪ .‬התחלנו לעסוק בחיבוריות‬
‫של הקוד לשרת ובמימוש שאילתות‪ .‬בנוסף העמקנו את הסקירת ספרות ומצאנו עוד כלים שנוכל‬
‫להשתמש בהם‪.‬‬

‫‪4‬‬
‫תקציר מנהלים באנגלית‬

‫‪5‬‬
‫‪:‬תוכן עניינים‬

‫‪Contents‬‬
‫מבוא ‪12........................................................................................................‬‬ ‫‪1‬‬
‫מטרות יעדים ומדדים ‪13..................................................................................‬‬ ‫‪2‬‬
‫מטרת הפרויקט‪13......................................................................................... :‬‬ ‫‪2.1‬‬
‫יעדים‪13....................................................................................................... :‬‬ ‫‪2.2‬‬
‫מדדים‪13...................................................................................................... :‬‬ ‫‪2.3‬‬
‫סקירת ספרות ‪13...........................................................................................‬‬ ‫‪3‬‬
‫‪13......................................................................................................... ETL‬‬ ‫‪3.1‬‬
‫מדדי ביצוע מרכזיים ‪15.................................KPI: Key performance indicators‬‬ ‫‪3.2‬‬
‫בינה עסקית (‪16......................................................... )Business Intelligence‬‬ ‫‪3.3‬‬
‫אינטגרציית וחיזוי נתונים (‪17...............)Predictive Analytics & Data Integration‬‬ ‫‪3.4‬‬
‫כריית מידע ))‪19.......................................................................... Data Mining‬‬ ‫‪3.5‬‬
‫‪32.............................................. CRISP - Cross-industry standard process‬‬ ‫‪3.6‬‬
‫מחזור חיים אנליטי ( ‪33.................................................... )Analytical Lifecycle‬‬ ‫‪3.7‬‬
‫מערכות המלצה ובסיסי מערכות המלצה (‪35...................)Recommender System‬‬ ‫‪3.8‬‬
‫‪37............................................................................... Random forest – RF‬‬ ‫‪3.9‬‬
‫‪37..................................................................................................... Voting‬‬ ‫‪3.10‬‬
‫‪38.................................................................................................. Bagging‬‬ ‫‪3.11‬‬
‫‪39.................................................................................................. Stacking‬‬ ‫‪3.12‬‬
‫רגרסיה‪/‬סיווג אורדינלית ‪40.......................................... Ordinal Classification -‬‬ ‫‪3.13‬‬
‫‪41.............................................................................. HARDWARE SIZING‬‬ ‫‪3.14‬‬
‫תיאור מצב קיים ‪43.........................................................................................‬‬ ‫‪4‬‬
‫ניתוח חלופות מערכתיות ‪46.............................................................................‬‬ ‫‪5‬‬
‫חלופה ראשונה‪ :‬פיתוח עצמי כולל של המערכת ‪46.................................................‬‬ ‫‪5.1‬‬
‫חלופה שנייה‪ :‬שילוב של פיתוח עצמי עם מוצרי מדף ‪46..........................................‬‬ ‫‪5.2‬‬
‫חלופה שלישית‪ :‬הרכבת פתרון ממוצרי מדף וקסטומיזציה של המוצרים‪47.................‬‬ ‫‪5.3‬‬
‫טבלת חלופות ‪47.............................................................................................‬‬ ‫‪5.4‬‬
‫אפיון המערכת ‪48...........................................................................................‬‬ ‫‪6‬‬
‫‪6‬‬
‫טבלת בעלי עניין ‪48.........................................................................................‬‬ ‫‪6.1‬‬
‫דיאגרמת מקרי שימוש – ‪50............................................................... Use case‬‬ ‫‪6.2‬‬
‫דרישות פונקציונליות ‪51....................................................................................‬‬ ‫‪6.3‬‬
‫דרישות לא פונקציונליות ‪51...............................................................................‬‬ ‫‪6.4‬‬
‫תיכון המערכת ‪53...........................................................................................‬‬ ‫‪7‬‬
‫‪53.................................................................................... Network Diagram‬‬ ‫‪7.1‬‬
‫תרשים ‪54............................................................................................. ERD‬‬ ‫‪7.2‬‬
‫מילון נתונים ‪55...............................................................................................‬‬ ‫‪7.3‬‬
‫תכנית הפרויקט ‪64..........................................................................................‬‬ ‫‪8‬‬
‫‪ - Gant‬תכנית עבודה מעודכנת ‪64......................................................................‬‬ ‫‪8.1‬‬
‫‪68...................................................................................................... WBS‬‬ ‫‪8.2‬‬
‫ניהול סיכונים מעודכן ‪69....................................................................................‬‬ ‫‪8.3‬‬
‫מפת סיכונים ‪71..............................................................................................‬‬ ‫‪8.4‬‬
‫התוצר ‪72......................................................................................................‬‬ ‫‪9‬‬
‫תהליך ‪72............................................................................................... ETL‬‬ ‫‪9.1‬‬
‫שאלות המחקר ‪77..........................................................................................‬‬ ‫‪9.2‬‬
‫שאלת חיזוי ‪ :‬מציאת קבוצות של בתי חולים עם התנהגות כספית זהה‪77..................‬‬ ‫‪9.2.1‬‬
‫למידה מונחית – חיזוי בעזרת אלגוריתם רגרסיה לינארית ‪81...................................‬‬ ‫‪9.2.2‬‬
‫האם יש קשר בין מין הרופא לסוג ההתמחות שלו ‪83..............................................‬‬ ‫‪9.2.3‬‬
‫חיזוי דירוג כללי בבתי חולים בשנת ‪ 2020‬ע"ב פרמטרים קבועים ‪85..........................‬‬ ‫‪9.2.4‬‬
‫חיזוי אחוז ההוצאות בבית חולים עקב תביעות רפואיות ‪88.......................................‬‬ ‫‪9.2.5‬‬
‫שאלת מידול – האם ניתן לחזות ציון בית חולים על סמך מדדי ביצוע שונים‪92.............‬‬ ‫‪9.2.6‬‬
‫שאלת חיזוי – מהי הכנסה נקייה שנתית של בתי חולים נתון בשנה נתונה?‪106...........‬‬ ‫‪9.2.7‬‬
‫האם קיימת השפעה של מספר ההתמחויות שקיימות ו\או סוג ההתמחויות בבתי חולים‬ ‫‪9.2.8‬‬
‫‪116‬‬ ‫על מדד ציון בית חולים‪.‬‬
‫האם קיימת השפעה של מספר ההתמחויות שקיימות ו\או סוג ההתמחויות בבתי חולים‬ ‫‪9.2.9‬‬
‫על מדדי שביעות רצון המטופל‪116....................................................................................................... .‬‬
‫שאלת מידול – יצירת מודל לחיזוי אשפוזים חוזרים באמצעות רגרסיה לוגיסטית‪138....‬‬ ‫‪9.2.10‬‬
‫אב טיפוס ‪144.................................................................................................‬‬ ‫‪9.3‬‬
‫עמוד של המטופל ‪145......................................................................................‬‬ ‫‪9.3.1‬‬
‫‪7‬‬
‫עמוד של מנהל בית חולים ‪150...........................................................................‬‬ ‫‪9.3.2‬‬
‫עמוד של ארגון ‪152................................................................................. CMS‬‬ ‫‪9.3.3‬‬
‫בדיקות והערכה ‪155.......................................................................................‬‬ ‫‪10‬‬
‫תכנית בדיקות מערכת ‪155................................................................................‬‬ ‫‪10.1‬‬
‫היקף הבדיקות‪155......................................................................................... :‬‬ ‫‪10.2‬‬
‫סביבת הבדיקות‪155....................................................................................... :‬‬ ‫‪10.3‬‬
‫פירוט הבדיקות‪156........................................................................................ :‬‬ ‫‪10.4‬‬
‫סיום ‪161.......................................................................................................‬‬ ‫‪11‬‬
‫סיכום ומסקנות ‪161........................................................................................‬‬ ‫‪11.1‬‬
‫פיתוח עתידי ‪162............................................................................................‬‬ ‫‪11.2‬‬
‫רשימת מקורות ‪165........................................................................................‬‬ ‫‪12‬‬
‫נספחים ‪167..................................................................................................‬‬ ‫‪13‬‬
‫נספח ‪ – 1‬תכנית בדיקות מערכת ‪167........................STP – System Test Plan -‬‬ ‫‪13.1‬‬
‫נספח ‪ – 2‬תכנית בדיקות מערכת ‪169.......................STR – Software Test Results -‬‬ ‫‪13.2‬‬
‫נספחים שאלת חיזוי ציון בית חולים ‪170....................................................................‬‬ ‫‪13.3‬‬
‫נספחים שאלת חיזוי ‪172......................................................................................‬‬ ‫‪13.4‬‬
‫נספחים שאלת מדדים בתי חולים ‪178........................................................................‬‬ ‫‪13.5‬‬

‫‪8‬‬
‫‪:‬רשימת איורים‪ ,‬טבלאות וגרפים‬

‫‪ ‬‬ ‫גרף‬ ‫עמוד‬ ‫‪ ‬‬ ‫עמוד טבלה‬


‫‪1‬‬ ‫‪ ‬‬ ‫‪1‬‬ ‫‪ ‬‬
‫‪2‬‬ ‫‪ ‬‬ ‫‪2‬‬ ‫‪ ‬‬
‫‪3‬‬ ‫‪ ‬‬ ‫‪3‬‬ ‫‪ ‬‬
‫‪4‬‬ ‫‪ ‬‬ ‫‪4‬‬ ‫‪ ‬‬
‫‪5‬‬ ‫‪ ‬‬
‫‪6‬‬ ‫‪ ‬‬
‫‪7‬‬ ‫‪ ‬‬
‫‪8‬‬ ‫‪ ‬‬
‫‪9‬‬ ‫‪ ‬‬
‫‪10‬‬ ‫‪ ‬‬
‫‪11‬‬ ‫‪ ‬‬
‫‪12‬‬ ‫‪ ‬‬
‫‪13‬‬ ‫‪ ‬‬
‫‪14‬‬ ‫‪ ‬‬
‫‪15‬‬ ‫‪ ‬‬
‫‪16‬‬ ‫‪ ‬‬
‫‪17‬‬ ‫‪ ‬‬
‫‪18‬‬ ‫‪ ‬‬
‫‪19‬‬ ‫‪ ‬‬
‫‪20‬‬ ‫‪ ‬‬
‫‪21‬‬ ‫‪ ‬‬
‫‪22‬‬ ‫‪ ‬‬
‫‪23‬‬ ‫‪ ‬‬
‫‪24‬‬ ‫‪ ‬‬
‫‪25‬‬ ‫‪ ‬‬
‫‪26‬‬ ‫‪ ‬‬

‫‪ ‬‬ ‫נוסחה‬ ‫עמוד‬


‫‪1‬‬ ‫‪ ‬‬
‫‪2‬‬ ‫‪ ‬‬
‫‪9 3‬‬ ‫‪ ‬‬
‫‪4‬‬ ‫‪ ‬‬
‫‪5‬‬ ‫‪ ‬‬
‫‪6‬‬ ‫‪ ‬‬
‫‪7‬‬ ‫‪ ‬‬
‫‪8‬‬ ‫‪ ‬‬
‫‪9‬‬ ‫‪ ‬‬
‫‪10‬‬ ‫‪ ‬‬
10
‫מילון מונחים‬

‫מונחים מתחום הרפואה‬


‫‪: Medicare‬‬
‫תוכנית ביטוח לאומית חברתית המנוהלת על ידי הממשל הפדרלי של ארצות הברית מאז ‪.1965‬‬
‫התוכנית מבטיחה גישה לביטוח בריאות לאמריקאים בגילאי ‪ 65‬ומעלה‪ ,‬צעירים עם מוגבלויות ולאנשים‬
‫עם מחלות כליה סופניות‪.‬‬

‫‪.CMS - Centers for Medicare & Medicaid Services‬‬


‫סוכנות פדרלית במחלקת הבריאות של ארה"ב שמנהלת את תוכנית ‪ Medicare‬ועוד תוכניות רפואה‬
‫אחרות)‬

‫מונחים מתחום הבינה העסקית‬


‫‪:ETL - Extract, Transform, Load‬‬
‫תהליך מבוסס תכנה אשר מטרתו היא העברה ואינטגרציה של נתונים בין מערכות‪.‬‬

‫‪:KPI - Key Performance Indicators‬‬


‫מדדי ביצוע מרכזיים אשר על פיהם מודד הארגון את ביצועיו‪.‬‬

‫‪:API - Application Programming Interface‬‬


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

‫‪11‬‬
‫מבוא‬ ‫‪1‬‬

‫פרויקט זה עוסק במחקר של נתונים בתחום עולם ה‪ Medicare -‬בארה"ב‪ ,‬ניתוחם לצורך קבלת תובנות‬
‫עסקיות והצגתם בצורת דוחות (מלל וויזואליזציה דרך פלטפורמה אטרקטיבית של ‪)Power BI‬‬
‫למשתמשים השונים (עובד ‪ ,CMS‬מנהל בית חולים‪ ,‬ומטופל)‪ .‬הנתונים הינם ממשלתיים ונגישים לציבור‬
‫דרך האתר ‪./https://data.medicare.gov‬‬
‫המערכת נועדה לספק לכל אחד מהמשתמשים תמונת מצב שונה שתפורט עליה בהמשך‪.‬‬

‫ייחודיות הפתרון שלנו אינו דווקא מהיותו בעל טכנולוגיות שלא נראו עד כה‪ ,‬או מערכות ‪ BI‬מתקדמות‪ ,‬כי‬
‫אלה שילוב של מערכת ‪ BI‬איכותית אל מול הזדמנות עסקית בתוך עולם עשיר באפשרויות עסקיות‪ .‬כמו‬
‫כן במהלך הסקירה שלנו לא נמצאה מערכת דומה המציגה את מצבו הנוכחי של ‪ Medicare‬ומציעה‬
‫תחזיות עתידיות לפי משתמשים כמו שאנחנו מאפשרים‪.‬‬

‫‪12‬‬
‫מטרות יעדים ומדדים‬ ‫‪2‬‬

‫מטרת הפרויקט‪:‬‬ ‫‪2.1‬‬


‫ריכוז‪ ,‬ייצור וחיזוי תמונת מצב עדכנית ועתידית לגבי בתי החולים של ‪.Medicare‬‬ ‫‪2.1.1‬‬

‫יעדים‪:‬‬ ‫‪2.2‬‬
‫יעד ‪ 1‬יצירת מערכת ‪ BI‬אשר תציג את התוצרים והתובנות בצורה ויזואלית‪.‬‬ ‫‪2.1.2‬‬
‫יעד ‪ 2‬בניית תהליך ‪ ETL‬אשר יפיק תוצרים התומכים ביעדי הפרויקט‪.‬‬ ‫‪2.1.3‬‬
‫יעד ‪ 3‬מציאת ויצירת אינדיקטורים אשר מאפיינים את בתי החולים במצב הנתון‪.‬‬ ‫‪2.1.4‬‬
‫יעד ‪ 4‬בניית מודלי חיזוי אשר יאפשרו מענה על שאלות הנוגעות למצבו העתידי של בתי החולים‪.‬‬ ‫‪2.1.5‬‬

‫מדדים‪:‬‬ ‫‪2.3‬‬
‫עבור יעד ‪ :1‬כ‪ 10-‬אופציות (סה"כ לכל המטרות) ויזואליות להצגת הנתונים‪.‬‬ ‫‪1.1.1‬‬
‫עבור יעד ‪ :2‬צמצום של ‪ 50%‬ויותר מהטבלאות הקיימות‪.‬‬ ‫‪1.1.2‬‬
‫התמקדות רק בבתי חולים מכלל השירותים שתחת ‪.Medicare‬‬ ‫‪1.1.3‬‬
‫עבור יעדים ‪ 2‬ו‪ :3-‬התאמה של לפחות ‪ 80%‬בין האינדיקטורים לבין המצב הנוכחי‪,‬‬ ‫‪1.1.4‬‬
‫בעזרת מבחן בדיקת השערות‪.‬‬
‫עבור יעד ‪ :4‬אחוז דיוק של לפחות ‪ 75%‬בחיזוי הנתונים על פי מדד ‪.ROC‬‬ ‫‪1.1.5‬‬
‫מדדים לפי ‪:Confusion matrix‬‬ ‫‪1.1.6‬‬
‫‪ :Sensitivity‬לפחות ‪.70%‬‬ ‫●‬
‫‪ :Accuracy‬לפחות ‪.70%‬‬ ‫●‬
‫‪ :Precision‬לפחות ‪.75%‬‬ ‫●‬

‫‪13‬‬
‫סקירת ספרות‬ ‫‪3‬‬

‫‪ETL‬‬ ‫‪3.1‬‬
‫שלבי הוצאת נתונים מקבצי המקור החילוץ‪-‬טרנספורמציה‪-‬טעינה הם חלקים של תהליך האחראי על‬
‫הפקת נתונים ממקורות שונים‪ ,‬ניקוי‪ ,‬התאמה אישית‪ ,‬סידור‪/‬עיצוב מחדש‪ ,‬אינטגרציה‪ ,‬וכן על הכנסתם‬
‫לתוך מחסן הנתונים‪ .‬בניית תהליך ‪ ETL‬היא אחת המשימות הגדולות ביותר בבניית מחסן נתונים‬
‫ועבורנו המשימה הגדולה ביותר בתחילת הפרויקט‪ .‬הסיבה ששלב זה הוא אחת מהמשימות הכבדות‬
‫בכל פרויקט ‪ BI‬ובפרט אצלנו‪ ,‬היא שיש לקחת בחשבון גורמים רבים שלעיתים אינם ידועים בשלב בניית‬
‫התהליך וכאשר בונים תהליך בצורה לא נכונה עתיד הפרויקט יהיה לא מדויק כרצוי‪ .‬לדוגמא‪ -‬מה יהיו כל‬
‫טבלאות היעד‪ .‬תכנון התהליך בצורה שלא ידרוש לאחר סיומו שינויים גדולים דורשת שיתוף פעולה בין‬
‫כל הגורמים הנוגעים במערכת וכן הגדרת גבולות גזרה‪ .‬מסיבות אלה תהליך זה הוא מורכב‪ ,‬גוזל את‬
‫מירב הזמן של הפרויקט תוך מאמצי יישום‪ ,‬עלויות‪ ,‬ומשאבים‪ .‬תהליך ה‪ ETL-‬משמש כאבן פינה‬
‫במערכות בינה עסקית ואיכותו תקבע בהכרח את איכות המידע והתובנות הנובעות מהמערכת‪ .‬כיום‬
‫קיימות ‪ 2‬שיטות פופולריות לעדכון ואחסון מחסן הנתונים‪ :Real Time :‬ביצוע הקלט‪ ,‬העיבוד‪ ,‬הפלט‬
‫והמשוב בשלב אחד‪ ,‬בפעולה מתמשכת‪ .‬שיטה המתאימה לנתונים אשר החשיבות לעדכנם בזמן אמת‬
‫היא קריטית‪ .‬אצווה‪ :‬עיבוד תקופתי של קבוצת טרנזקציות‪ ,‬תהליך ארוך המתאים יותר לארגונים גדולים‪.‬‬
‫ישנו פער בזמנים בין הקלט‪ ,‬העיבוד והפלט‪ .‬לדוגמא‪ ,‬הזנת שירות לחולה‪/‬משתמש‪ ,‬שימוש בתרופה‪.‬‬
‫שיטה זו יותר רלוונטית אצלנו בפרויקט‪.‬‬

‫איור ‪ 1‬תיאור כללי של תהליך ‪ETL‬‬

‫‪14‬‬
‫תהליך ‪ ETL‬מורכב משלושה שלבים רצופים ‪:‬‬
‫הוצאת נתונים ‪/‬חילוץ (‪:)Extract‬‬ ‫●‬

‫שלב החילוץ אחראי על חילוץ נתונים ממערכות המקור השונות‪ .‬לכל מקור נתונים יש את המאפיינים‬
‫הייחודיים שלו‪ ,‬אשר צריכים להיות מנוהלים על מנת לחלץ ביעילות נתונים עבור תהליך ‪ .ETL‬התהליך‬
‫צריך לשלב ביעילות מערכות בעלות פלטפורמות שונות‪ ,‬כגון מערכות לניהול מסדי נתונים‪ ,‬מערכות‬
‫הפעלה שונות ופרוטוקולי תקשורת שונים‪.‬‬

‫טרנספורמציה ((‪:Transform‬‬ ‫●‬

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

‫טעינה (‪:)Load‬‬ ‫●‬

‫טעינת נתונים למבנה הרב‪-‬ממדי של היעד היא השלב הסופי‪ .‬בשלב זה‪ ,‬הנתונים‪ ,‬שחולצו ושונו בהתאם‬
‫להגדרות שלנו‪ ,‬נכנסים לתוך מבנים ממדיים ונגישים למשתמשי הקצה וליישומי‬
‫המערכת‪ .‬נצטרך לוודא בשלב זה שזמני הריצה של העיבודים עומדים בכלים העומדים לרשותנו‪)1( .‬‬

‫מדדי ביצוע מרכזיים ‪KPI: Key performance indicators‬‬ ‫‪3.2‬‬


‫עולם העסקים המודרני‪ ,‬בו המידע הפך להיות אחד המשאבים החשובים ביותר עבור הארגונים אילץ‬
‫ארגונים רבים למדוד את הצלחתם בצורות נוספות מעבר למדדים הכספיים המסורתיים‪ .‬המדדים אשר‬
‫נקבעים כ‪ ,KPI-‬הם על פי רוב יעדים אסטרטגיים של הארגון ולכן שונים מארגון לארגון ועוזרים לכמת‬
‫את התקדמות הארגון לעבר מטרותיו האסטרטגיות‪ .‬על מנת לנתח בצורה יעילה את מדדי הביצוע‪ ,‬יש‬
‫להבין לעומק את התהליך העסקי שעובר בארגון‪ .‬ללא הבנת התהליך במלואו מדידת הביצועים לא תהיה‬
‫אפקטיבית משום שהיא עשויה להצביע על חלק מסוים בתהליך שאינו משליך על התמונה המלאה‪.‬‬

‫‪15‬‬
‫איור ‪ :2‬תיאור כיצד מחלקות בארגון יכולות להשתמש ב ‪-KPI‬‬

‫לאחר שהתהליך העסקי נותח במלואו‪ ,‬יש לבחור את מדדי הביצוע כך שיתאימו ליחידות השונות‬
‫העוסקות בו‪.‬‬
‫דרך פשוטה לבדוק אם ‪ KPI‬יכול לשמש כראוי או מציע נתונים משמעותיים היא דרך מסנן ‪ SMART‬בו‬
‫כל מדד צריך ‪:‬‬
‫מטרה ספציפית (‪.)Specific‬‬ ‫‪-‬‬
‫דרך למדוד את התקדמות המטרה (‪.)Measure‬‬ ‫‪-‬‬
‫מטרות ריאליסטיות (‪.)Attainable‬‬ ‫‪-‬‬
‫רלוונטיות לחברה (‪.)Relevance‬‬ ‫‪-‬‬
‫מסגרת זמן הגיוני עבור החברה (‪.)Timeframe‬‬ ‫‪-‬‬

‫בסופו של דבר ייתכן כי ‪ KPI‬ייתן מעט נתונים פחות מעניינים‪ ,‬אך בשילוב של כלל המדדים הוא יספק‬
‫עבורנו תמונה מלאה יותר‪]2[ .‬‬

‫בינה עסקית (‪)Business Intelligence‬‬ ‫‪3.3‬‬


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

‫איור ‪ :3‬מעגל החיים של בינה עסקית‪:‬‬

‫‪Analysis->Reports->Scorecards->Collaboratibe BI->Mobile BI->Asvanced analytics&Visualization->Dashboards -‬‬


‫‪>Real time Monitoring->and so on‬‬

‫אינטגרציית וחיזוי נתונים (‪)Predictive Analytics & Data Integration‬‬ ‫‪3.4‬‬


‫אינטגרציית נתונים היא תכונה המהוות את עמוד התווך של מערכות ‪ CRM‬ו‪ ERP-‬ובעלת חשיבות‬
‫קריטית בתהליכי מיזוג של מסדי נתונים‪ .‬אינטגרציית נתונים מחייבת מידע על מיקום ומשמעות מקורות‬
‫הנתונים‪ ,‬הבנת ערכי הנתונים‪ ,‬יכולת המערכת ליצר מידע‪-‬על בהיעדר הנתונים‪ ,‬ניקוי והעשרת נתונים‬
‫והעברת נתונים‪.‬‬
‫חיזוי הנתונים הינו תחום סטטיסטי שעוסק בחילוץ מידע מנתונים קיימים ושימוש בו כדי לחזות מגמות‬
‫ודפוסי התנהגות‪ .‬תחום זה כולל למידת מכונה‪ ,‬בינה מלאכותית‪ ,‬כריית מידע‪ .‬הליבה של האנליזה‬
‫מתבססת על לכידת יחסים בין משתנים מסבירים לבין המשתנים מן ההתרחשויות בעבר כדי לחזות את‬
‫התוצאה הבלתי ידועה‪ ,‬אך הדיוק של התוצאה תהיה תלויה במידה רבה על רמת ניתוח הנתונים‬
‫ואיכותם‪.‬‬
‫‪17‬‬
‫איור ‪ : 4‬תהליך חיזוי נתונים‬

‫‪ 4‬השלבים בחיזוי הנתונים עפ"י איור ‪:4‬‬

‫‪ :Pull‬חילוץ נתונים רלוונטיים מהמקורות‪.‬‬ ‫‪-‬‬


‫‪ :Prepare‬שלב הכנת הנתונים (טיובם וניקיונם)‪.‬‬ ‫‪-‬‬
‫‪ :Pick‬בחירת המידע הרצוי לחיזוי‪.‬‬ ‫‪-‬‬
‫‪ :Predict‬יצירת אלגוריתמים לחיזוי‪.‬‬ ‫‪-‬‬

‫‪18‬‬
‫כריית מידע ‪))Data Mining‬‬ ‫‪3.5‬‬
‫הפעלת אלגוריתם לצורך גילוי מידע הטמון בבסיסי נתונים קיימים והסקת מקנות מהצלבתו‪ .‬גילוי ידע‬
‫בבסיסי נתונים הוא תהליך שנועד לחקור ולנתח כמות גדולה של מידע באמצעים אוטומטיים ככל שניתן‬
‫כדי לגלות דפוסים תקפים חדשים‪ ,‬שימושיים ובעלי משמעות‪.‬‬
‫באמצעות כריית מידע ניתן לבצע ניתוח אנליטי מקוון אשר זו טכנולוגיה שמשמשת לארגון מסדי נתונים‬
‫גדולים ותומכת בבינה עסקית‪ ,‬במטרה ליצור דו"חות מנתונים רב‪-‬ממדיים‪ .‬את הנתונים ניתן לסדר‪,‬‬
‫למיין‪ ,‬לסנן‪ ,‬לבצע חישובים מתמטיים‪ ,‬לזהות מגמות‪.‬‬

‫נרחיב על מספר טכניקות של כריית מידע ‪:‬‬


‫רגרסיה ליניארית – שיטה למציאת הפרמטרים של הקשר בין המשתנה התלוי למשתנה הבלתי תלוי‪.‬‬
‫מטרתה לבחור את הפרמטרים של המודל ע"מ למזער את סכום השגיאות בריבוע‪.‬‬
‫רשת עצבית מלאכותית – טכניקת מידול מתוחכמת לא לינארית המסוגלת לייצר פונקציות מורכבות‪,‬‬
‫המיושמת על בעיות של חיזוי‪ ,‬סיווג או שליטה במגוון רחב של תחומים‪ .‬השימוש בטכניקה כאשר אופיו‬
‫המדויק של הקשר בין התשומות והתפוקות אינו ידוע‪]3[ .‬‬
‫מודל הורדת מימד ' ‪ - 'PCA- Principal Component Analysis‬ניתוח גורמים ראשיים היא שיטה‬
‫סטטיסטית להתמרה ליניארית של נתונים למערכת קואורדינטות חדשה שבה המידע בקואורדינטות‬
‫השונות הוא אורתוגונלי ובעל שונות הולכת וקטנה‪ .‬שימוש נפוץ בשיטה הוא לצורך מציאת ייצוג מממד‬
‫נמוך למידע מממד גבוה (תהליך הנקרא הורדת ממד)‪.‬‬
‫בחירת מאפיינים (‪ – )Feature selection‬כחלק מתהליך הורדת מימד ( ‪)Dimensionality reduction‬‬
‫שהוא תהליך של צמצום מספר משתנים מתוך כלל המידע על מנת לשמר כמה שיותר מהמשמעות של‬
‫המידע עצמו‪ .‬נבצע ‪ Feature selection‬שזאת גישה בה ננסה לבחור תת‪-‬קבוצה של משתנים מתוך‬
‫כלל המשתנים‪ ,‬לתת הקבוצה הזאת נקרא מאפיין (‪ .)Feature‬המטרה בגישה זאת היא לבחור את‬
‫המאפיינים שמייצגים בצורה אופטימלית את המידע‪.‬‬
‫היתרונות של הורדת מימד‪]4[ :‬‬
‫הורדת נפח האחסון הנדרש על מנת לאחסן את המידע‪.‬‬ ‫‪o‬‬
‫הורדה של מידע עודף גורמת לביצועים טובים יותר באלגוריתמים של‪ ‬למידת מכונה‪.‬‬ ‫‪o‬‬

‫‪19‬‬
‫קל יותר לייצר ויזואליזצית של מידע כאשר מבטאים אותו במספר מועט של ממדים‪ ,‬כמו‬ ‫‪o‬‬
‫בגרף דו‪-‬ממדי או תלת‪-‬ממדי‪.‬‬
‫עץ החלטה‪– Decision Tree ,‬‬
‫מודל חיזוי בתחומי הסטטיסטיקה‪ ,‬כריית נתונים והלמידה החישובית המספק מיפוי בין תצפיות לערכים‬
‫המתאימים עבורן‪ .‬עץ החלטה יכול לשמש כמודל חיזוי‪ ,‬הממפה תצפיות על פריט ויוצר מסקנות על ערך‬
‫היעד של הפריט‪ .‬שמות תיאוריים יותר עבור עץ ההחלטות הם עצי סיווג או עצי רגרסיה‪ .‬במבנה של‬
‫עצים אלה‪ ,‬עלים מייצגים סיווגים אפשריים וענפים מייצגים צירופים של תכונות אשר יובילו למחלקות‬
‫הסיווג‪.‬‬
‫בניתוח החלטה‪ ,‬עץ ההחלטה יכול לשמש לצורך הדמיה ויזואלית ובנוסף‪ ,‬לקבל את ההחלטות‪ .‬בכריית‬
‫נתונים‪ ,‬עץ החלטה מתאר את הנתונים‪ ,‬אך לא את ההחלטות‪ .‬לעומת זאת‪ ,‬עץ לקבלת החלטות יכול‬
‫לקבל משתנה כניסה מסוים ולייצר החלטה בהתאם לנתונים‪.‬‬
‫עצי החלטה מופעלים על תצפיות מהצורה‬
‫הם מאפייני התצפית ו ‪ Y -‬הוא הערך המתאים עבור תצפית זו (ערך המטרה שאותו האלגוריתם לומד)‪.‬‬
‫באיור הבא ניתן לראות לדוגמא עץ החלטה המציג את שיעורי ההישרדות מבין נוסעי הספינה טיטאניק‪.‬‬
‫‪ sibsp‬הוא מספר קרובי המשפחה על סיפון האונייה‪ .‬הסיווג בכל עלה מייצג את מרבית הדוגמאות‬
‫המשויכות לעלה זה‪ .‬המספרים המופיעים תחת כל עלה מציינים את ההסתברות להינצל ואת שיעור‬
‫המופעים של התצפיות המתאימות לעלה מתוך כלל התצפיות באחוזים‪.‬‬

‫איור ‪ -1‬עץ החלטה‪.‬‬

‫‪20‬‬
‫רשת עצבית מלאכותית‪,‬רשת נוירונים‪– )ANN – Artificial Neural Network ( ,‬‬
‫רשת נוירונים או רשת קשרית הוא מודל מתמטי חישובי שפותח בהשראת תהליכים מוחיים או‬
‫קוגניטיביים המתרחשים ברשת עצבית טבעית ומשמש במסגרת למידת מכונה‪ .‬רשת מסוג זה מכילה‬
‫בדרך כלל מספר רב של יחידות מידע (קלט ופלט) המקושרות זו לזו‪ ,‬קשרים שלעיתים קרובות עוברים‬
‫דרך יחידות מידע "חבויות" (‪ .)Hidden Layer‬צורת הקישור בין היחידות‪ ,‬המכילה מידע על חוזק‬
‫הקשר‪ ,‬מדמה את אופן חיבור הנוירונים במוח‪ .‬השימוש ברשתות עצביות מלאכותיות נפוץ בעיקר‬
‫במדעים קוגניטיביים‪ ,‬ובמערכות תוכנה שונות ‪ -‬בהן‪ :‬מערכות רבות של אינטליגנציה מלאכותית‬
‫המבצעות משימות מגוונות ‪ -‬זיהוי תווים‪ ,‬זיהוי פנים‪ ,‬זיהוי כתב יד‪ ,‬חיזוי שוק ההון‪ ,‬מערכת זיהוי דיבור‪,‬‬
‫זיהוי תמונה‪ ,‬ניתוח טקסט ועוד‪.‬‬

‫איור ‪ - 2‬תרשים המדגים את אופן הפעולה של רשת עצבית מלאכותית‪.‬‬

‫מורד הגרדיאנט ‪ - Gradient descent ,‬היא שיטת אופטימיזציה איטרטיבית מסדר ראשון למציאת‬
‫מינימום מקומי של פונקציה‪ .‬בשיטה זו‪ ,‬נעשה צעד נגדי לגרדיאנט ביחס לנקודה הנוכחית‪ .‬לעומת זאת‪,‬‬
‫אם נעשה צעדים בכיוון של הגרדיאנט נמצא את המקסימום המקומי של הפונקציה‪ .‬השיטה עובדת על‬
‫שדה סקלרי של נתונים‪ .‬שדה סקלרי הוא מרחב בו כל נקודה מורכבת מכמה מספרים המייצגים נתונים‬
‫שונים‪ .‬מרחב זה יכול להיות בעל מספר רב של ממדים כך שכל מימד מייצג קטגוריה של ערכים‪ .‬דוגמה‬
‫לשדה סקלרי בעל שלושה ממדים הוא מפה טופוגרפית בה יש אורך‪ ,‬רוחב וגובה‪ .‬לפי השיטה‬
‫משתמשים בגרדיאנט‪ ,‬שהוא כלי מתמטי וקטורי‪ ,‬כלומר בעל כיוון‪ ,‬המאפשר למצוא את הכיוון אליו‬
‫הנגזרת מקסימלית דהיינו הכיוון בו נמצא השינוי הדרסטי ביותר בין הנתונים סביב נקודה מסוימת‪.‬‬
‫במפה הטופוגרפית יהווה הגרדיאנט את הכיוון בו זווית המדרון מקסימלית‪ ,‬והאלגוריתם מוצא את הדרך‬
‫האופטימלית להגיע למינימום בשדה הסקלרי‪ ,‬שהוא בהקבלה הנקודה הנמוכה ביותר במפה‪.‬‬

‫‪21‬‬
‫באיור הבא ניתן לראות אופטימיזציה איטרטיבית באמצעות ‪ .Gradient descent‬על פי הגרדיאנט‬
‫נקבעת נקודת השערוך הבאה כשבכל שלב מתקדמים לכיוון נקודת האופטימום‪ .‬הקווים הכחולים הם‬
‫עקומת גובה קו‪ .‬סדרת הנקודות הנבחרות ‪ x‬מצוינות כשחץ אדום מסמן את כיוון ההתקדמות (הכיוון‬
‫הנגדי לגרדיאנט)‪.‬‬

‫איור ‪ - 3‬אופטימיזציה איטרטיבית באמצעות ‪.Gradient descent‬‬

‫מדד (‪MAPE )Mean Absolute Percent Error‬‬


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

‫איור ‪ - 4‬מדד ‪.MAPE‬‬

‫‪22‬‬
‫ניתוח שונויות (‪ - )ANOVA -Analysis One Way of variance‬בסטטיסטיקה‪ ,‬ניתוח שונות חד כיווני‬
‫הוא אוסף מודלים סטטיסטיים שמטרתו לנתח את ההבדלים בין קבוצת ממוצעים‪ ANOVA .‬מרחיב את‬
‫מבחן ‪ t‬ליותר משתי קבוצות‪ ,‬ולכן שימושי בעיקר בעבור השוואה בין שלושה ממוצעים או יותר‪.‬‬

‫מבחן ‪ - t‬בסטטיסטיקה‪ ,‬מבחן ‪ t‬הוא שם כולל לכמה מבחנים סטטיסטיים העוסקים בהשערות על‬
‫התוחלת של נתונים המגיעים מהתפלגות נורמלית‪ ,‬כאשר השונות אינה ידועה‪.‬‬
‫במבחנים אלו‪ ,‬סטטיסטי המבחן מתפלג בהתפלגות ‪ t‬בהינתן שהשערת האפס ‪ H0‬נכונה‪ .‬אם המדגם‬
‫גדול‪ ,‬מקובל להחליף את המבחן בקירוב שבו מניחים שהשונות של האוכלוסייה שווה לשונות המדגם‪.‬‬

‫פונקציית הפסד‪ – Loss ,‬היא פונקציה הממפה מאורע או ערכים של משתנה אחד או יותר למספר‬
‫ממשי המייצג "עלות" של מאורע‪ .‬בבעיות אופטימיזציה מנסים למזער את פונקציית ההפסד‪ .‬פונקציות‬
‫הפסד או עלות נמצאות בשימוש נרחב במגוון תחומים בהם אופטימיזציה מתמטית‪ ,‬סטטיסטיקה‪ ,‬למידת‬
‫מכונה ועוד‪ .‬בתחומים מסוימים מתייחסים לפונקציית מטרה שעשויה להיות פונקציית הפסד או‬
‫הפונקציה הנגדית שלה שאותה רוצים למקסם (למשל פונקציית תועלת ופונקציית כשירות)‪.‬‬
‫בסטטיסטיקה נעשה שימוש בפונקציית הפסד באמידת פרמטרים‪ ,‬כשפונקציית ההפסד אומדת את‬
‫הסתברות המאורע של תצפיות הנתונים על פי הפרמטרים הנאמדים‪.‬‬

‫מקדם המתאם של פירסון ‪ -‬המדד המוכר ביותר למדידת הקשר בין שני משתנים כמותיים הוא ״מקדם‬
‫המתאם של פירסון״ (לעיתים קרובות נקרא בפשטות "מתאם פירסון" או אף ״מקדם המתאם״)‪ .‬מדד זה‬
‫מודד את עוצמת הקשר הליניארי בין שני משתנים כמותיים‪ ,‬כאשר ערך של ‪ 1‬מציין קשר ליניארי חיובי‬
‫מלא‪ ,‬וערך של ‪ -1‬מציין קשר ליניארי שלילי מלא‪ .‬ערך של ‪ 0‬מציין חוסר קשר ליניארי‪ .‬עם זאת ייתכנו‬
‫מצבים בהם ערכו של מתאם פירסון שווה לאפס‪ ,‬ועדיין קיים קשר ואף תלות סטטיסטית בין המשתנים‪,‬‬
‫אך הקשר אינו ליניארי‪ .‬זה קורה למשל כאשר ההתפלגות המשותפת של שני המשתנים סימטרית סביב‬
‫אפס‪ .‬מקדם זה נקרא באנגלית "‪ ,"correlation coefficient‬ובשפה יום יומית בעברית נהוג לכנות‬
‫מתאם על פי מקדם זה כ‪"-‬קורלציה"‪ .‬יהיו (‪ )xn,yn(..…)x1,y1‬נתונים על שני משתנים ‪ X‬ו‪Y-‬‬
‫שהתקבלו במדגם‪ .‬מקדם המתאם של פירסון‪ ,R ,‬מוגדר כ‪:‬‬

‫‪23‬‬
‫כאשר ‪ X‬גג הוא ממוצע ערכי ‪ .X‬והסכימה היא על כל ערכי הנתונים מהמדגם‪ .‬מההגדרה ניתן לראות כי‬
‫מקדם המתאם הוא סימטרי‪ ,‬כלומר מקדם המתאם בין ‪ X‬ל‪ Y-‬שווה בערכו למקדם המתאם בין ‪ Y‬ל‪.X-‬‬
‫יש להדגיש כי אף על פי שהחישוב על פי הנוסחא מתאפשר כאשר ‪ X‬ו‪ Y-‬מקבלים ערכים מספריים‬
‫כלשהם‪ ,‬אין משמעות לערכו של מקדם המתאם אם ‪ X‬ו‪ Y-‬אינם משתנים כמותיים‪ ,‬כלומר נמדדים‬
‫בסולם מנה או סולם רווח‪.‬‬
‫רגרסיה לוגיסטית ‪ -‬מאפשר למדוד את מידת ההשפעה של שינוי בערכו של כל אחד מהמשתנים‬
‫המסבירים על ערכו של המשתנה המוסבר‪ .‬היא אחת השיטות הנפוצות ביותר המשמשות לבניית מודל‬
‫חיזוי עבור בעיה בינארית (תוצאות צפויות ‪ 1‬או ‪ .)0‬הרגרסיה הלינארית המוכרת והמסורתית יוצרת‬
‫הטיה באומדני הפרמטרים‪ .‬המודל הליניארי הסטנדרטי מניח כי הנתונים מתפלגים נורמלית או גאוס‪,‬‬
‫השונות נשארת קבועה ושכל התצפיות בלתי תלויות‪ .‬כאשר אנו ממדלים משתנה בינארי בשיטת רגרסיה‬
‫לינארית ההנחות שלעיל מופרות‪ .‬נשתמש ברגרסיה לוגיסטית כאשר המשתנה המוסבר הוא בסולם‬
‫קטגוריאלי בעל שני ערכים בלבד‪ .‬למשל‪ ,‬נבדוק כיצד מצב משפחתי וגובה המשכורת משפיעים על‬
‫הבעלות על דירה‪ .‬האם גובה משכורת או מצב משפחתי יכולים לנבא את הסיכוי שהנבדק בעל דירה?‬
‫הבעלות על דירה היא משתנה בינארי – במקרה זה‪ 0 ,‬מציין שהנבדק אינו בעל דירה ו‪ 1-‬מציין שהנבדק‬
‫בעל דירה‪.‬‬
‫רגרסיה לוגיסטית בינארית נובעת מהצורה הקנונית של התפלגות ברנולי ‪:‬‬

‫נדגים את הנוסחה עבור משתנה בינארי ‪ Y‬ומשתנה בלתי תלוי ‪ X‬כאשר הערך ‪ Y‬יקבל ערך ‪ 1‬או ‪: 0‬‬

‫נמחיש בעזרת דוגמא‪:‬‬


‫להלן‪ ,‬טבלה המציגה את שעות הלימוד שהשקיע כל תלמיד מתוך קבוצה של ‪ 20‬תלמידים וכן תוצאה בינארית‬
‫הקובעת האם עבר\לא עבר את המבחן‪.‬‬

‫טבלה ‪ - 1‬שעות לימוד של תלמיד אל מול הצלחתו במבחן‬

‫פלט הרגרסיה הלוגיסטית העניק את התוצאות הבאות וכן את הגרף הבא‪:‬‬

‫‪24‬‬

‫טבלה ‪-2‬פלט הרגרסיה‪.‬‬


‫כי שעות הלימוד‬ ‫מהפלט ניתן ללמוד‬
‫קשורות משמעותית להסתברות לעבור את הבחינה‪ .‬זאת ניתן להבין מה‪-‬‬
‫‪ P-Value‬המוצג בטבלה (<‪ .)0.050.0167‬כמו כן מוצגים בפלט גם המקדמים (‪ )Hours ,intercept‬אשר‬
‫בהתאמה מוזנים לנוסחה שלעיל (‪ )β,α‬בכדי לחשב את ההסתברות לעבור את המבחן‪:‬‬
‫גרף ‪-1‬רגרסיה לוגיסטית למשתנה בינארי‬

‫‪α‬‬ ‫‪β‬‬
‫ניתוח אשכולות ‪ -‬ניתוח אשכולות ( ‪ )Cluster Analysis‬הוא תחום המתייחס לקיבוץ אובייקטים‬
‫לקבוצות כך שאובייקטים דומים יהיו קרובים יותר זה לזה‪ ,‬כלומר– שני אובייקטים באותה הקבוצה יהיו‬
‫דומים יותר זה לזה מאשר לאובייקטים מקבוצות אחרות‪ .‬ניתוח אשכולות הוא תחום מחקר פופולרי‬
‫בעולמות של בינה מלאכותית‪ ,‬ניתוח תמונה‪ ,‬למידת מכונה ועוד‪..‬‬
‫אחד האלגוריתמים הנפוצים לניתוח אשכולות הוא ה ‪.K-Means‬‬
‫אלגוריתם זה נחשב כחלק ממשפחת האלגוריתמים מבוססי המרחק ( ‪,)Centroid-based clustering‬‬
‫כלומר חלוקת האובייקטים למספר נתון של ‪ K‬אשכולות על פי מרכזי כובד‪.‬‬
‫אלגוריתם ‪ K-Means‬עובד בצורה איטרטיבית‪:‬‬

‫‪25‬‬
‫בכל איטרציה בוחרים ‪ K‬אובייקטים בתור מדגם מתוך בסיס הנתונים על מנת להוות את מרכזי‬ ‫‪-‬‬
‫הכובד‪.‬‬
‫לאחר מכן מקצים כל אובייקט לאשכול אשר מרכז הכובד הקרוב שלו הוא ביותר אל האובייקט‪.‬‬ ‫‪-‬‬
‫מעדכנים את מכרזי הכובד של כל אשכול בהתאם לאובייקטים המוקצים לו‪.‬‬ ‫‪-‬‬
‫חוזרים על הצעדים באופן איטרטיבי עד אשר מרכזי הכובד אינם משתנים‪.‬‬ ‫‪-‬‬
‫המחשה ויזואלית לאלגוריתם מובאת מטה משמאל לימין‪ .‬ניתן לראות בהמחשה איך מרכזי הכובד‬
‫של האשכולות (מסומנים כ"כוכבים") מתעדכנים מאיטרציה לאיטרציה‪.‬‬

‫תרשים ‪ :13‬הדגמת ‪K-Means‬‬

‫– ערכי ניבוי‬
‫ערך ניבוי חיובי (‪ (positive predictive value‬או בקיצור‪-PPV‬‬
‫ההסתברות שהנבדק אכן חולה‪ ,‬אם תוצאת הבדיקה חיובית‪.‬‬
‫משמש כמדד סטטיסטי ליכולת הזיהוי של מבחן או בדיקה רפואית‪ .‬ערך ניבוי חיובי הוא היחס בין אלו‬
‫שאובחנו נכון כחולים לאלו שתוצאת בדיקתם חיובית‪ .‬הערך מתאר את ההסתברות להיות האדם חולה‬
‫אם הבדיקה חיובית‪ .‬קביעת ערך הניבוי החיובי של המבחן נעשית על ידי השוואת תוצאות המבחן‬
‫לתוצאות מבחן שמהווה את מדד הזהב (המדד הקובע והמוחלט לגבי קיומו של המצב הנבדק)‪ .‬כך‬
‫למשל‪ ,‬תוצאת בדיקת סקר למחלה יכולה להיות חיובית (מחלה קיימת) או שלילית (מחלה לא קיימת)‪.‬‬
‫התוצאות החיוביות נבדקות מול מדד הזהב ונקבעות כ"חיוביות אמיתיות" אם אכן המחלה קיימת על פי‬
‫מדד הזהב או כ"חיוביות שגויות" אם המחלה לא קיימת על פיו‪ .‬התוצאות השליליות נבדקות באותה‬
‫צורה ונקבעות כ"שליליות אמיתיות" אם המחלה אכן לא קיימת על פי מדד הזהב או כ"שליליות שגויות"‬
‫‪.‬במקרה שבדיקת הסקר שללה את המחלה אך המחלה קיימת לפי מדד הזהב‬

‫חיוביים אמיתיים‬

‫‪26‬‬
‫‪ = ---------------------------------‬ערך ניבוי חיובי‬
‫חיוביים אמיתיים ‪ +‬חיוביים שגויים‬

‫תוצאת הנוסחה היא ההסתברות להיות חולה בהינתן שתוצאת הבדיקה חיובית‪.‬‬

‫ערך ניבוי שלילי ( ‪ )negative predictive value‬או בקיצור ‪-NPV‬‬


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

‫קביעת ערך הניבוי השלילי של המבחן נעשית על ידי השוואת תוצאות המבחן לתוצאות מבחן שמהווה‬
‫את מדד הזהב (המדד הקובע והמוחלט לגבי קיומו של המצב הנבדק)‪ .‬כך למשל‪ ,‬תוצאת בדיקת סקר‬
‫למחלה יכולה להיות חיובית (מחלה קיימת) או שלילית (מחלה לא קיימת)‪ .‬התוצאות החיוביות נבדקות‬
‫מול מדד הזהב ונקבעות כ"חיוביות אמיתיות"‪ ,‬אם אכן המחלה קיימת על פי מדד הזהב או כ"חיוביות‬
‫שגויות"‪ ,‬אם המחלה לא קיימת על פיו‪ .‬התוצאות השליליות נבדקות באותה צורה ונקבעות כ"שליליות‬
‫אמיתיות"‪ ,‬אם המחלה אכן לא קיימת על פי מדד הזהב או כ"שליליות שגויות" במקרה שבדיקת הסקר‬
‫שללה את המחלה אך המחלה קיימת לפי מדד הזהב‪.‬‬

‫שליליים אמיתיים‬
‫‪ = --------------------------------‬ערך ניבוי שלילי‬
‫שליליים אמיתיים ‪ +‬שליליים שגויים‬

‫נביא דוגמא עם מספר מדדים‪:‬‬

‫‪27‬‬
‫רגישות ‪ - Sensitivity‬ההסתברות לזיהוי הנבדק כחולה על ידי הבדיקה‪ ,‬אם הוא אכן חולה‪ .‬משמשת‬
‫כמדד סטטיסטי ליעילותו של מסווג‪.‬‬
‫סגוליות ‪ - Specificity‬ההסתברות לזיהוי הנבדק כבריא על ידי הבדיקה‪ ,‬אם הוא אכן בריא‪ .‬מדד‬
‫סטטיסטי ליעילותו של מסווג בשלילת קיומו של מצב מסוים‪.‬‬
‫‪ - False positive‬כאשר הערך האמיתי הוא‪ negative ‬אולם התחזית של המודל היא‪.positive ‬‬
‫בדוגמה שלנו‪ ,‬המודל משייך בטעות אדם בריא לקבוצת החולים‪.‬‬
‫‪ - False negative‬כאשר הערך האמיתי הוא‪ positive ‬והתחזית היא‪ .negative ‬בדוגמה שלנו‪ ,‬חולה‬
‫במציאות מזוהה כבריא על ידי המודל‪.‬‬
‫‪ False positive‬ידועים גם כ‪( Type I error-‬טעות מסוג ראשון) בעוד ‪ False negative‬ידועים גם כ‪-‬‬
‫‪( Type II error‬טעות מסוג שני)‪.‬‬
‫מטריצת הבלבול‪ - Confusion matrix ,‬משמשת לבעיות של סיווג לקבוצות מובחנות באופן ברור‪.‬‬
‫לדוגמה‪ ,‬חולים לעומת בריאים‪.‬‬
‫דיוק‪- Accuracy ,‬‬
‫המדד הפשוט ביותר ‪ ,‬הוא היחס בין הסיווגים הנכונים לבין סך כל הסיווגים‪.‬‬

‫בדוגמה שלנו‪:‬‬

‫הדיוק של המודל הוא ‪ 0.97‬כי ‪ 97‬מתוך ‪ 100‬הדוגמאות סווגו לקבוצה הנכונה‪.‬‬

‫הבעיה עם המדד‪ Accuracy ‬שהוא אמין רק בתנאי שהדוגמאות מאוזנות (אותה פרופורציה לכל קבוצה‬
‫לדוגמה‪ 50 ,‬חולים ו‪ 50-‬בריאים)‪ .‬אבל לא תמיד זה המצב וכדי לפתור את הבעיה נהוג להשתמש‬
‫במדד‪ .F1 score ‬כדי לחשב את ה‪ F1 score-‬צריך להכיר עוד שני מדדים‪ ,‬שיעור ה‪ ,recall-‬ושיעור ה‪-‬‬
‫‪.precision‬‬
‫‪ -  Recall ‬היא הפרופורציה של דוגמאות חיוביות שזוהו נכונה (‪ )true positive‬מכל הדוגמאות החיוביות‬
‫שהמודל זיהה‪.‬‬

‫שמות נוספים ל‪ recall-‬הם‪ true positive rate  :‬וגם‪( sensitivity ‬כמו שציינו למעלה)‪.‬‬

‫‪28‬‬
‫נחזור לדוגמה‪  Recall .‬עונה על השאלה מה שיעור החולים שהמודל זיהה נכונה מתוך כלל אוכלוסיית‬
‫החולים בפועל‪.‬‬
‫נחשב את שיעור ה‪ recall-‬עבור הדוגמה שלנו‪:‬‬

‫‪-  Precision‬הוא היחס של תצפיות חיוביות שהמודל זיהה נכונה מכל התצפיות שהמודל זיהה שהם‬
‫חיוביות (בצדק או שלא בצדק)‪.‬‬

‫בדוגמה‪  Precision ,‬עונה על השאלה מה שיעור החולים בקרב מי שהמודל סיווג כחולים‪.‬‬

‫מדד‪- F1 ‬עושה ממוצע משוקלל של ה‪ Precision-‬וה‪ ,Recall-‬ובכך לוקח בחשבון את השגיאות משני‬


‫הסוגים‪ .‬כך נראית הנוסחה‪:‬‬

‫נחשב את ערך‪ F1 ‬עבור הדוגמה‪:‬‬

‫הערך הגבוה ביותר ש‪ F1-‬יכול לקבל הוא ‪ .1‬בדוגמה קיבלנו ‪ 0.97‬שהוא ערך‪ F1 ‬גבוה מאוד שמעיד על‬
‫כך שהמודל הצליח במשימת הסיווג שהוא למד‪.‬‬

‫באיורים הבאים ניתן לראות את התחום מדדי הרגישות והסגוליות‪ .‬הקו החוצה מפריד בין הפריטים‬
‫החיוביים (משמאל) לבין הפריטים השליליים (מימין)‪ .‬האליפסה מתארת את המסווג‪ :‬הפריטים בתוך‬
‫האליפסה סומנו על ידי המסווג כחיוביים‪ ,‬ומחוץ לה – כשליליים‪.‬‬

‫‪29‬‬

‫איור ‪ -5‬בירוק ‪ -‬רגישות ‪Sensitivity‬‬ ‫איור ‪ – 6‬בורוד ‪ -‬סגוליות ‪Specificity‬‬


‫עקומת ‪– ROC‬‬
‫בסטטיסטיקה‪ ,‬עקומה אופיינית למסווג‪ ,‬או עקומת ‪ ,ROC‬היא גרף המציג את הביצועים של מסווג‬
‫דו‪-‬ערכי‪ ,‬לאור סף ההחלטה שנקבע לו‪ .‬העקומה נוצרת על ידי התוויית שיעור החיוביים האמיתיים (‬
‫‪ )TPR‬מול שיעור החיוביים הכוזבים (‪ )FPR‬תחת ספי קבלה שונים‪ .‬שיעור החיוביים האמיתיים ידוע‬
‫גם כרגישות‪ .‬שיעור החיוביים הכוזבים‪ ,‬ידוע גם בתור דלף‪ ,‬ניתן לחשב אותו כ־‪ 1‬פחות הסגוליות‪.‬‬
‫עקומת ‪ ROC‬היא‪ ,‬אם כן‪ ,‬הרגישות כפונקציה של הדלף‪ .‬באופן כללי‪ ,‬אם התפלגות ההסתברות ידועה‬
‫הן לפגיעה ‪ )Hit‬חיובי אמיתי) והן לאזעקת שווא (חיובי כוזב)‪ ,‬ניתן לייצר את עקומת ‪ ROC‬על ידי‬
‫התוויית פונקציית הסתברות הפגיעות (שיעור חיוביים אמיתיים) בציר ה־‪ Y‬לעומת פונקציית‬
‫ההסתברות לאזעקת שווא (שיעור חיוביים כוזבים) בציר ה־‪.X‬‬
‫ניתוח ‪ ROC‬מספק כלים לבחירת מבחן (או מסווג) אופטימלי‪ ,‬בטרם מתחשבים בהקשר העלות של כל‬
‫אחת מסוגי הטעויות או בהתפלגות הפרטים בין הקבוצות‪ .‬ניתוח ‪ ROC‬קשור באופן ישיר וטבעי לניתוח‬
‫עלות‪/‬תועלת של קבלת החלטות‪.‬‬

‫איור ‪ - 6‬מרחב ‪ ,ROC‬עליו מסומנים ארבעה מסווגים שונים‪ ,‬וקו האקראיות‪.‬‬

‫רווח סמך – בתורת האמידה הסטטיסטית‪ ,‬רווח בר‪-‬סֶ מֶ ך (או רווח סֶ מֶ ך) עבור פרמטר לא ידוע של התפלגות‬
‫ממשפחה ידועה של התפלגויות‪ ,‬הוא קטע המחושב מתוך תוצאות של מדגם‪ ,‬באופן כזה שהסיכוי הא‪-‬פריורי‬
‫(טרם לקיחת המדגם) שהקטע שנקבל יכלול את הפרמטר הוא קבוע‪ ,‬הקרוי "רמת הסמך" של הרווח‪ .‬משמעות‬
‫הדבר היא‪ ,‬שאם נבצע מספר אינסופי של דגימות‪ ,‬אחוז הדגימות שהקטע שיחושב עבורן יכלול את הפרמטר שווה‬

‫‪30‬‬
‫לרמת הסמך‪" .‬רמת המובהקות" של הרווח היא המשלים של רמת הסמך (למשל‪ ,‬אם רמת הסמך היא ‪ ,95%‬אז‬
‫רמת המובהקות היא ‪.)5%‬‬
‫בין הגורמים המשפיעים על אורכו של רווח הסמך‪ :‬גודל המדגם (מספר התצפיות)‪ ,‬השונות של הפרמטר‬
‫(האמיתית אם ידועה‪ ,‬או אומד לשונות על סמך המדגם אם לא ידועה) ורמת הסמך‪ .‬ככל שהמדגם גדול יותר‪,‬‬
‫השונות נמוכה יותר ורמת הסמך קטנה יותר‪ ,‬כך רווח הסמך יהיה קצר יותר‪ ,‬ולהפך‪.‬‬

‫ערך ‪ ,p ,p-value‬מובהקות התוצאה ‪ )-‬הוא פונקציה בסטטיסטיקה של תוצאות מדגם (סטטיסטי)‪ ,‬שמיועד לביצוע‬
‫בדיקת השערות‪.‬‬
‫ערך ‪ P‬מוגדר כהסתברות לקבל תוצאה זהה לזו שהתקבלה מסטטיסטיקת המדגם או תוצאה "קיצונית" ממנה‪,‬‬
‫תחת ההנחה שהמדגם התקבל מהתפלגות מסוימת‪ ,‬הנחה זו מכונה השערת האפס‪ .‬טרם ביצוע המבחן נקבעת‬
‫רמת המובהקות (או רמת הסמך) של המבחן‪ ,‬אשר מסומנת באות ‪ .α‬רמה זו בדרך כלל נקבעת להיות ברמה של‬
‫‪ 1%‬או ‪.5%‬‬
‫אם הערך ‪ P‬קטן או שווה ל‪( α -‬רמת מובהקות המבחן שנקבעה)‪ ,‬זה מרמז כי התוצאות שקיבלנו מהמדגם אינן‬
‫מתיישבות עם ההנחה כי השערת האפס היא נכונה ולכן יש לדחות את אותה ההשערה (אך זה לא אומר‬
‫שהשערה זו בהכרח איננה נכונה‪ ,‬או שצריך בהכרח לקבל את ההשערה האלטרנטיבית)‪ .‬כאשר הערך ‪ P‬מחושב‬
‫באופן נכון‪ ,‬וההנחות לגבי התפלגות הנתונים אכן מתקיימות‪ ,‬ביצוע מבחן כזה יבטיח לנו שהסיכוי לטעות מסוג‬
‫ראשון לא יעלה על אותו ערך של ‪. α‬‬

‫‪CRISP - Cross-industry standard process‬‬ ‫‪3.6‬‬


‫תהליך סטנדרטי חוצה ענפים לכריית נתונים‪.‬‬
‫זוהי מתודולוגיה מקיפה של כריית נתונים ומודל תהליכים המספק לכל משתמש (ממתחיל ועד מומחה)‬
‫בכריית נתונים תוכנית מלאה לביצוע פרויקט כריית נתונים‪.‬‬
‫מתודולוגית ‪ CRISP‬מגדירה ‪ 6‬שלבים לפרויקט כריית מידע ‪:‬‬
‫‪ – Business Understanding‬הבנת העסק‪ .‬שלב זה הינו שלב מקדים לשימוש כלשהו בכלים‬ ‫‪.1‬‬
‫ממוחשבים עצמם ונועד ‪ :‬להבין מטרות עסקיות של העסק‪ ,‬להעריך את המצב בו שרוי העסק‬
‫כעת‪ ,‬להגדיר מטרות לפרויקט כריית נתונים‪ ,‬לקבוע תוכנית עבודה‪.‬‬
‫‪ – Data Understanding‬הבנת המידע‪ .‬השלב הזה נועד ל ‪:‬איסוף מידע ראשוני‪ ,‬תיאור המידע‪,‬‬ ‫‪.2‬‬
‫ווידוא איכות המידע‪.‬‬
‫‪ – Data Preparation‬הכנת המידע‪ .‬שלב זה כולל ‪:‬בחירת מידע שינותח‪ " ,‬ניקוי" המידע‪,‬‬ ‫‪.3‬‬
‫הוספת מידע – הגדרת משתנים חדשים‪ ,‬הבאת מידע לפורמט המאפשר ניתוח‪.‬‬
‫‪ – Modeling‬בניה והפעלת מודלים לכריית המידע‪ .‬בשלב זה עלינו‪ :‬לבחור טכניקה בה נבנה את‬ ‫‪.4‬‬
‫המודל‪ ,‬לבנות מודל עצמו‪ ,‬להריץ טסטים לבחינת סבירות המודל‪ ,‬להריץ את המודל‪.‬‬

‫‪31‬‬
‫‪ – Evaluation‬הערכה של התוצאות‪ .‬תוצר המודלים שיושמו הינה כאמור מערכת של חוקים‪,‬‬ ‫‪.5‬‬
‫אותם יש לבדוק אל מול הכללים הנהוגים והתקינים בעסק עצמו‪ .‬כמו כן‪ ,‬הפעלת הכללים על‬
‫המשתנה המוסבר תצביע על ערכים אשר חורגים מהכללים שנקבעו‪ .‬יש לבדוק סיבות החריגה‬
‫של המשתנים‪ ,‬שכן ייתכן והמדובר בחריגה מהכלל שבעצמו אינו תקין‪ ,‬ואז הנתון למעשה הינו‬
‫נתון תקין‪.‬‬
‫‪ - Deployment‬הטמעה‪ .‬בשלב זה עלינו לקבוע כיצד להשתמש בתוצאות‪ .‬את הידע שנצבר‬ ‫‪.6‬‬
‫יהיה צורך לארגן ולהציג באופן שהלקוח יוכל להשתמש בו‪ .‬עם זאת‪ ,‬בהתאם לדרישות‪ ,‬שלב‬
‫הפריסה יכול להיות פשוט כמו יצירת דוח או מורכב כמו יישום תהליך כריית נתונים שניתן לחזור‬
‫עליו ברחבי הארגון‪.‬‬

‫‪Cross-industry standard process‬‬ ‫איור ‪- 5‬‬

‫מחזור חיים אנליטי ( ‪)Analytical Lifecycle‬‬ ‫‪3.7‬‬


‫ישנם שני שלבים עיקריים במחזור החיים האנליטי‪ :‬גילוי (‪ )discovery‬וביצוע בפועל (‪.)deployment‬‬
‫תהליך הגילוי מונע על ידי שאילת שאלות עסקיות המייצרות חידושים‪ .‬השלב הראשון הוא אפוא‬
‫הגדרת מה שהעסק צריך לדעת‪ .‬לאחר מכן יש לתרגם את השאלה העסקית לייצוג הבעיה‪ ,‬שניתן‬
‫לפתור באמצעות ניתוח חזוי‪.‬‬
‫כדי להשתמש בניתוח חזוי עלינו להביא נתונים מוכנים לכך‪.‬‬

‫‪32‬‬
‫טכנולוגיות כמו ‪ Hadoop‬ומחשבים מהירים וזולים יותר אפשרו לאחסן ולהשתמש בנתונים רבים‬
‫יותר וסוגים רבים יותר מאי פעם‪ .‬עם זאת‪ ,‬הדבר רק הגביר את הצורך לחבר נתונים בפורמטים‬
‫שונים ממקורות שונים ולהפוך נתונים גולמיים כך שהם יכולים לשמש כקלט למודלים חזויים‪ .‬עם סוגי‬
‫נתונים חדשים ממכשירים מחוברים‪ ,‬כגון נתוני חיישני מכונה או יומני אינטרנט מאינטראקציות‬
‫מקוונות‪ ,‬שלב הכנת הנתונים הפך להיות מאתגר עוד יותר‪ .‬ארגונים רבים עדיין מדווחים כי הם‬
‫מבזבזים זמן לא מבוטל‪ ,‬לעיתים עד ‪ 80%‬בהתמודדות עם משימות להכנת נתונים‪.‬‬

‫איור ‪Analytical Lifecycle - 6‬‬

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

‫‪33‬‬
‫בשלב המודל משתמשים באלגוריתמי מודלים אנליטיים ולמידת מכונה לקבוע מערכות יחסים בנתונים‬
‫ולענות על השאלה העסקית‪ .‬כלים אנליטיים בשילוב של נתונים וטכניקות דוגמנות המנבאות באופן אמין‬
‫את הרצוי‬
‫תוצאה‪ .‬אין אלגוריתם אחד שתמיד מביא את הביצועים הטובים ביותר‪ .‬האלגוריתם "הטוב ביותר" עבור‬
‫פתרון הבעיה העסקית תלוי בנתונים‪ .‬הניסוי הוא המפתח למציאת ה‪-‬התשובה האמינה ביותר ובניית‬
‫מודלים אוטומטית יכולה לעזור למזער את זמן התוצאות ולהגביר את הפרודוקטיביות של צוותי‬
‫אנליטיקה‪]5[ .‬‬

‫מערכות המלצה ובסיסי מערכות המלצה (‪)Recommender System‬‬ ‫‪3.8‬‬


‫מערכות המלצה הינם מערכות אשר מטרתן ליצור סט מוצרים אשר תואמים בצורה האופטימלית את‬
‫העדפות הלקוח וזאת על ידי למידת מערכת בצורה אוטונומית את עדיפות הלקוח‪ .‬במערכות כאלה נהוג‬
‫להשתמש באלגוריתמים מתקדמים של למידה חישובית כדי ליצור מערכות מסוג אלו‪ .‬המערכות ישתמשו‬
‫באלגוריתמים אלו כדי לקחת את מאגר הנתונים ולהפיק ממנו תובנות לגבי הלקוח ולהתאים לו את‬
‫המוצר בצורה הטובה ביותר‪.‬‬
‫במערכות המלצה נהוגות כיום שתי שיטות עיקריות – מבוססות תוכן (“‪ )”Content based‬או מבוססות‬
‫סינון שיתופי ("‪.)"Collaborative filtering‬‬
‫מערכות המלצה מבוססות תוכן הינן מערכות אשר מבוססות על מדדי דמיון בין תכונות של מוצרים ‪.‬‬
‫השיטה מבוצעת בשלושה שלבים‪ :‬ראשית‪ ,‬ניתוח התוכן‪ ,‬זהו שלב בו המערכת מבצעת ניתוחים של תוכן‬
‫המוצר ועושה לו קלסיפיקציה‪ .‬שנית‪ ,‬ניתוח פרופיל משתמש‪ ,‬זהו שלב בוא המערכת מבצעת הצגה של‬
‫העדפות הלקוח‪ .‬שלב שלישי‪ ,‬סינון קומפוננטות‪ ,‬בשלב זה מתבצע סינון בין הקומפוננטות השונות‬
‫שנוצרו על ידי שלבים א' ו‪-‬ב' והמערכת מבצעת סינון ובוא היא מציגה את רשימת המלצות‪.‬‬
‫מערכות המלצה מבוססות סינון שיתופי משתמשות במטריצת דירוג (“‪ ,)”Ranking matrix‬אשר מבצעות‬
‫ניתוח של האינטראקציה בין המוצר למשתמש‪ .‬השורות מייצגות את המשתמש והעמודות מייצגות את‬
‫המוצר‪ .‬עבור כל תא במטריצה מחושב הדירוג של המוצר על ידי המשתמש‪ .‬המערכות מבצעות‬
‫ההתאמה בין רשימת ההמלצות לאופי המשתמש תוך שימוש במודלים של קליסטור‪ ,‬למשל‪ ,‬ה"שכן‬
‫הקרוב ביותר" ("‪.)"K-nearest neighbors‬‬
‫‪ - K-nearest neighbors‬אלגוריתם השכן הקרוב‬

‫‪34‬‬
‫אלגוריתם השכן הקרוב ‪ ) )k-NN‬הוא אלגוריתם חסר פרמטרים לסיווג ולרגרסיה מקומית‪ .‬בשני המקרים‬
‫הקלט תלוי ב‪ K-‬תצפיות הקרובות בתכונותיהם‪ k-NN .‬יכול לשמש לסיווג או לרגרסיה‪:‬‬
‫‪ k-NN‬לסיווג – בהינתן קלט של דוגמה חדשה‪ ,‬האלגוריתם משייכה לקבוצה‪ .‬הדוגמה משויכת למחלקה‬
‫הנפוצה ביותר בקרב ‪ k‬השכנים הקרובים (כאשר ‪ k‬מוגדר כמספר חיובי שלם‪ ,‬בדרך כלל מספר קטן)‪.‬‬
‫אם ‪ k=1‬האובייקט משויך למחלקה של השכן הבודד הקרוב ביותר‪.‬‬
‫‪ k-NN‬לרגרסיה – בהינתן דוגמה חדשה‪ ,‬האלגוריתם מחזיר ערך מאפיין לדוגמה‪ .‬ערך זה הוא ממוצע‬
‫ערכים של ערכי ‪ k‬השכנים הקרובים ביותר‪.‬‬
‫‪ k-NN‬הוא אלגוריתם לימוד מבוסס מופעים‪ ,‬שבו הפונקציה מקורבת באופן מקומי בלבד וכל החישובים‬
‫נדחים עד סיווגה‪ .‬אלגוריתם ‪ k-NN‬הוא מבין האלגוריתמים הפשוטים ביותר בתחום למידת המכונה‪.‬‬
‫שקלול תרומתם של השכנים יכול להיות שימושי גם במקרה של סיווג וגם במקרה של רגרסיה‪ ,‬כך‬
‫שמשקל השכנים הקרובים תורם יותר לממוצע מהשכנים הרחוקים יותר‪ .‬לדוגמה שיטת שקלול נפוצה‬
‫מורכבת כך שנותנים לכל שכן משקל של ‪ ,1⁄d‬כאשר ‪ d‬הוא המרחק לאותו שכן‪ .‬השכנים נלקחים מתוך‬
‫סדרת אובייקטים של מחלקה (עבור ‪ k-NN‬לסיווג) או אפיון הערך (עבור ‪ k-NN‬לרגרסיה) ידועים‪ .‬חיסרון‬
‫בולט של האלגוריתם הוא רגישותו למבנה המקומי של הנתונים‪.‬‬
‫בדוגמא למטה‪ ,‬איור ‪ ,1‬ניתן לראות סיווג עבור אלגוריתם ‪ .k-NN‬המבחן לדוגמה (העיגול הירוק) צריך‬
‫להיות מסווג או אל המחלקה הראשונה ‪ -‬קבוצת המרובעים הכחולים או לחלופין‪ ,‬אל המחלקה השנייה ‪-‬‬
‫קבוצת המשולשים האדומים‪ .‬אם ‪( k=3‬המעגל הפנימי) הוא מוקצה לקבוצה השנייה כי ישנם ‪2‬‬
‫משולשים ורק מרובע אחד בתוך המעגל הפנימי‪ .‬אם ‪( k=5‬עיגול מקווקו) הוא מסווג למחלקה הראשונה‬
‫(שלושה ריבועים לעומת שני משולשים בתוך המעגל החיצוני)‪.‬‬

‫איור ‪ - 7‬מודל השכן הקרוב‪ .‬דוגמה ‪.1‬‬

‫‪35‬‬
‫דוגמה מטריצת דירוג ושימוש במודל "השכן הקרוב"‬

‫איור ‪ - 7‬מודל "השכן הקרוב"‪ .‬דוגמה ‪.2‬‬

‫‪Random forest – RF‬‬ ‫‪3.9‬‬


‫‪ RF‬בונה קבוצה של עצי החלטה‪ ,‬הנקראים יער‪ ,‬באמצעות דגימה של אחוז מסוים מבסיס המידע אותו‬
‫הוא מחשיב כסביבת ניסוי‪ .‬לאחר הרצת האלגוריתם נוצרים עצי החלטה‪ .‬פיצולים בצמתי העץ נבחרים‬
‫מתוך קבוצה קטנה של תכונות שנבחרו באופן אקראי‪ .‬במהלך הסיווג‪ ,‬כל עץ "מצביע" באופן עצמאי‪.‬‬
‫ה"קולות" נספרים‪ ,‬וההחלטה אשר נספרה כרוב נלקחת כחיזוי עבור המופע הנבחן‪ .‬להבדיל מעץ‬
‫החלטה רגיל‪ ,‬באלגוריתם זה מספר עצי ההחלטה מגדילים את רמת הדיוק של המודל‪.‬‬
‫על ידי הכנסת תוצאות האלגוריתם כקלט לשיטות ‪ EXPLAIN‬ו‪ IME‬אשר מבצעות ניתוח רגישות‪ -‬כלומר‬
‫בדיקת ההשפעה של שינויים בקלט על הפלט‪.‬‬

‫‪Voting‬‬ ‫‪3.10‬‬
‫בשלב הראשוני נוצר מאגר נתוני אימון (‪ )Train data‬שעליו ירוצו האלגוריתמים השונים‪.‬‬
‫בשיטה זאת נבנים מודלי קלסיפיקציות תוך כדי שימוש באותו מאגר נתוני אימון‪.‬‬
‫כל מודל יכול להיווצר ע"י‪:‬‬
‫חלוקה שונה של אותו מאגר נתוני אימון ואותו אלגוריתם‪.‬‬ ‫‪o‬‬
‫אותו מאגר נתוני אימון עם אלגוריתם שונה‪.‬‬ ‫‪o‬‬
‫בכל שיטה אחרת‪.‬‬ ‫‪o‬‬

‫‪36‬‬
‫תחזית הפלט הסופי הוא אותו מודל שקיבל את הכי הרבה הצבעות‪.‬‬

‫‪Bagging‬‬ ‫‪3.11‬‬
‫דרך ליצירת מספר מודלים של חיזוי‪ .‬ע"י כך שאנחנו מחלקים את סט הנתונים המקורי לתתי ‪datasets‬‬
‫בשיטת ‪ .bootstrap‬על כל תת ‪ dataset‬כזה בונים מודל ע"י שימוש באחד מהאלגוריתמים של‬
‫‪ machine learning‬ובסופו של דבר צריכים לשלב את הסיווג או החיזוי של כל אחד מהמודלים האלה‬
‫לסיווג סופי‪.‬‬
‫יש את ה‪dataset -‬המקורי שמכיל ‪ m‬רשומות‪ ,‬והוא בעל ערך מטרה קטגוריאלי בעל ‪K classes‬שונים‪.‬‬

‫בשלב הראשון של ‪ Bagging‬עושים את החלוקה לתתי ‪ datasets‬בשיטת ‪ ,bootstrap‬דגימה‬ ‫●‬


‫רנדומלית עם חזרות‪ ,‬ויוצרים ‪.n datasets‬‬
‫בשלב הבא זה בניית מודל סיווג‪ ,‬על כל תת ‪ dataset‬זה מפעילים אלגוריתם למידה כלשהו‪ ,‬זה יכול‬ ‫●‬
‫להיות כל אחד מהאלגוריתמים שאנחנו מכירים – עצי החלטה‪ ,‬רשתות נוירונים וכו'‪ .‬אותו אלגוריתם‬
‫יפעל על כל התתי ‪ .datasets‬ככה נוצרים ‪ n‬מודלים‪ ,‬כמספר תתי ה‪ dataset -‬שיצרנו‪.‬‬
‫שלב הבא‪ ,‬כאשר רוצים לבצע סיווג עבור רשומה חדשה‪ ,‬מכניסים לכל אחד מהמודלים האלו שיצרנו‪,‬‬ ‫●‬
‫וכל אחד מהם נותן עבורה איזשהו סיווג – ‪ ,YA‬ומקבלים ‪ n‬תוצאות שונות או דומות עבור אותה‬
‫רשומה‪.‬‬
‫בשלב הסופי משקללים את התשובות של כל המודלים לתוצאה סופית‪ .‬עושים את זה בשיטת‬ ‫●‬
‫‪ ,Voting‬כלומר סוכמים עבור כל ‪ class‬כמה מודלים נתנו את הסיווג הזה ומי שקיבל את מירב‬
‫הקולות הוא הקלס הסופי שייבחר‪.‬‬

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

‫‪37‬‬

‫איור ‪ - 8‬סכמת ‪Bagging‬‬


‫‪Stacking‬‬ ‫‪3.12‬‬
‫בשיטה זאת בונים מספר מודלים על אותו ‪ dataset‬כאשר משתמשים באלגוריתמים שונים לבניית כל‬
‫אחד מהמודלים‪ .‬בונים מהתוצאות של המודלים ‪ dataset‬חדש‪ ,‬ועליו בונים עוד פעם מודל ע"י‬
‫אלגוריתם‪ .‬מהמודל שבונים בשלב השני מתקבל החיזוי הסופי‪.‬‬

‫איור ‪ - 9‬סכמת ‪Stacking‬‬

‫עקרון השיטה עפ"י "איור ‪:"9‬‬

‫מחלקים את ה‪dataset -‬לשלושה חלקים‪.Train, Validation, Test :‬‬ ‫•‬

‫בשלב הראשון בונים מודלים על בסיס ה‪ Train data -‬שכל אחד מהמודלים האלה משתמש‬ ‫•‬
‫באלגוריתם אחר‪.‬‬

‫לאחר מכן משתמשים ‪ ,Validation data‬ויוצרים עבורו קלסיפיקציה בכל אחד מהמודלים האלה‪.‬‬ ‫•‬

‫מהתוצאות של הקלסיפיקציה יוצרים ‪ dataset‬חדש בצורה הבאה‪ :‬לכל מודל יוצרים עמודה‪ ,‬כל‬ ‫•‬
‫רשומה ב‪ Validation data -‬עוברת בכל אחד מהמודלים האלה ומקבל סיווג כלשהו‪ ,‬את הסיווג‬
‫שרשומה קיבלה נכניס בעמודה הראשונה‪ ,‬מה שהיא קיבלה במודל השני נכניס בעמודה השנייה‬
‫וכך הלאה‪ .‬בנוסף יוצרים גם עמודה של ערך המטרה שהיא בעצם הסיווג המקורי של אותה‬
‫רשומה‪ .‬כך נוצר ‪dataset‬מסווג חדש שהפיצ'רים שלו זה תוצאות הסיווג של המודלים הקודמים‪.‬‬

‫על ה‪ dataset-‬הזה יוצרים את המודל האחרון שייתן את הסיווג הסופי‪.‬‬ ‫•‬

‫‪38‬‬
‫כאשר רשומה חדשה מגיעה היא עוברת בכל התהליך הזה‪ .‬כלומר‪ ,‬היא עוברת בכל אחד‬ ‫•‬
‫מהמודלים שנבנו בשלב הראשון ומקבלת סיווג מכל אחד מהם‪ .‬לאחר מכן את התוצאות של‬
‫הסיווג שהיא קיבלה מכניסים כרשומה חדשה אל תוך המודל שנבנה בשלב השני ומתוך המודל‬
‫הזה היא מקבלת את החיזוי הסופי‪.‬‬

‫רגרסיה‪/‬סיווג אורדינלית ‪Ordinal Classification -‬‬ ‫‪3.13‬‬


‫רגרסיה אורדינלית היא מודל רגרסיה בסטטיסטיקה בו המשתנה המוסבר נמדד בסולם מדידה‬
‫סדר‪.‬‬
‫הערכים המספריים בסולם סדר נועדו לציון ערכי משתנה שהם בעלי סדר גודל שונה אחד‬
‫מהשני‪ ,‬כאשר אין משמעות כמותית לפער ביניהם‪ .‬לרוב הדירוג נעשה כך שערכים גבוהים‬
‫מציינים מיקום גבוה יותר בתכונה הנמדדת מאשר הערכים הנמוכים‪ .‬בין הערכים האלו מתקיים‬
‫יחס סדר‪ ,‬כך שניתן לדעת שערך מסוים גדול או קטן מערך אחר‪ .‬עם זאת לא מוגדרת עליהם‬
‫מטריקה (מרחק)‪ .‬כלומר‪ ,‬לא ניתן לדעת בכמה ערך מסוים גדול או קטן מהאחר‪ .‬לדוגמא ‪ :‬דרגה‬
‫(‪ = 1‬מנהל‪ = 2 ,‬ראש מחלקה‪ = 3 ,‬פועל)‪.‬‬
‫בעולם של מערכות הבריאות ובפרט אצלנו בפרויקט "‪ "Medicare‬ישנם נתונים רבים המסווגים‬
‫אורדינליים לכן שימוש בנתונים אלו חשוב מאוד ובפרט להשתמש באלגוריתם העוזר להבין את‬
‫הנתונים‪ .‬יהיה ניתן לחזות העדפות של חולים‪ ,‬כרגע מנוהל ע"י סקרים או חיזוי שביעות רצון של‬
‫הלקוחות‪.‬‬
‫שיטות רבות מתאימות לרגרסיה אורינדלית‪,‬נעמיק את הידע בשיטת ‪( wKNN‬מסווגים‬
‫פוטנציאליים‪-‬השכנים הקרובים ביותר‪ ,‬המצטברים בצורה משוקללת)‪]6[ :‬‬

‫איור ‪ - 10‬נוסחת האלגוריתם‬

‫‪39‬‬
‫‪HARDWARE SIZING‬‬ ‫‪3.14‬‬
‫בתהליך זה מתבצעת סקירת חומרה מקדימה לשלבי פיתוח המערכת על מנת לאפשר את‬
‫התמודדות המערכת עם כמויות המידע העוברות בה‪ ,‬אחסון הנתונים ועם תהליכי עיבוד‬
‫הנתונים‪ .‬השוואה בין נתוני החומרה כגון‪ :‬עוצמת ומהירות מעבד‪ ,‬מהירות זיכרון‪ ,‬גודל וסוג דיסק‬
‫קשיח וגודל בסיס הנתונים היא הכרחית כאשר ניגשים לפתח מערכת ‪ BI‬בעלת יכולות אחסון‬
‫ושליפה‪ .‬שלב מקדים לשלב הנ"ל יכלול את הגדרת הדרישות הפונקציונליות של המערכת אשר‬
‫מהן תיגזר סקירת החומרה‪.‬‬

‫על מנת לשפר את תהליכי ה‪ ETL‬במערכת‪ ,‬המצב האידיאלי יהיה שכל תהליך המופעל במערכת‬
‫יופעל על ידי משאב‪-‬חומרה נפרד‪ .‬מצב זה נקרא "‪ "Multi-Threading‬והוא מתייחס ליכולת‬
‫החומרה (המעבד במקרה זה) לבצע מספר פעולות במקביל כאשר הפעולות אינן "נלחמות" על‬
‫משאבים‪ .‬מהירות תהליכי ה ‪ ETL-‬במערכת עולה משמעותית ברוב המקרים בזכות בחירה‬
‫נכונה של מעבד הכוללת כמות ליבות ומהירות כל ליבה‪ .‬ליבות המעבד מהוות משאבים‬
‫לתהליכים השונים במערכת בעוד שכל תהליך ירצה לקבל את מלוא המשאב‪.‬‬

‫מערכת הכוללת בתוכה עיבוד מידע עדכני והיסטורי‪ ,‬דורשת ברוב המקרים הפעלה של מספר‬
‫תהליכים במקביל הדורשים משאב משמעותי הנקרא "זיכרון"‪ .‬הפעולות המבוצעות במערכת‬
‫"נרשמות" בזיכרון המחשב כך שככל ש"מחסן הזיכרון" יהיה גדול יותר‪ ,‬כך ביצועי המערכת‬
‫יגדלו‪ .‬נוסף על כך‪ ,‬נשאף לכך שמערכת ההפעלה תותקן על דיסק קשיח בעל ביצועים גבוהים‬
‫אשר נובעים בין היתר מגודל הזיכרון של הדיסק וכן מרכיביו (‪ SSD‬למול ‪ .)HDD‬דיסק קשיח‬
‫אשר פעולות הקריאה והכתיבה נחסכות בו (‪ )SSD‬יהיה אידיאלי למערכות ‪.BI‬‬

‫‪40‬‬
‫חשוב לזכור שביצועי המערכת אינם נקבעים על ידי סוג החומרה בלבד‪ .‬במערכות ‪ BI‬המכילות מידע‬
‫היסטורי אודות עולם תוכן מסוים לדוגמא‪ :‬טרנזקציות כספיות‪ ,‬נדרשת מחשבה יתרה במהלך פיתוח‬
‫תהליכי ה‪ ETL-‬זאת בגלל שהמידע ההיסטורי גדל בצורה משמעותית ככל שיותר מידע חדש נטען‬
‫למערכת‪ .‬הצורה בה נפתח תהליכי חיפוש\מיון\שליפה אשר חלים על בסיסי המידע במערכת חשובה‬
‫באותה מידה ואף יותר מבחירת סוג החומרה‪]7[ .‬‬

‫איור ‪ -11‬שלבי סקירת חומרה‬

‫‪41‬‬
‫תיאור מצב קיים‬ ‫‪4‬‬

‫מערכות הבריאות בארה"ב אגרו נתונים רבים במהלך השנים‪ ,‬כך שנוצרה הזדמנות לחזות בעיות‬
‫במערכות הבריאות תו"כ ניצול שימוש יעיל בנתונים בצורה מיידית‪ .‬מחד‪ ,‬ניתן לגשת לנתונים בצורה קלה‬
‫ומאידך יש קושי בלהוציא חתכים שונים מתוך הנתונים‪ ,‬להציג בצורה ויזואלית ולהסיק מסקנות אשר‬
‫מובילות לשורש הבעיה‪ .‬כל הנתונים מרוכזים בצורת טבלאות‪.‬‬
‫להלן תצוגה מתוך המאגר הרשמי של ‪ Medicare‬אשר נבנה על ידי ארגון ה‪:CMS-‬‬

‫איור ‪ - 8‬דך הכניסה למאגר‬

‫‪42‬‬
‫איור ‪ - 9‬תיאור מידע על טבלה נבחרת‬

‫איור ‪ – 10‬מאפיינים של הדאטה‬

‫המאגר מתחלק ל‪ 10-‬נושאים שונים‪ ,‬ובהם‪ :‬השוואות בתי חולים‪ ,‬השוואות בתי אשפוז‪ ,‬מידע על‬
‫הרופאים‪ ,‬בתי חולים לטווח ארוך‪ ,‬מידע על מטופלי פנים ועוד‪ .‬בנוסף לעשרת הנושאים הכלליים‪ ,‬כל‬
‫נושא מכיל בתוכו מספר שונה של טבלאות וסה"כ יש עשרות מיליוני שורות המפוזרות בטבלאות‬
‫השונות‪.‬‬

‫סוגי‬
‫הנתונים‬
‫במאגר‬

‫איור ‪ - 11‬חלוקת הדאטה לפי נושאים‬

‫‪43‬‬
‫המערכת הקיימת של ‪ Medicare‬מאפשרת‪:‬‬
‫יצירת גרפים‪ :‬בסיסיים ללא הצלבות מידע מטבלאות אחרות וללא שום ניתוח נתונים כזה או אחר מעבר‬
‫לתצוגה גרפית‪.‬‬
‫ייבוא של הטבלאות‪ :‬בפורמטים שונים‪.‬‬
‫‪ :API‬ספריות קוד מוכנות ובסיסיות שאפשר לעשות בהם שימוש‪.‬‬
‫נראה אומנם שקיים פוטנציאל טוב של החידוש שאנחנו מציעים בביצוע אנליטיקה עסקית למאגרי‬
‫הנתונים שלהם‪.‬‬

‫איור ‪ - 12‬ויזואליזציה שהמערכת הקיימת מציעה‬

‫המצב הקיים נכון לתאריך הגשת העבודה ‪ 21.06.2020‬לא השתנה‪.‬‬

‫‪44‬‬
‫ניתוח חלופות מערכתיות‬ ‫‪5‬‬

‫‪4‬‬

‫‪5‬‬

‫חלופה ראשונה‪ :‬פיתוח עצמי כולל של המערכת‬ ‫‪5.1‬‬


‫חלופה זאת כוללת את כתיבת כלל הקוד והאלגוריתמים‪ ,‬הקמת פלטפורמת אינטרנט ובניית אלגוריתם‬
‫מותאם‪.‬‬

‫יתרונות‪:‬‬

‫רכישת מיומנויות חדשות‪.‬‬ ‫‪‬‬

‫המערכת תתאים בצורה מיטבית לדרישות‪.‬‬ ‫‪‬‬

‫גמישות גבוהה לשינויים תוך כדי הפיתוח ולאחריו‪.‬‬ ‫‪‬‬

‫אפשרות לייצר ממשקים חדשים או מערכות שטרם נראו‪.‬‬ ‫‪‬‬

‫חסרונות‪:‬‬
‫ידע רב בתכנים טכניים‪ ,‬כגון כתיבת ממשקי ווב‪ ,‬חיבורים לדטאות וכד'‪.‬‬ ‫‪‬‬

‫תוצאות לא בהכרח אמינות מספיק לשימוש חיצוני‪.‬‬ ‫‪‬‬

‫קושי בהתאמת סטנדרטים של המערכת אל השוק‪.‬‬ ‫‪‬‬

‫שעות פיתוח גדולות יותר‪.‬‬ ‫‪‬‬

‫שעות מהנדס רבות‪.‬‬ ‫‪‬‬

‫חלופה שנייה‪ :‬שילוב של פיתוח עצמי עם מוצרי מדף‬ ‫‪5.2‬‬

‫החלופה המועדפת לשימוש בפרויקט זה‪ .‬כולל לקיחת אלגוריתמים קיימים‪ ,‬קודים פתוחים ושירותי רשת‬
‫(‪ )API-Web‬ושילובם בעזרת פיתוח עצמאי למערכת אחת אשר תוצג על גבי פלטפורמת ‪.Power BI‬‬

‫יתרונות‪:‬‬

‫אלגוריתמים מוכחים בעל אסמכתאות של הצלחה‪.‬‬ ‫‪‬‬

‫‪45‬‬
‫שימוש ב ‪ Open Source -‬יצמצם משמעותית אז זמן הפיתוח‪.‬‬ ‫‪‬‬

‫הבנה של הטכנולוגיה הקיימת בשוק‪.‬‬ ‫‪‬‬

‫חסרונות‪:‬‬
‫אין התאמה מדויקת של האלגוריתמים לדרישות המערכת‪.‬‬ ‫‪‬‬

‫שילוב של מוצרים שונים יקשה על אינטגרציית המערכות‪.‬‬ ‫‪‬‬

‫אי התאמה בין רמת הידע של הפיתוח העצמי לבין הידע הנדרש להפעלת מוצרים קיימים‪.‬‬ ‫‪‬‬

‫חלופה שלישית‪ :‬הרכבת פתרון ממוצרי מדף וקסטומיזציה של המוצרים‬ ‫‪5.3‬‬


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

‫טבלת חלופות‬ ‫‪5.4‬‬


‫בחירת חלופה על פי ממוצע משוקלל (*ציונים בסקאלה של ‪ )1-5‬מספר גבוה מייצג מצב טוב יותר‬
‫קריטריון‬ ‫משקל‬ ‫שילוב של פיתוח עצמי עם מוצרי מדף‬ ‫שימוש מלא במוצר מדף‬
‫עלויות פיתוח\רכישה‬ ‫‪0.1‬‬ ‫‪4‬‬ ‫‪2‬‬
‫משך זמן פיתוח‬ ‫‪0.25‬‬ ‫‪5‬‬ ‫‪3‬‬
‫אפשרויות לשינויים\הרחבות‬ ‫‪0.2‬‬ ‫‪3‬‬ ‫‪1‬‬
‫אחזקה‬ ‫‪0.15‬‬ ‫‪3‬‬ ‫‪5‬‬
‫עמידה בדרישות הפרויקט‬ ‫‪0.3‬‬ ‫‪3‬‬ ‫‪1‬‬
‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬
‫סה"כ‬ ‫‪1‬‬ ‫‪3.6‬‬ ‫‪2‬‬

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

‫‪46‬‬
‫הקריטריון עמידה בדרישות הפרויקט קיבל את המשקל הגבוה ביותר משום שזאת האינדיקציה‬ ‫‪‬‬
‫הכי משמעותית עבורנו לדעת אם הצלחנו‪.‬‬

‫החלופה הראשונה קיבלה ציון גבוה בהרבה ביחס לחלופה השנייה ומהווה אופציה טובה יותר‪.‬‬

‫אפיון המערכת‬ ‫‪6‬‬

‫‪6‬‬

‫טבלת בעלי עניין‬ ‫‪6.1‬‬

‫אילוצים ומגבלות‬ ‫יכולות ומאפיינים‬ ‫ההתייחסות‬ ‫ערך עיקרי\תועלת‬ ‫שחקנים‬ ‫בעלי עניין‬
‫שעלול ליצור‬ ‫הרלוונטיים עבורו‬ ‫המצופה ממנו‬ ‫מהמוצר עבורו‬
‫אין‬ ‫דוחות‪ ,‬ניתוחים‬ ‫תמיכה‬ ‫שיפור מערכות הבריאות‬ ‫‪1‬‬
‫ארגון ‪CMS‬‬
‫היסטוריים‪ ,‬חיזויים‬ ‫תחתיו‬
‫יצירת דוחות‬ ‫דוחות‪ ,‬ניתוחים‬ ‫תמיכה במערכת כדי‬ ‫יכולות חיזוי לאיכות‬ ‫שחקן – בתי החולים‬
‫נקודתיים אשר לא‬ ‫היסטוריים‪ ,‬חיזויים‬ ‫להפיק שיפורים בבית‬ ‫השירות שלהם‪ ,‬שינויים‬
‫נוצרו בעבר‬ ‫חולים שלו‬ ‫צפויים בתחומים נבחרים‬
‫ודורשים פיתוח‬ ‫(הערכות צוות רפואי‪,‬‬
‫ציוד רפואי‪)...‬‬

‫אין‬ ‫דוחות וחיזויים‬ ‫אדישות‬ ‫ידיעת מיקמו ביחס‬ ‫שחקן ‪ -‬רופא‬


‫לרופאים אחרים‪,‬‬
‫תובנות בבחירת ב"ח‬
‫לעבוד בו‬

‫אין‬ ‫דוחות וחיזויים‬ ‫אדישות‬ ‫רשימת רופאים ובתי‬ ‫שחקן ‪ -‬מטופל‬


‫חולים אשר יותאמו‬
‫לצורכי המטופל‬

‫‪1‬‬
‫‪CMS - The Centers for Medicare & Medicaid Services‬‬
‫‪47‬‬
‫מערכת מסובכת‬ ‫תצוגה של מצב‬ ‫דרישה לרמת שירות‬ ‫יכולת להשוות בין שירותי‬ ‫אזרח‬
‫עבור משתמשים‬ ‫נוכחי‬ ‫גבוהה‪ ,‬יכולת להגעת‬ ‫המוצרים העומדים‬
‫מאוכלוסייה‬ ‫מסקנות בקלות‬ ‫לרשותו בסביבתו‬
‫מבוגרת‬

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

‫יצירת דוחות‬ ‫דוחות‪ ,‬ניתוחים‬ ‫תמיכה במערכת כדי‬ ‫ניהול סיכונים חכם יותר‬ ‫בעל עניין – גופי ביטוח‬
‫נקודתיים אשר לא‬ ‫היסטוריים‪ ,‬חיזויים‬ ‫שנוכל לבנות עבורם‬ ‫המתבסס על ניתוח וחיזוי‬
‫נוצרו בעבר‬ ‫דוחות רלוונטיים‬ ‫של מידע רלוונטי עבורם‬
‫ודורשים פיתוח‪.‬‬ ‫לדרישות שלהם‪ .‬בכך‬
‫הם יוכלו לתמחר נכון‬
‫קיים ברשותם‬ ‫יותר חבילות ביטוח‬
‫מערכת פנימית‬ ‫לבתי חולים\מטופלים‬
‫אשר מבצעת‬
‫פעולות דומות‪,‬‬
‫לשם כך נצטרך‬
‫להכין מערכת‬
‫בעלת ביצועיים‬
‫ודיוקים טובים‬
‫יותר‬
‫אין‬ ‫דוחות‬ ‫אדישות‬ ‫השוואה למצבם ולאיכות‬ ‫גופי בריאות המקבילים‬
‫הרפואה שהם מספקים‬ ‫ל‪ Medicare‬בשאר‬
‫העולם‬

‫‪48‬‬
‫דיאגרמת מקרי שימוש – ‪Use case‬‬ ‫‪6.2‬‬

‫‪49‬‬
‫דרישות פונקציונליות‬ ‫‪6.3‬‬
‫המערכת תאפשר לבצע ‪ drill down, drill across‬ו‪ slice and dice -‬בסקירת הנתונים‪.‬‬ ‫‪‬‬

‫המערכת תאפשר הצגה עדכנית של מדדי הביצוע של בתי חולים‪.‬‬ ‫‪‬‬

‫המערכת תאפשר יצירת דוחות עסקיים בתדירות הנקבעת על ידי המשתמש ובפורמט ‪.PDF‬‬ ‫‪‬‬

‫המערכת תאפשר הצגה ויזואלית של הנתונים בצורות שונות‪ :‬תרשימים‪ ,‬טבלאות‪ ,‬גרפים‬ ‫‪‬‬

‫וכדומה‪.‬‬
‫המערכת תאפשר יצירת דוח שגיאות המתעד אי התאמות בנתוני המערכת‪.‬‬ ‫‪‬‬

‫המערכת תאפשר טעינה\שליפה של תוצאות מודלי החיזוי מתוך\אל בסיס מידע מסוג ‪. MySql‬‬ ‫‪‬‬

‫המערכת תאפשר יכולת סינון נתונים לפי תצוגות פילוח לבחירת הלקוח‪.‬‬ ‫‪‬‬

‫המערכת תאפשר מיזוג מידע ממקורות שונים ומסוגים שונים‪.‬‬ ‫‪‬‬

‫המערכת תאפשר בניית מדדים חדשים ע"ב הנתונים‪.‬‬ ‫‪‬‬

‫המערכת תאפשר חיזוי מתוך כריית המידע‪ ,‬אשר התקיים בשלב ה‪ ,ETL-‬ותציג ויזואליציות‬ ‫‪‬‬

‫שונות אשר יאפשרו למשתמש‪.‬‬


‫ממשקים שונים לבעלי עניין שונים‪ ,‬לדוגמה – גופי ביטוח‪ ,‬אזרח ורופא‪.‬‬ ‫‪‬‬

‫המערכת תדע לבצע שימוש במודלים של ‪ Machine learning‬תוך שימוש בנתונים‪ ,‬למען חיזוי‪,‬‬ ‫‪‬‬

‫קלסיפיקציה וקליסטור בעת הצורך‪.‬‬


‫המערכת תתמוך בהתראות על שינויים בבסיסי נתונים בצורה חודשית‪ .‬המערכת הינה מחוברת‬ ‫‪‬‬

‫לנתונים חודשיים ולא יומיים או שעתיים‪.‬‬


‫ניתן יהיה לאתחל או לרענן את המערכת‪ .‬ריענון יבצע טעינה מחדש של הנתונים‪ ,‬ואתחול יבצע‬ ‫‪‬‬

‫חזרה להגדרות ראשוניות של המערכת – נתוני ברירת מחדל‪.‬‬


‫המערכת תתמוך בניהול משתמשים קיימים במערכת צד עסק‪.‬‬ ‫‪‬‬

‫המערכת תדע לקבל משובים מהלקוח לשם שיפור השירות הן בפן השירותי והן בפן המקצועי‪.‬‬ ‫‪‬‬

‫דרישות לא פונקציונליות‬ ‫‪6.4‬‬


‫המערכת תאחסן נתונים אישיים בצורה מאובטחת ומוצפנת‪.‬‬ ‫‪‬‬

‫המערכת תבנה מודולרית כך שבעתיד יהיה ניתן לבצע שינויים בקלות ולהוסיף פונקציות חדשה‬ ‫‪‬‬

‫ולהרחיב את המערכת‪.‬‬

‫‪50‬‬
‫הקבצים המתקבלים למערכת (‪ )Input‬צריכים להיות בפורמט ‪.CSV/TXT/TSV/JSON‬‬ ‫‪‬‬

‫זמן עליית ממשקי המערכת לא יעלה על ‪ 10‬שניות‪.‬‬ ‫‪‬‬

‫המערכת הינה מערכת ‪ WEB‬בלבד ותתאים לשימוש במחשב‪.‬‬ ‫‪‬‬

‫שימוש במודלים קיימים לחיזוי (מינימליות לאלגוריתם)‪.‬‬ ‫‪‬‬

‫תמיכה בכל הדפדפנים הקיימים בשוק‪Safari, Firefox, Chrome and Explorer :‬‬ ‫‪‬‬

‫עלות המערכת עד לבניית אבטיפוס אינה תעלה על ‪ 1200‬שעות אדם‪.‬‬ ‫‪‬‬

‫על המערכת להיות קלה ומובנת לשימוש על ידי כל המשתמשים‪ ,‬אינטואיטיבית ומובנת לשימוש‬ ‫‪‬‬

‫לפי אמות מידה בסיסיות בסביבות תומכות של ‪.,UX UI‬‬


‫המערכת צריכה לתרום למשתמש בביצוע משימותיו ובהשגת מטרותיו‪.‬‬ ‫‪‬‬

‫אב טיפוס ראשון של המערכת יבנה‪.‬‬ ‫‪‬‬

‫‪51‬‬
‫תיכון המערכת‬ ‫‪7‬‬

‫‪7‬‬

‫‪Network Diagram‬‬ ‫‪7.1‬‬


‫תרשים זה מתאר ארכיטקטורה של מערכת ‪ BI‬כפי שצוין בפרקים הקודמים‬

‫תרשים ‪Network Diagram - 17‬‬

‫‪52‬‬
‫תרשים ‪ERD‬‬ ‫‪7.2‬‬
‫התרשים המוצג מטה מציג את הנתונים הנכנסים כקלט למערכת‪.‬‬
‫בראש כל טבלה מצוין שמה ומאיזה מערכת היא מגיעה בארגון‪.‬‬

‫‪53‬‬
‫מילון נתונים‬ ‫‪7.3‬‬
‫מילון הנתונים המובא‪ ,‬מסביר את כל אחד מהשדות הנתונים ב ‪.ERD‬‬

‫שם הטבלה‪:‬‬
‫‪Hospital General Information‬‬
‫הסבר על הטבלה‪ :‬הטבלה מציגה תיאור כללי ופרטים רבים על בתי החולים‪.‬‬
‫מילון נתונים‪:‬‬
‫‪Hospital General Information‬‬
‫‪Description‬‬ ‫‪Type‬‬ ‫‪Field‬‬
‫מספר מזהה ייחודי‬
‫של בית החולים‬ ‫)‪Num(8‬‬ ‫(‪Provider id )PK‬‬
‫שם של בית‬
‫החולים‬ ‫)‪Char(52‬‬ ‫‪Hospital name‬‬
‫כתובת בית‬
‫החולים‬ ‫)‪Char(51‬‬ ‫‪Address‬‬
‫העיר בה נמצא‬
‫בית החולים‬ ‫)‪Char(20‬‬ ‫‪City‬‬
‫המדינה בה נמצא‬
‫בית החולים(ראשי‬
‫תיבות)‬ ‫)‪Char(2‬‬ ‫‪State‬‬
‫תא דואר של בית‬
‫החולים‬ ‫)‪Num(8‬‬ ‫‪Zip code‬‬
‫המחוז של בית‬
‫החולים‬ ‫)‪Char(25‬‬ ‫‪Country name‬‬
‫מספר הטלפון של‬
‫בית החולים‬ ‫)‪Num(8‬‬ ‫‪Phone number‬‬
‫סגנון הרפואה של‬
‫בית החולים‬ ‫)‪Char(25‬‬ ‫‪Hospital type‬‬
‫מטרת הרווח של‬
‫בית החולים‬ ‫)‪Char(43‬‬ ‫‪Hospital ownership‬‬
‫האם קיים שירות‬
‫רפואה דחופה‬
‫בבית החולים‬ ‫)‪Char(3‬‬ ‫‪Emergency services‬‬
‫דירוג כללי של בית‬
‫החולים‬ ‫)‪Char(13‬‬ ‫‪Hospital overall rating‬‬
‫השוואה של‬
‫בטיחות המטופלים‬ ‫‪Safety of care national‬‬
‫ברמה לאומית‬ ‫)‪Char(28‬‬ ‫‪comparison‬‬
‫‪54‬‬
‫השוואה של‬
‫אשפוז מחדש‬ Readmission national
‫ברמה לאומית‬ Char(28) comparison
‫השוואה של חווית‬
‫המטופל ברמה‬ Patient experience national
‫לאומית‬ Char(28) comparison
‫השוואה של יעילות‬
‫הטיפול ברמה‬ Effectiveness of care
‫לאומית‬ Char(28) national comparison
‫השוואה של‬
‫זמינות הטיפול‬ Timeliness of care national
‫ברמה לאומית‬ Char(28) comparison
‫מיקום מדויק‬ Location Location

Unplanned Hospital Visits - Hospital :‫שם הטבלה‬


.‫ הטבלה מציגה אשפוזים חוזרים לפי מדדי רפואה שונים בבתי החולים‬:‫הסבר על הטבלה‬
:‫מילון נתונים‬
Unplanned Hospital Visits - Hospital
Description Type Field
‫מספר מזהה ייחודי‬
‫של בית החולים‬ Num(8) Provider id )PK(
‫שם של בית‬
‫החולים‬ Char(52) Hospital name

‫שם המדד‬ Char(79) Measure name


‫מספר מזהה של‬
‫המדד‬ Char(20) Measure id
‫השוואה לרמת‬
‫המדינה‬ Char(65) Compared to national

‫מכנה של המדד‬ Char(70) Denominator

‫ציון עבור המדד‬ Char(71) Score

‫הערכה נמוכה‬ Char(70) Lower estimate

‫הערכה גבוהה‬ Char(71) Higher estimate

55
‫ הערה‬Char(147) Footnote )FK(
‫תאריך תחילת‬ Floating
‫ המדד‬Timestamp Measure start date
Floating
‫ תאריך סוג המדד‬Timestamp Measure end date

:‫שם הטבלה‬
Footnote Crosswalk
.‫ הטבלה מציגה הסבר על הערת שוליים מטבלאות אחרות‬:‫הסבר על הטבלה‬
:‫מילון נתונים‬
Footnote Crosswalk
Description Type Field
‫מספר מזהה ייחודי‬
‫של ההערת‬
‫השוליים‬ Num(8) Footnote )PK(
‫הסבר על ההערת‬
‫ השוליים‬Char(226) Footnote text

Complications and Deaths - Hospital :‫שם הטבלה‬


.‫ הטבלה מציגה סיבוכים ומקרי מוות‬:‫הסבר על הטבלה‬
:‫מילון נתונים‬
Complications and Deaths - Hospital
Description Type Field
‫מספר מזהה ייחודי‬
‫של בית החולים‬ Char(6) Provider id )PK(
‫שם של בית‬
‫החולים‬ Char(66) Hospital name

‫שם המדד‬ Char(72) Measure name


‫מספר מזהה של‬
‫המדד‬ Char(25) Measure id )FK2(
‫השוואה לרמת‬
‫המדינה‬ Char(36) Compared to national

‫מכנה של המדד‬ Char(13) Denominator

‫ציון עבור המדד‬ Char(13) Score

56
‫הערכה נמוכה‬ Char(13) Lower estimate

‫הערכה גבוהה‬ Char(13) Higher estimate

‫הערה‬ Char(145) Footnote )FK1(


‫תאריך תחילת‬
‫המדד‬ date Measure start date
‫תאריך סוג המדד‬ date Measure end date

:‫שם הטבלה‬
Medicare Hospital Spending by Claim
‫ ממוצעי הוצאות על התביעות‬,‫ הטבלה מציגה מקרי תביעות של מטופלים כנגד בית החולים‬:‫הסבר על הטבלה‬
.‫ואחוזים‬
:‫מילון נתונים‬
Medicare Hospital Spending by Claim
Description Type Field
‫מספר מזהה ייחודי‬
‫של בית החולים‬ Char(8) Provider id )PK(
‫שם של בית‬
‫החולים‬ Char(66) Hospital name

‫סוג התביעה‬ Char(27) Claim type


‫הוצאה ממוצעת‬ Avg spending per episode
‫לפי פרק זמן‬ Char(7) hospital
‫הוצאה ממוצעת‬
‫לפי פרק זמן‬ Avg spending per episode
‫ברמת מדינה‬ Char(7) state
‫הוצאה ממוצעת‬
‫לפי פרק זמן‬ Avg spending per episode
‫ברמת לאום‬ Char(7) nation
‫אחוז הוצאה‬ Percent of spending
‫ברמת בית החולים‬ Char(8) hospital
‫אחוז הוצאה‬
‫ברמת מדינה‬ Char(8) Percent of spending state
‫אחוז הוצאה‬
‫ברמת לאום‬ Char(8) Percent of spending nation

‫תאריך התחלה‬ date Start date

57
‫תאריך סיום‬ date End date

:‫שם הטבלה‬
Medicare Spending Per Beneficiary – Hospital
.‫ הטבלה מציגה מדדי הוצאה לפי פרקי זמן שונים‬:‫הסבר על הטבלה‬
:‫מילון נתונים‬
Medicare Spending Per Beneficiary – Hospital
Description Type Field
‫מספר מזהה ייחודי‬
‫של בית החולים‬ Char(8) Provider id )PK(
‫שם של בית‬
‫החולים‬ Char(52) Hospital name

‫שם המדד‬ Char(76) Measure name


‫מספר מזהה של‬
‫המדד‬ Char(8) Measure id

‫ציון‬ Char(59) Score


‫הערת שוליים על‬
‫ המדד‬Char(157) Footnote
‫תאריך התחלת‬ Floating
‫ בדיקת המדד‬Timestamp Measure start date
‫תאריך סוף בדיקת‬ Floating
‫ המדד‬Timestamp Measure end date

58
:‫שם הטבלה‬
Hospital Value-Based Purchasing (HVBP) – Efficiency Scores
‫ יחסי הביצועים שלהם‬,VBP ‫ הטבלה מציגה את בתי החולים אשר משתתפים בתוכנית‬:‫הסבר על הטבלה‬
.‫וציוניהם‬
.‫ זו תוכנית המתגמלת בתי חולים עבור איכות שירותי הטיפול אשר הם מספקים‬VBP
MSPB - Medicare Spending per Beneficiary
:‫מילון נתונים‬
Hospital Value-Based Purchasing (HVBP) – Efficiency
Scores
Description Type Field
‫מספר מזהה ייחודי‬
‫של בית החולים‬ Char(8) Provider number )PK(
‫שם של בית‬
‫החולים‬ Char(52) Hospital name
MSPB 1 achievement
‫סף ההוצאה‬ Char(10) threshold
‫מדד ההוצאה‬ Char(10) MSPB 1 benchmark
‫שיעור הבסיס של‬
‫ההוצאה‬ Char(15) MSPB 1 baseline rate
‫שיעור הביצוע של‬
‫ההוצאה‬ Char(15) MSPB 1 performance rate
‫הישג ההוצאה(בין‬ MSPB 1 achievement
)10-‫ ל‬0 Char(15) points
-‫ ל‬0 ‫ציון המדד(בין‬
)10 Char(15) MSPB 1 measure score
‫נקודות לשיפור(בין‬ MSPB 1 improvement
)9-‫ ל‬0 Char(15) points

Hospital Readmissions Reduction Program :‫שם הטבלה‬


.‫ הטבלה מציגה צמצום בתקציב של בית החולים עקב כמות אשפוזים חוזרים גבוהה‬:‫הסבר על הטבלה‬
:‫מילון נתונים‬
Hospital Readmissions Reduction Program
Description Type Field
‫מספר מזהה ייחודי‬
‫של בית החולים‬ Char(8) Provider id )PK(
‫שם של בית‬
‫החולים‬ Char(52) Hospital name

59
‫שם המדד‬ Char(24) Measure name
‫מספר אי החיובים‬
‫לבית החולים‬ Char(15) Number of discharges
‫מספר פעמים של‬
‫אשפוז חוזר‬ Char(15) Number of readmissions
‫הערת שוליים על‬
‫המדד‬ Char(157) Footnote )FK(
‫שיעור חיזוי של‬
‫אשפוזים חוזרים‬ Char(15) Predicted readmission rate
‫שיעור בפועל של‬
‫אשפוזים חוזרים‬ Char(15) Expected readmission rate
‫תאריך תחילת‬
‫בדיקת המדד‬ Char(12) Start date
‫תאריך סוף בדיקת‬
‫המדד‬ Char(12) End data

Hospital Value-Based Purchasing (HVBP) – Total Performance Score :‫שם הטבלה‬


. ‫ הטבלה מציגה דירוג של מטופלים לגבי השירות שהם קיבלו בבית החולים‬:‫הסבר על הטבלה‬
:‫מילון נתונים‬
Hospital Value-Based Purchasing (HVBP) – Total
Performance Score
Description Type Field
‫מספר מזהה ייחודי‬
‫של בית החולים‬ Char(8) Provider id )PK(
‫שם של בית‬
‫החולים‬ Char(52) Hospital name
Unweighted Normalized
‫ציון קליני לא‬ Clinical Care Domain
‫משוקלל‬ Char(18) Score
Weighted Normalized
Clinical Care Domain
‫ציון קליני משוקלל‬ Char(17) Score
Unweighted Person and
‫ציון אדם ומעורבות‬ Community Engagement
‫לא משוקלל‬ Char(18) Domain Score
Weighted Person and
‫ציון אדם ומעורבות‬ Community Engagement
‫משוקלל‬ Char(17) Domain Score
60
‫ציןו בטיחות לא‬ Unweighted Normalized
‫משוקלל‬ Char(18) Safety Domain Score
‫ציון בטיחות‬ Weighted Safety Domain
‫משוקלל‬ Char(17) Score
Unweighted Normalized
‫ציון יעילות וצמצום‬ Efficiency and Cost
‫עלויות לא משוקלל‬ Char(18) Reduction Domain Score
Weighted Efficiency and
‫ציון יעילות וצמצום‬ Cost Reduction Domain
‫עלויות משוקלל‬ Char(17) Score

‫ציון ביצועים כולל‬ Char(17) Total Performance Score


Measure Dates :‫שם הטבלה‬
.‫ הטבלה מציגה הסבר על מדדים מטבלאות אחרות‬:‫הסבר על הטבלה‬
:‫מילון נתונים‬
Measure Dates
Description Type Field
‫מספר מזהה ייחודי‬
‫של המדד‬ Char(30) Measure ID )PK(

‫הסבר על המדד‬ Char(136) Measure Name

Physician Compare National Downloadable File :‫שם הטבלה‬


‫ הטבלה מציגה רשימה של רופאים ונתונים אישיים עליהם ובנוסף באיזה בית חולים הם‬:‫הסבר על הטבלה‬
.)‫מועסקים(רופא יכול להיות מועסק במספר בתי חולים‬
:‫מילון נתונים‬
Physician Compare National Downloadable File
Description Type Field
‫מספר ייחודי של‬ Professional )PK(
‫הרופא‬ Number Enrollment ID
‫מספר מזהה נוסף‬
‫של רופא‬ Number NPI )FK1(
‫שנת הסכמה‬
‫כרופא‬ number Graduation year
‫התמחות ראשית‬ Char(50) Primary specialty

1 ‫התמחות משנית‬ Char(50) Secondary specialty 1


61
2 ‫התמחות משנית‬ Char(50) Secondary specialty 2
‫מספר בית החולים‬ Number Hospital affiliation )FK2(
1 ‫בו הוא מועסק‬ CCN 1
‫שם בית החולים‬ Char(70)
1 ‫בו הוא מועסק‬ Hospital affiliation LBN 1
‫מספר בית החולים‬ Number Hospital affiliation )FK3(
2 ‫בו הוא מועסק‬ CCN 2
‫שם בית החולים‬ Char(70)
2 ‫בו הוא מועסק‬ Hospital affiliation LBN 2
‫מספר בית החולים‬ Number Hospital affiliation )FK4(
3 ‫בו הוא מועסק‬ CCN 3
‫שם בית החולים‬ Char(70)
3 ‫בו הוא מועסק‬ Hospital affiliation LBN 3

:‫שם הטבלה‬
Physician Compare Individual EC Public Reporting - Measures
.‫ הטבלה מציגה רשימה של מדדים שונים בהם נבדקו הרופאים ועליהם הם מקבלים תמריצים‬:‫הסבר על הטבלה‬
:‫מילון נתונים‬
Physician Compare Individual EC Public Reporting -
Measures
Description Type Field
‫מספר מזהה של‬
‫רופא‬ Number NPI )PK(

‫קוד מדד‬ Char(40) Measure Code


‫הסבר על המדד‬ Char(250) Measure Title
Number Measure Performance
‫דירוג ביצוע המדד‬ Rate
‫מספר הפעמים‬ Number
‫שבוצע המדד‬ Denominator Count
‫האם הרופא דיווח‬ Char(1)
‫על ביצוע המדד‬ Reported on PC Live Site

62
7

63
‫תכנית הפרויקט‬ ‫‪8‬‬
‫‪ - Gant‬תכנית עבודה מעודכנת‬ ‫‪8.1‬‬

‫‪64‬‬
65
66
67
WBS 8.2

68
‫ניהול סיכונים מעודכן‬ ‫‪8.3‬‬
‫בטבלה הבאה נמפה את ההסתברות לכל סיכון וכן נעריך את הנזק הצפוי ממנו (מנורמל‬
‫לטווח בין ‪  0‬ל‪.) 1-‬‬
‫לו"ז‬ ‫פעילות לנטרול הסיכון‬ ‫הסתברות‬ ‫חומרה‬ ‫הסיכון‬ ‫קטגוריה‬ ‫מס‬
‫לביצוע‬ ‫הסיכון‬

‫השקעת זמנים‬ ‫‪0.1‬‬ ‫‪9‬‬ ‫אי‪-‬עמידה בלו"ז‬ ‫תכנון‬ ‫‪1‬‬


‫בצורה יעילה‪,‬‬ ‫הפרויקט‬
‫עבודה צמודה עם‬
‫המנחה‬

‫סמסטר ב'‬ ‫קורס אקדמי (פייתון‬ ‫‪0.2‬‬ ‫‪7‬‬ ‫פערי ידע בשפת התכנות‬ ‫‪2‬‬
‫שנה ג'‪,‬‬ ‫לתו"ן)‪ ,‬שימוש בעבודה‪,‬‬ ‫הדרושה (‪)Python‬‬
‫שנה ד'‬ ‫למידה עצמאית באינטרנט‬

‫קורסים אקדמייםשנה ג'‪ ,‬שנה ד'‬ ‫‪0.4‬‬ ‫‪6‬‬ ‫למידה של‬ ‫פערי ידע‬ ‫‪3‬‬
‫(כריית מידע‪,‬‬ ‫אלגוריתמים לא‬
‫למידה חישובית)‪,‬‬ ‫מתאימים‬
‫למידה עצמאית‬
‫באינטרנט‬

‫תחזוקת בסיס‬ ‫‪0.3‬‬ ‫‪8‬‬ ‫בניית מודל‬ ‫‪4‬‬


‫הנתונים מבחינת‬ ‫מסובך‬ ‫בניית‬
‫אינדקסים‬ ‫המודל‬
‫ואופטימיזציה של‬
‫השאילתות‬

‫‪69‬‬
‫הרצת האלגוריתמים מספר‬ ‫‪0.4‬‬ ‫‪9‬‬ ‫יישום לא נכון‬ ‫‪5‬‬
‫רב של פעמים‬ ‫של מודלים‬
‫תוך התייחסות למקרי קצה‬ ‫ואלגוריתמים‬
‫מצד הקלטים‬
‫הכוונה של המרצה‪ ,‬בדיקת‬ ‫‪0.3‬‬ ‫‪9‬‬ ‫כלים לא‬ ‫‪6‬‬
‫כלים שטחית ומהירה‬ ‫מתאימים בבניית‬
‫להבנת טיב התאמה עבורנו‬ ‫הפרויקט‬
‫והתייעצות עם מניסיונם‬
‫של אחרים (בוגרי אפקה)‬

‫‪70‬‬
‫מפת סיכונים‬ ‫‪8.4‬‬
‫‪10‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬
‫‪9‬‬ ‫‪1‬‬ ‫‪ ‬‬ ‫‪6 ‬‬ ‫‪5‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬
‫‪8‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪4‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬
‫‪7‬‬ ‫‪ ‬‬ ‫‪2‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪<63‬‬ ‫‪ ‬‬
‫‪6‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪3‬‬ ‫‪<24‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬
‫חומרה‬ ‫‪5‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬
‫‪4‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬
‫‪3‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬
‫‪2‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬
‫‪1‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬ ‫‪ ‬‬
‫‪ ‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫‪5‬‬ ‫‪6‬‬ ‫‪7‬‬ ‫‪8‬‬ ‫‪9‬‬ ‫‪10‬‬
‫הסתברות‬

‫‪71‬‬
‫התוצר‬ ‫‪9‬‬

‫תהליך ‪ETL‬‬ ‫‪9.1‬‬


‫ארגון ה‪ CMS-‬ייצר אתר המכיל בתוכו מאגר נתונים הקיים לרשות הארגון‪ .‬כנאמר ממקודם ארגון ה‪-‬‬
‫‪ CMS‬אחראי על ניהול‪ ,‬תפקוד וביצוע תוכנית ‪ Medicare‬בארה"ב‪ ,‬אי לכך‪ ,‬ברבות השנים הארגון אסף‬
‫לחובו נתונים רבים ומגוונים על כל ההיבטים הרפואיים הקשורים בדבר‪.‬‬
‫כחלק ממדיניות ה‪ CMS‬השקופה‪ ,‬הארגון מעלה בצורה פתוחה לציבור את מאגר הנתונים שלו‪ .‬בנוסף‬
‫לאפשרות לעשות שימוש בנתונים הארגון פתח אפשרויות רבות למשיכת הנתונים ‪ :‬הורדת קובץ אקסל‪/‬‬
‫‪/CSV‬משיכת נתונים ע"י חיבור ל‪.API-‬‬
‫כחלק מתהליכי ה‪ ETL-‬שפורטו בסקירת הספרות‪ ,‬אנו בחרנו להתחבר ל‪ API-‬של הארגון (‬
‫‪ ,)Extraction‬כדי שהתהליך יהיה נקי ומקצועי יותר‪ .‬לשם התהליך הורדנו לתוכנת הפיתון את חבילת '‬
‫‪ 'SODAPY‬אשר מאפשרת התממשקות למאגר נתונים דרך קריאת ‪ .API‬צורת הנתונים הגיעה בתצורת‬
‫רשימה‪ ,‬וביצענו המרה ל‪ DataFrame-‬כדי שנוכל לגעת בנתונים בפייתון (‪ )Transform‬ובנוסף ביצענו‬
‫גם הכנת נתונים אשר תפורט באופן נקודתי לכל שאלת מחקר‪ .‬חלק חשוב בפרויקט הוא יצירת מאגר‬
‫נתונים אחוד‪ ,‬לשם כך השתמשנו בתוכנת ‪ MYSQL‬אשר אפשרה אחסון ועיבוד של הנתונים‪.‬‬
‫על מנת להתממשק עם תוכנת ‪ MYSQL‬בפיתון נעזרנו בחבילת ‪ .mysql.connector‬בעזרת חבילה זו‬
‫יכלנו לגשת למאגר נתונים שלנו שיצרנו‪ ,‬להריץ שאילתות‪ ,‬לבנות טבלאות‪ ,‬להכניס נתונים‪ ,‬למחוק‬
‫טבלאות ועוד‪.‬‬
‫ולבסוף התממשקנו (‪ )Load‬עם תוכנת ‪ Power BI‬אשר בה נציג את הויזואליזציות השונות אשר הפקנו‬
‫מהתהליכים הקודמים‪ ,‬התממשקות זו אפשרה לנו לטעון את כל הטבלאות וליצור את מסכי הקלט‬
‫השונים‪.‬‬

‫‪72‬‬
‫להלן מספר דוגמאות לשימוש בחבילה זו‪:‬‬

‫איור ‪ - 12‬חיבור ל‪ Database -‬ויצירת מצביע‬

‫איור ‪ - 13‬פונקציה להכנסת משתנים בצורה דינמית (ישנה פונקציה מבוססת ‪ CSV‬ופונקציה מבוססת ‪:)DataFrame‬‬

‫‪73‬‬
‫איור ‪ -14‬פונקציה ליצירת טבלה בעלת שמות עמודות דינמיים‬

‫איור ‪ - 15‬יצירת טבלה והכנסת נתונים דוגמה מה‪main -‬‬

‫‪74‬‬
‫איור ‪ - 16‬יצירת ‪ Database‬שלם ב‪MySql -‬‬

‫איור ‪ - 17‬התממשקות עם ‪powerbi‬‬

‫‪75‬‬
‫איור ‪ - 18‬התממשקות עם ‪powerbi‬‬

‫‪76‬‬
‫שאלות המחקר‬ ‫‪9.2‬‬

‫שאלת חיזוי ‪ :‬מציאת קבוצות של בתי חולים עם התנהגות כספית זהה‬ ‫‪9.2.1‬‬
‫שלב ‪– Business understanding‬‬
‫מטרת שאלה זו היא לקבץ בתי חולים לקבוצות של בעלי התנהגות כספית זהה‪ ,‬כאשר המטרה בסופו‬
‫של דבר היא לקבל תובנות למה בתי חולים מסוימים מקובצים יחד ומה מאפיין אותם‪ .‬מידע זה יתרום‬
‫לארגון ‪ Medicare‬לאפיין ולנתח בצורה עמוקה יותר את בתי החולים שתחתיו‪ .‬בנוסף מנהלי בתי חולים‬
‫יוכלו להבין התנהגות כספית של בתי חולים אחרים‪.‬‬
‫ישנם נתונים כספיים רבים על בתי חולים אך החלטנו להתמקד בנתונים כספיים מרכזיים כמו עלות‬
‫ההשקעות (בציוד ובמבנים) שנרכשו בידי בית החולים‪ ,‬סכום נכסים שברשות בית החולים‪ ,‬התחייבויות‬
‫כספיות של בית החולים והכנסות ממטופלים‪.‬‬
‫שלב ‪– Data understanding‬‬
‫כחלק מהכנת הנתונים לקראת המודל כתבנו שאילתה ב‪ MYSQL -‬ובה‪ :‬ניקינו ערכים ריקים והמרנו חלק‬
‫מהעמודות לסוג ‪.Char‬‬
‫שלב ‪– Data preparation‬‬
‫בשאלה זו בחרנו להשתמש באלגוריתם ‪-k‬מרכזים (‪ )k-means‬אשר היא שיטה פופולרית עבור ניתוח‬
‫אשכולות (‪ ) Clustering‬בכריית נתונים‪ .‬בחרנו באלגוריתם כיוון שהוא מהיר‪ ,‬פשוט ונותן תוצאות אמינות‬
‫כאשר מערכי נתונים נבדלים זה מזה או באופן נפרד‪ .‬בנוסף לכך הוא מאוד אינטואיטיבי (שיטת החישוב)‬
‫ולכן הוא מאוד פשוט לתפעול ובקרה‪ .‬האלגוריתם אינו מחלק בצורה ליניארית דווקא את הנתונים דבר‬
‫המהווה יתרון (למשל אל מול אלגוריתם ‪ SVM‬אשר מבצע הפרדות ליניאריות בין קבוצות)‪ .‬מטרת‬
‫האלגוריתם לחלק את התצפיות ל‪ k-‬אשכולות לפי מרכזי כובד (‪ .)k-means‬כל תצפית משויכת לאחד‬
‫מ"מרכזי הכובד"‪ .‬על ידי בחירה נכונה של מרכזי כובד ניתן לאתר את הקבוצות השונות‪ .‬בתוך כל אשכול‬
‫קיימים תצפיות אשר הינן בלתי תלויות אחת בשנייה‪ .‬בחרנו באלגוריתם זה היות והוא מתאים למענה על‬
‫שאלה של מציאת קבוצות בתי חולים עם התנהגות זהה‪ .‬זהו מודל יחסית פשוט ויעיל בניגוד למשל‬
‫לרשת נוירונים‪ ,‬זה נותן לנו יתרון מבחינת זמן ריצה בהתחשב בציוד הטכנולוגי שברשותנו ובנוסף יתרון‬
‫באיכות תוצאות יחסית למעט רשומות‪.‬‬
‫לאחר כתיבת השאילתה ב‪ MYSQL-‬כתבנו את המודל בפייתון‪ .‬בהתחלה בנינו את ה‪ Data frame -‬עם‬
‫כל העמודות הרלוונטיות והגדרנו שהשדה המזהה והייחודי הוא מספר בית חולים (‪.)provider_ccn‬‬
‫שלב ‪– Modeling‬‬
‫בתחילת הרצת המודל לא הגדרנו לכמה אשכולות המודל צריך לחלק ( ‪ )default=8‬ולאחר מספר הרצות‬
‫הבנו שכדי לנתח בצורה טובה מבחינה ויזואלית יהיה נכון יותר לחלק ל‪ 4-‬קבוצות‪ .‬חלק מהחסרונות של‬
‫המודל הוא שלעיתים הוא מחלק את הקבוצות בצורה אחידה (הרבה תלוי בנקודת ההתחלה שמשפיעה‬
‫על מרכזי הכובד)‪.‬‬

‫‪77‬‬
‫למטה ניתן לראות תוצאות הרצה של המודל ל‪ 8-‬ו‪ 4-‬קבוצות וכפי שניתן לראות יהיה יותר ברור ונוח‬
‫לנתח את הקבוצות בגרף הימני מאשר השמאלי‪.‬‬

‫איור ‪ 14‬חלוקת המודל ל‪ 8 -‬קבוצות‬ ‫איור ‪ 13‬חלוקת המודל ל‪ 4 -‬קבוצות‬

‫בחרנו בשיטת אתחול ‘‪( ’++k-means‬אשר מיושמת ב‪ )scikit-learning -‬כיוון שנרצה להאיץ את‬
‫ההתכנסות באופן חכם יותר ולא בצורה אקראית‪ ,‬שיטה זו מאתחלת את הסנטרואידים (ממוצע של‬
‫אשכול) להיות (בדר"כ) רחוקים זה מזה‪ ,‬מה שמוביל לתוצאות טובות יותר מאשר אתחול אקראי‪.‬‬
‫החיסרון בשיטה אקראית היא שיכול להיווצר מצב שמרכזי כובד של קבוצות יהיו קרובים יותר תחילה‬
‫דבר שעלול ליצור קבוצות זהות‪.‬‬
‫כפי שניתן לראות בגרף הרצנו את המודל עם מספר הרצות שונה‪ ,‬כאשר התחלנו עם הערך האוטומטי‬
‫של המודל והוא ‪ n=10.‬לאחר מכן ניסינו את המודל עם ‪ n=20‬ו‪ .n=50 -‬כפי שניתן לראות בגרף מטה‬
‫ניתן לראות בציר ‪ X‬את מספר ההרצות ובציר ‪( Y‬במיליוני דולר) את הערכים הפיננסיים של בית החולים‪.‬‬
‫משמעות כל צבע בגרף הוא קריטריון אחר שבדקנו במודל‪ .‬לא ניתן להסיק הרבה מסקנות מהגרף למעט‬
‫הקריטריון של התחייבויות קבועות שלא השתנה בצורה משמעותית‪ ,‬לכן נשאיר את הרצת המודל עם‬
‫הערך האוטומטי שהוא ‪n=10.‬‬

‫גרף ‪ - 2‬מס' הרצות שונים‬

‫‪78‬‬
‫לאחר הרצת המודל קיבלנו את התוצאות הבאות‪:‬‬

‫איור ‪ - 15‬תוצאות שאלת מחקר ‪1‬‬

‫שלב ‪– Evaluate your result‬‬


‫ניתן להסיק מתוצאת המודל את הקבוצות של בתי חולים שזהים אחד לשני בנושא של התנהגות כספית‪.‬‬
‫לדוגמא ניתן לראות כי ‪ Glacial Ridge Hospital‬ו‪ Cottage Hospital -‬מופו לאותה קבוצה‪ ,‬לפי‬
‫הקריטריונים עלות ההשקעות‪ ,‬סכום נכסים שברשות בית החולים‪ ,‬התחייבויות כספיות של בית החולים‬
‫והכנסות ממטופלים‪ .‬כאשר נתנו משקל זהה של המשתנים בהחלטה‪ .‬כאשר בדקנו את הנתונים ראינו כי‬
‫ישנם קריטריונים עם ערך זהה‪ ,‬כמו הכנסות ממטופלים או עלות נכסים ולכן אנו רואים כי מודל ‪k-‬‬
‫‪ means‬עוזר לנו להבין קבוצות של בתי חולים מבחינת התנהגות כספית‪.‬‬
‫כעת נצלול וננתח את תוצאות קריטריון הכנסות ממטופלים‪ .‬הממוצעים של הקבוצות בהתאמה (קבוצה‬
‫‪ .]M$45.3, M$269.6, M$41.7, M$5.2 [ ,)A-D‬כפי שניתן לראות בגרף קבוצה ‪ B‬היא החריגה ביותר‬
‫מבחינת ממוצע הכנסות ממטופלים‪ ,‬כאשר זה יכול לנבוע מנתונים לקויים או לא מדויקים או שאלו בתי‬
‫החולים המובילים בהכנסות בארה"ב‪ .‬קבוצות ‪ A‬ו‪ C-‬יחסית דומות מבחינת ההתנהגות בקריטריון זה‪.‬‬
‫קבוצה ‪ D‬היא בעלת הממוצע הנמוך ביותר‪ ,‬כאשר כנראה אלו בתי החולים עם מספר לקוחות נמוך‪ ,‬דבר‬
‫המתבטא בהכנסות נמוכות יחסית לשאר הקבוצות‪.‬‬

‫‪79‬‬
‫איור ‪ - 16‬ממוצע הכנסות של בי"ח ‪ -‬שאלת מחקר ‪1‬‬

‫ניתן להשתמש בתוצאות אלו כאשר מנהל בית חולים רוצה להשוות את בית החולים שהוא מנהל לעומת‬
‫אחרים שמופיעים באותה קבוצה וכך יכול לקבל תמונת מצב עמוקה יותר על התנהגות כספית‪.‬‬
‫בנוסף ארגון ‪ CMS‬יכול להשתמש בתוצאות אלו כאשר הוא רוצה לבדוק ברמת המאקרו על בתי חולים‬
‫זהים וכך בעצם לדרג אותם בצורה אחרת או לקבוע יותר ביקורות בבתי חולים שהוא רואה לנכון‪.‬‬
‫אפשר לראות גם התנהגות זהה ברמת העיר (ערך שני בפלט‪ ,‬לדוגמא ‪ )Randolph/Woodsville‬או‬
‫ברמת המדינה (ערך שלישי בפלט‪ ,‬לדוגמא ‪ )Vt/Nh‬ולהבין גם על התנהגות כלכלית באזורים מסוימים‬
‫שמעוניינים לחקור‪.‬‬

‫‪80‬‬
81
‫למידה מונחית – חיזוי בעזרת אלגוריתם רגרסיה לינארית‬ ‫‪9.2.2‬‬
‫בדיקת קשר בין הציון של בית חולים שניתן ע"י מטופלים לבין הציון של בית חולים שניתן ע"י ארגון‬
‫‪.CMS‬‬
‫בשאלה זאת רצינו לבדוק האם שני המדדים קשורים אחד לשני‪ ,‬כיוון שבכל מדד הציון ניתן ע"י‬
‫אדם‪/‬ארגון שונה‪.‬‬
‫שיטת החישוב‬
‫מתאם (קורלציה) בעזרת מידול סטטיסטי באמצעות מתאם פירסון‪.‬‬
‫בחרנו במבחן פירסון כיוון והוא אחד המדדים השימושיים ביותר בסטטיסטיקה הסקתית‪ ,‬שמטרתה‬
‫למצוא קשר סטטיסטי בין שני משתנים‪ .‬יש משמעות רבה באם מבחן פירסון מורה על קשר חזק בין‬
‫הנתונים והאם הקשר אינו רק חזק הוא גם ליניארי‪ .‬סוג ההשערות שניתן לבדוק באמצעות מתאם פירסון‬
‫הן השערות המדברות על קשר בין משתנים‪ ,‬ומנוסחות בדר"כ כך‪" :‬ימצא קשר בין ‪ x‬ל‪ y-‬כך שככל ש‪x-‬‬
‫גבוה‪/‬נמוך יותר‪ ,‬כך ‪ y‬גבוה‪/‬נמוך יותר"‪.‬‬
‫בתהליך נענה על שאלה זו‪ ,‬התחלנו בטיוב הנתונים בתוכנת ‪ MYSQL‬ע"י כך שאיחדנו בין ‪ 2‬טבלאות‬
‫שונות והוצאנו תוצאות שהיו ‪ .null‬לאחר כתיבת השאילתה‪ ,‬עברנו לכתיבת המודל הסטטיסטי בתוכנת‬
‫‪ .Spyder‬כפי שניתן לראות בצילום המסך בהמשך‪ ,‬בהתחלה משכנו את השאילתה והכנסנו אותה‬
‫לטבלת נתונים (‪.)DF‬‬
‫נגדיר את ההשערות בשאלה זו ‪:‬‬
‫‪( 0H‬השערת האפס) – אין קשר ליניארי בין סוג בית החולים לציון הכללי שלו‪.‬‬
‫‪H0: µ= µ0‬‬
‫‪( 1H‬השערה אלטרנטיבית) – קיים קשר ליניארי בין סוג בית החולים לציון הכללי שלו‪.‬‬
‫‪H1: µ≠ µ0‬‬
‫ניתוח סטטיסטי‬
‫הסימן והערך המוחלט של מקדם מתאם של פירסון מתארים את הכיוון ואת גודל הקשר בין שני‬
‫משתנים‪ .‬הערך של מקדם מתאם נע בין ‪ -1‬ל ‪ .1‬ככל שהערך המוחלט של מקדם מתאם גדול יותר‪ ,‬כך‬
‫הקשר הליניארי חזק יותר‪ .‬הקשר הליניארי החזק ביותר מצוין על ידי מקדם מתאם של ‪ -1‬או ‪.1‬הקשר‬
‫הליניארי החלש ביותר מצוין על ידי מקדם מתאם השווה ל‪ .0 -‬מתאם חיובי פירושו שאם משתנה אחד‬
‫הולך וגדל‪ ,‬המשתנה האחר נוטה לגדול‪ .‬מתאם שלילי פירושו שאם משתנה אחד הולך וגדל‪ ,‬המשתנה‬
‫האחר נוטה להיות קטן יותר‪ .‬בשאלה זו מקדם מתאם של פירסון הוא ‪ .=0.441r‬הערכים הקריטיים הם‬
‫‪ . 0.195-+‬אם ‪( r‬מקדם המתאם) קטן מהערך השלילי של הערך הקריטי או אם ‪ r‬גדול מהערך החיובי‬
‫של הערך הקריטי‪ ,‬אז ‪ r‬מובהק‪ , 0.195>0.441 .‬ולכן מקדם המתאם מובהק‪ .‬מקדם המתאם ‪,0.441‬‬
‫דבר המנבא על קשר לינארי בינוני בין הציון של בית חולים שניתן ע"י מטופלים לבין הציון של בית חולים‬
‫שניתן ע"י ארגון ‪ .CMS‬בנוסף ניתן לראות בגרף הלינארי בצד ימין למטה שאין קו לינארי ברור‪ .‬היינו‬
‫מצפים לקבל קו לינארי אלכסוני ככל הניתן‪ ,‬אך כפי שניתן לראות‪ ,‬אין קשר ברור בין שני הפרמטרים‪.‬‬

‫‪82‬‬
‫תוצאת מבחן ההשערות‬
‫בשאלה זו ניסינו להבין האם אותו דירוג שניתן לבית החולים ע"י מטופלים זהה לציון שניתן לבית‬
‫החולים ע"י ארגון ‪ , CMS‬אמנם בעזרת המבחן גילינו שמקדם התוצאה מובהק וזהו קשר לינארי בינוני ‪,‬‬
‫אך לא ניתן להצביע ולהסיק על קשר כזה‪ .‬היינו שמחים לראות קשר בין ‪ 2‬הפרמטרים דבר שיעיד על כך‬
‫שבית החולים קיבל ציון זהה בשני המדדים השונים‪ ,‬כיוון שזה אומר שניתן לסמוך על אותו ציון שניתן לו‬
‫ולייחס לו חשיבות רבה יותר‪ ,‬בהיבט אחד ע"י המשתמש (מטופל) ובהיבט שני ע"י הממסד (ארגון‬
‫‪.)CMS‬‬

‫גרף ‪ - 3‬תוצאות שאלת מחקר ‪2‬‬

‫‪83‬‬
‫האם יש קשר בין מין הרופא לסוג ההתמחות שלו‬ ‫‪9.2.3‬‬
‫רצינו לקבל תמונת מצב על הרופאים ולראות האם יש נטייה של מין הרופא להתמחויות שלו כרופא‪.‬‬
‫נתונים כאלה יכולים לעזור לארגוני רפואה או למנהלי בתי חולים לדעת מידע על הרופאים שלהם‪.‬‬
‫שיטת החישוב‬
‫מידול סטטיסטי באמצעות מבחן חי בריבוע‪ .‬מבחן זה בא לבדוק האם אוכלוסייה מסוימת מתפלגת לפי‬
‫התפלגות נתונה‪ .‬המשתנה הנחקר מחולק למספר קטגוריות ויש לבדוק האם תוצאות המדגם תואמות‬
‫להתפלגות הנתונה‪ .‬השערת אי התלות תידחה אם הערך המחושב של ‪ X^2‬גדול מערך קריטי הנקבע‬
‫על פי‪ ‬רמת המובהקות (אלפא) שנקבעה מראש‪ ,‬או אם‪ ‬ערך ה‪ p-‬המחושב קטן מרמת המובהקות הזו‪.‬‬
‫בחרנו במבחן חי בריבוע כיוון שאנו רוצים לבדוק את טיב ההתאמה של שני משתנים קטגוריים (מין‬
‫הרופא‪-‬זכר‪/‬נקבה) אל מול סוג ההתמחות שלו (מנתח‪ ,‬בריאות הציבור‪ ,‬אורתופד וכו')‪ .‬כאמור מבחן זה‬
‫מבטא קשר שכיחות בין שני סוגי המשתנים בהנחה ששיש אי תלות בין המשתנים‪.‬‬
‫בתהליך מענה על שאלה זו‪ ,‬התחלנו בטיוב הנתונים בתוכנת ‪ MYSQL‬ע"י כך שהוצאנו תוצאות שהיו‬
‫‪ .null‬לאחר כתיבת השאילתה‪ ,‬עברנו לכתיבת המודל הסטטיסטי בתוכנת ‪ .Pycharm‬כפי שניתן לראות‬
‫בצילום המסך למטה‪ ,‬בהתחלה משכנו את השאילתה והכנסנו אותה לטבלת נתונים (‪.)DF‬‬
‫נגדיר את ההשערות בשאלה זו‬
‫‪( 0H‬השערת האפס) – אין קשר בין מין הרופא לסוג ההתמחות שלו‪.‬‬
‫‪H0: µ= µ0‬‬
‫‪( 1H‬השערה אלטרנטיבית) – קיים קשר בין מין הרופא לסוג ההתמחות שלו‪.‬‬
‫‪H1: µ≠ µ0‬‬
‫בשאלה זו נבחר רמת מובהקות (אלפא) מקובלת של ‪.5%‬‬
‫ניתוח סטטיסטי‬
‫מובהקות התוצאה (‪ )p-value=0.00021‬קטנה מרמת המובהקות שהגדרנו (‪ )α=0.05‬זה מרמז כי‬
‫התוצאות שקיבלנו מהמדגם אינן מתיישבות עם ההנחה כי השערת האפס היא נכונה ולכן יש לדחות את‬
‫אותה‪ .‬כלומר‪ ,‬קיים קשר בין מין הרופא לסוג ההתמחות שלו ‪ .‬בנוסף ניתן לראות כי הערך הקריטי (‬
‫‪ )critical value= 9.487‬קטן מערך החי בריבוע שחושב ( ‪ )chi-square statistic= 21.907‬ולכן יש‬
‫לדחות את השערת האפס‪ ,‬כלומר קיים קשר בין מין הרופא לסוג ההתמחות שלו‪.‬‬
‫תוצאת שאלת המחקר‬
‫ניתן לראות את תוצאות המבחן חי בריבוע ולהבין כי קיים קשר בין ‪ 2‬המשתנים‪ .‬ניתן להניח מתוצאה זו‬
‫שייתכן וכי מין רופא מסוים נוטה ללכת לסוגים מסוימים של התמחויות‪ .‬נתון זה יכול לעזור לארגוני‬
‫רפואה לקבל תמונת מצב על נתונים שונים של רופאים‪ .‬מנהלי בתי חולים יעדיפו הטרוגניות בכל‬
‫הפרמטרים של הרופאים כמו מין‪ ,‬ע"מ לא ליצור אפליה וליצור סביבה שוויונית בעבודה‪.‬‬

‫‪84‬‬
‫איור ‪ - 17‬תוצאות של שאלת מחקר ‪3‬‬

‫‪85‬‬
‫חיזוי דירוג כללי בבתי חולים בשנת ‪ 2020‬ע"ב פרמטרים קבועים‬ ‫‪9.2.4‬‬
‫שלב ‪– Business understanding‬‬
‫בשאלה זאת רצינו לבדוק האם בעזרת פרמטרים קבועים שנקבעו ע"י ארגון ה‪ CMS -‬האם ניתן לחזות‬
‫את הדירוג הכללי של בית החולים‪ CMS .‬מגדירים ‪ 4‬פרמטרים שהם בודקים במהלך ביקורת בבית‬
‫החולים‪ ,‬ועל פיהם נקבע הדירוג‪.‬‬
‫הפרמטרים שנקבעו הם ‪-1 :‬טיפול קליני‪-2 ,‬מעורבות אדם וקהילה‪-3 ,‬בטיחות ‪-4‬ויעילות והפחתת‬
‫עלויות‪.‬‬
‫שלב ‪– Data understanding‬‬
‫שיטת החישוב ‪ :‬מידול סטטיסטי באמצעות רגרסיה לינארית החוזה את ציון בית החולים ע"ב משתנים‪.‬‬
‫בחרנו ברגרסיה לינארית כיוון שהמשתנים‪ ,‬הן התלוי והן הבלתי‪-‬תלוי‪ ,‬הם משתנים רציפים וכאשר‬
‫הקשר בניהם צפוי להיות לינארי‪ .‬בנוסף בחרנו ברגרסיה לינארית כיוון שקיים אי תלות בין התצפיות‪ ,‬כל‬
‫בית חולים נמדד בפני עצמו והוא לא מושפע מציון אחר של בית חולים‪.‬‬
‫בתהליך מענה על שאלה זו‪ ,‬התחלנו בטיוב הנתונים בתוכנת ‪ MYSQL‬ע"י כך שהוצאנו תוצאות שהיו‬
‫‪ null‬או ‪( 0‬ההנחה שלנו שציון ‪ 0‬הוא לא ציון לכן החרגנו גם אותו)‪ .‬לאחר כתיבת השאילתה‪ ,‬עברנו‬
‫לכתיבת מודל החיזוי בתוכנת ‪ .SPYDER‬כפי שניתן לראות בצילום המסך בהמשך‪ ,‬בהתחלה משכנו את‬
‫השאילתה והכנסנו אותה לטבלת נתונים ( ‪ X ,)DF‬מוגדר כווקטור של ארבעת הפרמטרים ו‪ Y-‬מוגדר‬
‫כציון הדירוג הכללי‪.‬‬
‫לאחר ניקוי הנתונים ה‪ DF‬הוא ‪ , 5x1349‬כלומר ‪ 1349‬בתי חולים שונים עם ‪ 5‬עמודות (‪ 4‬קריטריונים‬
‫וערך מטרה)‪.‬‬
‫שלב ‪– Data preparation‬‬
‫השתמשנו בחיזוי בעזרת רגרסיה ליניארית כיוון שניסינו להסביר משתנה יחיד‪ ,Y ,‬ציון הדירוג הכללי‬
‫באמצעות מספר משתנים מסבירים‪ ,X(4)..X(1) ,‬טיפול קליני‪ ,‬מעורבות אדם וקהילה‪ ,‬בטיחות ויעילות‬
‫והפחתת עלויות‪ .‬אם ההשפעה של משתנים אלה על ‪ Y‬היא ליניארית‪ ,‬מודל הרגרסיה יוכל למצוא את‬
‫הפרמטרים המגדירים את הקשר הליניארי‪ ,‬ובכך יסייע לשפר את ההערכה של ציון הדירוג הכללי עוד‬
‫יותר‪.‬‬
‫שלב ‪– Modeling‬‬
‫בסטטיסטיקה‪ ,‬בדיקת השערות הוא הליך המשתמש בנתוני מדגם כדי להחליט אם לדחות או לא לדחות‬
‫השערה נתונה‪ .‬נגדיר את ההשערות בשאלה זו ‪:‬‬
‫‪( 0H‬השערת האפס) – אין השפעה של הפרמטרים שנקבעו ע"י ‪ CMS‬לציון הדירוג של בית החולים‪.‬‬
‫‪H0: µ= µ0‬‬
‫‪( 1H‬השערה אלטרנטיבית) – יש השפעה של הפרמטרים שנקבעו ע"י ‪ CMS‬לציון הדירוג של בית‬
‫החולים‪.‬‬
‫‪H1: µ≠ µ0‬‬
‫בעזרת נתוני מדגם נערוך מבחן ‪ t‬רגרסיה לינארי כדי לקבוע אם שיפוע קו הרגרסיה שונה משמעותית‬
‫מאפס‪.‬‬
‫‪86‬‬
‫רמת מובהקות היא הסיכוי שבעת ביצוע מבחן סטטיסטי לבדיקת השערות נדחה את השערת האפס על‬
‫אף שהיא נכונה‪" .‬רמת סמך" היא המשלים של רמת המובהקות‪ .‬בשאלה זו נבחר רמת מובהקות‬
‫(אלפא) מקובלת של ‪.5%‬‬
‫שלב ‪– Evaluate your result‬‬
‫ניתוח סטטיסטי‪ :‬נתחיל בניתוח הפלט שקיבלנו עם ‪ – P-value‬הפרמטרים עם ערך נמוך (מאלפא‬
‫שהגדרנו) הם‪ :‬טיפול קליני‪ ,‬מעורבות אדם וקהילה‪ ,‬יעילות והפחתת עלויות‪ .‬נדחה את השערת האפס‬
‫בפרמטרים האלה‪ .‬הפרמטר בטיחות עם ערך גבוה (מאלפא שהגדרנו) ‪ 0.198‬ונקבל את השערת האפס‬
‫בפרמטר זה‪.‬‬
‫מקדמים ‪ -‬ניתן לראות כי הפרמטר 'מעורבות אדם וקהילה' הוא בעל המקדם הגדול ביותר‪ ,‬משמע שהוא‬
‫משפיע בצורה המשמעותית ( ‪ )0.6545‬ביותר על המשתנה התלוי ולעומתו הפרמטר 'בטיחות' הוא בעל‬
‫ההשפעה הנמוכה ביותר (‪.)-0.0302‬‬

‫משוואת הרגרסיה ‪:‬‬


‫‪’Clinical_Care’ = x 1‬‬ ‫‪‬‬
‫‪’Person__And_Community ‘ = x 2‬‬ ‫‪‬‬
‫‪’Safety‘ = x 3‬‬ ‫‪‬‬
‫‪x‬‬
‫‪’Efficiency’ = 4‬‬ ‫‪‬‬
‫‪Y=0.38* x 1 +0.66* x 2 -0.02* x 3+0.08* x 4 +20.89‬‬
‫תוצאת שאלת המחקר ‪ :‬כאשר הכנסנו נתונים חדשים ציפינו לנבא את הציון הכללי‪ ,‬כפי שניתן לראות‬
‫הציון שקיבלנו הוא ‪ . 94‬אנו נרצה לדעת כחלק מתהליך בדיקת טיב המודל את שגיאות המודל‪ .‬טווח‬
‫‪n‬‬

‫הוא מדד לטעויות בין תצפיות‬


‫¿∨‪∑ ¿ ei‬‬ ‫השגיאה ‪)MAE = Mean absolute error )14.42‬‬
‫‪i=1‬‬
‫=‪MAE‬‬ ‫¿‬
‫‪n‬‬
‫מזווגות המבטאות את אותה תופעה‪ .‬כאשר ככל שהערך נמוך יותר‪ ,‬כך המודל מדויק יותר‪.‬‬
‫מדד ‪ RMSE‬הוא היותר שימושי לנו מפני שהוא מבטא את טווח השגיאה באותם היחידות של הטור‬
‫שאותו אנו מנסים לחזות‪.‬‬

‫¿=‪ RMSE‬לפיכך‪ ,‬טווח השגיאה של המודל הוא ‪.17.80‬‬


‫ניתן להסיק מתוצאה זו שבית חולים אשר רוצה לקבל ציון כזה ע"י ארגון ‪ CMS‬עליו לקבל ציונים זהים‬
‫בפ‪ r‬מטרים השונים ולכן הוא יקבל החלטות (להקדיש יותר זמן למטופל‪ ,‬לתת תחושת שייכות וקהילה‬
‫בבית החולים ועוד) אשר יוכלו לו להעלות את ציונם‪ .‬הרעיון העסקי של בית החולים להיות רווחי ולתת‬
‫שירותים מיטביים למטופלים‪ ,‬לכן כאשר הציון שלו הוא גבוה הוא מתוגמל ע"י ארגון ה‪ CMS -‬ובנוסף גם‬
‫מטופלים ירצו להגיע לבית חולים זה‪.‬‬

‫‪87‬‬
‫איור ‪ -18‬תוצאות שאלת מחקר ‪4‬‬

‫‪88‬‬
‫חיזוי אחוז ההוצאות בבית חולים עקב תביעות רפואיות‬ ‫‪9.2.5‬‬
‫שלב ‪– Business understanding‬‬
‫בשאלה זאת רצינו לחזות את אחוז ההוצאות של בית חולים עקב תביעות רפואיות‪ .‬בעולם הרפואה‬
‫מתרחשות תאונות עבודה הנגרמות ע"י רופאים במהלך טיפול בחולים בשטח בית החולים‪ .‬ישנם מקרים‬
‫בהם תאונות עבודה אלו משפיעות ויכולות לשנות את אורח החיים של המטופל‪ ,‬דבר היכול להיגרר לבית‬
‫משפט ע"י תביעה על המטופל על רשלנות רפואית כלפי הרופא ובית החולים‪ .‬חלק מתביעות אלו בבית‬
‫המשפט מחייבות לשלם פיצוי כספי למטופל‪ ,‬דבר היכול להיגרר לסכומים גבוהים ולהוות חלק מהתקציב‬
‫השנתי של בית החולים‪.‬‬

‫שלב ‪– Data understanding‬‬


‫בשאלה זאת נרצה לקחת כמה שיותר קריטריונים אשר יעזרו לנו לחזות את אחוז ההוצאות בצורה‬
‫הטובה ביותר‪ .‬הנתונים שבחרנו נלקחו מ‪ 3-‬טבלאות שונות‪ ,‬כאשר חמשת העמודות‪/‬הקריטריונים הן ‪:‬‬
‫‪ – mspb‬אשר זהו מדד ההוצאה ליעילות רפואית ‪ ,‬עלות תביעות רפואיות‪ ,‬ימי אשפוז של המטופל אשר‬
‫תבע את בית החולים‪ ,‬ציון בטיחות רפואית המנוהלת בבית החולים‪ ,‬ציון טיפול קליני הניתן ע"י הרופאים‬
‫על טיפולם בחולים‪ .‬ערך המטרה שבחרנו הוא אחוז ההוצאה של בית החולים עקב תביעות רפואיות‪.‬‬

‫שיטת החישוב ‪ :‬מידול סטטיסטי באמצעות רגרסיה לינארית החוזה את ציון בית החולים ע"ב משתנים‪.‬‬
‫בחרנו ברגרסיה לינארית כיוון שהמשתנים בשאלה זו‪ ,‬הן התלוי ( ‪ ,mspb‬עלויות ימי אשפוז‪ ,‬ציונים) והן‬
‫הבלתי‪-‬תלוי (אחוז ההוצאה)‪ ,‬הם משתנים רציפים וכאשר הקשר ביניהם צפוי להיות לינארי‪ .‬בנוסף‬
‫ברגרסיה לינארית נשתמש כאשר אנו מעוניינים לחזות את ערכו של משתנה מסוים באמצעות משתנה או‬
‫משתנים אחרים‪ ,‬בדיוק כמו שאנו רוצים לבדוק בשאלה זו‪ ,‬חיזוי אחוז ההוצאה באמצעות משתנים‬
‫אחרים שקבענו‪.‬‬

‫שלב ‪– Data preparation‬‬


‫השתמשנו בחיזוי בעזרת רגרסיה לינארית כיוון שניסינו להסביר משתנה יחיד ‪ ,Y ,‬אחוז ההוצאה עקב‬
‫תביעות רפואיות באמצעות מספר משתנים מסבירים‪ ,X(5)..X(1), mspb ,‬עלות תביעות רפואיות‪ ,‬ימי‬
‫אשפוז‪ ,‬ציון של בטיחות וציון של טיפול קליני‪ .‬אם ההשפעה של משתנים אלה על ‪ Y‬היא ליניארית‪ ,‬מודל‬
‫הרגרסיה יוכל למצוא את הפרמטרים המגדירים את הקשר הליניארי‪ ,‬ובכך יסייע לחזות את אחוז‬
‫התביעות הרפואיות‪.‬‬
‫בדקנו שערך המטלה שונה מ‪ , 0-‬כיוון שזה לא יתרום לנו לאימון המודל‪ ,‬שערכי הציון בטווח המתאים‬
‫(עד ‪ )100‬והמרנו עמודות אשר ניתנו לנו בתור טקסט (כאשר בפועל הם מספר) לעמודה רציפה‪.‬‬
‫לאחר ניקוי הנתונים ה‪ DF-‬הוא ‪ , 2800X6‬כלומר ‪ 2,800‬בתי חולים שונים עם ‪ 6‬עמודות (‪ 5‬קריטריונים‬
‫וערך מטרה)‪.‬‬

‫‪89‬‬
‫שלב ‪– Modeling‬‬
‫הרצנו מטריצת קורלציה כדי לבדוק את דרגת הקשר בין כל שני קריטריונים שונים ע"מ שיעזור לנו להבין‬
‫את הנתונים שאנו משתמשים בשאלה זו‪ .‬ניתן לראות כי ישנו קשר חזק ‪ 0.804‬בין ימי אשפוז לעלות‬
‫האשפוז דבר שהגיוני ומסתדר‪ ,‬הרי ככל שהמטופל מאושפז יותר ימים כך גם עלות האשפוז שלו עולה‪.‬‬
‫אך ניתן להבין מהטבלה שרוב הקשרים הם חלשים(קטנים מ‪.)-+0.3-‬‬

‫בסטטיסטיקה‪ ,‬בדיקת השערות הוא הליך המשתמש בנתוני מדגם כדי להחליט אם לדחות או לא לדחות‬
‫השערה נתונה‪ .‬נגדיר את ההשערות בשאלה זו ‪:‬‬
‫‪( 0H‬השערת האפס) – אין השפעה של הפרמטרים שנקבעו לאחוז ההוצאות עקב תביעות רפואיות‪.‬‬
‫‪H0: µ= µ0‬‬
‫‪( 1H‬השערה אלטרנטיבית) – יש השפעה של הפרמטרים שנקבעו לאחוז ההוצאות עקב תביעות‬
‫רפואיות‪.‬‬
‫‪H1: µ≠ µ0‬‬
‫בעזרת נתוני מדגם נערוך מבחן ‪ t‬רגרסיה לינארי כדי לקבוע אם שיפוע קו הרגרסיה שונה משמעותית‬
‫מאפס‪.‬‬
‫רמת מובהקות היא הסיכוי שבעת ביצוע מבחן סטטיסטי לבדיקת השערות נדחה את השערת האפס על‬
‫אף שהיא נכונה‪" .‬רמת סמך" היא המשלים של רמת המובהקות‪ .‬בשאלה זו נבחר רמת מובהקות‬
‫(אלפא) מקובלת של ‪.5%‬‬
‫שלב ‪– Evaluate your result‬‬
‫ניתוח סטטיסטי‪ :‬נתחיל בניתוח הפלט שקיבלנו עם ‪ – P-value‬הפרמטרים עם ערך נמוך (מאלפא‬
‫שהגדרנו) הם ‪mspb‬וציון טיפול קליני‪ .‬נדחה את השערת האפס בפרמטרים האלה‪ .‬הפרמטרים עם ערך‬
‫גבוה (מאפלא שהגדרנו) הם עלות תביעות רפואיות‪ ,‬ימי אשפוז של המטופל אשר תבע את בית החולים‬
‫וציון בטיחות רפואית‪ .‬נקבל את השערת האפס בפרמטרים אלו‪.‬‬
‫מקדמים ‪ -‬ניתן לראות כי הפרמטר ‪ mspb‬הוא בעל המקדם הגדול ביותר‪ ,‬משמע שהוא משפיע בצורה‬
‫המשמעותית (‪ )-0.2738‬ביותר על המשתנה התלוי‪ ,‬דבר המעיד על עוצמת הפרמטר וכמה הוא חשוב‬
‫בנוסחת הרגרסיה‪ .‬לעומתו הפרמטר ימי אשפוז בעל ההשפעה הנמוך ביותר‪ ,‬כנראה שאין השפעה‬
‫משמעותית של זמן האשפוז על עלות התביעה‪.‬‬
‫‪90‬‬
‫משוואת הרגרסיה ‪:‬‬
‫‪’mspb‘ = x 1‬‬ ‫‪‬‬
‫‪’charges’ = x 2‬‬ ‫‪‬‬
‫‪days_of_care‘ = x 3‬‬ ‫‪‬‬
‫‪’safety_domain’= x 4‬‬ ‫‪‬‬
‫‪’clinical_care‘ = x 5‬‬ ‫‪‬‬
‫‪Y=-2.73* x 1-2.16e-06* x 2+9.16e-05* x 3+1.103e-0* x 4+3* x 5 +0.4252‬‬

‫תוצאת שאלת המחקר‪:‬‬


‫בסיום בניית המודל הכנסנו נתונים חדשים לבית חולים חדש אשר רוצה לבדוק את אחוז ההוצאות החזוי‬
‫עקב תביעות רפואיות‪ ,‬כפי שניתן לראות האחוז הצפוי במקרה זה הוא ‪.0.0904154%‬‬
‫אנו נרצה לדעת כחלק מתהליך בדיקת טיב המודל את שגיאות המודל‪ .‬טווח השגיאה ‪MAE= 0.07‬‬
‫כאשר ככל שהערך נמוך יותר‪ ,‬כך המודל מדויק יותר‪ .‬מדד ‪ RMSE‬הוא היותר שימושי לנו מפני שהוא‬
‫מבטא את טווח השגיאה באותם היחידות של הטור שאותו אנו מנסים לחזות‪ .‬לפיכך‪ ,‬טווח השגיאה של‬
‫המודל הוא ‪ .0.14‬בשאלה זו טווחי שגיאה אלו גדולים ויוצרים אי דיוק בשגיאות המודל כיוון שאם‬
‫התוצאות נעות בסביבות ‪ ,0.02-0.12‬שגיאה של ‪ 0.07‬או ‪ 0.14‬זה משמעותי‪.‬‬
‫כעת נבדוק את ה‪ R^2 (R squared), R-‬בריבוע‪ ,‬המכונה גם מקדם קביעה‪ ,‬זהו חישוב סטטיסטי‬
‫המודד את מידת קשרי הגומלין והתלות בין שני משתנים‪ .‬במילים אחרות‪ ,‬מדובר בנוסחה שקובעת עד‬
‫כמה ההתנהגות של משתנה יכולה להסביר את התנהגותו של משתנה אחר‪ .‬הוא מספק מדד לשכפול‬
‫התוצאות שנצפו היטב על ידי המודל‪ ,‬בהתבסס על שיעור השונות הכולל של התוצאות שהוסבר על ידי‬
‫המודל‪ .‬ככל שהתוצאה מתקרבת ל‪ 1-‬כך ערכי המודל תואמים בדיוק את הערכים שנצפו‪ .‬בשאלה זו ‪R‬‬
‫בריבוע הוא ‪ .0.049‬זהו תוצאה לא גבוהה במיוחד‪ ,‬כאשר היינו רוצים לקבל תוצאה יותר קרובה לערך ‪.1‬‬
‫אנו נסתפק בתוצאה בשאלה זו כיוון שחלק מדרך הפתרון בחלק מהשאלות שלנו הוא לנסות שאלות עם‬
‫סגנונות ואלגוריתמים שונים ולא רק להגיע לתוצאות הכי מדויקות (כלומר ערך הקרוב ל‪.)1-‬‬
‫בתי חולים ירצו למזער רשלנות רפואיות ובאופן ישיר גם את התביעות כנגד בית החולים עקב רשלנות‬
‫רפואית‪ .‬בשאלה זו רצינו לבנות מודל חיזוי אשר יעזור לבית חולים להבין את אחוז ההוצאות של בית‬
‫החולים עקב רשלנות רפואית‪ ,‬וכעת בית חולים יכול להזין נתונים חדשים ובהתאם לקבל תמונת מצב על‬
‫ההוצאות‪ .‬מסקנות אלו יוכלו לעזור גם לארגון ‪ CMS‬להבין את העלויות שבתי חולים עומדים לשלם‬
‫(ואולי עקב כך ייכנסו לחובות) עקב תביעות רפואיות וינסו לעזור לצמצם עלויות אלו‪.‬‬

‫‪91‬‬
‫איור ‪ - 19‬תוצאות שאלת מחקר ‪5‬‬

‫‪92‬‬
‫שאלת מידול – האם ניתן לחזות ציון בית חולים על סמך מדדי ביצוע שונים‬ ‫‪9.2.6‬‬
‫בשאלה זו רצינו לבדוק האם בעזרת פרמטרים שונים שנקבעו על ידי ארגון ‪ ,CMS‬האם ניתן לסווג את‬
‫ציון בית החולים‪( .‬נספחים ‪.)13.3‬‬
‫לשם התהליך היה עלינו למשוך את מגוון העמודות הקיימות במאגר של ‪ CMS‬אשר בעלי פוטנציאל‬
‫להסביר את הדירוג הכללי‪ .‬מספר הפרמטרים (המשתנים הבלתי תלויים) הוא ‪ 86‬הכולל בתוכו‪ :‬ציון על‬
‫סיבוכים בניתוח‪ ,‬על סיבות מוות שונות‪ ,‬רמות בטיחות‪ ,‬סקר מטופלים‪ ,‬מטופלים חוזרים‪ ,‬סיבות לשחרור‬
‫חולים ועוד‪ .‬לפתירת שאלה זו נעבוד תחת מתודת ‪ ,CRISP‬מתודה '‪ 'Data Mining‬מקובלת כיום בשוק‪.‬‬
‫שלב ‪– Business understanding‬‬
‫מטרת המידול המתואר למעלה הוא ליצור תמיכה בסיווג נכון של בתי חולים חדשים הרוצים להירשם‬
‫למערכת ‪ .CMS‬על ידי נתינת הפרמטרים הנכונים ניתן יהיה לשער את ציון הכללי של הבית החולים‬
‫ומנקודה זו יותר פשוט לבצע הערכות על הבית החולים‪ ,‬הן מבחינת ה‪ CMS-‬והן מבחינת הבית חולים‬
‫אשר ירצו לדעת כיצד הם יוערכו‪.‬‬
‫אפשרות נוספת היא לבצע הערכות בתי חולים לא רק בארה"ב אלא כל מערכת הדורשת דירוג כללי‬
‫למען מטרות עצמיות‪ .‬ניתן יהיה להניח זו כיוון וארה"ב הינה מודל לחיקוי בכל הקשור לביצועי מערכת‬
‫הבריאות‪.‬‬
‫שלב ‪– Data understanding‬‬
‫בשלב זה התחלנו להבין את מבנה הטבלאות‪ ,‬סוגי הנתונים‪ ,‬כמות הנתונים ועוד‪ .‬ובכן‪ ,‬הנתונים הינם‬
‫נתון מסוג ‘‪ ’float‬המייצגים תוצאה של חישוב מסוים שמבצע ה‪ CMS-‬עבור כל אחד מהמדדים‪ .‬הנתונים‬
‫מתפרסים על ‪ 5‬טבלאות שונות כך שכל טבלה מכילה בין ‪ 20‬ל‪ 100-‬אלף שורות‪.‬‬
‫המדדים הרצויים אינם מופיעים כעמודות אלא כערכים בתוך עמודה שנקראות ‘‪ ’Measure ID‬או ‘‬
‫‪ .’Measure Name‬בתוך כל טבלה בעמודות אלה מתפרסים בין ‪ 3‬ל‪ 11-‬מדדים שונים‪ ,‬כך שכל שורה‬
‫בטבלה מורכבת מבית חולים ומדד‪ .‬ערך המדדים הינם עבור שנת מדידה אחת (ניתן לראות פירוט של‬
‫כל המדדים בנספחים החל מנספח ‪.)13.3‬‬
‫להלן מספר ניתוחים ראשוניים עבור חלק מהמדדים ( ‪ Sum, Average, distribution, middle‬מטבלה‬
‫הנקראית ‪:)death and complication data‬‬

‫‪93‬‬
‫הגרף הבא הינו דוגמה להתפלגות המדדים‪ .‬ניתוח גרפים מסוג זה יכול לעזור לנו לבין כיצד המדדים‬
‫מתנהגים ועל פי כך לשפר את המודל‪ .‬הגרף מייצג התפלגות ערכים של מדד המודד את שיעור פגיעות‬
‫חריפות בכליות לאחר שחרור מניתוח כליות לפי הפרוצדורות המקובלות‪.‬‬

‫גרף ‪ 4‬התפלגות מדדים על סיבוכים בניתוחי כליות‪ .‬שאלת מחקר ‪6‬‬

‫ניתן לראות כי אין התפלגות מוכרת‪ ,‬אך אפשר לדמיין שאילו היו עוד תצפיות אולי היינו חוזים בהתפלגות‬
‫מעריכית שלילית (‪ ,)x/1‬כלומר שיעור הנפגעים מבעיות בכליות יורד מעריכית‪.‬‬
‫בטבלה הבאה נוכל לראות נתונים יבשים על חלק מתוך ‪ 61‬המדדים שברשותנו‪ .‬העמודות הנ"ל מציינות‬
‫(משמאל לימין)‪ :‬סיבוך לאחר ניתוח להחלפת ברך‪ ,‬שיעורי מוות מהתקף לב‪ ,‬שיעורי מוות מניתוחי‬
‫‪ ,CARB‬שיעורי מוות מניתוחי ‪ ,COPD‬שיעורי מוות מדום לב‪ ,‬שיעורי מוות מפנומוניה (דלקת ריאות)‪,‬‬
‫שיעורי מוות משבץ‪ ,‬סיבוכים מניתוחי כליות‪ ,‬שיעור כשלון בנשימה לאחר ניתוח ואחרון שיעור מקרי‬
‫קרישי דם קשים‪.‬‬

‫איור ‪ - 20‬נתונים מתוך המדדים‪ .‬שאלת מחקר ‪6‬‬

‫‪94‬‬
‫עבור כל מדד ומדד בטבלאות קיימת דוקומנטציה מלאה על התהליך המלא שבו יצרו את המדדים‪.‬‬
‫המדדים הינם תוצאות של מודלים מתחום ה '‪ 'Machine Learning‬אשר מנבאים שיעור תמותה מסיבה‬
‫מסוימת‪ .‬למשל עבור מדד ‪( 7‬מוות משבץ) נלקחו ‪ 180‬אלף מקרים לבניית המדד‪ ,‬וכדי לבנות אותו מצאו‬
‫שהמשתנים שהכי מסבירים הם ‪ :‬דימום מוחי‪ ,‬שבץ מוחי איסכמי או לא מוגדר‪ ,‬מגדר‪ ,‬המיפלגיה‬
‫ואמיפראסיס‪ .‬הם ערכו בדיקה על המודל במשך ‪ 3‬שנים ומצאו כי המודלים שלהם בעלי תוצאות‬
‫מובהקות‪ .‬דוגמה זו היא הבנת מדד אחד מתוך עשרות‪ .‬למשך במדד זה ניתן לראות כי השיעור‬
‫המקסימלי המנובא עבור בית חולים מסוים הינו ‪ 4.6%‬מכלל התמותה בבית חולים כי שמטופל הנפטר‬
‫מסיבוך שבץ שהה במשך ‪ 30‬יום בבית החולים לפני או אחרי השבץ‪ .‬ניתן לראות כי שיעור התמותה‬
‫הגבוה ביותר הוא ממוות מדלקת ריאות (ישנו בית חולים עם ‪ ,)20%‬ובנוסף לכך הוא בצורה עקבית גבוה‬
‫מכולם בשאר המדדים‪ .‬השיעור המינימלי הינו ‪.0‬‬

‫שלב ‪– Data preparation‬‬


‫בשלב זה ביצענו תהליך ‪ ETL‬אשר ישאב את הנתונים מאתר ה‪ Medicare‬כך שעבור כל טבלה שמשכנו‬
‫תהיה טבלה משלה ב‪ .MySql-‬תהליך המשיכה דומה לתהליכים הקודמים שביצענו עד כה בפרויקט‪.‬‬
‫להלן תרשים ‪ ERD‬המתאר את תהליך איחוד הנתונים‪:‬‬

‫איור ‪ ERD - 21‬של איחוד נתונים בשאלת מחקר ‪6‬‬


‫לאחר ביסוס הנתונים במאגר הנתונים‪ ,‬היה עלינו לאחד את הטבלה כך שכל המדדים יהיו לרשותנו‬
‫במטריצה אחת‪ ,‬כך יתאפשר לנו לבצע אניטגרציות‪ ,‬אגריגציות‪ ,‬בניית מודלים‪ ,‬וניקוי נתונים בצורה נוחה‬
‫ומיטבית‪ .‬לשם כך יצרנו קובץ שנקרא ‘‪ ,’Preprocessing‬המטרה המרכזית היא לאחד את הנתונים‬
‫מטבלאות שונות‪ .‬היות שבכל טבלה ישנם בממוצע ‪ 60‬אלף נתונים ועל כל אחת נרצה לבצע ‪Pivot‬‬
‫למדדים‪ ,‬כך שכל מדד יופיע כעמודה‪ ,‬דחינו את האופציה לבצע אינטגרציה בין הטבלאות על ידי שאילתת‬
‫‪ Join‬ארוכה גדולה ומסובכת (אשר תקשה לנו על תהליך ‪ debugging‬נוח)‪ ,‬החלטנו לבצע ‪Join‬‬
‫בעזרת תוכנת ‪ Spyder‬בפייתון‪.‬‬

‫‪95‬‬
‫איור ‪ - 22‬יצירת טבלה מרכזית מ ‪ general information table‬עליה יתבצע ה ‪ Join‬על מנת לשמור ערכים זהים‪ .‬שאלת מחקר ‪6‬‬

‫איור ‪- 23‬עבור כל טבלה יצרנו תהליך‪ .‬מסומן בסגול – שם הטבלה‪ ,‬קריאה לפונקציה המייצרת שאילתה ושימוש בתנאים‪ .‬שאלת מחקר ‪6‬‬

‫איור ‪-24‬פונקציה המייצרת שאילתה ‪ – PIVOT‬עבור כל טבלה‪ .‬שאלת מחקר ‪6‬‬

‫‪96‬‬
‫איור ‪-25‬יצירת ‪ Join‬לקבל טבלה אחודה כך שיש טבלה מרכזית‪ .‬שאלת מחקר ‪.6‬‬

‫התוצאה – קיבלנו טבלה בגודל (‪ ,)3527X61‬ולכן על מנת שנוכל לאמת סופית את המודל‪ ,‬חתכנו‬
‫מהטבלה ‪ 527‬ערכים שעליהם לא נבנה את המודל‪ ,‬ובעזרתם נוכל לבחון את המודל שלנו בלא‬
‫ש"לכלכנו" את הנתונים‪ .‬לאחר שנהיה בטוחים במודל נבחן אותו סופית בעזרת אותם נתונים שחתכנו‪.‬‬

‫איור ‪-26‬שמירת נתונים לוולידציה סופית‪ .‬שאלת מחקר ‪.6‬‬

‫לאחר שקיבלנו את המטריצה הרצויה‪ ,‬נוכל לדבר על ניקוי הנתונים‪ .‬כל טבלה שנלקחה ממאגר הנתונים‬
‫נחתכה בעת המשיכה על ידי יצירת תנאי אשר חותך ערכים של שורות שהם ‘‪ .’Not Available‬צריך‬
‫לציין שמרבית השורות מכילות ערכים אשר אינם זמינים‪ ,‬דבר זה מקשה על בניית מודל איכותי‪ .‬בנוסף‬
‫לכך עשינו המרת ערכי ‪ string‬בטבלה אחת לערכים נומריים‪ .‬משמעות הערכים האלו היו – נמוך‪ ,‬בינוני‪,‬‬
‫גבוה וגבוה מאוד‪ .‬על מנת להחליף אותם מדדנו ממוצע‪ ,‬ערך מינימלי וערך מקסימלי מערכים בטבלה על‬
‫מנת להעריך מהו הציון לו התכוונו כאשר הטביעו את התיאור‪.‬‬

‫‪97‬‬
‫איור ‪ - 27‬שינוי הערכים בשאלת מחקר ‪.6‬‬

‫ולבסוף החלפנו ערכי ‪ ,nan‬בממוצע ערכי העמודה על מנת לא לפגוע הממוצע הכללי (כמובן שישנם עוד‬
‫אפשרויות כמו ‪ -‬מחיקת נתונים‪ ,‬החלפה בערך ‪ ,0‬בדיקת התפלגות העמודות והגרלה מתוך ההתפלגות‬
‫ועוד)‪.‬‬
‫היות ויש ברשותנו מספר רב של משתנים בלתי תלויים בטבלה‪ ,‬בחרנו להתחיל את בניית המודל בעזרת‬
‫מודל להורדת מימד ‪ PCA‬לקבלת ‪ 5‬העמודות המשמעותיות ביותר (לאחר מכן נראה כי בחרנו יותר כדי‬
‫לקבל כיוון לעמודות החזקות יותר)‪.‬‬
‫מודל ה‪ 'PCA- Principal Component Analysis'-‬הינו מודל להורדת מימד‪ ,‬הוא בנוי בצורה כזו‬
‫שעבור סט של משתנים מסבירים נוצרים ווקטורים ליניאריים עם משקולות שונות עבור כל משתנה‬
‫מסביר‪ .‬כל ביטוי ליניארי אחד נקרא קומפוננטה‪ .‬כל קומפוננטה הינו אורתונורמלית (מאונכת בכיוון‬
‫ומנורמלת) לקומפננטה השנייה‪ .‬לקומפוננטות ישנם חשיבות לסדרן‪ ,‬כל קומפוננטה שנייה מסבירה את‬
‫שונות התפלגות המשתנים המסבירים מהקודמת לה‪ .‬בגרף הבא נוכל לראות כי בעבור ‪ PCA‬עם ‪81‬‬
‫קומפוננטות (כל עמודת ‪ PCA‬אחד הינה קומפוננטה אשר אחראית בסופו של דבר להגדיר שונות‬
‫מוסברת של משתנה מסביר ‪ ,)X‬נקבל כי ‪ 95%‬מהשונות המוסברת מתקבלת על ידי ‪ 5‬קומפוננטות‪.‬‬

‫גרף ‪ - 5‬התפלגות בשאלת מחקר ‪.6‬‬

‫‪98‬‬
‫ על מנת שתהיה לנו אפשרות‬5 ‫ קומפוננטות ולא‬10 ‫ הראשוני החלטנו לקחת‬PCA-‫לאחר הפעלת ה‬
‫ להלן עשרת המדדים עם אחוז השונות‬.‫לשחק עם העמודות השונות אשר להם אחוז שונות מוסברת גבוה‬
:‫המוסברת הגבוה ביותר‬
1. PSI_13_POST_SEPSIS - Perioperative Hemorrhage or Hematoma Rate
2. READM_30_HF_HRRP_x - 30-Day Risk Adjusted Mortality Rates heart failure
3. Summary star - the HHCAHPS summary star rating combines all 4 HHCAHPS
star ratings into a single, comprehensive metric.
4. PSI_90_SAFETY - measure summarizes patient safety across multiple
indicators
5. SEV_SEP_3HR - Death rate for stroke patients (readmission)
6. OP_5 - Death rate for CABG surgery patients
7. OP_18b - Rate of complications for hip/knee replacement patients
8. READM_30_HIP_KNEE_HRRP_x - Fibrinolytic Therapy Received Within 30
Minutes of ED Arrival
9. OP_29 - Death rate for stroke patients (discharges)
10. Op_3b - Median Time from ED Arrival to ED Departure for Discharged ED
Patient

– Modeling ‫שלב‬
‫ לשם כך בנינו את‬.‫ העמודות הנתונות‬10-‫כעת נוכל להתחיל לבנות את המודלים שלנו כך שיעזרו ב‬
‫ בפייתון‬script ‫ לשם כך יצרנו קובץ‬.SKlearn-‫התוכנית כך שנוכל להיעזר במודלים שונים אשר קיימים ב‬
‫ כך שכל מודל‬,‫ כך שמודל האבא הוא מודל ריק היוצר מודל אבסטרקטי‬,‫שבו יצרנו אובייקטים של מודלים‬
,‫ חלוקת נתונים לנתוני אימון ונתוני מבחן‬,‫צאצא יורש את תכונות ה'אבא' – שמות המשתנים המסבירים‬
.‫ ואף הדפסת מטריצת בלבול‬,‫ חישוב תוצאות‬,‫ נתינת פרדיקציה‬,‫בניית המודל‬

99
‫איור ‪ - 28‬קלאס מודל – אבא‪ .‬שאלת מחקר ‪.6‬‬

‫איור ‪ -29‬קלאס מודלים ‪ -‬יורשים‪ .‬שאלת מחקר ‪.6‬‬

‫בשלב הבא בחרנו מספר מודלים על מנת לנסות לנבא את ציוני בתי החולים‪ .‬לשם כך השתמשנו‬
‫במודלים הבאים‪:‬‬
‫‪Random forest‬‬ ‫‪‬‬
‫‪K – Nearest Neighbors‬‬ ‫‪‬‬
‫‪Decision tree‬‬ ‫‪‬‬
‫‪Nuearl networks – MLPclassifier‬‬ ‫‪‬‬
‫‪Bagging – using decision tree‬‬ ‫‪‬‬

‫‪100‬‬
‫‪Gradient decent‬‬ ‫‪‬‬

‫את הנתונים חילקנו על ידי פונקציית ‪ split‬של ‪ .sklearn‬בחרנו תחילה לחלק ‪ 25%‬מהנתונים לנתוני‬
‫מבחן ו‪ 75%-‬לנתוני אימון‪ .‬בחרנו זאת היות וכמות השורות נמוכות יחסית ויש להשקיע יותר באימון‬
‫המודל על מנת לקבל מודל טוב יותר גם על חשבון קבלת ‪ Overffiting‬אפשרי בעת אימון המודל (קבלת‬
‫תוצאות נמוכות באימון)‪ .‬יש לציין כי השתמשנו בפונקציית ‪ Standard scalar‬על מנת לנרמל את‬
‫הנתונים כך שניתן יהיה למדל אותם בצורה נכונה‪ ,‬הפונקציה מבצעת נרמול סביב ממוצע אפס וסטיית‬
‫תקן ‪ 1‬לכל עמודה ב – ‪.Data frame‬‬

‫איור ‪ - 30‬פונקציות – חלוקת נתונים‪ ,‬בניית מודל‪ ,‬חיזוי ותוצאת המודל‪ .‬בקו כחול ניתן לראות את הפונקציה שבעזרתה נרמלנו את‬
‫הנתונים‪ .‬שאלת מחקר ‪.6‬‬

‫בהסתמך על הנתונים בנינו ‪ hyperparametrics‬לכל מודל והתחלנו להריץ את המודלים על מנת לשפר‬
‫את הפרמטרים הנתונים‪ .‬אלו הם הפרמטרים אשר נבחרו עבור כל מודל‪:‬‬

‫‪:Random Forest‬‬
‫‪ :N-estimators = 101‬פרמטר זה קובע את מספר העצים אשר ניתן יהיה לבנות במודל זה‪ .‬כל‬ ‫‪o‬‬
‫עץ הוא ‪ classifier‬משל עצמו אשר כך שהתוצאה הסופית ה‪ RNF-‬קובע על ידי ספירת רוב‬
‫התוצאות‪.‬‬
‫‪ :Max deapth = 7‬פרמטר זה קובע את עומקו המקסימלי של כל עץ‪ .‬ככל שהעץ עמוק יותר‪ ,‬כך‬ ‫‪o‬‬
‫החלטה אחת עוברת יותר מסננים‪ .‬עץ עמוק מדי יכול לגרור ‪.overfitting‬‬
‫‪ :Max feature = 5‬מספר מקסימלי של תכונות אשר בכל עץ נתון יכול המודל לעשות שימוש על‬ ‫‪o‬‬
‫מנת לבנות עץ‪.‬‬
‫‪:KNN‬‬
‫‪ :N-nieghbors = 5‬פרמטר זה קובע את מספר הצמתים אשר נקבעים עבור כל צומת וצומת‬ ‫‪o‬‬
‫כשכנים‪.‬‬
‫‪( MLPclassifier‬רשת נוירונים)‬

‫‪101‬‬
‫‪ :Alpha = 0.1‬פרמטר זה מתנהג כפונקציית קנס ואחראי על הקטנת או הגדלת המקדמים של‬ ‫‪o‬‬
‫פונקציות המשקל‪ .‬הגדלת האלפא מונעת ‪ overfitting‬והקטנת האלפא מגדילה ‪.overfitting‬‬
‫בחרנו באלפא היות ותוצאות המודל נמוכות‪.‬‬
‫)‪ :Hidden layer sizes = (8,10‬פרמטר זה קובע ברשת נוירונים את מספר השכבות החבויות‬ ‫‪o‬‬
‫ואת כמות הנוירונים בכל שכבה‪ .‬כל שכבה כזו מבצעת עיבוד נוסף של המשתנים הנתונים על ידי‬
‫פונקציות משקל‪.‬‬
‫‪ :’Activation = ‘relu‬פונקציות אקטיבציה מעבדות תוצאות המגיעות אל הצמתים ומחליטות‬ ‫‪o‬‬
‫האם יש לבצע אקטיבציה לנתונים בצומת או לא‪ .‬בחרנו ב‪ RELU-‬היות והיא פונקציה בסיסית‬
‫פופולרית‪.‬‬
‫‪ :’Solver = ‘sgd‬הפונקציה שאחראית למינימיזציה של (אופטימיזציה) לפונקציית ה‪,loss-‬‬ ‫‪o‬‬
‫בחרנו ב‪ SGD (stochastic gradient descent)-‬למרות שהיא איטית יותר (דורשת יותר‬
‫איטרציות) היא מגיע ביותר קלות לערך המינימום‪.‬‬
‫‪ :Learning rate init = 0.08‬פרמטר זה קובע את קצב ההתקדמות לעבר נקודת המינימום ב‪-‬‬ ‫‪o‬‬
‫‪ gradient descent‬שהמודל עושה בה שימוש‪ .‬אחראי משמעותי להתכנסות ה‪ Loss-‬במודל‪.‬‬

‫‪Decision tree‬‬
‫‪ :Max deapth = 8‬היות ויש לנו ‪ 10‬תכונות‪ ,‬נשתמש ב‪ 8-‬על מנת לא ליצור אוברפיטינג אפשרי‪.‬‬ ‫‪o‬‬
‫‪Gradient Boosting‬‬
‫‪ :N-estimators =50‬שיטה זו שונה מ ‪ -random forest‬שבראשון כל עץ נבנה בצורה תלויה‬ ‫‪o‬‬
‫בעץ אחר וכל עץ נבנה במלוא כל איטרציה‪ ,‬ב‪ Random Forest-‬יש בניית עצים בצורה בלתי‬
‫תלויה‪ .‬לכן יש צורך בפחות עצים בשיטה זו‪.‬‬
‫לאחר שהתקבענו על הפרמטרים הנ"ל‪ ,‬הרצנו את המודלים ‪ 50‬פעמים על מנת לקבל ממוצע תוצאות‬
‫עבור כל מודל‪ .‬ממוצע זה יעזור לנו להכריע מיהו המודל עם התוצאות הטובות ביותר אשר אותו נבחר‬
‫כדי לשמש לנו כמסווג‪ .‬הרצנו ‪ 50‬פעמים על מנת לקבל מובהקות סטטיסטית אשר ממוצע אחד גדול‬
‫ברמ"מ ‪ 95%‬משאר הממוצעים‪ .‬משמעות מדד ה‪ Score-‬של כל מודל הינו הדיוק הממוצע (‪Mean‬‬
‫‪ ,)Accuracy‬ומדד זה זהה עבור כל המודלים היות וכולם פותרים בעיית סיווג‪ .‬אלמלא השאלה הייתה‬
‫סיווג‪ ,‬משמעות המדד היה ‪.R^2‬‬
‫הלו הם תוצאות המודלים‪:‬‬

‫איור ‪-31‬ממוצע ‪ 50‬ה‪ SCORE -‬עבור כל מודל לאחר ‪ 50‬הרצות‪ .‬שמות המודל מלמעלה למטה‪Random forest, K-nearest- :‬‬
‫‪ .neighbors, Nueral net, Decision tree, Gradient descent‬שאלת מחקר ‪.6‬‬

‫‪102‬‬
‫כפי שניתן לראות מודל רשת הנוירונים בעלת התוצאה הגבוהה ביותר‪ ,‬בצמוד אליה נמצא ה‪Random -‬‬
‫‪ forest‬ושאר המודלים רחוקים‪ .‬נבחר במודל רשת הנוירונים כמסווג של השאלת מחקר שלנו‪.‬‬

‫שלב ‪– Evaluate your result‬‬


‫בשלב זה נבצעה הערכות לתוצאות שלנו‪.‬‬
‫סט הנתונים שלנו מורכב מ‪ 83-‬עמודות של משתנים בלתי תלויים‪ ,‬ומשתנה תלוי קטגוריאלי בעל ‪5‬‬
‫קלאסים שונים הממוספרים מ‪( 1‬ציון רע מאוד) ועד ‪( 5‬ציון גבוה)‪ .‬לאחר שיבצענו ‪ PCA‬נותרנו עם ‪10‬‬
‫עמודות בלבד על מנת לבנות מודל‪ .‬אם כך‪ ,‬בנינו מטריצת בלבול בגודל ‪ 5X5‬אשר בעזרתה נוכל להעריך‬
‫ראשונה את המודל‪.‬‬
‫נבצעה הערכה למודל הנבחר בלבד – ‪ MLPclasiffier‬לשם בניית המטריצה‪ ,‬יצרנו פונקציה עצמאית‬
‫הבונה את מטריצת הבלבול בעל חמשת המימדים‪.‬‬

‫איור ‪ - 32‬מטריצת בלבול עבור ‪ 5‬קלאסים שונים‪ .‬שאלת מחקר ‪.6‬‬

‫להלן התוצאה שקיבלנו עבור הרצת המודל הנבחר‪:‬‬


‫על מנת להעריך מודל יש להשתמש במדדים מוכרים לבחינת איכות מודל והם – ‪Accuracy,‬‬
‫‪ Precision, Recall‬ו – ‪ .F1‬לפני שנציג תוצאות נציג הרחבה על הכל מדד‪ .‬ראשית נסביר ארבע מושגי‬
‫בסיס‪.FN, FP TN, TP :‬‬
‫‪ – True negative‬כל הפעמים שהמודל חזה שהתוצאה אינה קלאס מסויים וצדק‪.‬‬ ‫‪‬‬
‫‪ - True positive‬כל הפעמים שהמודל חזה שהתוצאה היא קלאס מסויים וצדק‪.‬‬ ‫‪‬‬
‫‪ - False negative‬כל הפעמים שהמודל חזה שהתוצאה אינה קלאס מסויים וטעה‪.‬‬ ‫‪‬‬
‫‪ - False positive‬כל הפעמים שהמודל חזה שהתוצאה אינה קלאס מסויים וטעה‪.‬‬ ‫‪‬‬
‫‪ – Accuracy‬כל הפעמים שהמודל צדק חלקי מספר כל הניחושים‪ .‬מציג את יכולת המודל לפגוע‬ ‫‪‬‬
‫נכון בחיזוי‪.‬‬

‫‪103‬‬
‫)‪ ,Precision – (TP/(TP+NP‬מדד זה מהווה לנו יכולת להעריך את הנטייה של המודל להיצמד‬ ‫‪‬‬
‫יתרה לקלאס אותו אנו רוצים לחזות‪ .‬מדד נמוך מעיד שהמודל אינו מסוגל להבחין מצבים אחרים‬
‫והוא נוטה ליחס תכונות לקלאס הנתון‪.‬‬
‫)‪ ,Recall – ((TP/(TP+NP‬מדד זה מהווה לנו יכולת להעריך את הנטייה של המודל לפגוע‬ ‫‪‬‬
‫בקלאס הרצוי‪ .‬מדד גבוהה אומנם יכול להעיד על יכולת גבוהה לזהות את המודל‪ ,‬אומנם עלול‬
‫להעיד גם על אי יכולת להבחין בקלאס אחר‪.‬‬
‫) ¿‪2∗( recall∗precision‬‬
‫‪ ,‬מדד זה הוא הממוצע ההרמוני של ה‪ recall-‬וה‪.precision-‬‬ ‫‪- F1‬‬ ‫‪‬‬
‫‪precision+recall‬‬
‫הוא עוזר לנו להעריך את ערכו של היחס בין שני המדדים הללו‪ .‬לעומת ה‪ Accuracy-‬המדד‬
‫מתחשב ב‪ FN‬וב‪ FP-‬במונה‪ ,‬לכן יש יותר משקל‪.‬‬
‫‪‬‬
‫שימוש במשתנים אלו בבעיית סיווג בעלת יותר משני קלאסים מקבל אופי מעט אחר זאת משום שלא‬
‫ניתן לחשב ‪ Recall‬למשל במטריצת ‪ 3X3‬בדרך הרגילה‪ ,‬בשל העובדה הפשוטה שאיננו יכולים להצביע‬
‫על שלושת הקלאסים ביחד בשאלה מיהו הקלאס שיבחר‪ ,‬ועל כן לא ניתן לענות על השאלה מה כמות‬
‫‪ Falsa Negative‬לדוגמה‪ .‬לכן‪ ,‬עלינו לבצע הערכה של שתי קבוצות כל סבב – קבוצה א' היא קלאס‬
‫נתון נבחר (למשל ‪ )1‬וקבוצה ב' הינה שאר הקלאסים הנותרים (‪.)2,3,4,5‬‬

‫להלן התוצאות של המדדים הנ"ל‪:‬‬


‫מטריצת הבלבול‬

‫איור ‪ - 33‬מטריצת בלבול‪ .‬שאלת מחקר ‪.6‬‬

‫‪104‬‬
‫מדדים‪:‬‬

‫טבלה ‪ - 3‬מדדים‪ .‬שאלת מחקר ‪.6‬‬

‫‪ .Total Accuracy: 0.52‬מחושב לפי סכימה של כל העמודות ‪ TP‬ו‪ TN-‬חלקי כל התצפיות‬

‫כעת נבצע הוספת משקלים לניתוח התוצאות‪ ,‬משום מה? היות ומדובר על משתני מטרה קטגוריאליים‬
‫עם חשיבות לסדר‪ ,‬כלומר כל קלאס יש לו ערך גבוה ממשנהו‪ .‬לכן‪ ,‬אם המודל חוזה לבית חולים רמה ‪4‬‬
‫את התוצאה ‪ ,3‬תוצאה זו משמעותית יותר מאם הוא חזה ‪ ,1‬עם זאת‪ ,‬אין הבדל אם המודל חזה את‬
‫התוצאה ‪ 2‬או ‪ 1‬כי שניהם רחוקים מהערך האמיתי במהות שלהם‪ .‬לכן נוסיף לאלכסון מטריצת הבלבול‬
‫משקלים בצורה הבאה‪:‬‬
‫אם הקלאס הינו בקצוות הסולם נוסיף ‪ 0.5‬מהערך הסמוך לו (לדוגמה לקלאס ‪ 1‬נוסיף עוד ‪ 50%‬מכמות‬
‫הפעמים שהוא חזה ‪ 1‬את התוצאה ‪.)2‬‬
‫אם הקלאס הוא בטווח ביניים (בין ‪ 2‬ל‪ )4-‬נוסיף ‪ 25%‬מכל צד שלו‪.‬‬

‫להלן מטריצת הבלבול החדשה‪:‬‬

‫איור ‪ - 34‬מטריצת בלבול חדשה‪ .‬שאלת מחקר ‪.6‬‬

‫מדדים לאחר הוספת משקלים‪:‬‬

‫טבלה ‪ - 4‬מדדים לאחר הוספת משקלים‪ .‬שאלת מחקר ‪.6‬‬

‫‪.Total Accuracy: 0.59‬‬


‫‪105‬‬
‫ניתוח תוצאות‪:‬‬
‫ניתן לראות כי למודל אין תוצאות טובות מאוד בקלאסים הנמצאים בטווח הביניים (‪ ,)2-4‬ה‪Precision‬‬
‫נמוך בעוד לפעמים ה‪ recall-‬נמוך יותר (חוץ מבקלאס ‪ 3‬שהוא גבוה יותר)‪ .‬סיבה אפשרית לכך היא כי‬
‫כמות בתי החולים המדורגים בטווחים אלה הוא גבוה ועדיין כמות השורות הנמצאות בדאטה אינן‬
‫מספיקות כדי להבדיל לחלוטין בין התוצאות‪.‬‬
‫נוכל לראות כי קלאס ‪ 3‬הוא בעל ‪ recall‬בינוני\גבוה יחסית (‪ ,)67%‬והסיבה לכך‪ ,‬כי הוא מופיע הכי‬
‫הרבה פעמים בדאטה ולכן יש למודל נטייה ל"נחש" אותו יותר פעמים‪ ,‬אלמלא ה ‪ Precision-‬שלו היה‬
‫נמוך‪ ,‬יכולנו לומר כי המודל מצליח לסווג מצוין את המודל‪.‬‬
‫ה‪ Accuracy-‬של המודל הוא גבוהה יחסית פר קלאס‪ ,‬אם נשמיט לרגע את הקלאסים אשר בקצוות‪,‬‬
‫נוכל לראות כי הערך הנמוך ביותר הוא של קלאס ‪ ,3‬ועדיין הוא מגיע לכמעט ‪ .Accuracy 70%‬נוכל‬
‫להניח כי זה קורה היות והמדידה של קלאס מול שאר הקלאסים גורמת לתוצאות ‪ TN‬גבוהות מאוד אשר‬
‫יוצרות אשלית דיוק גבוהה‪ .‬לדוגמה‪ ,‬ניקח מצב של סט נתונים אשר נותנים לנו בית חולים ברמה ‪,4‬‬
‫המודל החליט שעבור הסט נתונים התוצאה אינה ‪ 3‬אלא קלאס אחר וצדק (‪ Accuracy‬עולה)‪ .‬אומנם‬
‫ברגע שנצא מתחום קלאס ‪ 3‬נראה כי יש סבירות גבוהה והמודל טעה ואמר שהתוצאה היא ‪.2‬‬
‫נקודות אור במודל הינן – קלאס ‪ 3‬בעל תוצאת ‪ f1‬יחסית גבוהה‪ ,‬כלומר היחס ‪ precision recall‬הוא לא‬
‫רע בהתחשב בתוצאות הנמוכות‪ .‬בנוסף לכך מדד ה‪ Accuracy-‬הכלל של המודל הוא כמעט ‪ ,60%‬ניתן‬
‫להעריך שיש למודל יכולת סבירה לנבא ציון‪.‬‬

‫שלב ‪- Determine next step‬‬


‫לסיכום ניתן להגדיר את המודל שנבנה כלא איכותי‪ .‬בעבור מגוון מודלים שונים קיבלנו תוצאות נמוכות‪,‬‬
‫כך שהגבוהה מביניהם הינו עומדת על ‪ .Accuracy 50%‬משמעות מספר זה שהמודל שלנו חוזה את‬
‫הקלאס הנכון בצורת הטלת מטבע עם ‪ 50%‬סיכוי להיות צודק‪ ,‬לכן אינו מעיד על מודל איכותי‪ .‬אומנם‬
‫אם נסתכל על התוצאות לפי ההסבר שבסעיף הקודם נוכל להעריך כי המודל שלנו חוזה בצורה טובה‬
‫ערכים אשר קרובים למציאות‪ ,‬בייחוד במקרי קצה (בית חולים רמה ‪ 1‬במציאות יסווג כ‪ 1-‬ובית חולים‬
‫ברמה ‪ 5‬יסווג כ‪ .)5-‬בנוסף לכך ערכי הביניים (קלאסים ‪ )2-4‬מתגלים כחולשה במודל‪.‬‬

‫בצעד הבא שלנו נבצע מספר מהלכים אשר ישפרו את המודל –‬


‫שימוש ב‪ – cross validation-‬שיטה זו עוזרת בשיפור המודל והכנתו ברמה המיטבית בשלב‬ ‫‪o‬‬
‫האימון‪.‬‬
‫חלוקת הדאטה לקבוצות – נבצע זו לפי קבוצות אשר הינן ברורות מעליהן – מדינה‪ ,‬עיר‪ ,‬סוג‬ ‫‪o‬‬
‫הבית חולים‪.‬‬
‫נבצע בניית מודל רק כך שציון הבית חולים יהיה ‪ 1,2‬או ‪ ,3‬כך ש‪ 2-‬מכיל את ציון ‪ 2,3‬ו‪.4-‬‬ ‫‪o‬‬
‫ניעזר בארכיון בית החולים לשיפור המודל‪.‬‬ ‫‪o‬‬
‫נבצע הערכות על המודל עפ"י נתונים חדשים שיכנסו בשנה הבאה למאגר‪ .‬נבחן את תוצאות‬ ‫‪o‬‬
‫המודל אל מול הערכים החדשים ונבדוק התאמה‪.‬‬
‫נבנה את המודל בעזרת חבילת ‪ Keras‬שהיא מאפשרת דיוק רב יותר של בניית רשת נוירונים‪.‬‬ ‫‪o‬‬

‫‪106‬‬
‫שאלת חיזוי – מהי הכנסה נקייה שנתית של בתי חולים נתון בשנה נתונה?‬ ‫‪9.2.7‬‬
‫בשאלה זו רצינו לבדוק בעזרת פרמטרים שונים שנקבעו ונאספו על ידי ארגון ה‪ CMS-‬האם ניתן לחזות‬
‫הכנסה שנתית נקייה של בית חולים בשנה נתונה‪.‬‬
‫לשם התהליך היה עלינו למשוך את מגוון העמודות הקיימות במאגר ה‪ -CMS‬אשר יכולות להשפיע על‬
‫הכנסה שנתית‪ .‬הפרמטרים הנבחרים כוללים – מספר רופאים‪ ,‬מספר מיטות‪ ,‬מדינה‪ ,‬סוג בית החולים‪,‬‬
‫מספר מטופלים שנתי‪ ,‬האם הבית חולים עירוני או כפרי ומי מנהל הבית חולים‪.‬‬
‫שלב ‪– Business understanding‬‬
‫מטרת חיזוי הכנסה שנתית היא בעלת ערך רב לגורמים רבים‪ .‬למשל יכולת חיזוי רווח נקי יאפשר למנהל‬
‫בית חולים להיערך מחדש לקראת השנה‪ ,‬לתכנן תהליכים ולבדוק מקומות כשל אפשריים‪ .‬בנוסף‪ ,‬חיזוי‬
‫‪ KPI‬זה יאפשר הערכה מדויקת יותר של גורמי בריאות שונים ברחבי ארה"ב‪.‬‬
‫שלב ‪– Data understanding‬‬
‫בשלב זה התחלנו להבין את מבנה הטבלאות‪ ,‬סוגי הנתונים‪ ,‬כמות הנתונים ועוד‪ .‬ובכן‪ ,‬חלק מהנתונים‬
‫הינם ניתן מסוג ‘‪ ’float‬המייצגים את העמודות הבאות‪ :‬מספר רופאים‪ ,‬מספר מיטות‪ ,‬מספר התמחויות‬
‫ומספר מטופלים שנתי‪ .‬שאר הנתונים הם נתונים קטגוריאליים – מדינה‪ ,‬סוג בית חולים‪ ,‬עירוני או כפרי‪,‬‬
‫סוג שליטת בית חולים (מטרות צדקה‪ ,‬פרטי‪ ,‬תאגידי‪ ,‬פדרלי וכו') וסוג ספק (טווח ארוך‪ ,‬קצר‪ ,‬וכד')‪.‬‬
‫מספר השורות העומדות לרשותנו הינו ‪ .6,249‬כמובן שערך המטרה שלנו הינו ערך רציף ומשמעותו‬
‫כמות כסף נקייה שעשה בית חולים בשנה נתונה‪.‬‬
‫בשלב זה הצגנו את הנתונים על גבי גרף על מנת להשוות כל אחד ואחד מהעמודות לערך המטרה בכדי‬
‫להבין את רמת ההשפעה של משתנה מסביר על ערך המטרה‪ .‬להלן גרף אחד לדוגמה המציג את מספר‬
‫אנשי הצוות (ציר ‪ )X‬לעומת ההכנסה הנקייה (ציר ‪ :)Y‬כמות אנשי צוות לעומת הכנסה נקייה (בנספחים ניתן‬
‫לראות את שאר הגרפים)‪:‬‬

‫גרף ‪ - 6‬מספר אנשי הצוות (ציר ‪ )X‬לעומת ההכנסה הנקייה (ציר ‪ .)Y‬שאלת מחקר ‪.7‬‬

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

‫גרף שני שנציג הינו גרף של משתנה קטגוריאלי – סוגי הבית החולים‪:‬‬

‫גרף ‪- 7‬גרף של משתנה קטגוריאלי – סוגי הבית החולים והכנסותיהם‪ .‬שאלת מחקר ‪.7‬‬

‫ניתן לראות כי לדוגמה הערך ‪ 7‬אשר מציין בית חולים לילדים הינו בעל הכנסה נמוכה בממוצע משאר‬
‫הקטגוריות‪ .‬נצפה כי המודלים ייטו לחזות ערך נמוך יותר אצל קטגוריה זו‪ .‬לעומת זאת‪ ,‬קטגוריה ‪4‬‬
‫מייצגת בית חולים מסוג פסיכיאטרי והינה בעלת הכנסה ממוצעת גבוהה יותר משאר הקטגוריות (לכל‬
‫הפחות בממוצע)‪.‬‬
‫נסיק כי לא קיימת קורלציה בין אף עמודה לערך המטרה‪ ,‬לא קורולציה ליניארית על כל הפחות‪ ,‬אונם אכן‬
‫קיימים משתנים מסבירים אשר יכול לנבות ערך הכנסה ממוצעת בעזרת שילוב נכון של העמודות‬
‫הקיימות‪.‬‬

‫שלב – ‪– Data preparation‬‬


‫בשלב זה ביצענו תהליך ‪ ETL‬אשר ישאב את הנתונים מאתר ‪ Medicare‬כך שעבור כל טבלה שמשכנו‬
‫תהיה טבלה משלה ב‪ .MySql-‬תהליך המשיכה דומה לתהליכים הקודמים שביצענו עד כה בפרויקט‪.‬‬
‫להלן תרשים ‪ ERD‬המתאר את תהליך איחוד הנתונים‪:‬‬

‫‪108‬‬

‫איור ‪ - 35‬תרשים ‪ ERD‬המתאר את תהליך איחוד הנתונים‪ :‬שאלת מחקר ‪.7‬‬


‫לאחר מימוש הנתונים במאגר הנתונים‪ ,‬היה עלינו לאחד את הטבלה כך שכל המדדים יהיו לרשותנו‬
‫במטריצה אחת‪ ,‬כך יתאפשר לנו לבצע אינטגרציות‪ ,‬אגריגציות‪ ,‬בניית מודלים‪ ,‬וניקוי נתונים בצורה נוחה‬
‫ומיטבית‪ .‬לשם כך יצרנו קובץ שנקרא ‘ ‪ ,’Preprocessing_income_net_for_model‬המטרה המרכזית‬
‫היא לאחד את הנתונים מטבלאות שונות‪ .‬היות שבכל טבלה ישנם בממוצע ‪ 20,000‬נתונים ועל כל אחת‬
‫נרצה לבצע ‪ Pivot‬למדדים‪ ,‬כך שכל מדד יופיע כעמודה‪ ,‬דחינו את האופציה לבצע אינטגרציה בין‬
‫הטבלאות על ידי שאילתת‪ Join‬ארוכה גדולה ומסובכת (ובנוסף תקשה לנו על תהליך ‪ debugging‬נוח)‪,‬‬
‫החלטנו לבצע ‪ Join‬בעזרת תוכנת ‪ Spyder‬בפייתון‪.‬‬

‫איור ‪ - 36‬עבור כל טבלה יצרנו תהליך כזה– שם הטבלה‪ ,‬קריאה לפונקציה המייצרת שאילתה ושימוש בתנאים‪ .‬שאלת מחקר ‪.7‬‬

‫איור ‪ - 37‬יצירת ‪ Join‬לקבלת טבלה אחודה כך שיש טבלה מרכזית‪ .‬שאלת מחקר ‪.7‬‬

‫התוצאה – קיבלנו טבלה בגודל (‪ ,)6,170X10‬ולאחר שקיבלנו את המטריצה הרצויה‪ ,‬נוכל לעבור לניקוי‬
‫הנתונים‪ .‬כל טבלה שנלקחה ממאגר הנתונים נחתכה בעת המשיכה על ידי יצירת תנאי אשר חותך‬
‫ערכים של שורות שהם ‘‪ .’Not Available‬בנוס לכך המרנו תוצאות ‪( Nan‬ערכים נומריים לא זמינים) ל‪-‬‬
‫‪ .0‬בחרנו לא לחתוך בשורות אלו היות והעמודות מגיעות מטבלאות שונות‪ ,‬חיתוך מספר זה משמע‬
‫חיתוך שורות רבות שייתכן ויתר המשתנים לא יהיו קיימים‪.‬‬

‫איור ‪-38‬החלפת ערך נומרי ב‪ 0 -‬והחלפת ערך ‪ String‬ב‪( ''-‬גרשיים ריקות)‪ .‬שאלת מחקר ‪.7‬‬

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

‫‪109‬‬
‫גרף ‪ - 8‬כמות המיטות ובי"ח החריג‪ .‬שאלת מחקר ‪.7‬‬

‫ניתן לראות את הנקודה החריגה‪ .‬בנספחים ניתן לראות את תוצאת פיזור הנתונים לאחר הורדת הנקודה‬
‫החריגה‪.‬‬

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

‫איור ‪ - 39‬הוצאת החריגים והדפסת הגרפים‪ .‬שאלת מחקר ‪.7‬‬

‫פעולה נוספת למניעת קושי בחיזוי הינה עיגול ערכי ערך המטרה ב‪ 5-‬ספרות (הנתונים יספרו באלפים)‪.‬‬
‫שלב אחרון בתהליך עיבוד הנתונים‪ ,‬ביצענו הפיכת ערכים קטגוריאליים לערכים נומריים ע"י שימוש‬
‫בפונקציה ‘‪ ’Label encoder‬של חבילת ‘‪ .’Sklearn‬בעזרת פונקציה זו נוכל למספר בקלות את‬
‫המשתנים הרלוונטיים ולאחר מכן להשתמש בהם במודל‪.‬‬

‫איור ‪ - 40‬פונקציה ‘ ‪ .’Label encoder‬שאלת מחקר ‪.7‬‬

‫שלב ‪– Modeling‬‬
‫כעת נוכל להתחיל לבנות את המודלים שלנו כך שיעזרו ב‪ 10-‬העמודות הנתונות‪ .‬לשם כך בנינו את‬
‫התוכנית כך שנוכל להיעזר במודלים שונים אשר קיימים ב‪ .SKlearn-‬יצרנו קובץ ‪ script‬בפייתון שבו‬
‫יצרנו פונקציות המריצות מודל‪ ,‬בונות גרפים של תוצאות החיזוי ומדפיסות את תוצאות המודל‪.‬‬
‫את הנתונים חילקנו על ידי פונקציית ‪ split‬של ‪ ,sklearn‬כך ש‪ 20% -‬מהנתונים לנתוני מבחן ו‪80%‬‬
‫לנתוני אימון‪ .‬בחרנו בחלוקה זו על מנת לאמן את המודל בכמות מספיק גדולה של נתונים כדי להיחשף‬
‫למצבים רבים‪ ,‬אומנם כדי לבדוק את המודל ואת האיכות שלו יש להיעזר ברמה סטטיסטית גבוהה ו‪-‬‬
‫‪ 20%‬מהנתונים הינם ‪ 500‬תצפיות‪ .‬יש סיכון בקבלת ‪ overfitting‬בנתוני האימון ולכן נבצע מעקב אחר‬
‫תוצאות נתוני האימון‪.‬‬

‫בחרנו מספר מודלים מסוג ‘‪ ’regressor‬שיוכלו לנבא את ההכנסה הנקייה‪ ,‬להלן המודלים שנבחרנו‬
‫לחיזוי‪:‬‬
‫‪Random forest‬‬ ‫‪‬‬
‫‪Decision tree‬‬ ‫‪‬‬
‫‪111‬‬
‫‪Ada-boost using decision tree‬‬ ‫‪‬‬
‫‪Ada-boost using random forest‬‬ ‫‪‬‬
‫נרחיב מעט על ‪ – Ada-boost‬מודל זה הינו שייך לקבוצת מודלי ה‪Ensamble machine learning-‬‬
‫‪ ,Algoritm‬שהם קבוצת מודלים המאפשרים שילוב של מספר מודלים שונים או דומים בהרצה אחת של‬
‫האלגוריתמים השונים על סט נתונים‪ Ada-boost .‬בעצם מבוסס על מספר מסווגים\מנבאים חלשים‬
‫הנקראים ‪ ,Stamps‬כל ‪ Stamp‬נותן תוצאת ניבוי\סיווג לפי סט משתנים והוא מבוסס על אלגוריתם‬
‫מסווג\מנבא (למשל ‪ Stamp‬יכול להיות מבוסס על אלגוריתם של עץ החלטות)‪ .‬כל איטרציה מבצעת‬
‫בנייה חדשה של סט נתונים לפי אלגוריתם של ‪ ,Bootstrap‬לא לפני שמצמידים משקל לכל רשומה (לכל‬
‫רשומה יש ערך מטרה ותוצאת חיזוי‪ ,‬לכן ניתן לדעת באיזו רשומה המודל עשה טעות) ובכך באיטרציה‬
‫הבאה מגדילים את הטעות‪ .‬אלגוריתם זה עוזר לשפר תוצאות מודל במצבים שיש ‪underfitting‬‬
‫בתוצאות החיזוי של נתוני הטסט‪.‬‬

‫כעת נבצע סקירה על כל האלגוריתמים והסבר על ההיפרפרמטרים שנבחרו‪.‬‬

‫‪:Random Forest‬‬
‫‪ :N-estimators = 1000‬פרמטר זה קובע את מספר העצים אשר ניתן יהיה לבנות במודל זה‪.‬‬ ‫‪o‬‬
‫כל עץ הוא ‪ regressor‬משל עצמו כך שהתוצאה הסופית ה‪ RNF-‬יקבע על ידי ביצוע ממוצע על‬
‫התוצאות‪ .‬בחרנו ב‪ estimators 1,000-‬כיוון ששונות ערכי ה‪ y-‬היא גדולה מאוד ועל כן רצינו‬
‫לקבל תוצאה מובהקת וקרובה לפתרון האופטימלי של העץ‪.‬‬
‫‪ :Max deapth = 1,200‬פרמטר זה קובע את עומקו המקסימלי של כל עץ‪ .‬ככל שהעץ עמוק‬ ‫‪o‬‬
‫יותר‪ ,‬כך החלטה אחת עוברת יותר מסננים‪ .‬עץ עמוק מדי יכול לגרור ‪ overfitting‬בנתוני האימון‪.‬‬
‫בחרנו במספר רב של עומק עץ מקסימלי היות וראינו במהלך ההרצות כי קיבלנו תוצאות ‪train‬‬
‫נמוכות מאוד‪ ,‬הערכנו כי קיים‪ Underfitting‬ולכן רצינו 'לשחרר' את העץ‪.‬‬
‫‪ :Max feature = 2‬מספר מקסימלי של תכונות אשר בכל עץ נתון יכול המודל לעשות שימוש על‬ ‫‪o‬‬
‫מנת לבנות עץ‪ .‬לאחר ניסוי וטעיה ראינו כי עבור מספר זה קיבלנו את התוצאות הטובות ביותר‪.‬‬
‫ייתכן כי כאשר מספר המסווגים ומקסימום עומק העץ גבוהים יש לא לאפשר לעץ לעבור על‬
‫‪ estimator‬להסתמך על יותר מ‪ 2-‬משתנים‪.‬‬
‫‪:Decision tree‬‬
‫‪ :Max deapth = 550‬נרצה שלעץ יהיה יכולת לסווג היטב בין מקרים‪ ,‬אנו רוצים אחוז דיוק‬ ‫‪o‬‬
‫גבוה‪ ,‬גם בנתוני אימון‪.‬‬
‫‪ :Min Samples Split = 5‬מספר התצפיות המינימלי על מנת לפצל את הצומת בעלה‪.‬‬ ‫‪o‬‬
‫‪ :Min sample leaf = 3‬מספר תצפיות מינימלי על מנת לפצל תצפיות בצומת‪ ,‬יצרנו מספר‬ ‫‪o‬‬
‫מינימלי יחסית גבוה מהברירת מחדל (‪ 2‬ו‪ 1-‬בהתאמה) על מנת להקשות על העץ להתפצל כדי‬
‫שבכל זאת לא נגיע ל‪.overfitting-‬‬
‫‪:’Criterion = ‘MAE‬‬ ‫‪o‬‬

‫‪112‬‬
‫לאחר ההרצות של המודלים שנבחרו‪ ,‬חזינו בתוצאות לא טובות (נפרט על התוצאות עוד בהמשך)‪ ,‬לכן‬
‫כדי לשפר את תוצאות החיזוי של נתוני המבחן הכנסנו כל אחד מהמודלים לתוך אלגוריתם ‪.Ada-boost‬‬

‫שלב ‪– Evaluate your result‬‬


‫בשלב זה נבצע הערכות לתוצאות שלנו‪.‬‬
‫ישנם מספר מדדים כדי להעריך תוצאות של מודלי רגרסיה‪.‬‬
‫‪ ‬מדד (‪ -MAPE )Mean Absolute Percent Error‬מעיד על ממוצע אחוז הטעות‪ .‬מדד זה‬
‫חשוב מאוד היות והוא מאפשר לנו להעריך עבור כל תוצאת חיזוי של המודל את הטעות היחסית‬
‫שלו לעומת ערך המטרה‪.‬‬
‫‪ ‬מדד ‪ : Accuracy –MAPE‬מדד המאפשר לנו העריך עד כמה המודל מדייק את התוצאות‪,‬‬
‫תוצאה שלילית מעידה על חוסר דיוק של המודל‪.‬‬
‫מדד ( ‪ - MAE (Mean absolute error‬מדד זה מספר לנו על ממוצע הטעויות האבסולוטיות‪ .‬כך‬ ‫‪‬‬
‫אנו משמיטים את החשיבות ל‪ over-prediction‬או ‪.under-prediction‬‬
‫להלן המודל עם התוצאות הטובות ביותר (בנספחים ניתן יהיה למצוא את שאר התוצאות)‪:‬‬
‫המודל בו קיבלנו את התוצאות הטובות ביותר הינו שילוב של ‪ ada-boost‬עם ‪ .random forest‬בכדי‬
‫לשלב את שני המודלים יצרנו היפר פרמטרים חדשים‪ ,‬היות ו‪ -ada boost‬מייצר איטרציות נוספות‬
‫לבניית ה‪.Random forest‬‬
‫‪.estimators = 1,500‬‬ ‫‪o‬‬
‫‪.Max deapth = 500‬‬ ‫‪o‬‬
‫‪.Max feature = 2‬‬ ‫‪o‬‬
‫‪ ,Adaboost n-estimators: 4‬כלומר ביצענו ‪ 4‬איטרציות של ‪ ,ada-boost‬כך שעבור כל‬ ‫‪o‬‬
‫איטרציה‪ ,‬המודל מדגיש את טעויות המודל‪ .‬יותר מדי איטרציות עלול לגרום לתוצאות חיזוי‬
‫נמוכות יותר היות והמודל מתבסס יותר ויותר על דאטה מסוג אחד – הטעויות‪.‬‬
‫להלן תוצאות המודל‪:‬‬

‫איור ‪ - 41‬תוצאות מודל‪ .‬שאלת מחקר ‪.7‬‬

‫‪113‬‬
‫ניתן לראות תוצאות שאינן כה מדויקות‪ ,‬השגיאה הממוצעת האבסולוטית בהחלט שאינה ניתנת להערכה‬
‫(גדולה מאוד)‪ .‬כמו כן ניתן לראות שאומנם השגיאה היחסית בתוצאות האימון אינה גדולה בצורה‬
‫משמעותית‪ ,‬אך ניתן לראות כי בנתוני המבחן ה‪ T-‬מכפילה את עצמה פי ‪ .7‬ניתן להסיק כי קיים‬
‫‪ overfitting‬במודל‪.‬‬
‫כדי להבין למה באמת אנו מקבלים תוצאות גבוהות שכאלה‪ ,‬נסתכל על הגרף הבא‪:‬‬

‫גרף ‪ - 10‬חיזוי המודל ותוצאות ערכי המטרה‪ .‬שאלת מחקר ‪.7‬‬

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

‫איור ‪ - 42‬אחוזי דיוק המודל‪ .‬שאלת מחקר ‪.7‬‬

‫‪114‬‬
‫ניתן לראות כי ב‪ 35%-‬מהפעמים המודל טועה בתוצאה של הסימן‪ ,‬כלומר יש למודל קושי בלחזות סימן‪,‬‬
‫אומנם נראה כי בסינון התוצאות לפי הפעמים בו המודל כן חזה נכון את הסימן‪ ,‬נראה שיפור ניכר‬
‫ומשמעותי ביותר במדד ‪ – MAPE‬תוצאה ממוצעת של ‪ 9‬אחוז שגיאה בלבד!‬
‫לסיכום‪ ,‬נוכל להסיק שאכן שילוב של ‪ random forest‬יחד עם ‪ ada-boost‬אכן נותן את התוצאות‬
‫הטובות ביותר ביחס לשאר המודלים‪ .‬אומנם‪ ,‬איכות המודל ירודה כשמסתכלים על התוצאות הסופיות‬
‫ולכן יש חשש שהמודל נמצא ב‪ overfitting-‬בנתוני האימון‪ .‬במבט על הגרף של תוצאות המבחן‪ ,‬נוכל‬
‫לראות כי יש פער בין התוצאות המספריות לבין התוצאות שעל הגרף‪ .‬לאחר בחינה מדוקדקת חזינו כי‬
‫יש קושי בלחזות את סימן הרווח הנקי שבית חולים עושה בשנה‪ .‬לאחר סינון של מקרים אלו נראה כי‬
‫המודל עושה עבודה נהדרת בחיזוי ההכנסה הנקייה ואחוז הטעות הממוצעת הוא נמוך בהחלט (‪90%‬‬
‫דיוק)‪.‬‬

‫‪115‬‬
‫האם קיימת השפעה של מספר ההתמחויות שקיימות ו\או סוג ההתמחויות‬ ‫‪9.2.8‬‬
‫בבתי חולים על מדד ציון בית חולים‪.‬‬

‫האם קיימת השפעה של מספר ההתמחויות שקיימות ו\או סוג ההתמחויות‬ ‫‪9.2.9‬‬
‫בבתי חולים על מדדי שביעות רצון המטופל‪.‬‬
‫‪9.2.8‬‬
‫הרקע לשאלה נבע בעיקר מהרצון לאגד את כל ההתמחויות תחת טבלה אחת ולראות השפעות של‬
‫ניהול התמחויות שונות על מדד ציון בית חולים‪ .‬הטבלה בנויה כך שעבור כל רופא הקיים במאגר בית‬
‫החולים קיימים נתונים אודות ההתמחויות שברשותו ובאילו בתי חולים הוא עובד‪.‬‬

‫איור ‪ - 43‬משמאל לימין‪ :‬שם פרטי‪ ,‬שם משפחה‪ ,‬בית חולים ‪ ,1‬בית חולים ‪ ,2‬בית חולים ‪ ,3‬התמחות ראשית‪ ,‬התמחות משנית ‪,1‬‬
‫התמחות משנית ‪ . 2‬שאלת מחקר ‪.8‬‬

‫רופא אחד יכול לעבוד בכמה בתי חולים‪ ,‬להיות ברשותו מספר התמחויות שונות‪ ,‬וכך עבור כל בית חולים‬
‫יש מספר רב של רופאים שונים בעלי התמחויות שונות‪ :‬רופא משפחה‪ ,‬קרדיולוג‪ ,‬רפואת חירום‪ ,‬מומחיות‬
‫לאלרגיות ועוד‪ .‬ההנחה שלנו היא שככל מספר ההתמחויות השונות שקיימות בבית חולים יהיה גדול‬
‫יותר‪ ,‬כך בית החולים יהיה הן גדול יותר (מכיל יותר אנשים) והן עליו לנהל מספר רב יותר של תחומי‬
‫אחריות‪.‬‬
‫לשם ניתוח הנתונים אודות ההתמחויות היה עלינו לבנות טבלה בעלת עמודת מפתח – קוד הבית חולים‪,‬‬
‫ועמודת נושא – רשימת ההתמחויות שיש בבתי החולים‪ .‬הטבלה המקורית בנויה כך שלכל רופא יש‬
‫מספר בתי חולים שהוא עובד ומספר התמחויות‪ .‬בשלב הראשון בנינו טבלה כך שעבור כל בית חולים‬
‫(מהטבלה של הרופאים) תהייה עמודה של התמחות ראשית‪ ,‬התמחות משנית וכן הלאה‪ ,‬כך שבכל ערך‬
‫יכולים להשתרשר מספר התמחויות‪ .‬להלן השאילתה‪:‬‬

‫‪116‬‬
‫איור ‪ - 44‬שאילתה לבניית הטבלה הראשונה‪ .‬שאלת מחקר ‪.8‬‬

‫איור ‪ - 45‬תוצאות השאילתה‪ .‬שאלת מחקר ‪.8‬‬

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

‫‪117‬‬
‫הוצאת‬
‫תוצאות‬
‫חסרות‬
‫מהטבלה‬

‫איור ‪ - 46‬שלב שני‪ .‬שאלת מחקר ‪.8‬‬

‫בחירת עמודות סופיות‬


‫הכנסה לרשימה אחת‬
‫והוצאת כפילויות‬

‫איור ‪ - 47‬תוצאות טבלה שלישית‪ .‬שאלת מחקר ‪.8‬‬

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

‫איור ‪ - 48‬ספירת אורך רשימה (מספר התמחויות)‪ ,‬חלוקה לקבוצות וחישוב‪ :‬ממוצע‪ ,‬תדירות‪ ,‬סכימה‪ ,‬סטיית תקן‪ .‬שאלת מחקר ‪.8‬‬

‫‪118‬‬
‫איור ‪ - 49‬חלק מהרשימה הסופית‪ .‬שאלת מחקר ‪.8‬‬

‫לאחר מכן העלנו את הנתונים לאקסל על מנת לנתח בצורה ראשונית את התוצאות‪ .‬יצרנו גרף 'מפוזר'‬
‫של התדירות‪ ,‬הסכימה וממוצע הציונים‪ .‬להלן התוצאות הראשונות‪.‬‬

‫גרף ‪ - - 11‬גרף תדירות‪ ,‬תוצאות ראשונות‪ - X .‬מס' התמחויות‪ - Y ,‬כמות בת"ח שאלת מחקר ‪.8‬‬

‫זהו גרף התדירות‪ .‬גרף זה נותן לנו אינדיקציה להתפלגות מספר ההתמחויות בארה"ב‪ .‬ניתן להסיק מהם‬
‫כמות התמחויות סטנדרטית‪ ,‬שכיחות‪ ,‬מקרי קיצון ועוד‪ .‬ניתן לראות שהחל מ‪ 10-‬התמחויות‪ ,‬ככל‬
‫שמספר ההתמחויות עולה כך התדירות יורדת‪ ,‬כלומר יש פחות בתי חולים גדולים המכילים מגוון רחב‬
‫כל‪-‬כך של ניהול התמחויות‪ .‬מספר ההתמחויות השכיח ביותר הוא ‪ 10‬התמחויות בבתי חולים (‪143‬‬
‫בת"ח)‪ .‬המספר המקסימלי של התמחות הינו ‪ 56‬כך שיש רק שני בתי חולים המכילים כה הרבה‬
‫התמחויות‪ 54 .‬התמחויות בבית חולים הוא הכמות הכי נדירה (בית חולים ‪.)1‬‬
‫הגרף הבא מייצג את סכימת ציוני בתי החולים‪.‬‬

‫‪119‬‬
‫גרף ‪ - 12‬סכימת ציוני בתי החולים‪ .‬שאלת מחקר ‪.8‬‬

‫בגרף זה ניתן לראות סכימה של ציונים של בתי חולים לפי מספר התמחויות‪ ,‬למשל אם נסכום את ציוני‬
‫כל בתי החולים עם ‪ 10‬התמחויות נראה כי ביחד הם מגיעים ל‪ 450-‬נקודות‪ .‬גרף זה ביחד עם גרף‬
‫התדירות עוזר לנו להבין האם יש השפעה של כמות התמחויות על הציונים‪ .‬אילו הגרף היה מיושר יותר‬
‫ביחס לגרף התדירות או לחילופין נקודות הקצה היו מעמיקות יותר (הקיעור היה עמוק יותר) הינו יכולים‬
‫להבין את השפעת כמות התמחויות על בית החולים‪ .‬ניתן לראות איך גרף זה הוא קורלטיבי לכמות הבתי‬
‫חולים‪ ,‬דבר זה מרמז לנו כי באופן יחסי התדירות מצביעה לנו על ממוצע ציונים ליניארי אשר זהה בין כל‬
‫הקבוצות‪ .‬אם נמדוד קורלציה בין סכימה בין עמודת התדירות לעמודת הסכימה נקבל את התוצאה ‪0.99‬‬
‫שזהו קשר מושלם (נעזרנו בפונקציית ‪ CORREL‬של ‪.)Excell‬‬
‫כעת נציג את הגרף הבא‪ :‬ממוצע ציונים‪.‬‬

‫‪120‬‬
‫גרף ‪ - 13‬ממוצע ציונים‪ .‬שאלת מחקר ‪.8‬‬

‫בגרף זה ניתן לראות מספר דברים‪ .‬ראשית אחרי ‪ 40‬התמחויות (אחרי הקו הצהוב) הגרף מתחיל‬
‫להתבדר‪ ,‬ייתכן כי הדבר שמשפיע על כך הינו כמו התדירות הנמוכה של גודל הקבוצות בטווח של מעל‬
‫‪ 40‬התמחויות‪ .‬נזכור שבקבוצות שמעל ‪ 50‬התדירות נמוכה בהחלט‪ .‬שנית‪ ,‬נוכל לראות כי ישנם שתי‬
‫קבוצות – הקו האדום שמסמן ירידה בממוצע הציונים ככל שמספר התמחויות גדל‪ ,‬והקו הכחול שמסמן‬
‫שככל המספר התמחויות גדול יותר ממוצע הציונים עולה‪.‬‬
‫אנו נרצה לבצע מספר מבחנים אשר יבחנו את ההשערות שלנו‪:‬‬
‫אחרי ‪ 40‬התמחויות הגרף מתבדר – מבחן פירסון‪ ,‬רגרסייה ליניארית‪.‬‬ ‫‪.1‬‬
‫בין ‪ 0‬ל‪ 26-‬התמחויות הגרף בעל קשר ליניארי יורד – מבחן פירסון‪ ,‬רגרסיה ליניארית‪.‬‬ ‫‪.2‬‬
‫בין ‪ 27‬ל‪ 39 -‬התמחויות יש קשר ליניארי עולה – מבחן פירסון‪ ,‬רגרסיה ליניארית‪.‬‬ ‫‪.3‬‬
‫יש שוני מהותי בין הקבוצה האדומה לקבוצה הכחולה – ניתוח שונויות‪.‬‬ ‫‪.4‬‬
‫אם יש שוני בין הקבוצות‪ ,‬לחפש שוני בתוך הקבוצה עצמה – ניתוחי שונויות ו‪Tuckey.-‬‬ ‫‪.5‬‬

‫תוצאות (לפי מבחני ההשערות)‬


‫נבדוק האם הציון הממוצע של מספר התמחויות שבין ‪ 0‬ל‪ 40-‬הינו בעל קשר ליניארי‪ .‬על מנת‬ ‫‪.1‬‬
‫לבדוק זאת‪ ,‬נבצע מבחני ‪ ANOVA‬של ‪( B‬שיפוע הגרף)‪ .‬בעזרת פייתון נעזר בחבילת‬
‫‪ .STATSMODEL‬נפריד ל‪ X-‬ו‪ Y-‬את הערכים הרלוונטיים מתוך הטבלה הסופית‪ .‬להלן‬
‫התוצאות והקוד‪:‬‬

‫‪121‬‬
‫איור ‪ - 50‬מבחני ‪ .ANOVA 1‬שאלת מחקר ‪.8‬‬

‫רווח סמך – ‪ X‬נמצא בתוך הרווח סמך‪.‬‬ ‫‪.a‬‬


‫‪ – Pvalue‬גדול מאלפא‪.‬‬ ‫‪.b‬‬
‫‪ – R-squered‬מאוד קטן‪.‬‬ ‫‪.c‬‬
‫מסקנה – נקבל את השערת האפס‪ B ,‬אינו שונה באופן מובהק מ‪ 0-‬ולכן נניח שהגרף מתבדר‪.‬‬ ‫‪.d‬‬
‫נבדוק האם הציון הממוצע של מספר התמחויות שבין ‪ 27‬ל‪ 29-‬הינו בעל קשר ליניארי יורד‪ .‬על‬ ‫‪.2‬‬
‫מנת לבדוק זאת‪ ,‬נבצע מבחני ‪ ANOVA‬של ‪( B‬שיפוע הגרף)‪ .‬בעזרת פייתון נעזר בחבילת‬
‫‪ .STATSMODEL‬נפריד ל‪ X-‬ו‪ Y-‬את הערכים הרלוונטיים מתוך הטבלה הסופית‪ .‬להלן‬
‫התוצאות‪:‬‬

‫‪122‬‬
‫איור ‪ - 51‬מבחני ‪ .ANOVA 2‬שאלת מחקר ‪.8‬‬

‫רווח סמך – ‪ X‬נמצא בתוך הרווח סמך‪.‬‬ ‫‪.a‬‬


‫‪ – Pvalue‬קטן מאלפא‪.‬‬ ‫‪.b‬‬
‫‪ – R-squered‬מאוד בינוני‪.‬‬ ‫‪.c‬‬
‫‪ – T- statistic‬נקבל ש‪( T> 2.2‬עבור )‪ ,)t(11,0.95‬כלומר נדחה את השערת האפס‬ ‫‪.d‬‬
‫מסקנה – נניח שיש קשר ליניארי בין המשתנים וככל שמספר ההתמחויות בטווח זה‬ ‫‪.e‬‬
‫עולה כך גם ממוצע הציונים עולה‪.‬‬
‫נבדוק האם הציון הממוצע של מספר התמחויות שבין ‪ 2‬ל‪ 26-‬הינו בעל קשר ליניארי יורד‪ .‬על‬ ‫‪.3‬‬
‫מנת לבדוק זאת‪ ,‬נבצע מבחני ‪ ANOVA‬של ‪( B‬שיפוע הגרף)‪ .‬בעזרת פייתון נעזר בחבילת‬
‫‪ .STATSMODEL‬נפריד ל‪ X-‬ו‪ Y-‬את הערכים הרלוונטיים מתוך הטבלה הסופית‪ .‬להלן‬
‫התוצאות‪:‬‬

‫‪123‬‬
‫איור ‪ - 52‬מבחני ‪ .ANOVA 3‬שאלת מחקר ‪.8‬‬

‫רווח סמך – ‪ X‬נמצא בתוך הרווח סמך‪.‬‬ ‫‪.a‬‬


‫‪ – Pvalue‬קטן מאלפא‪.‬‬ ‫‪.b‬‬
‫‪– R-squered‬גבוה‪.‬‬ ‫‪.c‬‬
‫‪( α‬עבור ‪ ,)t(11,0.95) = 2.02‬כלומר נדחה את‬ ‫¿‬ ‫‪t‬‬ ‫¿∨‬ ‫‪ – T- statistic‬נקבל ש ‪> t = -9.8‬‬ ‫‪.d‬‬
‫השערת האפס‪.‬‬
‫מסקנה – נניח שיש קשר ליניארי בין המשתנים וככל שמספר ההתמחויות בטווח זה‬ ‫‪.e‬‬
‫עולה כך גם ממוצע הציונים יורד‪.‬‬
‫בשאלה זו נעסוק בהאם קיים הבדל בשונות בין שתי הקבוצות ‪ :‬טווח מספר ההתמחויות ‪ 2‬עד‬ ‫‪.4‬‬
‫‪ 26‬ו‪ 27-‬עד ‪ .39‬כדי לענות על שאלה זו נקיים מבחן ‪ ANOVA‬לניתוח שונויות בין שתי קבוצות‪.‬‬
‫לשם כך בנינו עצמאית בפייתון את מודל ה‪( ANOVA-‬לא קיים בפורמט של ‪BETWEEN‬‬
‫‪ )WITHIN‬לפי הנוסחאות הרלוונטיות‪ .‬להלן התוצאות והקוד‪:‬‬

‫‪124‬‬
‫איור ‪ - 53‬מבחני ‪ .ANOVA 4‬שאלת מחקר ‪.8‬‬

‫איור ‪ - 54‬טבלת ‪ .ANOVA 4‬שאלת מחקר ‪.8‬‬

‫ניתן לראות כי ‪ F‬סטטיסטי נמוך מאוד‪ ,‬דבר אשר מעיד על דמיון רב מאוד בין שתי הקבוצות‪P_value .‬‬
‫מאוד גבוהה‪ ,‬דבר המעיד על שונות נמוכה מאוד בין שתי הקבוצות‪ .‬נקבל את השערת האפס ונניח כי אין‬
‫שונות בין הקבוצות‪.‬‬

‫‪125‬‬
‫‪9.2.9‬‬
‫בחלק זה נבחן את הקשרים בין מדדי שביעות הרצון של מטופלי בתי החולים וסוגי ההתמחויות‪ .‬כאמור‬
‫פרק הקודם ראינו שלא קיים קשר ישיר ליניארי בין כמות התמחויות בבתי חולים לבין ציון הבית חולים‪.‬‬
‫אומנם‪ ,‬בראייה פנימה ראינו שיש מגמות שונות בתחומים שונים‪ .‬אם כך‪ ,‬רצינו לבדוק השפעת מספר‬
‫ההתמחויות על מדדים שונים ובנוסף לרדת שכבה נוספת פנימה ולבדוק השפעות של סוגי ההתמחויות‬
‫בבתי חולים על ציון בתי חולים‪ .‬חלק מן המדדים השונם הינם– תפקוד אחיות‪ ,‬תפקוד רופאים‪ ,‬תקשורת‬
‫עם הצוות‪ ,‬ניקיון ועוד‪.‬‬
‫שלב ‪– Business understanding‬‬
‫שאלת מחקר זו היא שאלת סיווג‪ ,classification ,‬אשר תאפשר לבתי חולים להעריך אילו התמחויות‬
‫משפיעות על אילו מן מדדי שביעות הרצון של המטופלים ורמת כמות ההתמחויות‪ .‬ייתכן וקיימות‬
‫התמחויות אשר למטופלים יש נטייה לקשר בינן לבין בהצלחת הטיפול‪ .‬ייתכן ושילוב של מספר‬
‫התמחויות עולה וסוגים שונים משפיעה על היכולת של הבית חולים לנהל (לחיוב או לשלילה)‬
‫שלב ‪– Data understanding‬‬
‫שלב זה מתחיל דומה כמו בסעיף א'‪ ,‬הבנה שהקשר בין רופא לבית חולים הוא קשר של רבים לרבים‪ ,‬וכן‬
‫הקשר בין סוג ההתמחות לרופא הוא קשר של רבים לרבים‪ .‬ולכן יצרנו טבלה אשר מתארת את בית‬
‫החולים‪ ,‬מספר התמחויות וסוג ההתמחויות‪ .‬בשונה מסעיף א'‪ ,‬כאן היה לנו חשוב לשמור את סוג‬
‫ההתמחויות‪ .‬לכן מספר התמחויות הקיימות הן ‪ 82‬סוגי התמחויות שונות‪ ,‬וביניהן ניתן למצוא‪ :‬רדיולוגיה‪,‬‬
‫קרדיולוגיה‪ ,‬רופאת משפחה‪ ,‬ניהול כאבים ועוד‪ .‬התמחות השכיחה ביותר נקראת רפואה פנימית כך‬
‫שהיא קיימת ב‪ 55%-‬מהבתי חולים‪.‬‬
‫קיימים ‪ 10‬ערכי מטרה שונים אשר מתנהגים כמדד לבית החולים מבחינת שביעות רצון – ניקיון‪,‬‬
‫תקשורת על תרופות‪ ,‬מידע על חיובים‪ ,‬תקשורת עם הרופאים‪ ,‬תקשורת עם האחיות‪ ,‬רמת הרעש‪,‬‬
‫המלצה על בית החולים‪ ,‬רמת שירות אנשי צוות וכללי‪.‬‬
‫כדי להבין את הקשר הטוב ביותר מבין כל העמודות המטרה לבין מספר ההתמחויות (שבמידה מסוימת‬
‫מייצג את סוג ההתמחויות) רצינו להעמיד מבחני התאמה בתצורת רגרסיה ליניארית‪ ,‬שימוש במבחני‬
‫פירסון‪ P-value ,‬ו‪ ,t-‬בכדי לבדוק מי מכלל משתני המטרה יש לו את הקשר הלינארי החזק ביותר‪.‬‬
‫בעזרת מבחנים אלו נוכל לאגד את אותן עמודות בידיעה שהקשר הראשוני קיים‪ .‬נקודת פתיחה המודל‬
‫תהייה טובה יותר אלמלא‪.‬‬
‫שלב ‪– Data preparation‬‬
‫בשלב זה ביצענו תהליך ‪ ETL‬אשר ישאב את הנתונים מאתר ‪ Medicare‬כך שעבור כל טבלה שמשכנו‬
‫תהיה טבלה משלה ב‪ .MySql-‬תהליך המשיכה דומה לתהליכים הקודמים שביצענו עד כה בפרויקט‪.‬‬
‫להלן תרשים ‪ ERD‬המתאר את תהליך איחוד הנתונים‪:‬‬

‫‪126‬‬
‫איור ‪ ERD - 55‬המתאר את תהליך איחוד הנתונים‪ .‬שאלת מחקר ‪.9‬‬

‫לאחר קיום הנתונים במאגר הנתונים‪ ,‬היה עלינו לאחד את הטבלה כך שכל המדדים יהיו לרשותנו‬
‫במטריצה אחת‪ ,‬כך יתאפשר לנו לבצע אינטגרציות‪ ,‬אגרגציות‪ ,‬בניית מודלים וניקוי נתונים בצורה נוחה‬
‫ומיטבית‪ .‬לשם כך יצרנו קובץ שנקרא ‘‪ ,’Preprocessing_pro_for_statistics‬המטרה המרכזית היא‬
‫לאחד את הנתונים מטבלאות שונות‪ .‬היות שבטבלת הרופאים יש כ ‪ 2 -‬מיליון רשומות‪ ,‬דחינו את‬
‫האופציה לבצע אינטגרציה בין הטבלאות על ידי שאילתת ‪ Join‬ארוכה גדולה ומסובכת (ובנוסף תקשה‬
‫לנו על תהליך ‪ debugging‬נוח)‪ ,‬החלטנו לבצע ‪ Join‬בעזרת פייתון‪ .‬ספירת מספר ההתמחויות זהה‬
‫לתהליך בסעיף הקודם‪.‬‬
‫כדי לבצע מבחני התאמה היה עלינו ראשית לאחד את כל הנתונים הרלוונטיים לטבלה ונקות נתוני רעש‪:‬‬

‫איור ‪- 56‬בתהליך הנ"ל‪ ,‬המסומן בכתום הוא תהליך של הוצאת ערכים ריקים‪ ,‬בנוסף שינוי העמודות מ‪ type object -‬ל‪ .type float -‬שאלת‬
‫מחקר ‪.9‬‬

‫כמו בסעיף הקודם‪ ,‬גם כאן יצרנו מטריצת ‪ stat model‬אשר מכילה בתוכה את הקשר בין מספר‬
‫התמחויות לממוצע הציונים‪ .‬יצרנו גרף אשר מראה את הקשר הזה בין כל הערכים (ניתן לראות‬
‫בנספחים את כל הגרפים)‪ ,‬להלן דוגמה לגרף המראה את הקשר בין כמות ההתמחויות למדד ה‪'-‬המלצה‬
‫על בית החולים'‪:‬‬

‫‪127‬‬
‫איור ‪- 57‬לגרף המראה את הקשר בין כמות ההתמחויות למדד ה‪'-‬המלצה על בית החולים'‪ .‬שאלת מחקר ‪.9‬‬

‫ציר ‪ X‬הינו מספר ההתמחויות‪ ,‬ציר ‪ Y‬מראה על ממוצע המדד‪ .‬למשל ממוצע מדד ההמלצה על בתי‬
‫חולים עבור בתי חולים עם ‪ 5‬התמחויות הינו ‪ .1‬ניתן לראות שקיים יחס ליניארי למראית עין‪.‬‬
‫כדי לראות למי מהעמודות יש קשר לינארי חזק נבצע מבחנים סטטיסטים עבור כל אחד מהמדדים‪ .‬לשם‬
‫כך הרצנו את ה‪ script-‬שיצרנו – ‘‪-’stats analysis proficiency class‬‬

‫‪128‬‬

‫איור ‪ .’stats analysis proficiency class - 58‬שאלת מחקר ‪.9‬‬


‫תוצאות עבור מדד 'המלצה על בית חולים' (בנספחים ניתן לראות את כל התוצאות)‪:‬‬

‫איור ‪- 59‬תוצאות עבור מדד 'המלצה על בית חולים' ‪.‬שאלת מחקר ‪.9‬‬

‫ניתן לראות תוצאות מובהקות של תלות ליניארית בין שני המשתנים – ‪ pvalue‬נמוך מאוד‪ X ,‬נמצא‬
‫ברווח הסמך‪ r-squared > 0.7 ,‬כלומר יש יחס ליניארי חזק ו‪ t-‬סטטיסטי גבוה במיוחד‪ .‬נסיק כי קיים‬
‫קשר לינארי בין המשתנים‪.‬‬
‫לאחר ניתוח הקשר הלינארי בין כל העמודות‪ ,‬גילינו שהעמודות הבאות הן הרלוונטיות ביותר‪:‬‬
‫המלצה על בית חולים (‪- )r-squared 0.765‬קשר חזק ‪.‬‬ ‫‪‬‬
‫מדד שינוע (‪ – )r-squared 0.635‬קשר חזק‪.‬‬ ‫‪‬‬
‫תקשורת רופאים (‪ – )r-squared 0.35‬קשר בינוני‪.‬‬ ‫‪‬‬
‫תקשורת אחיות (‪ – )r-squared 0.499‬קשר בינוני‪.‬‬ ‫‪‬‬
‫מידע על חיובים (‪ – )r-squared 0.144‬היחס הלינארי החלש ביותר שהחלטנו לקחת*‪.‬‬ ‫‪‬‬
‫לאחר שהחלטנו אילו מדדים לקחת‪ ,‬נבנה את הטבלה המרכזית לפי ה‪ -ERD‬שצוין למעלה‪ ,‬הוצאנו‬
‫חריגים וכעת נבצע הורדת מימד על ידי ‪ .PCA‬אלגוריתם זה עוזר לנו להוריד את מימד המשתנים‬
‫המסבירים על ידי ניתוח ה‪ covariance-‬שבין כל העמודות‪ .‬כל עמודה של ‪( PCA‬דהיינו קומפוננטה)‬
‫הינה הצירוף הליניארי של כלל המשתנים המסבירים כך שכל משתנה מקבל מכפיל‪ .‬העמודה בעלת‬
‫המכפיל הגבוהה ביותר הינה העמודה בעלת ההשפעה הגבוהה ביותר (ניתן לבחור את העמודות ב‪-‬‬
‫‪ PCA‬לפי המכפיל בכל קומפוננטה)‪ .‬כל קומפוננטה‪ ,‬או צירוף ליניארי הינה מתפרסת בכיוון שבו‬
‫מתקיימת השונות הגדולה ביותר‪ ,‬כל קומפוננטה הינה אורתונורמלית לאחרת (מאונכת ומכפלתן שווה‬
‫לאפס)‪ .‬על מנת לבחור את מספר הקלאסים הטוב ביותר‪ ,‬נציג כעת את הגרף של השונות המוסברת‪ ,‬כך‬
‫שציר ה‪ X-‬הינו מספר הקומפוננטות וציר ה‪ Y-‬הינו אחוז השונות המוסברת‪:‬‬

‫‪129‬‬
‫גרף ‪ - 14‬השונות המוסברת‪ ,‬ציר ה‪ X -‬הינו מספר הקומפוננטות וציר ה‪ Y -‬הינו אחוז השונות המוסברת‪ .‬שאלת מחקר ‪.9‬‬

‫נוכל לראות ש‪ 50-‬קומפוננטות מסבירות ‪ 90%‬מהשונות‪ ,‬על כן נוריד את המימד מ‪ 82-‬ל‪ 50-‬עמודות‬
‫ונשמור את הקומפוננטה כעמודה החדשה של המטריצה שלנו‪.‬‬

‫שלב ‪– Modeling‬‬
‫כעת נוכל להתחיל לבנות את המודלים שלנו כך שיעזרו ב‪ 35-‬העמודות הנתונות‪ .‬נעזר בקובץ שיצרנו‬
‫באחת השאלות אשר מייצר אובייקטים של מודל‪ ,‬כך שנוכל לבנות עבור כל משתנה ‪ Y‬מודל בקלות‪.‬‬
‫לפני חלוקת הנתונים‪ ,‬עבור כל משתנה ‪ Y‬הוצאנו את כל השורות בהן הערכים הם '‪ .'NAN‬למען הנוחות‬
‫יצרנו דף קוד חדש בו יצרנו פונקציה המייצרת את בניית המודלים עבור כל אחד מערכי המטרה‪ .‬הנתונים‬
‫חולקו ביחס של ‪ 1:3‬נתוני אימון ונתוני מבחן בין כל המודלים השונים‪.‬‬
‫התוכנית נבנתה בשתי חלקים – יצירת מודלים מ‪ ,SKLEARN-‬ויצירת ‪ Ensamble algoritm‬שנבנו‬
‫בצורה עצמאית‪ .‬חלוקה זו נבעה מהקושי לייצר תוצאות טובות עבור מודל אחד‪.‬‬

‫חלק א'‪ :‬בחרנו ב‪ 3-‬מודלים של קלסיפיקציה על מנת לנסות לחזות את התוצאה הרצויה‪.‬‬ ‫‪‬‬
‫כאמור יש לנו ‪ 5‬משתני מטרה ו‪ 35-‬עמודות שנוצרו מתוך ‪ 35‬קומפוננטות של ‪PCA‬‬
‫המסבירות ‪ 90%‬משונות נתוני ‪.X‬‬

‫המודל הראשון שבחרנו בו הינו ‪ .Random forest‬מודל זה הינו בעצם איחוד של מספר רב‬
‫של מודל ‪ Decision tree‬כך שבניית כל עץ נעשית על ידי שימוש מוגבל במשתנים מסבירים‬
‫(היפרפרמטר) ולכל עץ נבחר עומק שונה‪ .‬הרצת כל תצפית תעבור בכל אחד מהעצים‬
‫שביער‪ ,‬כל עץ בתורו יציג תוצאת קלסיפיקציה אחת‪ .‬על מנת לקבל תוצאה אחת סופית‬
‫יבצעה העץ תהליך ‪ voting‬שבוא הוא סופר את התוצאה שמירב העצים בחרו‪.‬‬

‫‪130‬‬
‫היות וקיימים ‪ 5‬קלאסים שונים נבחרו ‪ 51‬עמודות נבחרו היפר פרמטרים המאפשרים‬
‫גמישות יחסית לעץ‪ ,‬כך שכל עץ יוכל לקחת מספר יחסית גדול של ‪ Features‬ויכולת להגיע‬
‫לעומק עבור כל עץ‪.‬‬
‫להלן היפר‪-‬פרמטרים של מודל ה‪: Random forest‬‬
‫‪.n_estimators = 2,001‬‬ ‫‪‬‬
‫‪.,random_state = 1‬‬ ‫‪‬‬
‫‪.,max_depth = 250‬‬ ‫‪‬‬
‫‪.,max_features = 7‬‬ ‫‪‬‬
‫‪.min_samples_split = 20‬‬ ‫‪‬‬
‫המודל השני שנבחר הינו ‪ MLPclassifier – Nueral Net‬של חבילת ‪ .SKLearn‬מודל זה‬
‫הינו אוסף שכבות הבנויות מנוירונים‪ ,‬כל נוירון מעביר מידע לנוירון בשכבה הבאה בעזרת‬
‫פונקציית משקל‪ .‬אחד התהליכים המרכזיים ברשת נוירונים הוא תהליך ה‬
‫‪ – Backpropagation‬אופטימיזציית פונקציית ה‪ ,Loss‬הפונקציה האחראית לצמצום‬
‫הטעויות ברשת‪ ,‬תהליך זה אפשרי בזכות כלל השרשרת (פירוק נגזרות לגורמיה)‪.‬‬
‫להלן היפר‪-‬פרמטרים של מודל ה‪:- Random forest‬‬
‫‪ Hidden layer – (800,800,800,800) 4‬שכבות כך שבכל שכבה יש ‪ 800‬נוירונים‪.‬‬ ‫‪‬‬
‫‪.Alpha – 0.1‬‬ ‫‪‬‬
‫‪.Learning rate – 0.01‬‬ ‫‪‬‬
‫‪.Momentum – 0.8‬‬ ‫‪‬‬
‫המודל השלישי שנבחר הינו ‪ .KNN‬מודל המבוסס על חלוקה לקבוצות לפי נקודה מרכזית‬
‫הנקראית צנטרואיד‪ .‬להלן ההיפר‪-‬פרמטרים שנבחרו למודל‪:‬‬
‫‪ ,N-neighbors – 4‬חלוקה ל‪ 4-‬קבוצות‪ ,‬למרות שיש חמישה קלאסים‪ ,‬בחרנו ב‪ 4-‬בכדי‬
‫למנוע ‪.overfitting‬‬

‫חלק ב’ ‪ :‬בפרק הבא נמחיש את תוצאות המודל‪ ,‬אומנם בחלק א' קיבלנו תוצאות לא‬ ‫‪‬‬
‫מספקות‪ .‬על מנת לנסות לשפר את איכות התוצאות שילבנו מודלים של ‪Ensemble‬‬
‫‪.Machine Algorithm‬‬
‫המודל הראשון שבו השתמשנו הינו ‪ .Voting‬מודל זה מאפשר שילוב של מספר מודלים‬
‫שונים על ידי שקלול של כלל התוצאות בעזרת ספירת התוצאה השכיחה ביותר‪.‬‬

‫‪131‬‬
‫היות וקיבלנו את תוצאות המודלים בחלק א'‪ ,‬החלטנו למשקל את ההחלטות של כל מודל לפי‬
‫הביצועים של המודלים בריצה לבד‪ .‬על השמת של פונקציית ‪ ,softmax‬פונקציה אשר לוקחת‬
‫מספר משתנים ומייצרת עבור כל משתנה מספר בין ‪ 0‬ל‪ 1-‬כך שהספרה הגבוהה ביותר‬
‫מקבלת את המשקל הגבוה ביותר ובהתאמה ככל שהספרה יורדת כך גם המשקל‪ .‬בנוסף‬
‫לכך סכום התוצאות הינו ‪ .1‬לכן לכל תוצאות ה‪ -Accuracy‬של כל מודל שחלפנו בתוצאת ה‬
‫‪.SOFTMAX‬‬

‫איור ‪-60‬חישוב ‪ .Softmax‬שאלת מחקר ‪.9‬‬

‫לאחר חישוב הפונקציה הנ"ל‪ ,‬כפלנו כל רשומה מתוך תוצאות החיזוי של כל פונקציה במשקל‬
‫שלה ועיגלנו את הפרדיקציה‪ ,‬סכימת הפרדיקציות הממושקלות תיתן את התוצאה הסופית‪.‬‬

‫‪132‬‬
‫איור ‪-61‬בניית מודל ‪ .voting‬שאלת מחקר ‪.9‬‬

‫עבור כל תוצאת‬
‫מודל נכפול את ערך‬
‫המטרה במשקל‬
‫שנבחר לפי‬
‫פונקציית סופטמקס‬

‫מודל אחרון שבנינו הינו מבוסס על ‪ ,Stacking‬מודל הלוקח פרדיקציות ממגוון מודלים שונים‬
‫ומניח אותם במטריצת פרדיקציות‪ .‬על המטריצה הזאת מבצעים קלסיפיקציה נוספת‪ ,‬כך‬
‫נעגל את תוצאת הסכימות‪ ,‬זהו הפרדיקציה‬
‫הפרדיקציה הסופית הינה תוצאת המודל‪ .‬ה‪ sub model-‬של ה‪ Stacking-‬בחרנו‬ ‫שתוצאת‬
‫של מודל ההצבעה‬
‫יצירת מודל‬
‫ב‪ nerual net-‬כך שנבחרו ערכי היפרפרמטרים 'עדינים' יחסית כדי למנוע ‪overfitting‬‬
‫קלסיפיקציה‬
‫נוסף המבוסס‬
‫על מטריצת‬ ‫קטע קוד הבונה את מודל ה‪Stacking-‬‬ ‫להלן‬
‫אחודה‬ ‫הכנסת פרדיקציות המודל למטריצה‬
‫פרדיקציות‬

‫איור ‪-62‬קטע קוד הבונה את מודל ה‪133-‬‬


‫‪ Stacking‬שאלת מחקר ‪.9‬‬
‫שלב ‪- Model evaluation‬‬
‫בשלב זה נציג‪ ,‬נסביר ונעריך את תוצאות המודל‪ ,‬ונבחר במודל בעל התוצאות הטובות ביותר‪ .‬כאמור‬
‫בשאלה זו אנו מחשבים תוצאות עבור חמישה ערכי מטרה שונים‪.‬‬
‫בנספחים ניתן לראות את כלל מטריצות הבלבול הראשוניות ואת שלל המדדים הרלוונטיים עבור כל מודל‬
‫עבור כל ערך ‪.Y‬‬

‫בטבלה הבאה ניתן לראות את תוצאות ה‪ Accuracy‬אשר מחושבות לפי פונקציית ה‪ Score-‬בחבילות‬
‫העבודה של ‪ Sklearn‬עבור ‪ 5‬מתוך חמשת המודלים‪ ,‬כאשר המודל של ‪ Voting‬לא ניתן לחישוב דומה‬
‫היות והוא לא מבוסס על ‪.sklearn‬‬
‫‪Model‬‬ ‫‪Nurse‬‬ ‫‪Recommend‬‬ ‫‪Care‬‬ ‫‪Doctor‬‬ ‫‪Discharge‬‬
‫‪communication hospital‬‬ ‫‪transition‬‬ ‫‪communication‬‬ ‫‪information‬‬

‫‪RNF‬‬ ‫‪0.773‬‬ ‫‪0.763‬‬ ‫‪0.765‬‬ ‫‪0.786‬‬ ‫‪0.778‬‬


‫‪Train‬‬
‫‪RNF‬‬ ‫‪0.494‬‬ ‫‪0.364‬‬ ‫‪0.346‬‬ ‫‪0.390‬‬ ‫‪0.379‬‬
‫‪Test‬‬

‫‪Nnet‬‬ ‫‪0.814‬‬ ‫‪0.843‬‬ ‫‪0.826‬‬ ‫‪0.842‬‬ ‫‪0.851‬‬


‫‪Train‬‬
‫‪Nnet‬‬ ‫‪0.392‬‬ ‫‪0.302‬‬ ‫‪0.327‬‬ ‫‪0.307‬‬ ‫‪0.366‬‬
‫‪Test‬‬

‫‪KNN‬‬ ‫‪0.561‬‬ ‫‪0.507‬‬ ‫‪0.503‬‬ ‫‪0.465‬‬ ‫‪0.493‬‬


‫‪Train‬‬
‫‪KNN‬‬ ‫‪0.351‬‬ ‫‪0.284‬‬ ‫‪0.261‬‬ ‫‪0.228‬‬ ‫‪0.255‬‬
‫‪Test‬‬

‫‪Stacking 0.617‬‬ ‫‪0.585‬‬ ‫‪0.581‬‬ ‫‪0.575‬‬ ‫‪0.572‬‬


‫‪Train‬‬
‫‪Stacking 0.622‬‬ ‫‪0.599‬‬ ‫‪0.576‬‬ ‫‪0.578‬‬ ‫‪0.605‬‬
‫‪Test‬‬

‫טבלה ‪ - 5‬תוצאות ה ‪ Accuracy‬אשר מחושבות לפי פונקציית ה‪ .Score -‬שאלת מחקר ‪.9‬‬

‫הטבלה מכילה את תוצאות חמשת ערכי המטרה השונים‪ ,‬ובכל שתי שורות ניתן למצוא את המודל‬
‫בתוצאות האימון והמודל בתוצאות המבחן שלו‪ .‬בירוק ניתן לראות את המודל עם תוצאות האימון‬
‫הטובות ביותר וכחול ניתן לראות את תוצאות המבחן הטובות ביותר‪ ,‬כאשר התא הכתום מייצג את‬
‫תוצאת ה‪ -Accuracy‬הטובה ביותר בין כל המודלים ומשתני המטרה – ‪stacking/Nurse‬‬
‫‪.communication‬‬
‫‪134‬‬
‫ניתן ללמוד מספר דברים מן התוצאות הראשוניות‪:‬‬
‫ראשית יתכן ותוצאות החיזוי הגבוהות של מודל רשת הנוירונים יכולה להסביר את תוצאות המבחן‬
‫הנמוכות מאוד בכלל העמודות‪ .‬מצב כזה נוצר מ‪ overfitting-‬בבניית המודל‪ .‬שנית‪ ,‬ניתן לראות כיצד‬
‫תוצאות גבוהות פחות בנתוני האימון מובילות לתוצאות משופרות יותר בנתוני המבחן נראה אצל מודל ה‪-‬‬
‫‪ .RNF‬אף ערך מטרה אינו בעל יותר מ‪ Accuracy 80%-‬וכן ניתן לראות כי חיזוי ‪Nurse‬‬
‫‪ Communication‬ערך נתוני המבחן הינו כמעט ‪( 50%‬גבוהה ב‪ 25%-‬ממודל ה‪ .)Nnet-‬שלישית‪ ,‬מודל‬
‫ה‪ stacking-‬החוזה ערכי ‪ Y‬בהסתמך על שאר המודלים בעלי אחוזי ‪ Accuracy‬גבוהים משמעותית‬
‫משאר המודלים (לעיתים גבוהים ביותר מפי ‪ 2‬מהתוצאה הנמוכה ביותר)‪.‬‬
‫בשלב הבא ננתח את תוצאות מטריצות הבלבול של כלל המודלים והמשתנים (כולל ה‪ .)-voting‬את‬
‫מטריצת הבלבול חישבנו בהרכבה עצמאית‪ .‬לאחר מיכן הדפסנו את כלל הגרף בעזרת חבילת‬
‫‪ .Matplotlib‬נציג כעת טבלה המכילה את המדדים – ‪ Recall, Precision, Accuracy and F1‬עבור כל‬
‫משתני המטרה מבוססי מטריצת הבלבול של כלל המודלים‪.‬‬

‫טבלה ‪ - 6‬טבלת מדדים עבור משתני המטרה‪ .‬שאלת מחקר ‪.9‬‬

‫‪135‬‬
‫נדגיש כי את המדדים הנמצאים בטבלאות חישבנו בצורה הבאה – חישבנו עבור כל קלאס (‪ 1‬עד ‪ )5‬את‬
‫המדד שלו מול שאר הקלאסים בתצורת ‪ .One vs Rest‬לאחר מיכן עשינו ממוצע משוקלל כך שעבור‬
‫קלאסים עם יותר ערכים נתנו ערך נמוך יותר לתוצאה והפוך‪.‬‬
‫להלן דוגמה לחישוב‪stacking model - discharges :‬‬

‫טבלה ‪-7‬חישוב‪ .stacking model - discharges :‬שאלת מחקר ‪.9‬‬


‫למשל עבור עמודת ה‪ ,-RECALL‬חישבנו תוצאת קלאס ‪ 1‬כפול אחוז התצפיות הקיימות בניסוי (‪*5%‬‬
‫‪ )21.95%‬ותוצאת קלאס ‪ 2‬וכן הלאה‪ ,‬סכמנו את התוצאה וקיבלנו ‪.RECALL 53%‬‬
‫היות ומדובר על ערכים בעלי ערך סידורי – משתנים אורדינליים – נחשב את מטריצת הבלבול עם‬
‫הוספת משקלים לאלכסון המטריצה‪ .‬הסיבה לכך היא כי יש חשיבות לאם המודל חוזה עובר ערך מסוים‬
‫ערך שקרוב לו או רחוק ממנו‪ .‬למשל עבור רשומה ערך ה‪ Y-‬הוא ‪ ,5‬לכן קיים הבדל משמעותי באם חזה‬
‫עבור הרשומה ‪ 4‬או חזה ‪ 2( 2‬רחוק הרבה יותר מ‪ .4-‬לכן נחשב עבור ערכי הביניים (הציונים הנמצאים‬
‫בין ‪ 1‬ל‪ ,5-‬לא כולל הקצוות) את האלכסון על ידי סכימה של הערך באלכסון המקורי ועוד ‪ 25%‬מהערכים‬
‫הסמוכים לו‪ .‬לערכי הקצוות נחשב את ערך האלכסון ועוד ‪ 0.5‬מהערך הסמוך לו‪ .‬להלן הטבלה‬
‫הרלוונטית‪.‬‬

‫‪136‬‬
‫טבלה ‪-8‬טבלת מדדים חדשה עבור משתני המטרה‪ .‬שאלת מחקר ‪.9‬‬

‫מתוך הטבלאות הנ"ל ישנם מספר מסקנות רלוונטיות וחשובות‪.‬‬


‫ניתן לראות שעבור מודל ה‪ RNF-‬מדד ה‪ f-1 BNUL N50‬והוא בממוצע נמוך יותר משאר המודלים‪,‬‬
‫וזאת בניגוד למדד ה‪ Accuracy-‬שלו אשר בממוצע גבוה יותר משל שאר המודלים (גם מלפני המשקלים‬
‫וגם אחרי)‪ .‬דבר זה מעיד על אחוז ‪ False positive rate‬גבוה מאוד‪ ,‬כלומר המודל באופן יחסי חוזה‬
‫יותר ערך אחד ביחס לשאר הערכים‪ ,‬לכן הוא מקבל תוצאות ‪ Accuracy‬גבוהה‪ .‬ככל הנראה הוא חוזה‬
‫את המספר השכיח‪ .‬ניתן לראות כיצד‪ ,‬לדוגמה‪ ,‬במדד ה‪ Nurse communication‬המודל הוא בעל‬
‫התוצאות הראשוניות הגבוהות ביותר‪ .‬אם נסתכל על התפלגות הערכים במשתנה מטרה זה נראה כי‬
‫הערך ‪ 4‬השכיח ביותר וגבוה כמעט פי ‪ 2‬מהערך אחריו‪:‬‬

‫‪137‬‬
‫איור ‪ - 63‬התפלגות הערכים‪ .‬שאלת מחקר ‪.9‬‬

‫להלן מטריצת הבלבול של מודל ה‪ ,RNF-‬נראה כי יש נטייה למודל לחזות את הערך ‪ 4‬יותר משאר הערכים (ניתן‬
‫לראות את תוצאת שאר המטריצות בנספחים)‪:‬‬

‫‪Predicted‬‬
‫‪Label‬‬

‫איור ‪ -64‬מטריצת בלבול ‪ .1‬שאלת מחקר ‪.9‬‬


‫ה‪ -KNN‬ו‪ Nueral Net-‬הם בעלי מדד ‪ F1‬אשר בממוצע נמצא באזור ה‪ 50%-‬בטבלה השנייה של‬
‫המשקלים‪ .‬לכן ניתן להסיק כי פיזור הפרדיקציות של המודלים הללו הוא טוב יותר ממודל ה‪ .-RNF‬ניתן‬
‫לראות כי בין הטבלאות מדד ה‪ - Accuracy‬של שני המודלים קופץ אל מעל ‪ .70%‬דבר המעיד על יכולת‬
‫טובה יחסית לחזות נתונים‪.‬‬
‫המודלים בעלי יכולת החיזוי הטובה ביותר הם מודלי ה‪ .Ensamble‬לפני ואחרי המשקלים תוצאותיהם‬
‫טובות בהרבה משל שאר המודלים בנפרד‪ .‬ניתן להניח כי אכן ה‪ False rate-‬הגבוה של ה‪ RNF-‬לעומת‬
‫יחד עם פיזור תוצאות שני המודלים האחרים יוצרים יחס משלים‪ ,‬שאותו ניתן לראות בתוצאות ה‪voting-‬‬
‫וה‪.-Stacking‬‬

‫‪138‬‬
‫לבסוף‪ ,‬המודל אשר בעל החיזוי הטוב ביותר הינו ה‪ .-stacking‬מודל זה מבצע קלסיפיקציה של נתוני ה‪-‬‬
‫‪ X‬לפי תוצאות המודלים‪ .‬היות וה‪ -voting‬מבצע תהליך דומה‪ ,‬ניתן להניח כי ההבדל בין המודלים הוא‬
‫היכולת של ה‪ - stacking‬להיות גמיש יותר בין יחס תוצאות המודל לתוצאות האמת והוא אינו נתון‬
‫למשקל אחד בהרבה‪ .‬מודל ה‪ Voting-‬נותן יחס קבוע בין כל תוצאת מודל ומודל (בצורה הקלאסית‬
‫המודל נותן יחס ‪ 1‬ושווה לכל תוצאת מודל‪ ,‬אנו השתמשנו ב‪ Softmax-‬שהוא יחס שאינו שווה אך קבוע)‪.‬‬
‫ה‪ stacking-‬מחפש תבניות בנתוני החיזוי ולכן תוצאותיו משופרות יותר‪.‬‬
‫עבור משתנה ה'שינוע' ומשתנה 'מידע על עלויות' תוצאות המודל פחות טובים ‪ 77 -‬ו‪ 78-‬אחוזי‬
‫‪ Accuracy‬בהתאמה (גבוהים למדי) ומדד ‪ F1‬נמוך מ‪ ,60%-‬היחס ההרמוני בין ה‪ -Precision‬וה‬
‫‪ - Recall‬אינו גבוהה מספיק (נמוך מ‪ .)60%-‬אומנם עבור שאר המשתנים התוצאות גבוהות יותר ‪80 -‬‬
‫אחוז רמת דיוק‪ ,‬ויחס ‪ F1‬גבוה מ‪ ,60%-‬דבר המעיד על ‪ Precision‬ו‪ -Recall‬גבוהים‪.‬‬
‫אם לרגע נסתכל על התוצאות ללא המשקולות‪ ,‬נראה כי המודל עדיין חוזה באחוזי דיוק שבין ‪ 75‬ל‪78-‬‬
‫אחוזי דיוק‪ ,‬דבר זה מעיד על יכולת טובה פי ‪ 3‬וקצת מיכולת הדיוק של ניחוש רנדומלי‪ .‬היות וקיימים ‪5‬‬
‫קלאסים שונים‪ ,‬ניחוש רנדומלי בשאיפה לאינסוף ייתן ממוצע דיוק של ‪.20%‬‬
‫לסיכום ניתן לומר כי מודל ה‪ STACKING-‬מבצע חיזוי טוב לנתוני השאלה‪ .‬קביעה זו בעצם מהווה‬
‫אישוש חיובי לשאלה האם קיים קשר בין מספר התמחויות וסוג התמחויות לבין מדדי שביעות רצון‪.‬‬
‫המודל שמצאנו מנבא לדוגמה ב‪ 80%-‬דיוק את ציון המלצה על בית חולים‪ ,‬דבר שיכול להעיד על הקשר‬
‫המדובר‪.‬‬
‫נוסיף כי בתחילת השאלה ערכנו מחקר סטטיסטי ומצאנו בין חלק מהמשתנים לבין מספר ההתמחויות‬
‫קשר ליניארי מסוים‪ .‬נראה כי המודל הצליח לאפיין בהצלחה מודלים בעלי קשר ליניארי חזק ובינוני‪.‬‬
‫אומנם שני משתני המטרה בעלי התוצאות הפחות טובות באופן שחוצה את כלל המודלים הם‬
‫‪ .dicharges and care trancision‬מדד אחד בעלי קשר ליניארי חזק והשני חלש‪ .‬לכן ניתן להסיק‬
‫באופן חלקי כי יש עדיפות לקשרים ליניאריים בין המודלים לתוצאות‪ ,‬אך לא באופן משתמע‪.‬‬

‫‪139‬‬
‫‪ 9.2.10‬שאלת מידול – יצירת מודל לחיזוי אשפוזים חוזרים באמצעות רגרסיה לוגיסטית‬
‫בשאלה זאת רצינו לבדוק האם בעזרת פרמטרים מסוימים יהיה ניתן לחזות האם מאושפז יגיע לטיפול‬
‫חוזר‪.‬‬
‫שלב ‪– Business understanding‬‬
‫מטרת המודל הוא ליצור תמיכה כחלק מקבלת ההחלטות של המטופלים בבחירת בית חולים לטיפול‪ .‬על‬
‫ידי נתינת הפרמטרים הנכונים ניתן יהיה לשער את ההסתברות לאשפוז חוזר בבית חולים ספציפי‪.‬‬
‫שלב ‪– Data understanding‬‬
‫בשלב זה התחלנו להבין את מבנה הטבלאות‪ ,‬סוגי הנתונים‪ ,‬כמות הנתונים ועוד‪ .‬הנתונים היו מגוונים‪,‬‬
‫הן קטגוריים והן נומריים‪ .‬המייצגים ציונים שניתנו לבתי חולים מארגון ‪ CMS‬וסיווגים בהתאם לדירוג‬
‫הבית חולים ביחס לשאר בתי החולים ביבשת‪.‬‬
‫הפרמטרים שנקבעו לשם חיזוי הרגרסיה הלוגיסטית לאשפוז חוזר הם‪:‬‬
‫האם קיימים שירותי חירום בבי"ח‪.‬‬ ‫‪.1‬‬
‫מהו סוג הבי"ח‪.‬‬ ‫‪.2‬‬
‫ציון כללי שקיבל הבי"ח מה‪.CMS-‬‬ ‫‪.3‬‬
‫השוואה לאומית של כמות המיתות‪.‬‬ ‫‪.4‬‬
‫השוואה לאומית של ציון הבטיחות‪.‬‬ ‫‪.5‬‬
‫השוואה לאומית של אשפוזים חוזרים‪.‬‬ ‫‪.6‬‬
‫השוואה לאומית של חולים מטופלים‪.‬‬ ‫‪.7‬‬
‫השוואה לאומית של יעילות‪.‬‬ ‫‪.8‬‬
‫השוואה לאומית של זמינות הטיפולים‪.‬‬ ‫‪.9‬‬
‫השוואה לאומית של שימוש יעיל בהדמיות רפואיות‪.‬‬ ‫‪.10‬‬

‫שלב ‪– Data preparation‬‬


‫שיטת החישוב ‪ :‬מידול סטטיסטי באמצעות רגרסיה לוגיסטית החוזה את הסיכוי לאשפוז חוזר של מטופל‬
‫ע"ב עשרת הפרמטרים הנ"ל‪.‬‬
‫בחרנו ברגרסיה לוגיסטית כיוון שהמשתנים‪ ,‬הן התלוי והן הבלתי‪-‬תלוי‪ ,‬הם משתנים קטגוריים הן‬
‫איכותיים והם כמותיים‪ .‬המודל מאפשר לאמוד את מידת ההשפעה של שינוי בערכו כל אחד מהמשתנים‬
‫המסבירים על ערכו של המשתנה המוסבר שהוא – האם יהיה אשפוז חוזר‪.‬‬
‫בתהליך נענה על שאלה זו‪ ,‬התחלנו במשיכת נתונים מ‪ 2 -‬טבלאות שונות (טבלה אחת של אשפוזים‬
‫חוזרים לפי בית חולים‪ ,‬וטבלה שניה של מידע כללי על בתי החולים)‪ ,‬לאחר מכן יצרנו טבלה חדשה ע"י‬
‫איחוד בין הטבלאות דרך שאילתה מפייתון ל‪ MYSQL-‬וביצעו טיוב של הנתונים בתוכנת אקסל ע"י כך‬
‫שהוצאנו תוצאות שהיו ‪ null‬או שלא היו כלל ערכים‪.‬‬

‫‪140‬‬
‫איור ‪ - 65‬יצירת טבלה חדשה מ‪ 2 -‬טבלאות קודמות‪ .‬שאלת מחקר ‪.10‬‬

‫לאחר מכן סיננו את כל השנים שבהם לא היו נתונים על אשפוז חוזר‪.‬‬


‫לאחר כתיבת השאילתה‪ ,‬עברנו לכתיבת מודל החיזוי בפייתון‪.‬‬
‫כפי שניתן לראות בצילום המסך הבא‪ ,‬בהתחלה משכנו את השאילתה והכנסנו אותה לטבלת נתונים (‬
‫‪:)DF‬‬

‫‪141‬‬
‫איור ‪ - 66‬חלוקת ה‪ Data -‬משתנים מסבירים משתנה מטרה ולנתוני אימון ומבחן‪ .‬שאלת מחקר ‪.10‬‬

‫‪ – X‬יהווה וקטור של כל העמודות של המשתנים המסבירים‬


‫‪ – Y‬יהווה וקטור בינארי האם היה אשפוז חוזר או לא‪.‬‬
‫השתמשנו בחיזוי בעזרת רגרסיה לוגיסטית כיוון שניסינו להסביר משתנה יחיד‪ ,Y,‬ההסתברות לאשפוז‬
‫חוזר‪ ,‬באמצעות מספר משתנים מסבירים‪ .X(10)..X(1 ,‬אם ההשפעה של משתנים אלה על ‪ Y‬קיימת‬
‫כפונקציית סיגמואיד‪ ,‬מודל הרגרסיה יוכל למצוא את הפרמטרים המגדירים את הקשר‪ ,‬ובכך יסייע לשפר‬
‫את ההערכה של אשפוז חוזר עוד יותר‪.‬‬
‫שלב ‪– Modeling‬‬
‫את הנתונים חילקנו על ידי פונקציית ‪ split‬של ‪ .sklearn‬בחרנו תחילה לחלק ‪ 25%‬מהנתונים לנתוני‬
‫מבחן ו‪ 75% -‬לנתוני אימון‪ .‬בחרנו זאת היות וכמות השורות נמוכות יחסית ויש להשקיע יותר באימון‬
‫המודל על מנת לקבל מודל טוב יותר גם בחשבון על קבלת ‪ Overfitting‬אפשרי בעת אימון המודל‬
‫(קבלת תוצאות נמוכות באימון)‪.‬‬
‫בעזרת התוצאות שנקבל נחשב את ‪:‬‬
‫‪ .i‬רמת הנכונות – ‪ : Accuracy‬אחוז התצפיות שסווגו נכונה( היחס בין הסיווגים הנכונים לבין סך‬
‫כל הסיווגים)‪.‬‬
‫‪ .ii‬רמת הדיוק – ‪ :Precision‬היחס של תצפיות חיוביות שהמודל זיהה נכונה מכל התצפיות‬
‫שהמודל זיהה שהם חיוביות‪.‬‬
‫‪ .iii‬שיעור החיוביים האמיתיים – )‪ :True positive rate (Recall‬ההסתברות המותנה לסווג תצפית‬
‫מסוימת כחיובית בכך שידוע שהתוצאה אכן חיובית‪.‬‬
‫‪ .iv‬מדד ‪ :F1 – F1 Score‬ממוצע משוקלל של ה‪ Precision-‬וה‪ ,Recall-‬ובכך לוקח בחשבון את‬
‫השגיאות משני הסוגים‪.‬‬

‫איור ‪ - 67‬חישובים ברגרסיה הלוגיסטית‪ .‬שאלת מחקר ‪.10‬‬

‫‪142‬‬
‫משוואת מטריצת הבלבול‪:‬‬

‫איור ‪ - 68‬מטרית בלבול‪ .‬שאלת מחקר ‪.10‬‬

‫עקומת ‪:ROC‬‬
‫גרף המציג את הביצועים של מסווג דו‪-‬ערכי‪ ,‬לאור סף ההחלטה שנקבע לו‪ .‬העקומה נוצרת על ידי‬
‫התוויית שיעור החיוביים האמיתיים (‪ )TPR‬מול שיעור החיוביים הכוזבים (‪ )FPR‬תחת ספי קבלה שונים‬

‫איור ‪ - 69‬עקומת ‪ .ROC‬שאלת מחקר ‪.10‬‬

‫‪143‬‬
‫שלב ‪– Evaluation‬‬
‫בשלב זה נבצעה הערכות לתוצאות שלנו‪ ,‬ולהלן התוצאה שקיבלנו עבור הרצת המודל הנבחר‪:‬‬

‫מטריצת הבלבול‬

‫עקומת ‪ROC‬‬

‫‪144‬‬
‫תוצאות המדדים – עבור נתוני המבחן‬

‫‪Accuracy: 0.976‬‬
‫‪Precision (Positive Predictive Value): 0.615‬‬
‫‪Recall/Sensitivity/TPR: 0.381‬‬
‫‪F1 Score: 0.471‬‬

‫ניתוח התוצאות‪:‬‬
‫ניתן לראות כי למודל יש תוצאות טובות‪ ,‬השטח שמתחת לעקומת ‪( ROC‬שמבטאת את איכות ניחוש‬
‫המודל) מאוד גדול ‪. 92.5%‬ולכן הסיכוי שהמודל שלנו ייתן פרדיקציה גבוהה יותר לערך חיובי אקראי‬
‫מאשר לערך שלילי אקראי)‪.‬‬
‫רמת הדיוק מאוד גבוהה ‪( , Accuracy ,‬אומנם יכול לאפיין מצב של ‪.)Overfitting‬‬
‫יחס הממוצע ההרמוני שמיוצג ע"י ‪ F1‬באמצע (בין ‪ 0‬ל‪ )1-‬שזה מצב בינוני (יכול לחזק את הטענה ל‪-‬‬
‫‪.)Overfitting‬‬

‫‪145‬‬
‫אב טיפוס‬ ‫‪9.3‬‬
‫בתחילת הפרויקט חשבנו אילו גורמים יהיו הכי מעוניינים להשתמש במידע שנספק‪ ,‬לכן החלטנו לבנות‬
‫דו"ח ייעודי אשר כולל בתוכו מספר מסכים ע"פ סוג משתמש‪ .‬המתשמשים שבחרנו הם ‪:‬‬
‫מטופל – כיוון שהוא הלקוח קצה ומקבל השירות‪ ,‬במצב הנוכחי אין אפשרות למטופל להבין‬ ‫‪‬‬
‫בצורה וויזואלית ונוחה מדדים שיכולים לעניין אותו כמו‪ :‬בתי חולים שקרובים אליו‪ ,‬להבין שיעור‬
‫אשפוז חוזר ועוד‪.‬‬
‫מנהל בית חולים – כיוון שהמנהלים תפקידם להבין בצורה כוללת על המתרחש בבית החולים‬ ‫‪‬‬
‫ולבצע פעולות בהתאם לנתונים שמוצגים אליהם‪ ,‬כלי ‪ BI‬הוא הכרחי עבורם‪ .‬במצב הנוכחי אין‬
‫אפשרות למנהל לראות את ההתפלגויות של רופאים בבית החולים שלו בצורה וויזואלית‪ ,‬הוא לא‬
‫יכול להשוות את בית החולים לשאר בתי החולים ועוד‪.‬‬
‫ארגון ‪ – CMS‬כיוון שזה הארגון שאחראי על ‪ Medicare‬ותפקידו הוא לוודא שבתי החולים‬ ‫‪‬‬
‫שבמסגרת ‪ Medicare‬עובדים ע"פ ההנחיות ולקבל תמונת מצב רחבה על כלל בתי החולים ב‪-‬‬
‫‪ .Medicare‬במצב הנוכחי אין אפשרות לארגון ‪ CMS‬לראות בצורה וויזואלית דירוגים של בתי‬
‫חולים ברמת מדינה‪/‬עיר‪ ,‬לחזות דירוג של בתי חולים ועוד‪.‬‬
‫הגדרנו את המערכת שתהיה פתוחה עבור כלל המשתשמים לכל הדו"חות השונים‪.‬‬

‫איור ‪ - 70‬מסך הפתיחה של המערכת ‪BI‬‬

‫‪146‬‬
‫כפי שניתן לראות מעלה את מסך הפתיחה (‪ )Home Page‬אשר יוצג תחילה לכל משתמש‪ .‬כפי שציינו‬
‫למעלה יש ‪ 3‬אופציות של דו"חות ‪ :‬עבור מטופל ‪ ,‬עבור מנהל בית חולים‪ ,‬עבור ארגון ‪ .CMS‬על‬
‫המשתמש ללחוץ על הלינק המתאים לו ואז הוא יופנה לדו"ח הרלוונטי עבורו‪.‬‬

‫איור ‪ - 71‬דוגמא למסך אצל מנהל בי"ח‪ .‬מכל מסך ניתנת האפשרות למשתמש לחזור למסך הראשי ולבחור אם הוא מעוניין בצפייה בסוג‬
‫אחר של דו"ח‪ .‬כל המעבר בין המסכים מתבצע בקלות ע"י לחיצת כפתור בודדת‪.‬‬

‫עמוד של המטופל‬ ‫‪9.3.1‬‬


‫עקב גיל המטופלים שבממוצע מעל גיל ‪ 65‬כל המסכים שלהם יהיו פחות עמוסים במידע‪ ,‬פחות‬
‫צבעוניים‪ ,‬הכתב יהיה יותר גדול והמידע נבחר להיות מאופיין עפ"י סוגי זיהומים ומשם קבלת כל המידע‬
‫(בחרנו בשיטת סינון ראשונית זאת משום שבגילאים האלה מטופלים יותר רגישים לזיהומים ולכן ירצו‬
‫להתחיל לקבל מידע רפואי עפ"י סינון ראשוני זה)‪ .‬להלן השלבים שעובר המטופל‪:‬‬
‫מטופל ‪ -‬עמוד ראשון‬ ‫‪.a‬‬
‫סינון ראשוני לפי סוגי זיהום שהכי פחות מסכנים את המטופל‪.‬‬ ‫‪.i‬‬
‫‪ .ii‬סינון לפי מדינה עם אפשרות לסנן שוב לפי עיר או לעצור ברמת המדינה‪.‬‬

‫‪147‬‬

‫איור ‪ - 72‬מטופל‪ :‬עמוד ראשון‬


148
‫מטופל ‪ -‬עמוד שני‬ ‫‪.b‬‬
‫סינון לפי רמת איכות בית החולים עפ"י השוואה למצב הלאומי‪.‬‬ ‫‪.i‬‬
‫‪ .ii‬בחירת בית חולים מהרשימה המסוננת‪.‬‬
‫מכאן נגמרו הסינונים ויהיה רק קבלת מידע על הבית חולים‪.‬‬
‫קבלת מידע כללי על הבית חוחלים הנבחר כמו (כתובת‪,‬טלפון ועוד)‪.‬‬ ‫‪.i‬‬
‫‪ .ii‬סכימת סוגי הזיהום ברמת הבית חולים הנבחר‪.‬‬

‫איור ‪ - 73‬מטופל‪ :‬עמוד שני‪.‬‬

‫מטופל ‪ -‬עמוד שלישי‬ ‫‪.c‬‬


‫מידע על הבית חולים מסקרים שונים‪.‬‬ ‫‪.i‬‬
‫‪ .ii‬מידע על ממוצע תשלום לפי בעיות רפואיות שונות‪.‬‬

‫‪149‬‬
‫איור ‪ - 74‬מטופל‪ :‬עמוד שלישי‪.‬‬

‫מטופל ‪ -‬עמוד רביעי‬ ‫‪.d‬‬


‫מידע על ‪ 10‬מדדי סיבוכים כירורגיים מורכבים בבית חולים‪.‬‬ ‫‪.i‬‬

‫איור ‪ -- 75‬מטופל‪ :‬עמוד רביעי‪.‬‬

‫‪150‬‬
‫מטופל ‪ -‬עמוד חמישי‬ ‫‪.e‬‬
‫נתונים על הרופאים המועסקים בבית החולים (נלקח מהעמוד השני של מנהל‬ ‫‪.i‬‬
‫בית חולים)‪.‬‬

‫איור ‪ - 76‬מטופל‪ :‬עמוד חמישי‪.‬‬

‫‪151‬‬
‫מטופל ‪ -‬עמוד שישי‬ ‫‪.f‬‬
‫מידע כללי על הבית חולים בהשוואה למצב הלאומי בבתי חולים‪.‬‬ ‫‪.i‬‬
‫‪ .ii‬קבלת חיזוי לאשפוז חוזר עפ"י כל המדדים שנאספו על הבית חולים‪.‬‬

‫איור ‪ - 77‬מטופל‪ :‬עמוד שישי‪.‬‬

‫עמוד של מנהל בית חולים‬ ‫‪9.3.2‬‬


‫את מנהל בית החולים מעניין בעיקר להבין בצורה כוללת את תחום הכספים‪ ,‬תחום הרופאים המועסקים‬
‫בבית החולים‪ ,‬מדדים שונים ולהבין את מצב בית החולים בהשוואה לבתי חולים אחרים‪.‬‬
‫‪ :‬בדו"ח עבור מנהל בית החולים קיימים ‪ 2‬מסכים‬
‫הראשון ‪ '’ National Information‬המכיל בעיקר השוואת מדדים אל מול הממוצע הארצי‪ ,‬לדוגמא האם‬
‫שביעות הרצון של המטופלים בבית החולים מעל‪/‬מתחת‪/‬בדיוק כמו ההממוצע הארצי או מדדים של‬
‫אפקטיביות הטיפול ומדד בטיחות‪ .‬בנוסף במסך זה ניתן לראות את הרווח הנקי של בית החולים‪ .‬לצורך‬
‫דוגמא בחרנו במקרה זה בבית החולים ' ‪ ,'Alice Hyde Medical Center‬ניתן לראות גרף מאוד מעניין‬
‫של סך התביעות שנגרמו עקב רשלנות רפואית בבית החולים‪ .‬ניתן לראות שבשנים ‪ 2013-2017‬הסכום‬
‫היה נמוך ודי זהה‪ ,‬כאשר בשנת ‪ 2017‬הייתה חריגה משמעותית‪ ,‬כנראה נבע מתביעה גדולה שהייתה‬

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

‫איור ‪ - 78‬עמוד ‪ National Information‬אצל מנהל בי"ח‬

‫השני '‪ 'Doctors Information‬מכיל בעיקר נתונים על הרופאים המועסקים בבית החולים‪ .‬כאן מנהל בית‬
‫החולים יכול למצוא את התפלגות הוותק של הרופאים‪ ,‬דבר היכול לעזור לו להבין האם יש הומוגוניות‬
‫בוותק ובמידה והוא רואה אחוז גדול של רופאים שעומד לצאת לגימלאות הוא יכול לדעת ולתכנן מראש‬
‫חפיפה מסודרת ו‪/‬או הבאת רופאים חדשים‪ .‬בנוסף הוא יכול לראות את ההתפלגות מין הרופא וחמשת‬
‫ההתמחויות עם כמות הרופאים הגדולה ביותר‪ ,‬דבר היכול להעיד על חוזקת בית החולים בהתמחויות‬
‫אלו‪ .‬במסך זה ניתן גם למצוא את הממוצע היומי של כמות המיטות הפנויות בבית החולים‪ ,‬דבר היכול‬
‫לעזור לו להבין את תפוסת המיטות‪ ,‬נושא שלעיתים יכול להיות "כואב" במידה ויש עומס רב על המיטות‬
‫ואין טווח ביטחון‪ ,‬כאן מנהל בית החולים יוכל להבין ולתכנן בהתאם רכישה‪/‬גריעה של מיטות‪.‬‬

‫‪153‬‬
‫איור ‪ - 79‬עמוד ‪ Doctors Information‬אצל מנהל בי"ח‬

‫עמוד של ארגון ‪CMS‬‬ ‫‪9.3.3‬‬


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

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

‫עמוד ראשון הערכת מקרו של כמות ואיכות בתי החולים הפרושים ברחבי ארה"ב‪ .‬במפות ניתן לראות‬
‫התפלגות ציונים לפני מדינה‪ .‬ניתן לראות אי שוויונות ונקודות חולשה בריאותיות ברמה הארצית לפי מדד‬
‫ציון כללי של בתי חולים‪.‬‬

‫איור ‪ .CMS – 80‬עמוד ראשון‪.‬‬

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

‫‪155‬‬
‫איור ‪ .CMS - 81‬עמוד שני‪.‬‬

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

‫איור ‪ .CMS –-82‬עמוד שלוש‪.‬‬

‫‪156‬‬
‫בעמוד האחרון יוכל הארגון לקבל הערכה ראשונית של בתי חולים לפי חמישה מדדים בלבד שמצאנו‬
‫לנכון המשפיעים ביותר על ציון בית החולים‪ .‬יצרנו טבלה מדומה (במערכת עתידית יהיה התממשקות‬
‫של המערכת עם המודל וניתן יהיה לחזות בזמן אמת ציון בית החולים) אשר מכילה בתוכה ערכים‬
‫אפשריים וכמו כן ציון לפי המודל של הבית חולים‪ .‬יוכלו הארגון לאסוף מידע ראשוני על הארגון ולקבל‬
‫פרספקטיבה על איכות הבית חולים החדש‪.‬‬

‫‪157‬‬
‫בדיקות והערכה‬ ‫‪10‬‬

‫‪.1‬‬

‫‪.2‬‬

‫‪.3‬‬

‫‪.4‬‬

‫‪.5‬‬

‫‪.6‬‬

‫‪.7‬‬

‫‪.8‬‬

‫‪.9‬‬

‫‪10‬‬

‫תכנית בדיקות מערכת‬ ‫‪10.1‬‬

‫‪6‬‬

‫‪7‬‬

‫‪8‬‬

‫‪158‬‬
‫‪9‬‬

‫‪10‬‬

‫‪10.1‬‬

‫היקף הבדיקות‪:‬‬ ‫‪10.2‬‬


‫שם התוכנה‪ :‬מודל ‪ BI‬לבתי חולים‪.‬‬ ‫‪10.2.1‬‬
‫מסמכים לפיהם יתבצעו הבדיקות‪ :‬דוח תכן ראשוני ודוח תכן מפורט‪.‬‬ ‫‪10.2.2‬‬
‫דגשים‪ :‬תהליכים עיקריים במערכת‪ :‬תהליכי ‪ ,ETL‬הפעלת מדדי ביצוע ‪,))KPI‬‬ ‫‪10.2.3‬‬
‫הפעלת מודלי חיזוי וויזואליזציה של התוצאות‪.‬‬

‫סביבת הבדיקות‪:‬‬ ‫‪10.3‬‬


‫תצורות חומרה וקושחה נדרשות‪:‬‬ ‫‪10.3.1‬‬
‫‪.Sql server management studio‬‬ ‫▪‬
‫‪.Sql server integration services‬‬ ‫▪‬
‫תוכנת ויזואליזציה ‪.EXECL :‬‬ ‫▪‬
‫גישה לאינטרנט‪.‬‬ ‫▪‬
‫‪ -Win XP‬לפחות‪.‬‬ ‫▪‬

‫צוות הבדיקה‬ ‫‪10.3.2‬‬


‫שלושה אנשי ‪( QA‬מבצעי הפרויקט)‪.‬‬ ‫▪‬
‫ידע מוקדם מקורסי תכנות‪.‬‬ ‫▪‬
‫ניסיון תעסוקתי בביצוע תהליכי בדיקות לנתונים\לפונקציונליות של מערכת\‬ ‫▪‬
‫לתהליכי ‪. ETL‬‬

‫הכנה והכשרה הנדרשת של צוות הבדיקה‬ ‫‪10.3.3‬‬


‫למידה של זרימת המודל החל משלב הטעינה של הנתונים‪ ,‬דרך הפעלת‬ ‫▪‬
‫האלגוריתמים ולבסוף הצגת הפלטים‪.‬‬
‫‪159‬‬
‫הכנת סביבת בדיקות ונתוני בדיקה‪ :‬יכלול בסיסי מידע לבדיקות (סביבת פיתוח)‪,‬‬ ‫▪‬
‫נתוני ‪ Training‬ו‪.Testing‬‬
‫זמן סבב בדיקות ראשון‪ :‬שבוע‪ .‬אחר כך זמן תיקונים וביצוע סבב בדיקות שני‪.‬‬ ‫▪‬
‫את סבב הבדיקות יש להתחיל לכל המאוחר שבועיים לפני מועד השקת‬ ‫▪‬
‫המערכת‪.‬‬

‫פירוט הבדיקות‪:‬‬ ‫‪10.4‬‬


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

‫תיאור הפונקציות לבדיקה‪:‬‬


‫תהליכי ‪ :ETL‬יצירת טבלאות חדשות‪ ,‬העברת מידע ממקור למקור‪ ,‬הפעלת פרוצדורות‬
‫‪.SQL‬‬

‫דרישות הבדיקה‪:‬‬
‫הכרות עם תהליכי ‪ ETL‬בסיסיים‪.‬‬ ‫●‬
‫ידע רחב בתשאול בסיסי מידע בשפת ‪.SQL‬‬ ‫●‬
‫דרישות מיוחדות‪ :‬אין‬
‫נתוני בדיקה שיירשמו‪:‬‬
‫עבור כל פונקציה ותת פונקציה במערכת ייבדק ויירשם‪:‬‬
‫האם הטבלה‪ ,‬הפרוצדורה קיימת‪.‬‬ ‫▪‬
‫האם הפונקציה התבצעה בצורה נכונה לוגית‪.‬‬ ‫▪‬
‫האם הפונקציה התבצעה בצורה נכונה עסקית (הגיונית לפי עולם התוכן)‪.‬‬ ‫▪‬
‫רמת ביצוע הפונקציה‪.‬‬ ‫▪‬
‫פירוט תקלות בביצוע הפונקציה‪.‬‬ ‫▪‬

‫‪160‬‬
‫‪ 10.4.2‬שם הבדיקה‪ :‬בדיקת מדדי הביצוע ‪.Kpi’s‬‬
‫מטרת הבדיקה‪ :‬בדיקת מהימנותם של מדדי הביצוע‪.‬‬
‫רמת הבדיקה‪ :‬בדיקה של תוצאות המדדים עבור קלטים שונים וזהים‪ ,‬ובחינת‬
‫התוצאות בהתאם‪.‬‬
‫דרישות הבדיקה‪:‬‬
‫הכנת בסיסי מידע לבדיקות‪.‬‬ ‫▪‬
‫הכנת מפתח נתונים לכל אחד מהממדים‪ :‬עולם הבעיה בו המדד עוסק‪ ,‬קלט רצוי‬ ‫▪‬
‫(סוג ותוכן) ופלט רצוי (סוג)‪.‬‬
‫דרישות מיוחדות‪:‬‬
‫תתבצע בדיקת עומסים‪ ,‬טעינת בסיס נתונים גדול ככל האפשר והפעלת תהליכי‬ ‫▪‬
‫המדדים‪.‬‬
‫נתוני בדיקה שיירשמו‪:‬‬
‫עבור כל אחד מהממדים הנבחנים יירשמו הנתונים הבאים‪:‬‬
‫סוג הקלט אשר עובד בפועל‪.‬‬ ‫▪‬
‫סוג הפלט המתקבל במדד‪.‬‬ ‫▪‬
‫הסטייה הנובעת בתוצאות המדד ביחס למצב האמיתי (אחוז דיוק)‪.‬‬ ‫▪‬

‫בהמשך יבדקו המדדים תחת תהליך בדיקת עומסים וזמני תגובה‪.‬‬

‫‪ 10.4.3‬שם הבדיקה‪ :‬בדיקת מודלי החיזוי‪.‬‬


‫מטרת הבדיקה‪ :‬בדיקת מהימנותם של מודלי החיזוי‪.‬‬
‫רמת הבדיקה‪ :‬בדיקה של תוצאות מודלי החיזוי עבור קלטים שונים וזהים‪ ,‬ובחינת‬
‫התוצאות בהתאם‪.‬‬

‫דרישות הבדיקה‪:‬‬
‫הכנת בסיסי מידע לבדיקות‪.‬‬ ‫▪‬
‫הכנת מפתח נתונים לכל אחד מהמודלים‪ :‬עולם הבעיה בו המודל עוסק‬ ‫▪‬
‫קלט רצוי (סוג ותוכן) ופלט רצוי (סוג)‪.‬‬
‫‪161‬‬
‫דרישות מיוחדות‪:‬‬
‫תתבצע בדיקת עומסים ע"י העמסת רשומות על המודל‪.‬‬ ‫▪‬

‫נתוני בדיקה שיירשמו‪:‬‬


‫עבור כל אחד ממודלי החיזוי הנבחנים יירשמו הנתונים הבאים‪:‬‬
‫מדד הדיוק ומדד ה ‪.ROCAREA -‬‬ ‫▪‬
‫סוג הפלט המתקבל במודל‪.‬‬ ‫▪‬
‫הסטייה הנובעת בתוצאות המודל ביחס למצב האמיתי‪.‬‬ ‫▪‬
‫מספר הרצה‪.‬‬ ‫▪‬

‫בהמשך יבדקו המדדים תחת תהליך בדיקת עומסים וזמני תגובה‪.‬‬

‫‪ 10.4.4‬שם הבדיקה‪ :‬בדיקות ויזואליזציה‪.‬‬


‫מטרת הבדיקה‪:‬‬
‫בדיקת תקינותם של תוצרי הוויזואליזציה ותאימותם לנתונים‪.‬‬ ‫▪‬
‫רמת הבדיקה‪ :‬בדיקת הוויזואליזציה השייכת לכל מדד ביצוע ומודל חיזוי‪.‬‬
‫דרישות הבדיקה‪ :‬גישה לפלטפורמה בעלת יכולות ויזואליזציה לבסיסי נתונים ‪.EXCEL :‬‬
‫נתוני בדיקה שיירשמו‪:‬‬
‫טווחי הנתונים בהם פועלים הגרפים\שעוני המחוונים‪.‬‬ ‫▪‬
‫זמני עליית רכיבי הוויזואליזציה ע"פ חלוקה ל‪ 3-‬טווחים‪ :‬נמוך‪ ,‬בינוני‪ ,‬גבוה‪.‬‬ ‫▪‬
‫במקרים של שימוש משתנה קטגוריאלי‪ ,‬רשימת כל הקטגוריות והשוואתם‬ ‫▪‬
‫לבסיס הנתונים‪.‬‬
‫קיום\אי קיום של גישה לבסיס הנתונים בכל אחת מהפעולות הנדרשות להצגת‬ ‫▪‬
‫הוויזואליזציה‪.‬‬
‫הפורמט בהם מופיעים הנתונים בתרשימים‪.‬‬ ‫▪‬

‫בהמשך עבור כל רכיבי התוכנה והחומרה יבדקו שוב נתוני הבדיקה לעיל אך עבור עומסי‬
‫עבודה שונים (עומס נמוך‪ ,‬בינוני‪ ,‬גבוה)‪.‬‬
‫‪162‬‬
‫‪ 10.4.5‬שם הבדיקה‪ :‬בדיקת ביצועי המערכת‪.‬‬
‫מטרת הבדיקה‪ :‬בדיקת איכותם של ביצועי המערכת כפי שהוגדרו במסמכי התיכון‪.‬‬
‫רמת הבדיקה‪ :‬בדיקות איכות המערכת וסביבתה‪.‬‬
‫דרישות הבדיקה‪:‬‬
‫הבדיקות יתבצעו על גבי חומרה וקושחה המינימאלית הדרושה להפעלת‬ ‫▪‬
‫המערכת‪.‬‬
‫דרישות מיוחדות‪:‬‬
‫תתבצע בדיקת עומסים ע"י טעינת כמות נתונים רבה לבסיס הנתונים‪.‬‬ ‫▪‬
‫נתוני בדיקה שיירשמו‪:‬‬
‫עבור השלבים השונים במערכת (‪ ,ETL, KPI‬מודלי חיזוי וויזואליזציה) ירשמו הנתונים הבאים‪:‬‬
‫זמני תגובה לקלט ופלט עבור כל הפונקציות ותתי הפונקציות השונות‪.‬‬ ‫▪‬
‫זמני פעולה לתהליכים פנימיים במערכת (טעינה‪ ,‬שמירה‪ ,‬חישובים)‪.‬‬ ‫▪‬
‫איכות הצגת הממשק והסימולציה מבחינה גראפית‪.‬‬ ‫▪‬
‫בדיקות שימוש בקבצים במערכת ‪ -‬טעינה‪ ,‬העלאה‪ ,‬שמירה‪.‬‬ ‫▪‬
‫סיווג הזמנים ע"פ משתנה קטגוריאלי המחולק ל‪ :3-‬נמוך‪ ,‬בינוני‪ ,‬גבוה‪.‬‬ ‫▪‬
‫‪ 10.4.6‬שם הבדיקה‪ :‬בדיקות אינטגרציה‪.‬‬
‫מטרת הבדיקה‪:‬‬
‫בדיקת שילוב כל מודולי המערכת והשפעתם אחד על השני‪.‬‬ ‫▪‬
‫בדיקת השפעת המערכת על גורמים חיצוניים ולהיפך‪.‬‬ ‫▪‬
‫בדיקת עבודת המערכת עם תוכנת הוויזואליזציה המתממשקת איתה‪.‬‬ ‫▪‬
‫רמת הבדיקה‪ :‬אינטגרציה פנימית וחיצונית‪.‬‬
‫דרישות הבדיקה‪:‬‬
‫גישה לבסיס הנתונים של המערכת‪.‬‬ ‫▪‬
‫דרישות מיוחדות‪ :‬אין‪.‬‬
‫נתוני בדיקה שיירשמו‪:‬‬
‫מקומות בהם זרימת המערכת (בין המודולים השונים) נקטעת‪.‬‬ ‫▪‬
‫שגיאות וטעויות בנתונים‪.‬‬ ‫▪‬
‫כשלי תוכנה שיימצאו (למשל חוסר תפקוד של ממשק הוויזואליזציה)‪.‬‬ ‫▪‬
‫‪163‬‬
‫איכות האינטגרציה בין מדדי הביצוע למודלי החיזוי‪.‬‬ ‫▪‬

‫‪164‬‬
‫סיום‬ ‫‪11‬‬

‫‪11‬‬

‫סיכום ומסקנות‬ ‫‪11.1‬‬


‫מה הושג‪:‬‬
‫ביצוע מלא של תהליך ‪ - ETL‬התחברות ל‪ API‬של אתר המדיקר ומשיכת הנתונים‪ ,‬סידור דאטה‬ ‫‪‬‬
‫בייס אחוד ב‪ mysql Data-Mart-‬של כלל הנתונים הרלוונטי‪ ,‬כתיבת פרוצדורות להזנת נתונים ב‬
‫‪ -SCALE‬גבוה‪ ,‬התממשקות הדאטה לתוכנת ה‪ ,POWER BI-‬יצירת טבלאות מבוססות דאטה‬
‫והצגה שלהם במגוון שונה של גרפים וויזואליים‪.‬‬
‫ביצוע שאלות מחקר מעמיקות וברמות שונות – השאלות נתנו לנו את היכולת להעמיק את‬ ‫‪‬‬
‫ההיכרות שנו עם נתוני המערכות ובהתאם לשפר את ההגדרות למה מעניין את הלקוח‪ ,‬להציג‬
‫ערכים מעניינים ומהותיים ואף לתת תובנות חדשות לעולם זה‪.‬‬
‫שימוש במוצר מדף על מנת להציג את המערכת שלנו בפלטפורמת ‪ .WEB‬בניית מערכת ‪WEB‬‬ ‫‪‬‬
‫המציגה דו"חות עבור סוגים שונים של משתמשים במערכת‪ .‬התאמנו את העמודים בהתאם‬
‫לצרכי הלקוח‪ ,‬לשם כך ביצענו תהליך חשיבה של ל"גזירת" מסקנות מרצונות הלקוח ואחורה‪.‬‬

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

‫הבעיות העיקריות הם ‪:‬‬


‫אוטומציה של משיכת נתונים‪.‬‬ ‫‪‬‬
‫נתוני המדיקר מתעדכנים בין ‪ 3‬ל‪ 4-‬פעמים לשנה‪ ,‬דבר המקשה על איכות הנתונים ברמת ה‬ ‫‪‬‬
‫‪.Business‬‬

‫‪165‬‬
‫היכרות שטחית ברוב המקרים עם הנתונים – הנתונים מכילים דאטה של מאות ואם לא אלפים‬ ‫‪‬‬
‫של מושגים רפואיים‪ ,‬מדדים שונים ועוד‪ ,‬בשל כך היה לחברי הצוות קושי והיכרות עם הנתונים‪,‬‬
‫הבנה שלהם ולבצע עיבוד איכותני בעזרתם‪.‬‬
‫דוקומנטציה אדירה של המדדים השונים – על מנת להבין חלק מהמדדים היה על חברי הצוות‬ ‫‪‬‬
‫להתמודד עם מסמכי דוקומנטציה ארוכים וסבוכים הכוללים הן מונחים מתמטיים והן מונחים‬
‫רפואיים‪ .‬דבר זה יקשה על יכולת הפענוח שלנו‪.‬‬
‫אי היכרות\חוסר ניסיון בבניית מודלים טובים ואיכותיים מעולם ה‪.Mechine learning-‬‬ ‫‪‬‬

‫לקחים ‪:‬‬
‫העמקת הידע באלגוריתם של למידת המכונה ע"מ באמת להבין את ההבנה הסטטיסטית של‬ ‫‪‬‬
‫המודל ‪.‬‬
‫שימוש נכון במודלים מעולם ה‪ -Ensamble‬אכן עוזר בשיפור תוצאות המודל‪.‬‬ ‫‪‬‬
‫להשתמש בצורה תדירה בשמירת נתונים אשר ב‪ -dataframe‬לתוך טבלה ב‪ ,database-‬חוסר‬ ‫‪‬‬
‫זמן ריצת מודל‪.‬‬
‫ניתוחים אנליטיים בעזרת הויזואליזציות עוזרות לבצע לקחים לגבי הדאטה בצורה מהירה יותר‪.‬‬ ‫‪‬‬
‫שימוש במוצר מדף חינמי כגון ‪ Power BI‬יכול לקדם אבטיפוס‪ ,‬בייחוד בעולם ה‪ ,-BI‬בצורה‬ ‫‪‬‬
‫מהירה‪ .‬יצרנו מערכת התומכת ברוב הדרישות שלנו מבלי לבנות אותה הלכה למעשה‪.‬‬
‫ביצוע שאלות מחקר על ידי חלוקה גזרות גזרה‪ ,‬למשל‪ ,‬לפי שאלות סטטיסטיות‪ ,‬שאלות חיזוי‬ ‫‪‬‬
‫ושאלות הדורשות קלסיפיקציה‪.‬‬
‫אין צורך להמציא את הגלגל – לא פעם קרה שהיה לנו רעיון וניסינו לפתחו‪ ,‬אומנם לאחר חיפוש‬ ‫‪‬‬
‫קל מצאנו את התשובה באינטרנט‪.‬‬
‫עמידה בלו"ז בהתאם לדרישות ההגשה (כל הדו"חות) ולהכניס זמן מרווח לעיכובים בלתי‬ ‫‪‬‬
‫מתוכננים‪.‬‬

‫פיתוח עתידי‬ ‫‪11.2‬‬


‫הרחבת הדוחות לסוגים נוספים של משתמשים כמו גופי ביטוח שיכול לעניין אותם נושא‬ ‫‪‬‬
‫התביעות‪ ,‬גופי בריאות מקבילים ל‪ Medicare-‬בארה"ב‪.‬‬
‫הרחבת נושא הוויזואליזציה שיהיה מותאם לפלאפון‪.‬‬ ‫‪‬‬
‫‪166‬‬
‫ניהול תיקי משתמשים‪.‬‬ ‫‪‬‬
‫תמיכה בריצת מודל חיזוי בזמן אמת‪.‬‬ ‫‪‬‬
‫ניתוח זמן השימוש של משתמשים בכל מסך ובהתאם לכך לנתח ולהבין האם התצוגה מעניינת‬ ‫‪‬‬
‫ורלוונטית לאותו סוג משתמש ובהתאם לכך לתקף את הדו"חות שיהיו רלוונטיים ככל הניתן‪.‬‬
‫ובכלל ביצוע הערכת שביעות רצון הלקוח‪.‬‬
‫דחיפת המידע והמסקנות שלנו לאתר של ‪ Medicare‬ולא רק במערכת שלנו‪.‬‬ ‫‪‬‬
‫ניסיון בלהשיג ‪ Data‬בזמן אמת ולשם כך פיתוח ושיפור תהליך ה‪ -ETL‬שלנו‪ ,‬שמירה במוצרי ענן‬ ‫‪‬‬
‫למיניהם‪ ,‬פלטפורמות לשיתוף קוד‪ ,‬שימוש בשפה מתקדמת יותר ועוד‪.‬‬
‫שיפור המודלים שלנו – אנו מניחים כי איכות המודל הינה פונקציה של זמן וניסיון‪ ,‬ואם הזמן נדע‬ ‫‪‬‬
‫לבצע תהליכים טובים יותר‪.‬‬

‫‪167‬‬
‫ריכוז שינויים‬ ‫‪.12‬‬
‫סקירת ספרות‬
‫הוספת חומרים בסקירת ספרות שיותר מתאימים לעולם תוכן של הניתוח נתונים שלנו‪.‬‬
‫עיבוי רגרסיה ליניארית ולוגיסטית‪.‬‬ ‫‪.1‬‬
‫עיבוי רשת עצבית מלאכותית‪.‬‬ ‫‪.2‬‬
‫הוספת עץ החלטה‪.Decision Tree ,‬‬ ‫‪.3‬‬
‫הוספת מורד הגרדיאנט ‪.Gradient descent ,‬‬ ‫‪.4‬‬
‫הוספת מדד ( ‪.MAPE )Mean Absolute Percent Error‬‬ ‫‪.5‬‬
‫הוספת ניתוח שונויות (‪.ANOVA -Analysis One Way of variance‬‬ ‫‪.6‬‬
‫הוספת מקדם המתאם של פירסון‪.‬‬ ‫‪.7‬‬
‫הוספת ניתוח אשכולות ו‪K-means -‬‬ ‫‪.8‬‬

‫‪168‬‬
‫רשימת מקורות‬ 12
[1]
Applying Business Intelligence Concepts to Medicaid Claim Fraud Detection Dana
Edberg.
January 2012

[2]
● https://www.thebalancecareers.com/key-performance-indicators-2275156
The Basics of Key Performance Indicators
BY F. JOHN REH
October 22, 2018

● Martina Schell and James O'Brien.


“Communicating the UX Vision: Chapter 2 - Having different KPIs”
2015

● Applying Business Intelligence Concepts to Medicaid Claim Fraud Detection


Dana Edberg
January 2012

[3]
Predictive Analytics White Paper. (PDF), American Institute for Chartered Property
Casualty Underwriters/Insurance Institute of America, p. 1
Nyce, Charles.
2007

169
[4]
https://he.wikipedia.org/wiki/‫הורדת_ממד‬

[5]
Data Preparation in the Analytical Life Cycle - Part 1
By Ivor G. Moan on Hidden Insights 3.
December 2018

[6]
● Algorithms for Item Categorization Based on Ordinal Ranking Data
Josh Girson, Shuchin Aeron, Tufts University, Medford, MA,29
September 2016
● Weighted k-Nearest-Neighbor Techniques and Ordinal Classification
Sonderforschungsbereich 386, Paper 399
2004

[7]
Primavera Analytics Planning and Sizing Guide
15.1.2015

170
‫נספחים‬ ‫‪13‬‬

‫נספח ‪ – 1‬תכנית בדיקות מערכת ‪STP – System Test Plan -‬‬ ‫‪13.1‬‬
‫מס‬
‫תוצאה צפויה‬ ‫פעולה‬ ‫נתוני קלט‬ ‫סעיף בדיקה‬ ‫שם הבדיקה‬
‫'‬
‫טעינת נתונים‬ ‫‪‬‬
‫למערכת‬
‫המידע נטען‬ ‫‪‬‬
‫הפעלת חבילות‬ ‫‪‬‬ ‫בדיקה‬
‫יצירת טבלאות‬ ‫‪‬‬ ‫פונקציונאלית‬
‫הטבלה נוצרה‬ ‫‪‬‬ ‫אינטגרציית‬ ‫קיימות ותקינות‬
‫חדשות‬ ‫של תהליכי‬
‫נתונים (‪)SSIS‬‬ ‫תהליכי אחסון‬ ‫‪1‬‬
‫המידע הועתק‬ ‫‪‬‬ ‫אחסון‬
‫העברת נתונים‬ ‫‪‬‬ ‫ושליפה‬
‫הפעלת‬ ‫‪‬‬ ‫ושליפת‬
‫הפונקציה‬ ‫‪‬‬ ‫ממקור למקור‬
‫פרוצדורות ‪SQL‬‬ ‫נתונים‪.‬‬
‫קיימת‬
‫הפעלת‬ ‫‪‬‬
‫פרוצדורות‬
‫המדדים‬ ‫‪‬‬
‫מתנהגים‬
‫באופן זהה‬
‫עבור מקורות‬
‫מידע זהים‬ ‫הרצת תהליכי חישוב‬ ‫פונקציונאליות‬
‫רשימת מדדי ביצוע‬
‫ולהיפך‬ ‫(מספר פעמים) מדדי‬ ‫בדיקת מהימנותם‬ ‫עסקית‪-‬‬
‫לבדיקה תוך הפעלת‬ ‫‪2‬‬
‫הביצוע על מספר‬ ‫של מדדי הביצוע‬ ‫בדיקת מדדי‬
‫המדדים‬ ‫‪‬‬ ‫תהליכי חישוב המדדים‬
‫מקורות מידע שונים‬ ‫הביצוע ‪Kpi’s‬‬
‫משקפים את‬
‫תמונת המצב‬
‫האמיתית של‬
‫הנתונים‬

‫המודלים‬ ‫‪‬‬ ‫הרצת האלגוריתמים‬ ‫רשימת מודלי החיזוי‬ ‫פונקציונאליות בדיקת מהימנותם‬ ‫‪3‬‬
‫מתנהגים‬ ‫(על נתוני "אימון" ונתוני‬ ‫לבדיקה תוך הפעלת‬ ‫של מודלי החיזוי‬ ‫עסקית‪-‬‬
‫באופן זהה‬ ‫"בדיקה") ובדיקת‬ ‫תהליכי הרצת‬ ‫בדיקת מודלי‬
‫עבור מקורות‬ ‫עקביות התוצאות‬ ‫האלגוריתמים‬ ‫החיזוי‬
‫מידע זהים‬ ‫המתקבלות‬
‫ולהיפך‬
‫המדדים‬ ‫‪‬‬
‫משקפים את‬
‫תמונת המצב‬
‫האמיתית של‬

‫‪171‬‬
‫הנתונים‬
‫הפלטים‬ ‫‪‬‬ ‫הפעלת אובייקטים‬
‫תוצאות מבסיס הנתונים‬ ‫בדיקת תקינותם‬
‫הוויזואליים‬ ‫ויזואליים על בסיס‬
‫להצגה ויזואלית‪ .‬לרבות‪,‬‬ ‫של תוצרי‬ ‫בדיקות‬
‫מייצגים את‬ ‫הנתונים ובדיקתם‬ ‫‪4‬‬
‫מדדי הביצוע ותוצאות‬ ‫הוויזואליזציה‬ ‫ויזואליזציה‬
‫התוצאות‬ ‫בהתאם למפתח נתונים‬
‫מודלי החיזוי‬ ‫ותאימותם לנתונים‬
‫נכונה‬ ‫רצוי‬

‫בדיקת שילוב כל‬


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

‫הצגת מודולים‬ ‫‪‬‬


‫אחרים ממה‬
‫שהוגדרו שיוצגו‬ ‫עמידה בתנאי‬
‫לכל משתמש‬ ‫גישה לבסיס הנתונים וכן‬
‫אבטחה של‬
‫המערכת תחסום גישה‬ ‫הגדרת הרשאות עבור‬ ‫בדיקות‬
‫ניסיון של‬ ‫‪‬‬ ‫התאגיד וכן‬ ‫‪8‬‬
‫ותוציא הודעת שגיאה‬ ‫פונקציות וטבלאות‬ ‫אבטחה‬
‫מחיקת‬ ‫אבטחת בסיס‬
‫שונות‪.‬‬
‫טבלאות\הוספת‬ ‫הנתונים‬
‫טבלאות\שינוי‬
‫טבלאות‬

‫‪172‬‬
‫נספח ‪ – 2‬תכנית בדיקות מערכת ‪STR – Software Test Results -‬‬ ‫‪13.2‬‬

‫תוצאה‬ ‫שם הבדיקה‬ ‫מספר‬


‫בדיקה‬
‫המידע נטען‪.‬‬ ‫‪‬‬ ‫קיימות ותקינות תהליכי אחסון‬ ‫‪1‬‬
‫הטבלה נוצרה‪.‬‬ ‫‪‬‬ ‫ושליפה‬
‫המידע הועתק‪.‬‬ ‫‪‬‬
‫הפונקציה קיימת‪.‬‬ ‫‪‬‬
‫עבור מידע זהה‪ ,‬התקבלו תוצאות זהות ולהיפך‬ ‫‪‬‬ ‫בדיקת מהימנותם של מדדי‬ ‫‪2‬‬
‫המדדים מחשבים את התוצאות בצורה נכונה‪,‬‬ ‫‪‬‬ ‫הביצוע‬
‫מתקבלים פלטים המייצגים את המצב הקיים‬
‫עבור מידע זהה‪ ,‬התקבלו תוצאות זהות ולהיפך‬ ‫‪‬‬ ‫בדיקת מהימנותם של מודלי‬ ‫‪3‬‬
‫המדדים מחשבים את התוצאות בצורה נכונה‪,‬‬ ‫‪‬‬ ‫החיזוי‬
‫מתקבלים פלטים המייצגים את המצב הקיים‬
‫בחירת שדה ב‪ -Dashboard‬מציגה תוצאות‬ ‫‪‬‬ ‫בדיקת תקינותם של תוצרי‬ ‫‪4‬‬
‫שתואמות בדיוק את המידע המוצג בבסיס הנתונים‪.‬‬ ‫הוויזואליזציה ותאימותם לנתונים‪.‬‬

‫הרצת חבילת העבודה הושלמה בהצלחה‪.‬‬ ‫‪‬‬ ‫בדיקת שילוב כל מודולי המערכת‬ ‫‪5‬‬
‫והשפעתם אחד על השני‪.‬‬

‫‪173‬‬
‫נספחים שאלת חיזוי ציון בית חולים‬ 13.3
:‫טבלת הסברים על המדדים‬
Table measure_id measure_name
Rate of complications for hip/knee replacement
COMP_HIP_KNEE patients
MORT_30_AMI Death rate for heart attack patients
MORT_30_CABG Death rate for CABG surgery patients
MORT_30_COPD Death rate for COPD patients
MORT_30_HF Death rate for heart failure patients
MORT_30_PN Death rate for pneumonia patients
MORT_30_STK Death rate for stroke patients
Postoperative Acute Kidney Injury Requiring
PSI_10_POST_KIDNEY Dialysis Rate
PSI_11_POST_RESP Postoperative Respiratory Failure Rate
PSI_12_POSTOP_PULMEMB_DVT Serious blood clots after surgery
Complication and death
PSI_13_POST_SEPSIS Blood stream infection after surgery
A wound that splits open after surgery on the
PSI_14_POSTOP_DEHIS abdomen or pelvis
Accidental cuts and tears from medical
PSI_15_ACC_LAC treatment
PSI_3_ULCER Pressure sores
Deaths among Patients with Serious Treatable
PSI_4_SURG_COMP Complications after Surgery
PSI_6_IAT_PTX Collapsed lung due to medical treatment
PSI_8_POST_HIP Broken hip from a fall after surgery
PSI_90_SAFETY Serious complications
PSI_9_POST_HEM Perioperative Hemorrhage or Hematoma Rate
condition/procedure-specific 30-day risk-
READM-30-AMI-HRRP standardized unplanned readmission measures
in the program: Acute Myocardial Infarction
condition/procedure-specific 30-day risk-
READM-30-CABG-HRRP standardized unplanned readmission measures
in the program: Coronary Artery Bypass Graft
condition/procedure-specific 30-day risk-
Readmission standardized unplanned readmission measures
READM-30-COPD-HRRP in the program: Chronic Obstructive Pulmonary
Disease
condition/procedure-specific 30-day risk-
READM-30-HF-HRRP standardized unplanned readmission measures
in the program: Heart Failure

READM-30-HIP-KNEE-HRRP condition/procedure-specific 30-day risk-


standardized unplanned readmission measures
174
in the program: Elective Primary Total Hip
Arthroplasty and/or Total Knee Arthroplasty
condition/procedure-specific 30-day risk-
READM-30-PN-HRRP standardized unplanned readmission measures
in the program: Pneumonia
effective_and_time Average (median) time patients spent in the
emergency department, after the doctor
decided to admit them as an inpatient before
leaving the emergency department for their
inpatient room A lower number of minutes is
ED_2b better
EDV Emergency department volume
IMM_3 Healthcare workers given influenza vaccination
Average (median) time patients spent in the
emergency department before leaving from the
OP_18b visit A lower number of minutes is better
Average (median) time patients spent in the
emergency department before leaving from the
visit- Psychiatric/Mental Health Patients.  A
OP_18c lower number of minutes is better
Fibrinolytic Therapy Received Within 30 Minutes
OP_2 of ED Arrival
OP_22 Left before being seen
OP_23 Head CT results
Endoscopy/polyp surveillance: appropriate
follow-up interval for normal colonoscopy in
OP_29 average risk patients
Endoscopy/polyp surveillance: colonoscopy
interval for patients with a history of
adenomatous polyps - avoidance of
OP_30 inappropriate use
Improvement in Patient's Visual Function within
OP_31 90 Days Following Cataract Surgery
External Beam Radiotherapy for Bone
OP_33 Metastases
Median Time to Transfer to Another Facility for
OP_3b Acute Coronary Intervention
PC_01 Elective Delivery
Appropriate care for severe sepsis and septic
SEP_1 shock
SEP_SH_3HR Septic Shock 3-Hour Bundle
SEP_SH_6HR Septic Shock 6-Hour Bundle

175
SEV_SEP_3HR Severe Sepsis 3-Hour Bundle
H_COMP_7_STAR_RATING Care transition - star rating
H_CLEAN_STAR_RATING Cleanliness - star rating
H_COMP_5_STAR_RATING Communication about medicines - star rating
H_COMP_6_STAR_RATING Discharge information - star rating
H_COMP_2_STAR_RATING Doctor communication - star rating
patient_survey H_COMP_1_STAR_RATING Nurse communication - star rating
H_HSP_RATING_STAR_RATING Overall hospital rating - star rating
H_QUIET_STAR_RATING Quietness - star rating
H_RECMND_STAR_RATING Recommend hospital - star rating
H_COMP_3_STAR_RATING Staff responsiveness - star rating
H_STAR_RATING Summary star rating
.9 ‫ שאלת מחקר‬.‫ טבלת הסברים על המדדים‬- 9 ‫טבלה‬

‫נספחים שאלת חיזוי‬ 13.4


‫כמות אנשי צוות לעומת הכנסה נקייה‬

.9 ‫ שאלת מחקר‬.‫ כמות אנשי צוות לעומת הכנסה נקייה‬-15 ‫גרף‬

‫מספר מיטות לעומת הכנסה נקייה‬

176
‫גרף ‪-16‬מספר מיטות לעומת הכנסה נקייה שאלת מחקר ‪.9‬‬

‫סוג אחזקת בי"ח והכנסה נקייה‪:‬‬

‫גרף ‪-17‬סוג אחזקת בי"ח והכנסה נקייה‪ .‬שאלת מקחר ‪.9‬‬

‫מספר מטופלים לעומת הכנסה נקייה‪:‬‬

‫‪177‬‬
‫גרף ‪-18‬מספר מטופלים לעומת הכנסה נקייה‪ .‬שאלת מחקר ‪.9‬‬

‫‪178‬‬
‫בית חולים כפרי\עירוני לעומת הכנסה נקייה‪:‬‬

‫גרף ‪- 19‬בית חולים כפרי\עירוני לעומת הכנסה נקייה‪ .‬שאלת מחקר ‪.9‬‬

‫מספר התמחויות לעומת הכנסה נקייה‪:‬‬

‫גרף ‪-20‬מספר התמחויות לעומת כנסה נקייה‪ .‬שאלת מחקר ‪.9‬‬

‫מדינה לעומת הכנסה נקייה‪:‬‬

‫גרף ‪-21‬מדינה לעומת כנסה נקייה‪ .‬שאלת מחקר ‪.9‬‬

‫‪179‬‬
‫סוג הספק והכנסה נקייה‪:‬‬

‫גרף ‪-22‬סוג הספק כנסה נקייה‪ .‬שאלת מחקר ‪.9‬‬

‫תוצאות שאר המודלים‪:Decision Tree :‬‬

‫איור ‪ - 83‬תוצאות שאר המודלים‪.Decision Tree :‬‬

‫‪180‬‬
‫תוצאות שאר המודלים‪:- Decision tree Adaboost :‬‬

‫איור ‪-84‬תוצאות שאר המודלים‪.Decision tree Adaboost :‬‬

‫תוצאות שאר המודלים ‪:Random forest‬‬

‫איור ‪ - 85‬תוצאות שאר המודלים ‪.Random forest‬‬

‫‪181‬‬
‫נספחים שאלת מדדים בתי חולים‬ ‫‪13.5‬‬

‫רמת נקיון‪-‬ומספר התמחויות‬ ‫רמת יכולת שינוע‪-‬ומספר התמחויות‬

‫‪182‬‬
‫רמת מידע על חיובים‪-‬ומספר התמחויות‬ ‫רמת מידע על תרופות‪-‬ומספר התמחויות‬

‫רמת תקשורת רופאים‪-‬ומספר התמחויות‬


‫רמת תקשורת אחיות‪-‬ומספר התמחויות‬

‫רמת הרעש ‪-‬ומספר התמחויות‬


‫רמת בית חולים מומלץ‪-‬ומספר התמחויות‬

‫רמת שירות אנשי הצוות‪-‬ומספר התמחויות‬


‫רמה כללית ‪-‬ומספר התמחויות‬

‫תוצאות מובהקות של המבחנים הסטטיסטיים‪:‬‬


‫רמת ניקיון‬

‫‪183‬‬
‫טבלה ‪ - 10‬רמת ניקיון‪.‬‬

‫תקשורת על תרופות‬

‫טבלה ‪-11‬תקשורת על תרופות‪.‬‬

‫מידע על חיובים‬

‫‪184‬‬
‫טבלה ‪-12‬מידע על חיובים ‪.‬‬

‫תקשורת רופאים‬

‫טבלה ‪-13‬תקשורת רופאים‪.‬‬

‫תקשורת אחיות‬

‫‪185‬‬
‫טבלה ‪-14‬תקשורת אחיות‪.‬‬

‫‪186‬‬
‫מדד רעש‬

‫טבלה ‪-15‬מדד רעש‪.‬‬

‫שירות אנשי הצוות‬

‫טבלה ‪-16‬שירות אנשי הצוות‪.‬‬

‫‪187‬‬
‫מדד כללי‬

‫טבלה ‪-17‬מדד כללי‪.‬‬

‫מדד שינוע‬

‫טבלה ‪-18‬מדד שינוע‪.‬‬

‫‪188‬‬
‫מטריצות בלבול למודלים שונים ומשתנים שונים‬

‫מידע על חיובים‬

‫איור ‪.Neural net -87‬‬ ‫איור ‪.Rnf -86‬‬

‫איור ‪.Voting -88‬‬


‫איור ‪.Knn -89‬‬

‫‪189‬‬
‫איור ‪.stocking -90‬‬

‫תקשורת רופאים‬

‫איור ‪.Neural net -91‬‬


‫איור ‪.Rnf -92‬‬

‫‪190‬‬
.Voting -93 ‫איור‬

.Knn -94 ‫איור‬

191

.Stocking -95 ‫איור‬


‫תקשורת אחיות‬

‫איור ‪ .Rnf -97‬תקשורת אחיות‪.‬‬ ‫איור ‪ .Neural net -96‬תקשורת אחיות‪.‬‬

‫איור ‪.Voting -98‬תקשורת אחיות‪.‬‬


‫איור ‪ .Knn -99‬תקשורת אחיות‪.‬‬ ‫‪192‬‬
‫‪.‬תקשורת אחיות ‪ 100-stocking.‬איור‬

‫‪193‬‬
‫מדד שינוע‬

‫איור ‪ .Neural net -101‬מדד שינוע‪.‬‬


‫איור ‪ .Rnf - 102‬מדד שינוע‪.‬‬

‫‪194‬‬
‫איור ‪ .Voting -103‬מדד שינוע‪.‬‬
‫איור ‪ .Knn -104‬מדד שינוע‪.‬‬

‫איור ‪ .stocking -105‬מדד שינוע‪.‬‬


‫מדד המלצה על בית חולים‬

‫‪195‬‬
‫איור ‪ .Rnf -106‬מדד המלצה‪.‬‬ ‫איור ‪ .Neural net -107‬מדד המלצה‪.‬‬
‫איור ‪.stocking -110‬מדד המלצה‪.‬‬

‫‪196‬‬

You might also like