Method Article

סינתזת ידע מבוססת ראיות ואימות השערות: ניווט בבסיסי ידע ביו-רפואי באמצעות בינה מלאכותית ניתנת להסבר ומערכות סוכנים

DOI:

10.3791/67525

June 13th, 2025

In This Article

Summary

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

מאמר זה מתאר RUGGED (אחזור תחת הבחנה ניתנת להסבר של מחלה מונחית גרף), המשלב הסקת מודל שפה גדול (LLM) עם Retrieval-Augmented Generation (RAG). הוא שואב ראיות ממאגרי ידע ביו-רפואיים שנאספו על ידי מומחים ופרסומים ביו-רפואיים שנבדקו על ידי עמיתים כדי לסנתז ידע חדש ממידע עדכני, לזהות תחזיות הניתנות להסבר וניתנות לפעולה, ולאתר כיוונים מבטיחים לחקירות מונעות השערות.

Abstract

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

היקף הידע הביו-רפואי, המשתרע על פני ספרות מדעית ומאגרי ידע שנאספו, מציב אתגר משמעותי לחוקרים בעיבוד, הערכה ופירוש יעיל של ממצאים. מודלים גדולים של שפה (LLMs) התגלו ככלים רבי עוצמה לניווט בנוף הידע המורכב הזה, אך עשויים לייצר תגובות הזיות. Retrieval-Augmented Generation (RAG) חיוני לזיהוי מידע רלוונטי כדי לשפר את הדיוק והאמינות. פרוטוקול זה מציג RUGGED (Retrieval Under Graph-Guided Explainable disease Distinction), זרימת עבודה מקיפה שנועדה לתמוך בשילוב ידע, להפחית הטיות ולחקור ולאמת כיווני מחקר חדשים. מידע ביו-רפואי מפרסומים ומבסיסי ידע מסונתז ומנותח באמצעות ניתוח אסוציאציות כריית טקסט ומודלים לחיזוי גרפים הניתנים להסבר כדי לחשוף קשרים פוטנציאליים בין תרופות למחלות. ממצאים אלה, יחד עם קורפוס טקסט המקור ומאגרי הידע, משולבים במסגרת המשתמשת ב-LLMs משופרים של RRAG כדי לאפשר למשתמשים לחקור השערות ולחקור את המנגנונים הבסיסיים. מקרה שימוש קליני מדגים את יכולתה של RUGGED להעריך ולהמליץ על טיפולים לקרדיומיופתיה הפרעת קצב (ACM) וקרדיומיופתיה מורחבת (DCM), ניתוח תרופות מרשם לאינטראקציות מולקולריות ויישומים חדשים פוטנציאליים. הפלטפורמה מפחיתה הזיות LLM, מדגישה תובנות מעשיות ומייעלת את החקירה של טיפולים חדשים.

Introduction

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

תהליך חקר ההשערות במפעל הביו-רפואי חיוני כדי לחשוף תלות הדדית חדשה בין מולקולה-תרופה-מחלה, העומדת בבסיס הפתוגנזה ולשחרר את הפוטנציאל הטיפולי 1,2. תהליך זה שואב ראיות מהידע הביו-רפואי הקיים, מסנתז ממצאים חדשים המבוססים על מובילים לוגיים המוטמעים בספרות שנבדקה על ידי עמיתים (למשל, >36 דוחות מ-PubMed), ומשלב ראיות שנאספו בביטחון גבוה המושרשות בבסיסי ידע ביו-רפואיים. ההתקדמות האחרונה מפחיתה את המאמץ הידני המייגע על ידי יישום כריית טקסט על קורפוס ספרות 3,4,5 וכן שימוש בניתוחים מבוססי גרפים 6,7,8,9 כדי לסנתז מידע רלוונטי ולחשוף אפיקי חקירה חדשים. למרות מאמצים אלה, הגישות הנוכחיות לרוב אינן תומכות בהבנה הקשרית עמוקה עקב נתונים מקוטעים. יתר על כן, הם חסרים את היכולת להסיק מסקנות מבוססות ראיות ולחקור באופן אינטראקטיבי השערות חדשות.

ההתפתחויות האחרונות במודלים של שפה גדולה (LLMs) שופכות אור חדש על אתגרים אלה, ומדגימות הבנה הקשרית ברמה גבוהה על ידי הכשרה על כמויות עצומות של מידע על פני דיסציפלינות מרובות 10,11,12. בתחום הביו-רפואי, LLMs הראו תפקיד מבטיח בחילוץ מידע על מטופלים13 ושאלות קליניות כלליות העונה על14,15, בעוד שיישומים בשאלות ספציפיות לתחוםהעונה על 16 וכלי עזר בטיפול קליני ראשוני17 עדיין צריכים להיחקר. מודלים אלה מציגים את היכולת לנמק ולהסיק מסקנות ממערכי נתונים מורכבים, מה שהופך אותם למתאימים פוטנציאלית לביצוע חקר השערות וסינתזת ידע. יתר על כן, דגמים מסוימים כוללים אינטראקציה דמוית צ'אט כדי למשוך משתמשים ולאפשר חקירה דינמית של נושאים, מעבר לגבולות המקובלים של מנועי חיפוש מבוססי שאילתות ומאגרי ידע18,19.

בנוסף לפוטנציאל זה, LLMs מתמודדים עם אתגרים משמעותיים, כגון הזיה אפשרית של מידע, הפגנת ביטחון לא מוצדק בהסברים שעלולים להיות לא מדויקים, חוסר יכולת פרשנות ורגישות לתוכן מוטה או בלתי הולם 20,21,22,23,24. מיושמים ישירות להנחיית קבלת החלטות קליניות, לתגובות ולתחזיות הנגזרות מ-LLM יש סיכונים גבוהים; כל טעות עלולה לגרום לניסויי מעבדה יקרים או להשפיע לרעה על מסלולי בריאות המטופל25,26. לפיכך, תגובות LLM אמינות ואמינות הן בעלות חשיבות עליונה, שכן עצותיהן חייבות להיות מושרשות היטב בראיות. בתרחישים אלה, פרשנות אינה מותרות אלא הכרח להבנה מדוע מודלים אלה מבצעים את התחזיות שהם עושים.

לשם כך, Retrieval-Augmented Generation (RAG) היא מערכת שנועדה למזער הזיות LLM, לבסס את תגובות LLM בראיות כדי לשפר את הדיוק והאמינות שלהן 27,28. גישה זו כוללת בדרך כלל אחזור של קטעי טקסט רלוונטיים, כגון שילוב LLM (למשל, ChatGPT) עם PubMed, המאפשר זיהוי של ציטוטים רלוונטיים לשאילתות משתמשים29,30. לא מוגבל לטקסט, אחזור על גרפי ידע (KGs) מראה הבטחה ביישום ל-LLMs למשימות כגון בדיקת עובדות 31,32,33, חשיבה שקופה 34,35,36, קידוד ידע37, שיפור מענה על שאלות38 והשלמת גרפי ידע39. על ידי קידוד מידע עובדתי ממקורות מאומתים, KGs משפרים את הדיוק, השקיפות והאמינות של תגובות LLM. טכניקות חיזוי קישורים בתוך גרפים אלה ממנפות למידה עמוקה כדי לזהות קשרים מוסתרים בעבר בין מולקולות, תרופות ומחלות 5,40,41. ההתקדמות האחרונה בתחזיות בינה מלאכותית הניתנות להסבר משפרת עוד יותר את השקיפות והפרשנות של משימות חיזוי קישורים אלה, ומעניקה תמיכה פוטנציאלית לפירוש השערות ביו-רפואיות כדרך בת קיימא לחקירה 42,43,44. התקדמות זו מבטיחה שהתגובות שנוצרו על ידי LLM מאוזנות ונלקחות מהראיות, מה שמגביר משמעותית את היישום שלהן ביזמות ביו-רפואית.

פרוטוקול זה מציג את RUGGED (Retrieval Under Graph-Guided Explainable disease Distinction) כזרימת עבודה נגישה ויעילה לחקירה ואימות של תובנות טיפוליות קליניות (איור 1). פרוטוקול זרימת עבודה זה ממנף את המשאבים העצומים של ספרות ביו-רפואית ומאגרי ידע עבור חילוץ ואימות של מידע רלוונטי, ומאפשר תהליכי אחזור מותאמים-שאילתות (איור 2). מודל חיזוי בינה מלאכותית הניתן להסבר משמש כדי לחשוף תובנות ניתנות לפירוש ופעולה מהידע הביו-רפואי הקיים, ובכך לשפר את השקיפות והתועלת של מודלים חיזויים. זרימת העבודה שהושלמה מייעלת את החקירה של גרפי ידע ותחזיות מודלים באמצעות LLMs התומכים ב-RAG, ומאפשרת אינטראקציות אינטואיטיביות ומושכלות עבור חוקרים, קלינאים ואנשי מקצוע קליניים.

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

Protocol

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

פרוטוקול זה פותח ב-Python 3.10 ומיושם כמיכל Docker ב-Windows. הפקודות שסופקו מבוססות על סביבת יוניקס בתוך הקונטיינר של Docker. התוכנה זמינה בכתובת https://github.com/pinglab-utils/RUGGED. טבלה 1 מציגה אומדן של זמן חישוב עבור כל השלבים בפרוטוקול.

