JoVE Logo

Sign In

A subscription to JoVE is required to view this content. Sign in or start your free trial.

In This Article

  • Summary
  • Abstract
  • Introduction
  • Protocol
  • תוצאות
  • Discussion
  • Disclosures
  • Acknowledgements
  • Materials
  • References
  • Reprints and Permissions

Summary

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

Abstract

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

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

השיטה מצריכה רכישת ופרישה של נתונים קליניים, דמוגרפי, הדמיה N בחולים שעברו כבר טיפולים הטרנס-עורקים. נתונים אלה הינם מנותח אל תכונות דיסקרטית (גיל, מין, שחמת, דרגת הגידול שיפור, וכו '), binarized לתוך ערכי true/false (למשל, גיל מעל 60, המגדר הגברי, שיפור הגידול מעבר קביעת הסף, וכו '). תכונות נמוך-סטיה ותכונות עם עמותות univariate נמוך עם התוצאה יוסרו. כל מטופל שטופלו נקראת על פי אם הם הגיבו או לא הגיב לטיפול. כל מטופל הכשרה ובכך מיוצג על ידי קבוצה של תכונות בינארי ותווית התוצאה. מכונת למידה מודלים מאומנים באמצעות N - 1 חולים עם בדיקות על המטופל שמאל-אאוט. תהליך זה חוזר על עצמו עבור כל המטופלים N . חישוב הממוצע הדגמים N כדי להגיע למודל הסופי.

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

Introduction

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

הפרוטוקול מצריכה תהליך לשחזור עבור הדרכת ועדכון מודל החל מנתונים עיקריים החולה (הערות קליני, דמוגרפיה, נתוני מעבדה, הדמיה). הנתונים בתחילה מנותח לתכונות מסוימות, עם כל מטופל המיוצג על-ידי קבוצת תכונות בינארי, תווית היעד תוצאה בינארית. התווית התוצאה נקבעת באמצעות קריטריון הוקמה תגובה מבוססת-הדמיה של hepatocellular טיפול4,5,6,7. תכונות והתוויות היעד מועברים לתוכנה למידה מכונת לומד את המיפוי בין תכונות ותוצאות תחת ספציפי של למידה מודל (רגרסיה לוגיסטית או יער אקראי)8,9,10. טכניקות דומות הוחלו רדיולוגיה ובאזורים אחרים לחקר הסרטן עבור אבחון וטיפול חיזוי11,12,13.

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

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

Protocol

1. תחנת עבודה ההתקנה עבור למידה חישובית

  1. להשתמש במערכת בפריטים הבאים:
    Intel Core 2 Duo או CPU גבוה יותר ב- 2.0 ג'יגה-הרץ
    4 ג'יגה-בתים או יותר של זיכרון מערכת
    תואם POSIX מערכת ההפעלה (לינוקס או Mac OS) או Microsoft Windows 7
    הרשאות משתמש עבור הרצת תוכנות ושמירה של הקבצים
  2. התקן את הכלים הבאים:
    אנקונדה Python3: https://www.anaconda.com/download
    DICOM ממיר NIfTI (dcm2niix) - https://github.com/rordenlab/dcm2niix
    עורך טקסט הנשגב: https://www.sublimetext.com/
    itk-SNAP (אופציונלי): http://www.itksnap.org
    1. להתקין Python3 אנקונדה, dcm2nii וטקסט הנשגב, בקר שלהם אתרי אינטרנט בהתאמה עבור שלבי ההתקנה הספציפי של מערכת ההפעלה.
    2. ליצור ולהפעיל סביבה אנקונדה.
      conda צור - שם mlenv
      conda להפעיל את mlenv
    3. התקנת חבילות אנקונדה למידה חישובית.
      conda להתקין numpy scipy scikit-ללמוד nltk nibabel
      הערה: החבילה nltk שימושית עבור פרישת הערות קליניים בטקסט רגיל, ואילו החבילה nibabel מספק פונקציות שימושיות עבור מניפולציה תמונה רפואית. ניתן להתקין itk-SNAP ולהפרדת איברים וגידולים מתמונות רפואי. זה שימושי עבור תכונות מגבילה לאזורים ספציפיים.

2. הדמיה הערות קליניים בטקסט רגיל, נתונים קליניים מובנים

  1. ליצור ספריה האב עבור הפרוייקט וליצור תיקיה עבור כל מטופל בתוך תיקיית האב. מבנה הספריות צריך דומה:
    פרוייקט /
    פרוייקט/Patient_1 /
    פרוייקט/Patient_2 /
    פרוייקט/Patient_3 /
    ...
  2. לקבל טקסט רגיל הערות קליניים מהרשומה הרפואית אלקטרונית (אלקטרומגנטית). לאחזר הערות באופן ידני דרך של EMR או על-ידי המשרד טכנולוגיות (IT) מידע חולים דרך מזבלה-נתונים. אחסן ההערות של כל מטופל בתיקיות המתאימות שלהם.
    Project/Patient_1/History_and_Physical.txt
    Project/Patient_1/Procedure_Note.txt
    1. החליט אילו תכונות קליני כדי לכלול במודל. לנתח את ההערות מרפאת בטקסט רגיל עבור תכונות אלה. הספרייה פייתון שפה טבעית Toolkit (nltk) מספק פקודות שימושיות עבור פיצול מסמכים לתוך משפטים. ניתן לחפש מידע בכל משפט המתאים לתנאי כגון צהבת. חנות תכונות של כל מטופל קובץ עם תכונה אחת בכל שורה.
      Project/Patient_1/Features.txt:
      גיל 67
      מין זכר
      אלבומין 3.1
      . לא זה קשה וחיוור.
      hepatitis_c אין
      ...
    2. עבור תכונות שאינו בינארי, לקחת את הערך החציוני של כל תכונה על פני כל המטופלים. Binarize כל תכונה true(1) או false(0) כערך המבוסס על הערך החציוני.
      Project/Patient_1/Binary_Features.txt:
      age_over_60 0
      male_sex 1
      albumin_less_than_3.5 1
      presence_of_cirrhosis 0
      hepatitis_c 0
      ...

3. הדמיה רפואית תמונות

הערה: ראה שלב 3 חומרים משלימים עבור דוגמאות קוד.

  1. הורד טרום טיפול פוסט-תהודה מגנטית DICOM תמונות מבית החולים. המשלוח מהשקם הגיע. לאחסן תמונות בתיקיות המתאימות החולה.
    פרוייקט /
    Project/Patient_1/Pre_TACE_MRI_Pre-Contrast.dcm
    Project/Patient_1/Pre_TACE_MRI_Arterial.dcm
    Project/Patient_1/Post_TACE_MRI_Pre-Constrast.dcm
    Project/Patient_1/Post_TACE_MRI_Arterial.dcm
  2. להמיר תמונות DICOM לפורמט NIfTI באמצעות תוכנית dcm2niix. הפקודות הבאות ממירה את כל התמונות .dcm בתיקייה שצוינה. חזור על כל המטופלים.
    dcm2niix פרוייקט/Patient_1 /
    dcm2niix פרוייקט/Patient_2 /
  3. לטעון כל קובץ NIfTI לתוך פייתון.
    ייבוא nibabel
    תמונה = nibabel.load('Project/Patient_1/Pre_TACE_MRI_Pre-Contrast.dcm')
    1. קנונליזציה הכיוון של כל תמונה. פעולה זו מבטיחה כי x, y ו- z הם זהים, ללא קשר המכונה נהגה לרכוש את התמונות.
      cImage = nibabel.as_closest_canonical(image)
  4. השתמש itk-SNAP (או חבילת תוכנה מקבילה) כדי לחלק מסכות הכבד ואת הגידול בינאריים עבור כל תמונה.
    Project/Patient_1/Pre_TACE_MRI_Pre-Contrast_Liver_Mask.bin
    Project/Patient_1/Pre_TACE_MRI_Pre-Contrast_Tumor_Mask.bin
  5. קרא את המסכות הכבד ואת הגידול לתוך פייתון. הקוד שלהלן מדגים כיצד לתקן בעיות התמצאות על מנת אוריינט המסכות לאורך הצירים הקנוני אותם כתמונות מר.
    לייבא numpy np
    עם פתח (liver_mask_file, 'rb') כ- f:
    liver_mask = f.read()
    liver_mask = np.fromstring (liver_mask, dtype = 'uint8')
    liver_mask = np.reshape (liver_mask, diff.shape, הזמנת = 'F')
    liver_mask = liver_mask [:,::-1,:]
    liver_mask [liver_mask > 0] = 1
    1. השתמש המסכות הכבד ואת הגידול כדי לבודד voxels המכיל הכבד ואת הגידול.
      כבד = np.copy(cImage)
      הכבד [liver_mask < = 0] = 0
  6. לחשב תכונה רעה שיפור בכבד.
    mean_liver_enhancement = mean(liver)
    1. חישוב נפח כבד תכונה.
      pixdim = cImage.header['pixdim']
      יחידות = pre.header['xyzt_units']
      dx, dy, ובמטוס = pre_pixdim [1:4]
      liver_volume = length(liver) * dx * dx * dz
    2. (אופציונלי) לחשב תכונות נוספות לפי הצורך.
  7. עדכון קובץ התכונות הספציפיות להחולה עם תכונות התמונה.
    Project/Patient_1/Features.txt:
    גיל 67
    מין זכר
    אלבומין 3.1
    . לא זה קשה וחיוור.
    hepatitis_c אין
    pre_tace_mean_liver_enhancement 78
    pre_tace_liver_volume 10000
    1. לחשב ערכים עבור כל תכונה הדמיה, binarize כמו שלב 2.2.2.
      Project/Patient_1/Binary_Features.txt:
      age_over_60 0
      male_sex 1
      albumin_less_than_3.5 1
      presence_of_cirrhosis 0
      hepatitis_c 0
      pre_tace_mean_liver_enhancement 1
      pre_tace_liver_volume 0