1. התקנת התוכנה

  1. התקן את התוכנה המהווים דרישה מוקדמת בהתאם להוראות בטבלת החומרים.
    הערה: פרוטוקול זה דורש בקרת גירסאות, מיכל, מסד נתונים של גרפים ושירותי מודל שפה גדול (LLM). בקרת גרסאות וגורמים מכילים הם אופציונליים אך יכולים לפשט את תהליך ההגדרה; ניתן להחליף מסד נתונים גרפים ושירותי LLM בכלים דומים אם המשתמש מיומן מבחינה טכנית.
    1. הגדר רשת בין גורמים מכילים. מגדירים קונטיינרים של Docker כך שיחוברו לשירותים אחרים במכשיר (למשל, קונטיינרים אחרים של Docker). הקלד את הפקודה הבאה בטרמינל: רשת עגינה ליצור rugged_network
  2. הגדר שירותי מודלים של שפה גדולה (LLMs). בחר את שירות ה-LLM המתאים למקרה השימוש, בין שירותי LLM מסחריים או שירותים ממודל מקומי הפועל במכשיר של המשתמש. ודא שצוין לפחות שירות LLM אחד, אם כי ניתן לערבב ולהתאים סוכנים כדי למנף מודלים שונים.
    1. הפעל שירות LLM מקומי. אם אתה משתמש ב-Ollama באמצעות ממשק משתמש גרפי (GUI), הפעל את קובץ ההפעלה של ממשק המשתמש הגרפי (למשל, ollama.exe). אם אתה משתמש ב-Docker, הפעל: 'docker run -name ollama --net rugged_network d -v ollama:/root/.ollama -p 11434:11434 ollama/ollama'. אם אתה משתמש ב-Docker עם האצת GPU, ודא שמנהל ההתקן של ה-GPU מותקן והפעל: 'docker run -name ollama --net rugged_network -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 ollama/ollama'.
    2. אתחול מודל LLM מקומי. קבע באיזה מודל להשתמש מבין הדגמים הנתמכים (למשל, מומלץ: llama3, mistral, mixtral. אם אתה משתמש ב-Docker, הקלד 'docker exec run ollama run ' בשורת הפקודה; אם אתה משתמש בממשק המשתמש הגרפי של Ollama, הקלד 'ollama run ', והחלף בשם הדגם עבור כל אחד מהם.
  3. הפעל את שירות מסד הנתונים של Graph. בחר שירות מסד נתונים גרפים בין מיכל Docker, יישום שולחן עבודה או שירות אינטרנט מקוון. עקוב אחר הוראות ההתקנה בחומרים משלימים כדי להשלים את ההגדרה.
  4. הגדר את הסביבה המחוספסת. אמת את תמונות ה-Docker שהורדת על ידי הקלדת תמונות Docker. ודא שכל תמונות ה-Docker מהשלב הקודם מופיעות ברשימה. הפעל את הפקודות הבאות בטרמינל כדי להוריד את התמונה והקוד של RUGGED Docker:
    docker pull pinglabutils/rugged: האחרון
    הערה: git clone https://github.com/pinglab-utils/RUGGED
    1. קביעת תצורה של שירות LLM מסחרי. אם אתה משתמש בשירותי LLM מסחריים, ודא שלחשבון ולמפתח ה-API המשויך יש מספיק כספים. שנה קבצי תצורה RUGGED על ידי עריכת קובץ התצורה ב-'RUGGED/config/openai_key.txt' והוספת מפתח ה-API לקובץ.
    2. קביעת תצורה של סוכנים מסחריים. קבע אילו סוכני LLM במערכת של RUGGED ישתמשו בשירות זה. שנה את קובץ התצורה ב- 'RUGGED/config/llm_agents.json' ועדכן את שדות הסוכן כדי לציין את גרסת המודל. דגמים מומלצים: gpt-3.5-turbo, gpt-4o.
    3. קביעת תצורה של שירות LLM מקומי. אם אתה משתמש בנקודת קצה של שירות שונה מנקודת הקצה המוגדרת כברירת מחדל עבור Ollama ב-'http://localhost:11434', שנה ועדכן את השדה 'OLLAMA_URI' בתוך קבצי התצורה ב-'RUGGED/config/ollama_config.json'.
    4. קביעת תצורה של סוכני LLM מקומיים. קבע אילו סוכני LLM במערכת של RUGGED ישתמשו בשירות זה. שנה את קובץ התצורה ב-'RUGGED/config/llm_agents.json' ועדכן את שדות הסוכן כדי לציין 'ollama' כמודל שנבחר.
    5. קבע את תצורת נקודת הקצה של מסד הנתונים של הגרף. אם השתנה מסיסמת ברירת המחדל ושם המשתמש עבור Neo4j, ערוך את קובץ התצורה 'RUGGED/config/neo4j_config.json' כדי לעדכן את השדות 'uri', 'שם משתמש' ו'סיסמה'.
  5. הפעל את השירות RUGGED על ידי הפעלת הפקודה:
    Docker Run --name rugged -it --net rugged_network --gpus=all -v \RUGGED\:/data ping-lab-
    utils:מחוספס /bin/bash
    הערה: כדי לוודא שהשירותים פועלים כצפוי, נווט אל הספרייה RUGGED ובצע את שלבים 1.4.1. עד שלב 1.4.4. בחלון ״המסוף״ הזה.
    1. אמת את הפונקציונליות של שירות LLM. נווט לתיקיית הבדיקה בספריית RUGGED ובצע את הפקודות הבאות כדי לוודא ששירותי OpenAI ו/או Ollama פועלים:
      Python test_openai.py
      Python test_ollama.py
    2. אמת את הפונקציונליות של שירות זיהוי ישויות בשם. הפעל 'test_ner.py' כדי לוודא שהקוד עבור זיהוי ישויות בשם של שאילתות משתמשים פועל כראוי.
    3. אמת את פונקציונליות השירות של Neo4j. הפעל סקריפטים לבדיקה כדי לוודא ששירות Neo4j פועל כצפוי על ידי הקלדת 'python test_neo4j.py'
    4. (אופציונלי) אמת את גישת HTTP למסד הנתונים של הגרפים. פתח א web דפדפן ובקר בממשק המשתמש של Neo4j.
      הערה: עבור Neo4j ב-Docker או בשולחן העבודה, כתובת ה-URL המוגדרת כברירת מחדל היא 'http://localhost:7474'. עבור Neo4j AuraDB, השתמש בקישור שסופק במהלך ההתקנה.
  6. (אופציונלי) פתרון בעיות. ודא שהשירותים התומכים ב-RUGGED מאומתים במהלך הגדרת התוכנה כדי לצפות בעיות. פתור בעיות של בדיקות שלא הצליחו משלב 1.4. אם הם קיימים, עקוב אחר הודעות השגיאה שדווחו על-ידי קבצי ה- Script של הבדיקה המתארים את הבעיות.
    1. אימות קונטיינרים של Docker. ודא שכל מכולות ה-Docker פועלות באמצעות 'docker ps' בטרמינל, כולל מיכל העגינה RUGGED, מיכל העגינה Neo4j (אופציונלי) ומיכל העגינה של Ollama (אופציונלי).
    2. אמת יציאות רשת. עבור שירותי Docker, ודא שהיציאות הנכונות פתוחות ובדוק יומנים עם 'docker logs neo4j' או 'docker logs ollama'.
      הערה: כברירת מחדל, Neo4j משתמש ביציאות 7474 עבור http ו-7687 עבור ממשק הבריח שלו; Ollama משתמש בנמל 11434.
    3. אמת יישומי שירות. עבור יישומים המותקנים ישירות במכשיר (למשל, Ollama ו-Neo4j Desktop), פתח את היישומים כדי לאשר שהם פועלים.
    4. אמת שירותי אינטרנט. עבור Neo4j AuraDB, היכנס לאתר וודא שהשירות פועל.
    5. ודא את כללי חומת האש. שנה את כללי חומת האש של ההתקן כדי להבטיח שחומת האש אינה חוסמת שירותים חיצוניים.
    6. הפעל מחדש את המכשיר. אם הבעיות לא נפתרו, הפעל מחדש את המכשיר ונסה שוב משלב 1.5.1.
    7. פתח בעיה. אם הבעיות נמשכות, אנא פתח בעיה ב-RUGGED GitHub (https://github.com/pinglab-utils/RUGGED).

2. הנגשת ידע ביו-רפואי ומידע על מיצוי

הערה: שלבים אלה מתארים שני צינורות חילוץ ידע כמידע הבסיסי המרכיב את מערכת ה-Retrieval Augmented Generation (RAG) של RUGGED: (1) צינור כריית הטקסט הביו-רפואי CaseOLAP LIFT5 ו-(2) זרימת העבודה של בניית גרף הידע Know2BIO9. כדי להשתמש ב-RUGGED עם נתונים מותאמים אישית, המשך לשלב 4.

  1. חלץ ספרות ביו-רפואית. זהה מסמכים רלוונטיים וקשרי חלבון-מחלה ברמה גבוהה באמצעות CaseOLAP LIFT, פרוטוקול חישובי שנועד לחקור חלבונים תת-תאיים והקשרים שלהם למחלות באמצעות כריית טקסט בספרות ביו-רפואית. השלם שלב זה כדי להכין את המידע הדרוש כדי ליידע את זרימת העבודה של RAG עם תובנות ממוקדות מדוחות אלה.
    1. הפעל ניתוח כריית טקסט של CaseOLAP LIFT. בקר בפרוטוקול CaseOLAP LIFT JoVE (שלבים 4-5 אינם נחוצים לניתוח זה).
    2. העבר מסמכי טקסט מעובדים. ודא שהמסמכים הביו-רפואיים המנותחים (pubmed.json) והטקסט המלא שלהם (pmid2full_text_sections.json) משלב 3 נמצאים בתיקיית הנתונים של CaseOLAP LIFT . העבר קבצים אלה לתיקיית הנתונים המוקשחים באמצעות הפקודות הבאות:
      mv /caseolap_lift/caseolap_lift_shared_folder/data/pubmed.json /RUGGED/data/text_corpus
      mv /caseolap_lift/caseolap_lift_shared_folder/data/ pmid2full_text_sections.json /RUGGED/data/text_corpus
    3. העבר תוצאות כריית טקסט. ודא שקובץ גרף הידע (merged_edge_list.tsv) עם אסוציאציות חלבון-מחלות נוצר בתיקיית התוצאה/ק"ג. בדוק שמספר השיוכים הוא כצפוי, בהתאם להגדרות שנבחרו משלבים 1-3 (ראה טבלה 2 לדוגמה). העבר קובץ זה לתיקיית הנתונים של RUGGED:
      mv /caseolap_lift/caseolap_lift_shared_folder/result/graph_data/ merged_edge_list.tsv /RUGGED/data/knowledge_graph
  2. לחלץ ידע ביו-רפואי. הרכיבו גרף ידע ביו-רפואי באמצעות תוכנת Know2BIO , המשלבת נתונים מ-30 מאגרי ידע ביו-רפואיים. השלם שלב זה כדי להבטיח שהמידע עבור קשרים ביו-רפואיים אלה ונתונים רב-מודאליים מעובדים כדי לתמוך בזרימת העבודה של RAG במורד הזרם.
    1. מאגר Clone Know2BIO. שכפל את המאגר על ידי הקלדה בשורת הפקודה, באמצעות הפקודה שלהלן. נווט אל מאגר Know2BIO.
      שיבוט git https://github.com/Yijia-Xiao/Know2BIO.git.
    2. הכן נתונים ורישיונות. נווט לתיקיית מערך הנתונים ופעל לפי ההוראות בקובץ 'README.md'. השלם את היצירה הדרושה של חשבונות משתמשים כדי לגשת למשאבים מקוונים שונים (למשל, אוצר מילים של UMLS, בנק תרופות).
    3. הורד משאבי מאגר ידע. הפעל את הסקריפט 'python create_edge_files.py' ועקוב אחר ההתקדמות של צינור חילוץ גרף הידע. ודא שנוצר קובץ .csv בתיקיית 'Know2BIO/dataset/output' המייצג קשרים ביו-רפואיים.
    4. בניית גרף ידע. הפעל את הסקריפט 'python prepare_kgs.py' כדי לשלב את המידע שחולץ בשלב הקודם כדי לשלב אוטומטית את הקשרים שחולצו לגרף ידע מאוחד, עיצוב הגרף לפי מקור נתונים ודומיין.
    5. אמת את הפלט. בדוק שהקבצים שהושלמו נמצאים בתוך הקובץ 'whole_kg.txt' בספרייה 'Know2BIO/dataset/know2bio_dataset'. ודא שמספר הקצוות בקובץ הוא כצפוי; ראה טבלה 3, שהביאה ליותר מ-6 מיליון קצוות. המשך לשלב הבא, מכיוון שהשלבים הנותרים ב-Know2BIO README אינם נדרשים לניתוח זה.
      הערה: הקשרים מ-Know2BIO בטבלה 3 היו מקורות מ-31 מקורות, כולל ATC (ארגון הבריאות העולמי), Bgee45, CTD46, ClinGen47, ClinVar48, DOID49, DisGeNET50, DrugBank51, GRNdb52, Gene Ontology53, HGNC54, Hetionet3, Inxight Drugs55, KEGG56, MeSH57, Mondo58, MyChem.info59, MyDisease.info59, MyGene.info59, OMIM60, PathFX61, PharmGKB62, PubMed, Reactome63, SIDER64, SMPDB65, STRING66, TTD67, UMLS68, Uberon69 ו-UniProt70.
    6. העבר את תוצאות גרף הידע. העבר את הקובץ לתוך '/data/knowledge_graph/' של הספרייה RUGGED.
      mv /Know2BIO/dataset/know2bio/whole_kg.txt /RUGGED/data/knowledge_graph
  3. בניית גרף ידע משולב. שלב את הגרף מהשלב הקודם עם קשרי חלבון-מחלות ברמה גבוהה מכריית טקסט משלב 2.1 לגרף ידע מאוחד אחד.
    1. אמת את התוצאות בספרייה RUGGED. ודא שקובץ התוצאות של בניית גרף הידע (whole_kg.txt) ותוצאות קשרי הגומלין של כריית הטקסט (merged_edge_list.tsv) נמצאים בספריית knowledge_graph בתוך תיקיית הנתונים.
    2. שלב את התוצאות. הפעל סקריפט 'combine_kg_results.py' כדי למזג את הקשרים והישויות שחולצו מניתוח כריית הטקסט ובניית גרף הידע לגרף ידע מגובש יחיד. עקוב אחר הפקודה לדוגמה שלהלן:
      Python rugged/knowledge_graph/combine_kg_results.py ./data/knowledge_graph/merged_edge_list.tsv ./data/knowledge_graph/whole_kg.txt --output_dir ./data/rugged_knowledge_graph
  4. סנן גרף ידע. (אופציונלי) דגימה תת-קבוצה של גרף הידע שתשמש לניתוח החיזוי. שלב זה שומר רק על קשרים קרובים ומפחית את משאבי החישוב הדרושים לביצוע תחזיות הלמידה העמוקה.
    1. זהה צמתים רלוונטיים. קבע את הישויות הביו-רפואיות המעניינות לניתוח החיזוי בשלב 3 על ידי סקירת גרף הידע ואיתור צמתים רלוונטיים.
      הערה: פרוטוקול זה מתמקד בצמתי מחלה עבור קרדיומיופתיה אריתמוגנית (ACM) וקרדיומיופתיה מורחבת (DCM), כ-MeSH_Disease: D019571 ו-MeSH_Disease: D002311, בהתאמה. צמתי יעד צריכים להיות מותאמים למקרה השימוש המיועד.
    2. דגימה מגרף הידע. השתמש בסקריפט 'filter.py' כדי לחלץ את תת-גרף הידע שניתן להגיע אליו ב- k-hop מהצמתים המעניינים שנבחרו. עקוב אחר הפקודה לדוגמה למטה, המסננת את הגרף שניתן להגיע אליו בתוך 2 צמתים מצמתי המחלה שנבחרו:
      python ./rugged/knowledge_graph/kg_filter.py --k 2 --disease "MeSH_Disease:D019571,MeSH_Disease:D002311" --input_file ./data/rugged_knowledge_graph/rugged_knowledge_graph_edges.csv —output_dir ./data/rugged_knowledge_graph/filtered_kg/.
      הערה: הגדלת ערך ה-k-hop (--k) מרחיבה את היקף הנתונים בתוך הגרף לניתוח חיזוי אך גם דורשת משאבי חישוב גדולים יותר.

3. ניתוח חיזוי ניתן להסבר

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

  1. ודא שהמכל RUGGED Docker פועל. אם חלון הטרמינל הקודם נסגר, התחבר למיכל ה-Docker עם הפקודה 'docker exec --it rugged /bin/bash'. לאחר החיבור למיכל Docker, נווט אל הספרייה RUGGED.
  2. קבע את הקצוות שיש לחזות. ספק את הקצוות כזוגות צמתים בקובץ .txt (למשל, edges_to_predict.txt). הקצוות שכבר קיימים בגרף הידע יסוננו החוצה מהתחזיות.
  3. הפעל את קובץ ה- Script של ניתוח החיזוי . ציין את הקצוות לחיזוי ואת גרף ידע הקלט כארגומנטים של שורת הפקודה עבור החיזוי. ארגומנטים מרכזיים: -p (קובץ נתיב לקצוות), -i (גרף ידע קלט), -o (ספריית פלט), -n (תחזיות עליונות, למשל, 5), -k (קצוות עליונים להמחשה, למשל, 10). פקודה לדוגמה:
    פייתון מחוספס / predictive_analysis / generate_explainable_prediction.py -o פלט -n 5 -k 10 -p ./פלט / edges_to_predict.txt -i ./data/rugged_knowledge_graph/filtered_kg/filtered_k2_edges.csv
  4. הערך את ביצועי המודל. בדוק את פלט המסוף או את קובץ ה-'output.log' שנוצר מהשלב הקודם כדי להעריך את ביצועי המודל על סמך פיצול גרף הידע המסונן להדרכה, אימות וערכות בדיקה ביחס של 85:5:10. התאם את ארגומנטי המודל אם הביצועים אינם כצפוי, תוך שימוש בטבלה 4 כדוגמה.
  5. ודא שהתוצאות נמצאות בתיקיית הפלט. בדוק את תוצאות המודל ב-'prediction_results.csv' ובחן את n התחזיות המובילות בתיקיית הפלט. סקור את n התחזיות המובילות בתיקיית הפלט. עבור כל תחזית, הדמיית גרף ממחישה את הקצוות הרלוונטיים ביותר התורמים לכל חיזוי ואת ציוני החשיבות היחסית שלהם.
  6. העבר תוצאות ניתוח תחזיתי. לאחר שתהיה מרוצה מתוצאות הניתוח החזוי, העבר את התוצאות ל'נתונים/תחזיות/' של ספריית RUGGED.

4. יצירת השערות

  1. התחבר ל-RUGGED Docker Container.
    1. ודא שהמכל RUGGED Docker פועל. אם חלון המסוף הקודם נסגר, מתחברים למאגר של Docker.
    2. נווט אל הספרייה RUGGED. לאחר החיבור, הקלד cd /workspace/RUGGED כדי לנווט לספרייה. בצע את השלבים הנותרים בחלון שורת פקודה זה.
    3. ודא ששירותי התמיכה פועלים. אם אתה משתמש ב-Ollama ו-Neo4j ב-Docker, ודא שהמכולות פועלות על ידי הקלדת 'docker ps'. חזור על שלב 1.7 כדי לוודא שהשירותים פועלים כראוי ועל שלב 1.4 כדי לפתור בעיות אם הן קיימות.
  2. הכן נתוני RAG. הכן את גרף הידע וקורפוס הטקסט לשליפה.
    הערה: ניתן להחליף נתונים אלה בנתונים המוגדרים על-ידי המשתמש על-ידי הצבת הנתונים בספריות 'data/knowledge_graph/' ו-'data/text_corpus/', בהתאמה. נתונים אלה חייבים לעקוב אחר התבנית ממאגר GitHub (https://github.com/pinglab-utils/RUGGED/tree/main/data).
    1. אמת את המשאבים. ודא שקורפוס הטקסט נמצא בספריית 'data/text_corpus/', גרף הידע עם קובץ חיזוי כריית טקסט נמצא בספריית data/knowledge_graph/, ותוצאות החיזוי נמצאות בספריית data/predictions/ (משלבים 2.1.2., 2.3.2., ו-3.5. בהתאמה).
    2. אכלס את מסד הנתונים של הגרפים. בצע את הפקודה 'python ./neo4j/prepare_neo4j.py' כדי ליצור את הצמתים, הקצוות ותכונות הצומת הדרושים.
    3. אינדקס קורפוס הטקסט. בצע את הפקודה 'python ./text/prepare_corpus.py' כדי להוסיף לאינדקס את קורפוס הטקסט ולאפשר ל-RUGGED לאחזר מסמכי טקסט רלוונטיים על סמך שאילתות משתמשים על ידי קיבוץ המסמכים למקטעים של 500 אסימונים ליצירת מסד נתונים וקטורי באמצעות BART71.
    4. אופציונלי) בדוק את אחזור מסד הנתונים של הגרפים. שלח שאילתת בדיקה למסד הנתונים Neo4j כדי לוודא שהוא מאוכלס כהלכה ויכול להחזיר את התוצאות הצפויות. ודא שהפלט תואם לצמתים ולקשרי הגומלין הצפויים במסד הנתונים. פקודה לדוגמה:
      python ./test/test_neo4j_retrieval.py --query "MATCH (n) RETURN n LIMIT 5"
    5. (אופציונלי) בדיקת אחזור קורפוס RAG. שלח שאילתת בדיקה לקורפוס הטקסט של RAG כדי לוודא שמערכת אחזור הטקסט פועלת. ודא שהמסמכים שאוחזרו רלוונטיים לשאילתה ושההטבעות פועלות כצפוי. פקודה לדוגמה: python ./test/test_literature_retrieval.py --query "אילו מסמכים קשורים לשימוש בחוסמי בטא לטיפול במחלות לב וכלי דם?"
  3. אינטראקציה עם RUGGED. הפעל את RUGGED בממשק שורת הפקודה כדי לקיים אינטראקציה עם המערכת. בצע את הפקודה 'python rugged.py'. בצע שאילתה במערכת כדי לאחזר מידע רלוונטי באמצעות פקודות ספציפיות כדי לקיים אינטראקציה עם גרף הידע וקורפוס הטקסט.
    1. בצע שאילתה על גרף הידע. חלץ מידע ספציפי מגרף הידע על ידי הצגת השאלה בשפה טבעית, החל ממילת המפתח "שאילתה". לדוגמה:
      שאילתה "מהן התרופות שנקבעו כיום המסווגות כחוסמי בטא, תרופות אנטי-אריתמיות ותרופות אנטי-פיברוטיות?"
    2. חקור את התחזיות. חקור ניתוחי חיזוי קישורים משלב 3, ובקש לחפש קשר ספציפי, המוביל עם מילת המפתח "predict". לדוגמה:
      לחזות, "אילו מהתרופות הללו יכולות לשמש לטיפול ב-ACM ו/או DCM שאינן ידועות כיום?"
    3. חקור אחזור ספרות. עיינו במסמכים הקשורים לנושא ביו-רפואי ספציפי משלב 2. הציגו את השאלה בשפה טבעית, המובילה עם מילת המפתח "חיפוש". לדוגמה:
      חיפוש, "אילו ראיות ספרותיות תומכות בטענה שהתרופות החזויות הללו יכולות לשמש לטיפול ב-ACM ו/או DCM?"
    4. חזור על השאילתה ומקד אותה. השב ישירות בשורת הפקודה כדי לחזור ולחדד פניות באמצעות הממשק דמוי הצ'אט של RUGGED. עיין בשיחות קודמות של מערכת המשתמש כדי לתקן ולחדד שאלות ושאילתות.
    5. הפעל מחדש פקודות סייפר ב-Neo4j. (אופציונלי) מקד את תוצאות שאילתת גרף הידע על-ידי התאמת הפקודה Cypher שסופקה המשמשת לאחזור המידע. הפעל מחדש או שנה פקודה זו על ידי ביקור בממשק הדפדפן Neo4j משלב 1.4.4 (למשל, בשעה http://localhost:7474). הדבק ושנה את פקודות סייפר לפי הצורך כדי לחדד שאילתות ולאסוף תובנות ספציפיות יותר.
    6. סיכום שיחה. סקור את המידע שאוחזר וסכם את השיחה עם RUGGED. הקלד את מילת המפתח סיכום כדי להפיק סיכום של האינטראקציה לקובץ טקסט לצורך ניתוח מאוחר יותר. תגובת הטקסט המלא תוצג בטרמינל.
    7. בצע סקירה אנושית בלולאה כדי לשפר את דיוק הפלט על ידי בדיקה ושינוי של תגובות המערכת לקריאות וקיצור לפני סיום הסיכום.
    8. סקור יומני צ'אט. בדוק את הטקסט המלא של האינטראקציה בתיקיית היומן ב-RUGGED. שמור את פקודות הביניים והשיחות הללו בין סוכני LLM בתוך RUGGED לפתרון בעיות ושחזור.
  4. כיבוי והפעלה מחדש של RUGGED.
    1. קבל מזהי מכולות של Docker. השתמש בפקודה 'docker ps' כדי לרשום את כל המכולות הפועלות ולהשיג את מזהי הקונטיינרים עבור RUGGED, Neo4j ו-Ollama. עבור כל הפקודות הבאות, החלף את , ו- במזהי הגורמים המכילים בפועל.
    2. עצור קונטיינרים של Docker. כבה את RUGGED ואת קונטיינרי ה-Docker המשויכים באמצעות מזהי הקונטיינרים שלהם.
      תחנת עגינה
      תחנת עגינה
      תחנת עגינה
      הערה: מומלץ לעצור את המכולות הללו לפני כיבוי המכשיר כדי למנוע אובדן נתונים פוטנציאלי ולהבטיח שכל התהליכים נסגרים כראוי.
    3. מפעילים מחדש את Docker Containers. כדי להפעיל מחדש את מערכת RUGGED, השתמש במזהי המכולה כדי להפעיל את מכולות ה-Docker הדרושות.
      התחלה של Docker
      התחלה של Docker
      התחלה של Docker
    4. חבר מחדש לרשת Docker. במידת הצורך, השתמש בפקודות אלה כדי לחבר מחדש את הגורמים המכילים לרשת.
      חיבור רשת Docker rugged_network
      רשת Docker Connect rugged_network
      רשת Docker Connect rugged_network
    5. אמת את פונקציונליות השירות. לאחר הפעלה מחדש, חזור על שלבים 1.4-1.5 כדי לוודא שהתוכנה פועלת כצפוי.

Results

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

תוצאות מייצגות אלה הושגו על ידי ביצוע ההליך המתואר בפרוטוקול זה. ניתוח אסוציאציות כריית טקסט בוצע בעקבות פרוטוקול CaseOLAP LIFT5 עם פרמטרי ברירת מחדל, וחקר שמונה קטגוריות רחבות של מחלות לב וכלי דם72 והקשר שלהן לחלבונים מיטוכונדריאלים (GO:0005739). בסך הכל, 635,696 דיווחים עד מאי 2024 נקבעו כרלוונטיים למחלות אלה; ביניהם, זוהו 4,655 קשרי חלבון-מחלות בביטחון גבוה כדי ליידע ניתוחים במורד הזרם. גרף ידע ביו-רפואי נבנה באמצעות קוד התוכנה מ-Know2BIO באמצעות הגדרות ברירת מחדל במאי 20249. גרף הידע המתקבל מורכב מ-219,450 צמתים, 6,323,257 קצוות, כמו גם תכונות צמתים עבור 189,493 צמתים עם תיאורי צמתים, רצפי חלבון/גנים, מבנה כימי וכו' היכן שזמין. אומדן של זמן חישוב עבור כל השלבים בפרוטוקול מוצג בטבלה 1.

מערכת RUGGED אותחלה על ידי בניית מסדי הנתונים הווקטוריים הן עבור צמתי גרף הידע והן עבור הפרסומים הרלוונטיים ל-CVD. כל הצמתים, הקצוות ותכונות הצומת של גרף הידע עובדו בגודל נתח של 20 אסימונים עם מודל ההטמעה BART71 כדי להתכונן לחיפוש וקטורי RAG. באופן דומה, תרומות מקוריות ומאמרי סקירה עובדו באמצעות גודל נתח של 500 אסימונים ומודל ההטמעה של BART כדי להתכונן לחיפוש וקטורי RAG. עבור אחזור ספרות, פרסומים בטקסט מלא גדולים מ-500 אסימונים סוכמו באופן היררכי על סמך החלקים הבודדים של פרסום על ידי מודל ההטמעה של BART. מודל GPT-4o שימש עבור סוכני ה-LLM הנותרים במערכת.

תוצאות מייצגות אלה מציגות מקרה שימוש לדוגמה לחקירת טיפולים תרופתיים פוטנציאליים עבור קרדיומיופתיה אריתמוגנית (ACM) וקרדיומיופתיה מורחבת (DCM), המזוהים כ-MeSH_Disease: D019571 ו-MeSH_Disease: D002311, בהתאמה. סדרה של פניות מתוארת באיור 3, עם דוגמאות מודגשות של תגובות מודל המוצגות באיור 4, ותגובה מלאה המדווחת בקובץ משלים 1, סעיף A. כיוון החקירה הותאם לתשובות שאושרו על ידי החוקרים, ויצר שאילתות עוקבות על סמך תוצאות התשובות הקודמות. הניתוח חשף 11 תרופות מועמדות שסווגו תחת חוסמי בטא ונוגדי הפרעות קצב. דרכים חדשות לטיפול טיפולי הוערכו באמצעות מודל חיזוי קישורים של רשת עצבית קונבולוציונית על תת-קבוצה של גרף הידע השלם, כולל צמתים בטווח של דילוג אחד ממחלת המחקר וצמתי תרופות והקשרים ההדדיים ביניהם, עם מדדי הערכה המדווחים בטבלה 4. 10 הקצוות הרלוונטיים המובילים לכל חיזוי על ידי המודל נבדקו עוד על ידי מודול הסבר גרף, GNNExplainer44, כדי לזהות את הצמתים והקצוות העליונים התורמים לכל חיזוי, בהתאמה. העלות הכוללת של שימוש ב-LLM מסחרי עבור כל השלבים של פרוטוקול RUGGED עבור מקרה שימוש זה מוערכת ב-$1.50 בזמן כתיבת שורות אלה.

figure-results-1
איור 1: אחזור תחת זרימת עבודה של הבחנה ניתנת להסבר במחלה מונחית גרפים (RUGGED). RUGGED מורכב מארבעה מרכיבים עיקריים: (1) איסוף ועיבוד נתונים ממקורות אתיים ומנוהלים באופן מקצועי (למשל, PubMed ומאגרי ידע ביו-רפואיים שנאספו), (2) שילוב ממצאי מחקר שנבדקו על ידי עמיתים לגרף ידע מאוחד, (3) בניית נתוני הטקסט והגרף בתוך שירותי מסד נתונים, (4) מידול וחיזוי קשרים הניתנים להסבר בין ישויות ביו-רפואיות בתוך גרף הידע, ו-(5) אחזור וסינתזה של ידע באמצעות זרימת עבודה של Retrieval Augmented Generation (RAG) (איור 2) כדי לאמת קשרים מולקולריים מורכבים ולחקור תחזיות מחלות מונעות בינה מלאכותית. המשתמש יכול לבצע שלב סקירה אנושי בלולאה כדי לשפר את דיוק הפלט. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.

figure-results-2
איור 2: ארכיטקטורת אחזור וזרימת עבודה להפחתת הטיות. מסגרת ה-Retrieval Augmented Generation (RAG) מעסיקה מספר סוכני LLM, שכל אחד מהם מבצע משימות ספציפיות כדי לתמוך בגישה למידע רלוונטי על סמך שאילתת המשתמש. מערכת זו מספקת ראיות מתועדות לסוכן החשיבה מבוסס GPT הפונה למשתמש, מה שמקל על אינטראקציה בין משתמש לסוכן וסינתזה של ידע. (1) אחזור טקסט ביו-רפואי: תרומות מקוריות ומאמרי ביקורת שנבדקו על ידי עמיתים מסוננים על סמך הרלוונטיות שלהם להבנת קשרי מחלות. מסד נתונים וקטורי נבנה עבור ראיות טקסט מאומתות על ידי המחבר והעורך המשוקללות על סמך החלק המקביל של הפרסום, בהתאמה: 70% תקציר, 10% תוצאות, 10% מטא נתונים ו-10% עבור כל שאר תת-הסעיפים. חיפוש מילות מפתח וחיפוש דמיון מול הטמעת הטקסט של שאילתת המשתמש מזהים יחד מסמכים רלוונטיים. סיכומים של כל מסמך נוצרים באמצעות סיכום מבוסס BERT, כאשר סוכן מעריך הטקסט מבוסס GPT מחדד את החיפוש כדי לאמת את הרלוונטיות של מסמך השאילתה. (2) אחזור גרף ידע: מודול זיהוי ישויות בשם מבוסס BERT וחילוץ קשרים מבוסס GPT מחבר את שאילתת המשתמש לישויות רלוונטיות בגרף הידע. חיפוש דמיון במסד נתונים וקטורי מזהה צמתים וקצוות רלוונטיים. הנתונים מאוחזרים ממסד הנתונים של Neo4j באמצעות שאילתות סייפר שנוצרו על ידי סוכן שאילתות סייפר מבוסס GPT ומעודנים על ידי סוכן אימות השאילתות. (3) התגובות האישיות מצינורות אחזור הטקסט הביו-רפואי או אחזור גרף הידע מוצגות לסוכן ההנמקה, המסנתז תגובה תמציתית עם הטיה מינימלית לשאילתת המשתמש. מערכת זו מונחית לשמור על דיוק וחוסר משוא פנים בהצגת מידע עובדתי. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.

figure-results-3
איור 3: מקרה שימוש על סינתזת ידע וחקר השערות באמצעותמפל שאילתות. איור זה מציג מקרה שימוש מודגש המתמקד בשרשרת של שאלות ומושגים קשורים שחוקר ו/או איש מקצוע בתחום הבריאות עשויים להציג למערכת RUGGED. שאילתות מהמשתמש מוצגות למערכת בסדר מספרי, עם חיצים המייצגים נימוקים לוגיים מוסקים וספציפיים לתחום בין כל שאלה. המערכת מאחזרת מהמידע המרומז והרלוונטי (המקור מוצג בכחול), ומגיבה לשאילתה. דוגמאות לתגובות המערכת מוצגות באיור 4. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.

figure-results-4
איור 4: פתולוגיה קרדיווסקולרית של מקרה שימוש: הבהרת פתוגנזה של CVD. זוגות שאילתה-תגובה בין המשתמש למערכת RUGGED מוצגים. בפאנל השמאלי העליון, שאלות 1-6 מאחזרות מידע על ידי חילוץ מידע ממסד הנתונים של גרף הידע כדי לנסח תשובות מבוססות ראיות. שאלה 7 משתמשת בחיזוי קישור גרף הניתן להסבר כדי לזהות טיפולים בעלי ניקוד גבוה. השאילתה מבקשת ניתוח חיזוי, המבוצע ומעובד באופן אוטומטי על ידי המערכת, וממצאי המפתח מסוכמים בתמציתיות. שאלה 8 מעריכה ראיות ספרותיות מקורפוס נתוני הטקסט המוגדר המאוחזרות כראיות רלוונטיות כדי לאמת, לאמת ולאמת את הממצא החזוי. תגובות המערכת נבדקו על ידי תהליך בדיקה אנושי בלולאה והותאמו לקריאות וקיצור. תמליל מלא של ממצאים אלה מפורט בתיק המשלים 1. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.

שלביםתיאורזמן
הנגשת ידע ביו-רפואי30% סה"כ
הכנת קורפוס ספרות ביו-רפואיתהתחבר ל-PubMed ו-PubMed Central, הורד ונתח נתוני פרסום למשימות במורד הזרם.20%
הכנת נתוני מאגר הידעהתחבר למאגרי ידע ביו-רפואיים, הורד ונתח מידע הכרחי למשימות במורד הזרם.5%
חילוץ מידע30% סה"כ
ניתוח כריית טקסט של CaseOLAP LIFTלזהות קשרי מחלה-חלבון ברמה גבוהה בתוך קורפוס הטקסט הביו-רפואי.25%
בניית גרף ידעחבר ושלב מידע שונה ממאגרי ידע ביו-רפואיים לגרף ידע מאוחד.5%
ניתוח חיזוי10% סה"כ
אימון רשת עצבית גרףאמן את המודל על נתוני גרף הידע הביו-רפואי כדי ללמוד דפוסים נסתרים בתוך הגרף.5%
ניתוח דירוג רלוונטיותהחל מודול הסבר כדי להדגיש את הצמתים והקצוות הרלוונטיים ביותר לחקר מחלה.2.5%
חיזוי קישוריםהשתמש במודול יכולת ההסבר כדי לזהות צמתים וקצוות מרכזיים התורמים לקצוות חזויים חדשים.2.5%
יצירת השערות ו/או אימות30% סה"כ
הגדרת מסד נתונים לאחזור דור מוגבראתחול מסד הנתונים הגרפים לשאילתות גרף הידע ומסד הנתונים הווקטורי לאחזור טקסט.25%
חקר השערותאפשר אינטראקציה של המשתמש עם RUGGED כדי לגשת למידע רלוונטי ולבחון אותו לצורך חקר השערות.5%

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

קטגוריית מחלהמספרי עץ MeSH# PMIDs# תרומות מקוריות# מאמרי סקירה
קרדיומיופתיה (CM)ג14.280.238132,531102,33719,942
ג14.280.434
הפרעות קצב לב (ARR)ג14.280.067125,28692,37413,854
C23.550.073
מומי לב מולדים (CHD)C14.280.40082,00654,0236,379
מחלות מסתמי לב (VD)C14.280.48472,01650,1195,743
איסכמיה של שריר הלב (IHD)ג14.280.647256,986210,04230,223
מחלת מערכת הולכת לב (CCD)ג14.280.12353,05035,3994,363
חסימת יציאה חדרית (VOO)ג14.280.95522,24415,5041,686
מחלות לב אחרות (OTH)C14.280.195 C14.280.282 C14.280.383 C14.280.470 C14.280.945 C14.280.459 C14.280.720114,08577,30211,799
סך635,696478,40469,690

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

קטגוריהמספר צמתיםמספר קצוותמקורות נתונים
אנטומיה5,049122,533Bgee, PubMed, MeSH, Uberon, 
תהליך ביולוגי27,047108,106אונטולוגיה גנטית
רכיב סלולרי4,05752,238אונטולוגיה גנטית
תרכובת27,2783,292,028DrugBank, MeSH, CTD, UMLS, KEGG, TTD, SIDER, Inxight Drugs, Hetionet, PathFX, MyChem.info
מחלה21,938311,773PubMed, MeSH, DisGeNET, SIDER, ClinVar, ClinGen, PharmGKB, MyDisease.info, PathFX, UMLS, OMIM, Mondo, DOID, KEGG
מחלקת תרופות5,7218,283ATC
גן29,810943,419HGNC, GRNdb, KEGG, ClinVar, ClinGen,
תפקוד מולקולרי11,15147,086SMPDB, DisGENET, PharmGKB, MyGene.info
מסלול52,012234,944אונטולוגיה גנטית
חלבון20,7401,074,809Reactome, KEGG, SMPDB
התגובה14,647128,038UniProt, Reactome, TTD, SMPDB, STRING, HGNC
סכום ביניים219,4506,323,257ריקטום
אסוציאציות כריית טקסט84,670
סך219,4586,327,927

טבלה 3: סטטיסטיקה של גרף ידע. טבלה זו מפרטת 11 קטגוריות ביו-רפואיות רחבות המרכיבות את גרף הידע הבנוי של Know2BIO, מועשר בקצוות נוספים הנגזרים מניתוח כריית טקסט וניתוח חיזוי. גרף הידע והתחזיות המתקבלים מנוהלים על ידי מסד הנתונים של הגרפים Neo4j לאחזור על ידי RUGGED במהלך יצירת השערות.

דיוקדיוקזוכרניקוד F1אורוקAUPRC
אימות0.71580.66390.87430.75470.84370.8637
מבחן0.7030.63670.94550.7610.89610.9094

טבלה 4: הערכת מודל AI הניתנת להסבר. טבלה זו מדווחת על מדדי ההערכה לחיזוי קישורי גרף הידע באמצעות רשת עצבית קונבולוציונית של גרף דו-שכבתי. המדדים הוערכו על ידי חלוקת קצוות הגרפים ל-85% אימון, 5% אימות ו-10% מערכי בדיקה. דיוק מציין את שיעור התחזיות המסווגות כהלכה. דיוק מדווח על שיעור התחזיות החיוביות הנכונות בין כל התחזיות החיוביות. Recall מודד את שיעור התחזיות החיוביות הנכונות בין הקצוות החיוביים בפועל. ציון ה-F1 הוא הממוצע ההרמוני של דיוק וזיכרון, המאזן בין שני המדדים. AUROC מעריך את יכולתו של המודל להבדיל בין תחזיות חיוביות ושליליות. AUPRC מכמת את הפשרה בין דיוק לזיכרון על פני ספים שונים. בכל המדדים, ערכים גבוהים יותר מצביעים על ביצועי מודל טובים יותר.

קובץ משלים 1: קובץ זה מפרט את תגובת הדגם המלאה מ-RUGGED והשוואה מול GPT-4o. חלק א' מציג את האינטראקציה המלאה בין אדם למחשב עם RUGGED, מרחיב את גישת שרשרת השאילתות המתוארת באיור 3 ומספק את התשובה המלאה מעבר לסיכום המודגש באיור 4. סעיף B מעריך את התגובות של GPT-4o ללא אחזור מול RUGGED, ומעריך תכונות כגון דיוק, עומק, ניקוד ביטחון, אמינות ראיות ועלות. אנא לחץ כאן להורדת קובץ זה.

Discussion

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

פרוטוקול RUGGED ממנף מודלים מודרניים של שפה עם מידע עדכני כדי להעצים חוקרים לחקור באופן דינמי את הנוף הביו-רפואי המתפתח ולחשוף ידע חדש. אינטראקציה אנושית-מחשבית זו מניעה תהליך חדשני המדגים את יעילות המכונה (RUGGED) ואת המומחיות ושיקול הדעת של החוקר. פרוטוקול זה נועד להתבצע ברצף המתואר. שלב 1 מפרט את התקנת התוכנה. שלב 2 ושלב 3 חיוניים להכנת ספרות ומשאבים ביו-רפואיים, בעוד ששלב 4 מאנדקס מידע זה ליצירת אחזור מוגבר ואינטראקציה של המשתמש עם מערכת LLM. שלבים עתירי זמן עשויים לפעול במקביל ו/או ברצף. לדוגמה, יצירת גרף Neo4j (שלב 4.2.2) יכולה להתחיל במהלך ניתוח חיזוי (שלב 3), ואינדקס יכול להתחיל לאחר בניית גרף הידע (שלב 2.3) וכריית טקסט (שלב 2.1). יש לחזור על שלבים אלה כדי להשיג את התוצאה הסופית של תוצאות הביניים הללו. בעוד שפרוטוקול זה מיועד לאחזור מידע ביו-רפואי, עם שינויים קלים, עשוי לטפל גם בנתוני טקסט וגרפים אחרים, כגון נתונים פנימיים, הערות קליניות או רשומות רפואיות אלקטרוניות. פרטי עיצוב הנתונים נמצאים בשלב 4.2.

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

עם נוף ה-LLM המתפתח במהירות, מודלים חדשים של ציוני דרך ומודלים ספציפיים למשימה משוחררים באופן קבוע. בזמן דוח זה נבחרו הדגמים המתאימים ביותר למשימה. משתמשים יכולים לבחור באיזה LLM להשתמש על ידי עדכון התצורה file בהתאם (ראה שלבים 1.3.2-1.3.4). בחירת הדגם תלויה ברלוונטיות שלהם למקרה שימוש מסוים. לדוגמה, שילוב מודלים המתמקדים בהבטחת הוגנות, מצונזרות וללא דיבור שנאה 73,74,75,76,77,78, בזרימת עבודה זו חיוני לשיקולים אתיים. יתר על כן, הנדסה מהירה חיונית כדי להנחות התנהגות אמינה ואחראית מ-LLM 79,80,81,82. ההנחיות שנוצרו עבור זרימת העבודה של RUGGED מותאמות למודלים המועסקים ולמקרי השימוש המוצגים. כדי לכוונן את ההנחיות עבור מקרה שימוש אחר, משתמשים יכולים לערוך הנחיות בתוך זרימת העבודה של RUGGED בתיקיית 'תצורה' בתוך הקובץ 'prompts.json'.

בעוד שמערכות RAG שואפות להפחית הזיות ב-LLMs על ידי ביסוס תגובות בראיות, מודלים אלה עדיין עשויים להוביל למידע לא מדויק או לתגובות נכונות ולא ספציפיות בדרך כלל. השוואת אמת מידה של RUGGED לעומת GPT-4o מסופקת בקובץ משלים 1, סעיף B. הזיות מודל מתרחשות לעתים קרובות כאשר מידע שאוחזר חורג מחלון ההקשר של המודל, אנלוגי לדמנציה עם אובדן זיכרון וחוסר יכולת לאתר את תוכן הנתונים, וכתוצאה מכך תגובות לא מדויקות 83,84,85. בחירת מודל LLM מתאים עוזרת להפחית בעיה זו. לדוגמה, ל-GPT-4o יש מגבלת הקשר של 128k אסימונים, משמעותית יותר ממגבלת האסימונים של 16k של GPT-3.5 Turbo, אם כי בעלות גבוהה יותר למשתמש. יתר על כן, LLMs מכווננים עם ידע בתחום ספציפי יכולים לשפר את הדיוק והספציפיות של תגובות ביישומים ביו-רפואיים 86,87,88. למרות אמצעים אלה, חיוני להצליב את המידע לפני שתמשיך בניסויי מעבדה רטובים יקרים.

RUGGED ממנפת בינה מלאכותית הניתנת להסבר בתוך צינור RAG כדי לבחון תחזיות קישורים, ולזהות קשרים אמינים ולא התגלו בעבר. בעוד שמערכות RAG מסורתיות מסתמכות על אחזור מבוסס דמיון בכמויות גדולות, גישה זו מחברת את יכולת ההסבר עם הגדלת תגובה ממוקדת. טבלה 4 מדגישה את הביצועים החזקים של המודל, ומדגימים זיכרון גבוה (תיקוף: 0.975 מבחן: 0.976) וציוני F1 מאוזנים (אימות: 0.796, מבחן: 0.797), המעידים על מהימנות בזיהוי חיוביים אמיתיים, אם כי עם שיעור גבוה יותר של תוצאות חיוביות כוזבות. החוסן של המודל נתמך עוד יותר על ידי ערכי AUROC (אימות: 0.963, בדיקה: 0.964) ו-AUPRC (אימות: 0.971, בדיקה: 0.972). דיוק (אימות: 0.673, בדיקה: 0.674), לעומת זאת, יכול להפיק תועלת מכוונון סף, שילוב תכונות צומת מפורטות או טיפול משופר בחוסר איזון בכיתה. יעילות המודל תלויה מאוד בגרף ידע הקלט; התאמת יתר היא סיכון עם גרפים קטנים יותר, בעוד שגרפים גדולים יותר דורשים משאבי חישוב גדולים יותר. עם זאת, כל גישה מבוססת RAG תלויה במידה רבה באיכות הנתונים העומדים בבסיס האחזור. לדוגמה, בניית גרף ידע היא לרוב עתירת זמן ועבודה עקב רעש פנימי בגרף המקורי. זה דורש מאמץ ידני להפחתת רעש ותיוג כמו גם עלויות שוטפות לתחזוקה ועדכון של מסדי הנתונים.

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

Disclosures

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

למחברים אין מה לחשוף.

Acknowledgements

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

המחברים רוצים להודות לד"ר אלכס בוי על ההדרכה והדיון המתחשב שלו. בנוסף, אנו מודים לד"ר דינג וואנג על הדיונים המועילים שלו. עבודה זו נתמכה בחלקה על ידי NIH 1U54HG012517-01 ל-P.P., K.W. ו-W.W.; NIH T32 HL13945 ל-A.R.P.; התמחות מחקר של הקרן הלאומית למדע (NRT) 1829071 ל-A.R.P.; וקרן TC Laubisch ל-P.P. ב-UCLA.

Materials

List of materials used in this article
NameCompanyCatalog NumberComments
חומרה/תוכנה - כרטיס גרפי ומנהל התקן תוכנהNvidiahttps://www.nvidia.comכרטיס גרפי ותוכנת מנהל ההתקן המשויכת אליו מומלצים מאוד כדי להפחית משמעותית את זמן הריצה עבור משימות אינטנסיביות מבחינה חישובית, כגון LLM מקומי וניתוחים חזויים. עבור מכשירים המצוידים ב-NVIDIA RTX GPU, הורד והתקן את מנהלי ההתקנים הדרושים ואת CUDA Toolkit מ-NVIDIA webאתר (https://developer.nvidia.com/cuda-downloads).
תוכנה - שירות מודלים מסחריים בשפה גדולהOpenAIhttps://openai.comRUGGED תומך ב-OpenAI API עבור מודלים כגון GPT-3.5 ו-GPT-4o. כדי להגדיר באמצעות מודלים של OpenAI, תחילה השג מפתח API של OpenAI. המשך לאתר של OpenAI (https://openai.com/blog/openai-api) כדי ליצור חשבון, לטעון כספים ולקבל מפתח API. מפתח API זה נדרש כדי לאפשר ל-RUGGED להשתמש במודלים של OpenAI. קבע אילו סוכני LLM בתוך המערכת של RUGGED ישתמשו במודלים של OpenAI מהתיעוד שלהם (https://platform.openai.com/docs/models).
הערה: OpenAI API הוא שירות בתשלום. בזמן הפרסום, העלות עבור GPT-4o היא 5.00 דולר למיליון אסימוני קלט ו-2.50 דולר למיליון אסימוני פלט (למידע נוסף, בקר https://openai.com/pricing).
תוכנה - ContainerizationDockerhttps://www.docker.comDocker מסייע בשמירה על סביבת זמן ריצה חישובית עקבית, ייעול התקנת התוכנה וביצועיה במכונות שונות. כדי להתקין Docker, בקר באתר האינטרנט של Docker (https://www.docker.com/), לחץ על 'התחל', הורד והתקן את הגרסה המתאימה למערכת ההפעלה. ודא את ההתקנה על ידי הקלדת 'docker --version' בטרמינל; התקנה מוצלחת מדווחת על גרסת ה-Docker המותקנת.
תוכנה - מסד נתונים גרפיםNeo4jhttps://neo4j.comNeo4j היא תוכנת מסד נתונים גרפים המנהלת ביעילות ושואלת צמתים ומערכות יחסים מבוססות גרפים. RUGGED תומך ב-Neo4j במספר צורות: מיכל Docker, Neo4j Desktop או שרת מקוון Neo4j AuraDB. בחר את האפשרות המתאימה ביותר למקרה השימוש.
הגדרת Neo4j כקונטיינר Docker. הפעל פקודות אלה כדי להגדיר את Neo4j ב-Docker, כאשר נתיב הקובץ עבור התיקייה (למשל, /Users/username/RUGGED) הוא 'PATH_TO_FOLDER'. לפרטים נוספים על פתרון בעיות, עיין ב-Neo4j Docker webאתר (https://hub.docker.com/_/neo4j).
docker pull neo4j
docker run – שם neo4j --net rugged_network --publish=7474:7474 --publish=7687:7687 -d -v 'PATH_TO_FOLDER'\neo4j\data:/data neo4j
הערה: אתחל את Neo4j ב-Docker בפעם הראשונה על ידי הגדרת שם משתמש וסיסמה. הפעל את סקריפט neo4j_setup.py (למשל, python neo4j_setup.py) או באמצעות ממשק אינטרנט בכתובת http://localhost:7474.
הגדרת שולחן העבודה של Neo4j. אם אתה משתמש ב-Neo4j Desktop, הורד והתקן מ-Neo4j webאתר (https://neo4j.com/). צור פרויקט חדש על ידי לחיצה על "חדש", ולאחר מכן לחץ על "הוסף" כדי ליצור מערכת ניהול מסדי נתונים חדשה (DBMS). בחר "DBMS מקומי", הגדר סיסמה, לחץ על "צור" ולאחר מכן לחץ על "התחל". טקסט ירוק "פעיל" מציין שהוא פועל.
הגדרת Neo4j AuraDB. בקר באתר Neo4j בכתובת (https://neo4j.com/cloud/aura-free/) כדי ליצור חשבון ולהיכנס. בחר "מופע חדש" כדי ליצור מופע ריק ולשמור את ה-URI והסיסמה הראשונית כדי לגשת לממשק הבריח (למשל, bolt://myurl.neo4j.com). לחץ על כפתור ההפעלה כדי להפעיל את המופע, שיציג את ה-URI של החיבור בתיבת המידע.
הערה: Neo4j AuraDB מציע שכבה חינמית של עד 200,000 צמתים ו-400,000 קשרים. לגרפים גדולים יותר, בקר בתמחור Neo4j (https://neo4j.com/pricing).
תוכנה - שירות מודל שפה מקומיגדול Ollamahttps://ollama.comRUGGED תומך בשימוש במודלים מקומיים באמצעות Ollama (למשל, Llama3). כדי להפעיל, התקן תחילה את Ollama במכשיר או הורד את מיכל Docker. כדי להתקין את Ollama, בקר באתר Ollama (https://ollama.com/download) ופעל לפי הוראות ההתקנה. כדי להתקין את Ollama ב-Docker, הפעל את הפקודה הבאה:
docker pull ollama/ollama
הערה: בזמן הפרסום, אין מהדורה יציבה ל-Ollama במערכת ההפעלה Windows.
תוכנה - בקרת גרסאותGithttps://www.git-scm.comתוכנת בקרת גרסאות מאפשרת התקנה ועדכון יעיל של התוכנה. כדי להתקין את Git, בקר באתר Git (https://www.git-scm.com/), לחץ על 'הורדות', הורד והתקן את הגרסה המתאימה למערכת ההפעלה. ודא את ההתקנה על ידי הקלדת 'git --version' בטרמינל; התקנה מוצלחת תדווח על גרסת Git המותקנת.

References

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,
  1. Bioinformatics in translational drug discovery. Biosci Rep. 37 (4), BSR20160180(2017).">Wooller, S. K., Benstead-Hume, G., Chen, X., Ali, Y., Pearl, F. M. G. Bioinformatics in translational drug discovery. Biosci Rep. 37 (4), BSR20160180(2017).
  2. Computational approaches streamlining drug discovery. Nature. 616 (7958), 673-685 (2023).">Sadybekov, A. V., Katritch, V. Computational approaches streamlining drug discovery. Nature. 616 (7958), 673-685 (2023).
  3. Systematic integration of biomedical knowledge prioritizes drugs for repurposing. eLife. 6, e26726(2017).">Himmelstein, D. S., et al. Systematic integration of biomedical knowledge prioritizes drugs for repurposing. eLife. 6, e26726(2017).
  4. Text mining and expert curation to develop a database on psychiatric diseases and their genes. Database (Oxford). 2017, bax043(2017).">Gutiérrez-Sacristán, A., et al. Text mining and expert curation to develop a database on psychiatric diseases and their genes. Database (Oxford). 2017, bax043(2017).
  5. A knowledge graph approach to elucidate the role of organellar pathways in disease via biomedical reports. J Vis Exp. (200), e65084(2023).">Pelletier, A. R., et al. A knowledge graph approach to elucidate the role of organellar pathways in disease via biomedical reports. J Vis Exp. (200), e65084(2023).
  6. A knowledge graph to interpret clinical proteomics data. Nat Biotechnol. 40 (5), 692-702 (2022).">Santos, A., et al. A knowledge graph to interpret clinical proteomics data. Nat Biotechnol. 40 (5), 692-702 (2022).
  7. PharmKG: A dedicated knowledge graph benchmark for bomedical data mining. Briefings in Bioinformatics. 22 (4), bbaa344(2021).">Zheng, S., et al. PharmKG: A dedicated knowledge graph benchmark for bomedical data mining. Briefings in Bioinformatics. 22 (4), bbaa344(2021).
  8. Biomedical knowledge graph-optimized prompt generation for large language models. Bioinformatics. 40 (9), btae560(2023).">Soman, K., et al. Biomedical knowledge graph-optimized prompt generation for large language models. Bioinformatics. 40 (9), btae560(2023).
  9. ArXiv. , (2023).">Xiao, Y., et al. Know2BIO: A comprehensive dual-view benchmark for evolving biomedical knowledge graphs. ArXiv. , (2023).
  10. Large language models in medicine. Nat Med. 29 (8), 1930-1940 (2023).">Thirunavukarasu, A. J., et al. Large language models in medicine. Nat Med. 29 (8), 1930-1940 (2023).
  11. ArXiv. , (2023).">Lehman, E., et al. Do we still need clinical language models. ArXiv. , (2023).
  12. Large language models encode clinical knowledge. Nature. 620, 172-180 (2022).">Singhal, K., et al. Large language models encode clinical knowledge. Nature. 620, 172-180 (2022).
  13. ArXiv. , (2022).">Agrawal, M., Hegselmann, S., Lang, H., Kim, Y., Sontag, D. Large language models are few-shot clinical information extractors. ArXiv. , (2022).
  14. Assessing the accuracy and reliability of AI-generated medical responses: An evaluation of the Chat-GPT model. Res Sq. , (2023).">Johnson, D., et al. Assessing the accuracy and reliability of AI-generated medical responses: An evaluation of the Chat-GPT model. Res Sq. , (2023).
  15. Evaluation of ChatGPT on biomedical tasks: A zero-shot comparison with fine-tuned generative transformers. Jahan, I., Laskar, M. T. R., Peng, C., Huang, J. The 22nd Workshop on Biomedical Natural Language Processing and BioNLP Shared Tasks, , 326-336 (2023).
  16. Assessing the accuracy of responses by the language model ChatGPT to questions regarding bariatric surgery. Obes Surg. 33 (6), 1790-1796 (2023).">Samaan, J. S., et al. Assessing the accuracy of responses by the language model ChatGPT to questions regarding bariatric surgery. Obes Surg. 33 (6), 1790-1796 (2023).
  17. Trialling a large language model (ChatGPT) in general practice with the applied knowledge test: observational study demonstrating opportunities and limitations in primary care. JMIR Med Educ. 9, e46599(2023).">Thirunavukarasu, A. J., et al. Trialling a large language model (ChatGPT) in general practice with the applied knowledge test: observational study demonstrating opportunities and limitations in primary care. JMIR Med Educ. 9, e46599(2023).
  18. ArXiv. , (2023).">Sun, W., et al. Is ChatGPT Good at search? Investigating large language models as re-ranking agents. ArXiv. , (2023).
  19. ArXiv. , (2023).">Xu, R., Feng, Y., Chen, H. ChatGPT vs. Google: A comparative study of search performance and user experience. ArXiv. , (2023).
  20. TruthfulQA: Measuring how models mimic human falsehoods. Lin, S., Hilton, J., Evans, O. Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers, , 3214-3252 (2022).
  21. ArXiv. , (2023).">Manakul, P., Liusie, A., Gales, M. J. F. SelfCheckGPT: Zero-resource black-box hallucination detection for generative large language models. ArXiv. , (2023).
  22. FActScore: Fine-grained atomic evaluation of factual precision in long form text generation. Min, S., et al. Proceedings of the 2023 Conference on Empirical Methods in Natural Language Processing, , 12076-12100 (2023).
  23. Is ChatGPT fair for recommendation? Evaluating fairness in large language model recommendation. Proceedings of the 17th ACM Conference on Recommender Systems. , 993-999 (2023).">Zhang, J., et al. Is ChatGPT fair for recommendation? Evaluating fairness in large language model recommendation. Proceedings of the 17th ACM Conference on Recommender Systems. , 993-999 (2023).
  24. Building an ethical and trustworthy biomedical AI ecosystem for the translational and clinical integration of foundation models. Bioengineering. 11 (10), 984(2024).">Sankar, B. S., et al. Building an ethical and trustworthy biomedical AI ecosystem for the translational and clinical integration of foundation models. Bioengineering. 11 (10), 984(2024).
  25. ChatGPT and Other large language models are double-edged swords. Radiology. 307 (2), e230163(2023).">Shen, Y., et al. ChatGPT and Other large language models are double-edged swords. Radiology. 307 (2), e230163(2023).
  26. Ethics of large language models in medicine and medical research. Lancet Digit Health. 5 (6), e333-e335 (2023).">Li, H., et al. Ethics of large language models in medicine and medical research. Lancet Digit Health. 5 (6), e333-e335 (2023).
  27. ArXiv. , (2020).">Lewis, P., et al. Retrieval-augmented generation for knowledge-intensive NLP tasks. ArXiv. , (2020).
  28. ArXiv. , (2023).">Gao, Y., et al. Retrieval-augmented generation for large language models: A survey. ArXiv. , (2023).
  29. PubTator central: Automated concept annotation for biomedical full text articles. Nucleic Acids Res. 47 (W1), W587-W593 (2019).">Wei, C. -H., Allot, A., Leaman, R., Lu, Z. PubTator central: Automated concept annotation for biomedical full text articles. Nucleic Acids Res. 47 (W1), W587-W593 (2019).
  30. ArXiv. , (2024).">Wei, C. -H., et al. PubTator 3.0: An AI-powered literature resource for unlocking biomedical knowledge. ArXiv. , (2024).
  31. Comparative Reasoning for knowledge graph fact checking. Liu, L., Ji, H., Xu, J., Tong, H. 2022 IEEE International Conference on Big Data (Big Data), , 2309-2312 (2022).
  32. Knowledge Graph reasoning and its applications. Liu, L., Tong, H. Proceedings of the 29th ACM SIGKDD Conference on Knowledge Discovery and Data Mining, , 5813-5814 (2023).
  33. ArXiv. , (2024).">Liu, L., et al. Logic query of thoughts: Guiding large language models to answer complex logic queries with knowledge graphs. ArXiv. , (2024).
  34. Barack's wife hillary: Using Knowledge graphs for fact-aware language modeling. Logan, R., Liu, N. F., Peters, M. E., Gardner, M., Singh, S. Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics, , 5962-5971 (2019).
  35. ArXiv. , (2024).">Sun, J., et al. Think-on-graph: Deep and responsible reasoning of large language model on knowledge graph. ArXiv. , (2024).
  36. ArXiv. , (2024).">Wen, Y., Wang, Z., Sun, J. MindMap: Knowledge Graph prompting sparks graph of thoughts in large language models. ArXiv. , (2024).
  37. ArXiv. , (2020).">Wang, C., Liu, X., Song, D. Language models are open knowledge graphs. ArXiv. , (2020).
  38. QA-GNN: Reasoning with Language Models and Knowledge Graphs for Question Answering. Yasunaga, M., Ren, H., Bosselut, A., Liang, P., Leskovec, J. Proceedings of the 2021 Conference of the North American Chapter of the, , 535-546 (2021).
  39. SimKGC: Simple contrastive knowledge graph completion with pre-trained language models. Wang, L., Zhao, W., Wei, Z., Liu, J. Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers, , 4281-4294 (2022).
  40. FLAIRS. 36, (2023).">Lazar, A. Graph neural networks for link prediction. FLAIRS. 36, (2023).
  41. ArXiv. , (2018).">Zhang, M., Chen, Y. Link prediction based on graph neural networks. ArXiv. , (2018).
  42. XGNN: Towards model-level explanations of graph neural networks. Yuan, H., Tang, J., Hu, X., Ji, S. Proceedings of the 26th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining, , (2020).
  43. CFGExplainer: Explaining graph neural network-based malware classification from control flow graphs. Herath, J. D., Wakodikar, P., Yang, P., Yan, G. 2022 52nd Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), , 172-184 (2022).
  44. GNNExplainer: Generating explanations for graph neural networks. Adv Neural Inf Process Syst. 32, 9240-9251 (2019).">Ying, R., Bourgeois, D., You, J., Zitnik, M., Leskovec, J. GNNExplainer: Generating explanations for graph neural networks. Adv Neural Inf Process Syst. 32, 9240-9251 (2019).
  45. The Bgee suite: Integrated curated expression atlas and comparative transcriptomics in animals. Nucleic Acids Res. 49 (D1), D831-D847 (2021).">Bastian, F. B., et al. The Bgee suite: Integrated curated expression atlas and comparative transcriptomics in animals. Nucleic Acids Res. 49 (D1), D831-D847 (2021).
  46. Comparative Toxicogenomics Database (CTD): Update 2023. Nucleic Acids Res. 51 (D1), D1257-D1262 (2023).">Davis, A. P., et al. Comparative Toxicogenomics Database (CTD): Update 2023. Nucleic Acids Res. 51 (D1), D1257-D1262 (2023).
  47. ClinGen - The clinical genome resource. N Engl J Med. 372 (23), 2235-2242 (2015).">Rehm, H. L., et al. ClinGen - The clinical genome resource. N Engl J Med. 372 (23), 2235-2242 (2015).
  48. ClinVar: Improvements to accessing data. Nucleic Acids Res. 48 (D1), D835-D844 (2020).">Landrum, M. J., et al. ClinVar: Improvements to accessing data. Nucleic Acids Res. 48 (D1), D835-D844 (2020).
  49. The human disease ontology 2022 update. Nucleic Acids Res. 50 (D1), D1255-D1261 (2022).">Schriml, L. M., et al. The human disease ontology 2022 update. Nucleic Acids Res. 50 (D1), D1255-D1261 (2022).
  50. The DisGeNET cytoscape app: Exploring and visualizing disease genomics data. Comput Struct Biotechnol J. 19, 2960-2967 (2021).">Piñero, J., Saüch, J., Sanz, F., Furlong, L. I. The DisGeNET cytoscape app: Exploring and visualizing disease genomics data. Comput Struct Biotechnol J. 19, 2960-2967 (2021).
  51. DrugBank 6.0: The DrugBank knowledgebase for 2024. Nucleic Acids Res. 52 (D1), D1265-D1275 (2024).">Knox, C., et al. DrugBank 6.0: The DrugBank knowledgebase for 2024. Nucleic Acids Res. 52 (D1), D1265-D1275 (2024).
  52. GRNdb: Decoding the gene regulatory networks in diverse human and mouse conditions. Nucleic Acids Res. 49 (D1), D97-D103 (2021).">Fang, L., et al. GRNdb: Decoding the gene regulatory networks in diverse human and mouse conditions. Nucleic Acids Res. 49 (D1), D97-D103 (2021).
  53. The Gene Ontology resource: enriching a GOld mine. Nucleic Acids Res. 49 (D1), D325-D334 (2021).">Gene Ontology Consortium. The Gene Ontology resource: enriching a GOld mine. Nucleic Acids Res. 49 (D1), D325-D334 (2021).
  54. Genenames.org: The HGNC resources in 2023. Nucleic Acids Res. 51 (D1), D1003-D1009 (2023).">Seal, R. L., et al. Genenames.org: The HGNC resources in 2023. Nucleic Acids Res. 51 (D1), D1003-D1009 (2023).
  55. NCATS Inxight Drugs: A comprehensive and curated portal for translational research. Nucleic Acids Res. 50 (D1), D1307-D1316 (2022).">Siramshetty, V. B., et al. NCATS Inxight Drugs: A comprehensive and curated portal for translational research. Nucleic Acids Res. 50 (D1), D1307-D1316 (2022).
  56. KEGG: New perspectives on genomes, pathways, diseases and drugs. Nucleic Acids Res. 45 (D1), D353-D361 (2017).">Kanehisa, M., Furumichi, M., Tanabe, M., Sato, Y., Morishima, K. KEGG: New perspectives on genomes, pathways, diseases and drugs. Nucleic Acids Res. 45 (D1), D353-D361 (2017).
  57. Medical Subject Headings (MeSH). Bull Med Libr Assoc. 88 (3), 265-266 (2000).">Lipscomb, C. E. Medical Subject Headings (MeSH). Bull Med Libr Assoc. 88 (3), 265-266 (2000).
  58. medRxiv. , (2022).">Vasilevsky, N. A., et al. Mondo: Unifying diseases for the world, by the world. medRxiv. , (2022).
  59. BioThings SDK: A toolkit for building high-performance data APIs in biomedical research. Bioinformatics. 38 (7), 2077-2079 (2022).">Lelong, S., et al. BioThings SDK: A toolkit for building high-performance data APIs in biomedical research. Bioinformatics. 38 (7), 2077-2079 (2022).
  60. OMIM.org: Leveraging knowledge across phenotype-gene relationships. Nucleic Acids Res. 47 (D1), D1038-D1043 (2019).">Amberger, J. S., Bocchini, C. A., Scott, A. F., Hamosh, A. OMIM.org: Leveraging knowledge across phenotype-gene relationships. Nucleic Acids Res. 47 (D1), D1038-D1043 (2019).
  61. PathFX provides mechanistic insights into drug efficacy and safety for regulatory review and therapeutic development. PLoS Comput Biol. 14 (12), e1006614(2018).">Wilson, J. L., et al. PathFX provides mechanistic insights into drug efficacy and safety for regulatory review and therapeutic development. PLoS Comput Biol. 14 (12), e1006614(2018).
  62. PharmGKB, an Integrated resource of pharmacogenomic knowledge. Curr Protoc. 1 (8), e226(2021).">Gong, L., Whirl-Carrillo, M., Klein, T. E. PharmGKB, an Integrated resource of pharmacogenomic knowledge. Curr Protoc. 1 (8), e226(2021).
  63. The reactome pathway knowledgebase 2022. Nucleic Acids Res. 50 (D1), D687-D692 (2022).">Gillespie, M., et al. The reactome pathway knowledgebase 2022. Nucleic Acids Res. 50 (D1), D687-D692 (2022).
  64. The SIDER database of drugs and side effects. Nucleic Acids Res. 44 (D1), D1075-D1079 (2016).">Kuhn, M., Letunic, I., Jensen, L. J., Bork, P. The SIDER database of drugs and side effects. Nucleic Acids Res. 44 (D1), D1075-D1079 (2016).
  65. SMPDB 2.0: Big improvements to the small molecule pathway database. Nucleic Acids Res. 42 (Database issue), D478-D484 (2014).">Jewison, T., et al. SMPDB 2.0: Big improvements to the small molecule pathway database. Nucleic Acids Res. 42 (Database issue), D478-D484 (2014).
  66. STRING v11: Protein-protein association networks with increased coverage, supporting functional discovery in genome-wide experimental datasets. Nucleic Acids Res. 47 (D1), D607-D613 (2019).">Szklarczyk, D., et al. STRING v11: Protein-protein association networks with increased coverage, supporting functional discovery in genome-wide experimental datasets. Nucleic Acids Res. 47 (D1), D607-D613 (2019).
  67. Therapeutic target database update 2022: Facilitating drug discovery with enriched comparative data of targeted agents. Nucleic Acids Res. 50 (D1), D1398-D1407 (2022).">Zhou, Y., et al. Therapeutic target database update 2022: Facilitating drug discovery with enriched comparative data of targeted agents. Nucleic Acids Res. 50 (D1), D1398-D1407 (2022).
  68. The Unified Medical Language System (UMLS): Integrating biomedical terminology. Nucleic Acids Res. 32 (Database issue), D267-D270 (2004).">Bodenreider, O. The Unified Medical Language System (UMLS): Integrating biomedical terminology. Nucleic Acids Res. 32 (Database issue), D267-D270 (2004).
  69. Unification of multi-species vertebrate anatomy ontologies for comparative biology in Uberon. J Biomed Semantics. 5, 21(2014).">Haendel, M. A., et al. Unification of multi-species vertebrate anatomy ontologies for comparative biology in Uberon. J Biomed Semantics. 5, 21(2014).
  70. UniProt: the Universal Protein Knowledgebase in 2023. Nucleic Acids Res. 51 (D1), D523-D531 (2023).">UniProt Consortium. UniProt: the Universal Protein Knowledgebase in 2023. Nucleic Acids Res. 51 (D1), D523-D531 (2023).
  71. Denoising sequence-to-sequence pre-training for natural language generation, translation, and comprehension. Lewis, M., et al. Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, , 7871-7880 (2020).
  72. Cloud-based phrase mining and analysis of user-defined phrase-category association in biomedical publications. J Vis Exp. (144), e59108(2019).">Sigdel, D., et al. Cloud-based phrase mining and analysis of user-defined phrase-category association in biomedical publications. J Vis Exp. (144), e59108(2019).
  73. FM. ArXiv. , (2023).">Ferrara, E. Should ChatGPT be biased? Challenges and risks of bias in large language models. FM. ArXiv. , (2023).
  74. ArXiv. , (2023).">Gallegos, I. O., et al. Bias and fairness in large language models: A Survey. ArXiv. , (2023).
  75. Fighting reviewer fatigue or amplifying bias? Considerations and recommendations for use of ChatGPT and other large language models in scholarly peer review. Res Integr Peer Rev. 8 (1), 4(2023).">Hosseini, M., Horbach, S. P. J. M. Fighting reviewer fatigue or amplifying bias? Considerations and recommendations for use of ChatGPT and other large language models in scholarly peer review. Res Integr Peer Rev. 8 (1), 4(2023).
  76. Kotek, H., Dockum, R., Sun, D. Gender bias and stereotypes in Large Language Models. Proceedings of The ACM Collective Intelligence Conference, , 12-24 (2023).
  77. Prompting techniques for reducing social bias in LLMs through System 1 and System 2 Cognitive Processes. ArXiv. , (2024).">Kamruzzaman, M., Kim, G. L. Prompting techniques for reducing social bias in LLMs through System 1 and System 2 Cognitive Processes. ArXiv. , (2024).
  78. ArXiv. , (2024).">Raza, S., Raval, A., Chatrath, V. MBIAS: Mitigating bias in large language models while retaining context. ArXiv. , (2024).
  79. ArXiv. , (2023).">Chen, B., Zhang, Z., Langrené, N., Zhu, S. Unleashing the potential of prompt engineering in Large Language Models: A comprehensive review. ArXiv. , (2023).
  80. ArXiv. , (2023).">White, J., et al. A prompt pattern catalog to enhance prompt engineering with ChatGPT. ArXiv. , (2023).
  81. Prompt engineering as an important emerging skill for medical professionals: Tutorial. J Med Internet Res. 25, e50638(2023).">Meskó, B. Prompt engineering as an important emerging skill for medical professionals: Tutorial. J Med Internet Res. 25, e50638(2023).
  82. ArXiv. , (2023).">Wang, J., et al. Prompt Engineering for Healthcare: Methodologies and applications. ArXiv. , (2023).
  83. ArXiv. , (2023).">Luo, Y., et al. An empirical study of catastrophic forgetting in large language models during continual fine-tuning. ArXiv. , (2023).
  84. Retrieval meets Long Context Large Language Models. ArXiv. , (2023).">Xu, P., et al. Retrieval meets Long Context Large Language Models. ArXiv. , (2023).
  85. ArXiv. , (2023).">Chen, S., Wong, S., Chen, L., Tian, Y. Extending context window of Large Language Models via positional interpolation. ArXiv. , (2023).
  86. ArXiv. , (2024).">Labrak, Y., et al. BioMistral: A collection of open-source pretrained large language models for medical domains. ArXiv. , (2024).
  87. BioGPT: Generative pre-trained transformer for biomedical text generation and mining. Brief Bioinform. 23 (6), bbac409(2022).">Luo, R., et al. BioGPT: Generative pre-trained transformer for biomedical text generation and mining. Brief Bioinform. 23 (6), bbac409(2022).
  88. ArXiv. , (2024).">Wang, C., et al. A survey for large language models in biomedicine. ArXiv. , (2024).

Reprints and Permissions

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

Request Permission

Tags

Biomedical Knowledge BasesExplainable AIKnowledge GraphRetrieval Augmented GenerationLarge Language ModelsText Mining AnalysisHypothesis ValidationDrug Disease RelationshipsAgentic SystemsCardiomyopathy Therapeutics

Related Articles