4. כוללים צבירה וצמצום

הערה: ראה שלב 4 חומרים משלימים עבור דוגמאות קוד.

  1. לשלב את הקבצים Binary_Features.txt עבור כל מטופל לתוך גיליון אלקטרוני עם חולים על ציר ה-y ותכונות בציר ה-x.
    החולהגיל > 60המין הגבריאלבומין < 3.5נוכחות של שחמתהפטיטיס C הנוכחיכלומר שיפור בכבד > 50נפח כבד > 20000
    10110010
    21110000
    30110100
    1. להוסיף qEASL תוצאות התגובה תוויות העמודה האחרונה.
      החולהגיל > 60המין הגבריאלבומין < 3.5נוכחות של שחמתהפטיטיס C הנוכחיכלומר שיפור בכבד > 50נפח כבד > 20000qEASL המשיב
      101100101
      211100001
      301101000
    2. ייצוא הגיליון האלקטרוני כקובץ המופרד באמצעות טאבים.
      Project/ML_Matrix.tsv:
      PatientAge > 60 אלבומין המין הגברי < 3.5 נוכחות של שחמת הכבד הפטיטיס C הנוכחי אומר שיפור בכבד > 50 נפח כבד > 20000 qEASL המשיב
      1 0 1 1 0 0 1 0 1
      2 1 1 1 0 0 0 0 1
      3 0 1 1 0 1 0 0 0
  2. הסר תכונות נמוך-סטיה שיקול.
    לייבא numpy np
    ייבא sklearn.feature_selection VarianceThreshold

    קיראי המטריצה בינארי.
    תכונות =]
    תוויות =]
    כי אני, אני ב enumerate(sys.stdin):
    אם אני = = 0
    המשך
    n_fs_L = L.strip().split('\t')
    features.append([float(_) עבור _ ב- n_fs_L[1:-1]])
    labels.append(n_fs_L[-1])
    X = np.array(features)
    y = np.array(labels)

    # לחשב תכונות המופיעים לפחות 20% מהנשאלים והן הלא-respnders.
    מודל = VarianceThreshold (סף = 0.8 * (1 - 0.8))
    X_new = model.fit_transform (X, y)
    המין הגברי, אלבומין < 3.5, נוכחות של שחמת ותכונות הכבד נפח > 2000 הוסרו.
    החולהגיל > 60הפטיטיס C הנוכחיכלומר שיפור בכבד > 50qEASL המשיב
    10011
    21001
    30100
  3. הסר תכונות univariate נמוך-עמותת עם התוצאה. לסנן רק תכונות אלה שעברו 4.2. שומרים על תכונות (יומן2(N)), כאשר N הוא מספר המטופלים סיל. סיל (יומן2(3)) = 2.

    ייבוא מתמטיקה
    ייבא sklearn.feature_selection SelectKBest
    מ sklearn.feature_selection יבא chi2

    קיראי המטריצה בינאריים כמו 4.2.1
    ...

    # לחשב תכונות ceil(log2(N)) העליון על ידי איגוד univariate.
    k = math.ceil(log2(length(y)))
    מודל = SelectKBest (chi2, k = k)
    X_new = model.fit_transform (X, y)

    התכונה > 60 גיל המין הגברי הוסר מן התכונות הנותרות מ 4.2.1.
החולההפטיטיס C הנוכחיכלומר שיפור בכבד > 50qEASL המשיב
1011
2001
3100

5. מודל הדרכה ובדיקות

ראה חומרים משלים שלב 5 דוגמאות קוד

  1. הרכבת מודל רגרסיה לוגיסטית באמצעות מטריקס כולל בינארי מ- 4.3.
    ייבוא מתמטיקה
    ייבא sklearn.linear_model LogisticRegression

    קיראי המטריצה בינאריים כמו 4.2 ו- 4.3.
    ...

    # עבור כל מטופל, הרכבת דוגמנית על כל חולים אחרים.
    התוצאה = 0.0
    מודלים =]
    עבור מטופל ב len(X):
    # הרכבת הדגם על כל פרט אחד המטופלים.
    train_x = np.array ([_ כי אני, _ ב enumerate(X) if i! = החולה])
    train_y = np.array ([_ כי אני, _ ב enumerate(y) if i! = החולה])
    מודל = LogisticRegression(C=1e15)
    model.fit (train_x, train_y)

    # מבחן על המטופל שמאל-אאוט.
    y_prediction = model.predict(X[patient])
    אם y_prediction = = y [החולה]:
    ניקוד + = 1
    models.append(model)
  2. הרכבת דגם יער אקראית באמצעות מטריקס כולל בינארי של 4.2.2. השלבים זהים 5.2.1, אלא יש לעדכן את הנזק דגם כדלקמן:
    ייבא sklearn.ensemble RandomForestClassifier
    ...
    מודל = RandomForestClassifier(n_estimators=100)
    ...
  3. להדפיס את הציון / לן (X) עבור 5.1 ו- 5.2. זה מייצג את הדיוק הממוצע של כל הדגמים רגרסיה לוגיסטית, כל הדגמים יער אקראי, בהתאמה. כל הדגמים N צריך להיות מוחל על חולים חדשים עם הסיווג הממוצע נלקח כפועל יוצא חיזוי

תוצאות

השיטה המוצעת הוחל על-36 מטופלים שעברו טיפולים הטרנס-עורקים קרצינומה hepatocellular יסודי. עשרים וחמש תכונות זוהו, binarized באמצעות צעדים 1-5. חמש תכונות מרוצה השונות והן univariate האגודה מסננים (ראה שלבים 5.1 ו- 5.2), שימשו מודל אימון. כל מטופל סומן כמו המגיב או הלא-למגיב תחת הקריטריונים תגובה...

Discussion

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

Disclosures

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

ג מקבל דמי אישי Guerbet בריאות, BTG, סף תרופות (סן פרנסיסקו, קליפורניה), בוסטון סיינטיפיק, Terumo (Elkton, מרילנד); וכולל ייעוץ בתשלום עבור מעבדות ידיעה מוקדמת (בווסטפורט, קונטיקט).

אף אחד המחברים אחרים זיהו ניגוד אינטרסים.

Acknowledgements

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

L.J.S. מקבל מענקים של המכון הלאומי לבריאות (NIH/NCI R01CA206180), Leopoldina בתר, קרן Guenther וו רולף למדעים רדיולוגי (אאכן, גרמניה).

ג'יי מקבל מענקים של המכון הלאומי לבריאות (NIH/NCI R01CA206180), פיליפס בריאות, קרן גרמניה-ישראל למחקר מדעי ופיתוח (ירושלים, ישראל, Neuherberg, גרמניה); מלגות מטעם קרן רולף Guenther וו של מדעים רדיולוגי Charite ברלין המכון של בריאות מדען התוכנית הקלינית (ברלין, גרמניה).

הדוקטור שלו, מ. ל מקבלים מענקים במכון הלאומי לבריאות (NIH/NCI R01CA206180) ובריאות פיליפס (הכי טוב, הולנד).

ג מקבל מענקים מן המכון הלאומי לבריאות (NIH/NCI R01CA206180), פיליפס בריאות, BTG (לונדון, אנגליה), בוסטון סיינטיפיק (מרלבורו, מסצ'וסטס), Guerbet שירותי בריאות (Villepinte, צרפת)

Materials

NameCompanyCatalog NumberComments
Computer workstationN/AN/AIntel Core 2 Duo or higher CPU at 2.0 GHz; 4 GB or more system memory; POSIX-compliant operating system (Linux or Mac OS) or Microsoft Windows 7; User permissions for executing programs and saving files
Anaconda Python 3Anaconda, Inc.Version 3.6Python 3 system and libraries packaged for scientists and researchers
DICOM to NIfTINeuroImaging Tools & Resources CollaboratoryVersion 1.0 (4/4/2018 release)Standalone program for converting DICOM imaging files to NIfTI format
Sublime Text EditorSublime HQ Pty LtdVersion 3 (Build 3143)Text-editor for writing Python code
Required Python LibrariesN/AVersion 3.2.25 (nltk)
Version 0.19.1 (scikit-learn)
Natural Language Toolkit (nltk)
Scikit-learn
ITK-SNAPN/AVersion 3.6.0Optional toolkit for performing segmentation of organ systems in medical images.

References

  1. Benson, A., et al. NCCN clinical practice guidelines in oncology: hepatobiliary cancers. J National Comprehensive Cancer Network. 7 (4), 350-391 (2009).
  2. Siegel, R., Miller, K., Jemal, A. Cancer statistics, 2016. CA Cancer J Clin. 66 (1), 7-30 (2016).
  3. Bruix, J., et al. Clinical management of hepatocellular carcinoma. Conclusions of the Barcelona-2000 European Association for the Study of the Liver conference. Journal of Hepatology. 35 (3), 421-430 (2001).
  4. Eisenhauer, E., et al. New response evaluation criteria in solid tumours: revised RECIST guideline (version 1.1). European Journal of Cancer. 45 (2), 228-247 (2009).
  5. Gillmore, R., et al. EASL and mRECIST responses are independent prognostic factors for survival in hepatocellular cancer patients treated with transarterial embolization. Journal of Hepatology. 55 (6), 1309-1316 (2011).
  6. Lin, M., et al. Quantitative and volumetric European Association for the Study of the Liver and Response Evaluation Criteria in Solid Tumors measurements: feasibility of a semiautomated software method to assess tumor response after transcatheter arterial chemoembolization. Journal of Vascular and Interventional Radiology. 23 (12), 1629-1637 (2012).
  7. Tacher, V., et al. Comparison of Existing Response Criteria in Patients with Hepatocellular Carcinoma Treated with Transarterial Chemoembolization Using a 3D Quantitative Approach. Radiology. 278 (1), 275-284 (2016).
  8. Pedregosa, F., et al. Scikit-learn: Machine Learning in Python. Journal of Machine Learning Research. 12, 2825-2830 (2011).
  9. Bishop, C. . Pattern recognition and machine learning. , 738 (2006).
  10. Alpaydin, E. . Introduction to machine learning. Third edition. , 613 (2014).
  11. Kim, S., Cho, K., Oh, S. Development of machine learning models for diagnosis of glaucoma. PLoS One. 12 (5), (2017).
  12. Son, Y., Kim, H., Kim, E., Choi, S., Lee, S. Application of support vector machine for prediction of medication adherence in heart failure patients. Healthcare Informatics Research. 16 (4), 253-259 (2010).
  13. Wang, S., Summers, R. Machine learning and radiology. Medical Image Analysis. 16 (5), 933-951 (2012).
  14. Abajian, A., et al. Predicting Treatment Response to Intra-arterial Therapies for Hepatocellular Carcinoma with the Use of Supervised Machine Learning-An Artificial Intelligence Concept. Journal of Vascular and Interventional Radiology. , (2018).

Reprints and Permissions

Request permission to reuse the text or figures of this JoVE article

Request Permission

Explore More Articles

140hepatocellularchemoembolization

This article has been published

Video Coming Soon

JoVE Logo

Privacy

Terms of Use

Policies

Research

Education

ABOUT JoVE

Copyright © 2025 MyJoVE Corporation. All rights reserved