Summary

Un approccio basato su Knowledge Graph per chiarire il ruolo delle vie organellari nella malattia attraverso referti biomedici

Published: October 13, 2023
doi:

Summary

Vengono presentati un protocollo computazionale, CaseOLAP LIFT, e un caso d’uso per studiare le proteine mitocondriali e le loro associazioni con le malattie cardiovascolari come descritto nei rapporti biomedici. Questo protocollo può essere facilmente adattato per studiare i componenti cellulari e le malattie selezionate dall’utente.

Abstract

Le grandi quantità di referti biomedici, in rapido aumento, ciascuno contenente numerose entità e ricche informazioni, rappresentano una ricca risorsa per le applicazioni di text-mining biomedico. Questi strumenti consentono ai ricercatori di integrare, concettualizzare e tradurre queste scoperte per scoprire nuove intuizioni sulla patologia e sulle terapie della malattia. In questo protocollo, presentiamo CaseOLAP LIFT, una nuova pipeline computazionale per studiare i componenti cellulari e le loro associazioni di malattie estraendo informazioni selezionate dall’utente da set di dati testuali (ad esempio, letteratura biomedica). Il software identifica le proteine subcellulari e i loro partner funzionali all’interno di documenti rilevanti per la malattia. Ulteriori documenti rilevanti per la malattia vengono identificati tramite il metodo di imputazione delle etichette del software. Per contestualizzare le associazioni proteina-malattia risultanti e per integrare le informazioni provenienti da più risorse biomediche rilevanti, viene costruito automaticamente un grafo di conoscenza per ulteriori analisi. Presentiamo un caso d’uso con un corpus di ~ 34 milioni di documenti di testo scaricati online per fornire un esempio di chiarimento del ruolo delle proteine mitocondriali in fenotipi distinti di malattie cardiovascolari utilizzando questo metodo. Inoltre, un modello di deep learning è stato applicato al grafo della conoscenza risultante per prevedere le relazioni precedentemente non riportate tra proteine e malattia, risultando in 1.583 associazioni con probabilità previste >0,90 e con un’area sotto la curva caratteristica operativa del ricevitore (AUROC) di 0,91 sul set di test. Questo software presenta un flusso di lavoro altamente personalizzabile e automatizzato, con un’ampia gamma di dati grezzi disponibili per l’analisi; Pertanto, utilizzando questo metodo, le associazioni proteina-malattia possono essere identificate con maggiore affidabilità all’interno di un corpus di testo.

Introduction

Lo studio delle proteine correlate alla malattia migliora la conoscenza scientifica della patogenesi e aiuta a identificare potenziali terapie. Diversi grandi corpora testuali di pubblicazioni biomediche, come i 34 milioni di articoli di PubMed contenenti titoli di pubblicazioni, abstract e documenti full-text, riportano nuove scoperte che collegano le proteine alle malattie. Tuttavia, questi risultati sono frammentati in varie fonti e devono essere integrati per generare nuove intuizioni biomediche. Esistono diverse risorse biomediche per integrare le associazioni proteina-malattia 1,2,3,4,5,6,7. Tuttavia, queste risorse curate sono spesso incomplete e potrebbero non comprendere gli ultimi risultati della ricerca. Gli approcci di text-mining sono essenziali per estrarre e sintetizzare le associazioni proteina-malattia in corpora di testo di grandi dimensioni, il che si tradurrebbe in una comprensione più completa di questi concetti biomedici nella letteratura scientifica.

Esistono molteplici approcci biomedici di text-mining per scoprire le relazioni proteina-malattia 8,9,10,11,12,13,14, e altri contribuiscono in parte a determinare queste relazioni identificando le proteine, le malattie o altre entità biomediche menzionate nel testo 13,15,16,17, 18,19. Tuttavia, molti di questi strumenti non hanno accesso alla letteratura più aggiornata, ad eccezione di alcuni che vengono periodicamente aggiornati 8,11,13,15. Allo stesso modo, anche molti strumenti hanno un ambito di studio limitato, in quanto sono limitati a malattie o proteine predefinite 9,13. Diversi approcci sono anche inclini all’identificazione di falsi positivi all’interno del testo; Altri hanno affrontato questi problemi con una lista nera interpretabile e globale di nomi di proteine 9,11 o meno tecniche di riconoscimento delle entità dei nomi dei nomi15,20. Mentre la maggior parte delle risorse presenta solo risultati pre-calcolati, alcuni strumenti offrono interattività tramite app Web o codice software accessibile 8,9,11.

Per affrontare le limitazioni di cui sopra, presentiamo il seguente protocollo, CaseOLAP con imputazione dell’etichetta e full text (CaseOLAP LIFT), come piattaforma flessibile e personalizzabile per studiare le associazioni tra proteine (ad esempio, proteine associate a una componente cellulare) e malattie da set di dati di testo. Questa piattaforma offre la cura automatizzata di proteine specifiche per l’ontologia genica (GO) (ad esempio, proteine specifiche per organelli), l’imputazione delle etichette degli argomenti mancanti dei documenti, l’analisi di documenti full-text, nonché strumenti di analisi e strumenti predittivi (Figura 1, Figura 2 e Tabella 1). CaseOLAP LIFT cura le proteine organello-specifiche utilizzando termini GO forniti dall’utente (ad esempio, compartimento organello) e proteine funzionalmente correlate utilizzando STRING21, Reactome 22 e GRNdb23. I documenti relativi allo studio delle malattie sono identificati dalle etichette MeSH (Medical Subject Header) annotate da PubMed. Per il ~15,1% dei documenti non etichettati, le etichette sono imputate se almeno un sinonimo di termine MeSH si trova nel titolo o almeno due nell’abstract. In questo modo le pubblicazioni precedentemente non classificate possono essere prese in considerazione nell’analisi di text-mining. CaseOLAP LIFT consente inoltre all’utente di selezionare sezioni di pubblicazioni (ad esempio, solo titoli e abstract, testo completo o testo completo esclusi metodi) entro un determinato periodo di tempo (ad esempio, 2012-2022). Il software cura anche in modo semi-automatico una lista nera di nomi di proteine specifici per i casi d’uso, riducendo in modo vitale le associazioni di proteine false positive presenti in altri approcci. Nel complesso, questi miglioramenti consentono una maggiore personalizzazione e automazione, espandono la quantità di dati disponibili per l’analisi e producono associazioni proteine-malattie più sicure da grandi corpora di testo biomedico.

CaseOLAP LIFT incorpora le conoscenze biomediche e rappresenta la relazione di vari concetti biomedici utilizzando un grafo della conoscenza, che viene sfruttato per prevedere le relazioni nascoste nel grafo. Recentemente, metodi di calcolo basati su grafi sono stati applicati a contesti biologici, tra cui l’integrazione e l’organizzazione di concetti biomedici 24,25, il riposizionamento e lo sviluppo di farmaci 26,27,28 e per il processo decisionale clinico a partire da dati di proteomica 29.

Per dimostrare l’utilità di CaseOLAP LIFT nell’ambito della costruzione di un grafo della conoscenza, evidenziamo un caso d’uso sullo studio delle associazioni tra proteine mitocondriali e otto categorie di malattie cardiovascolari. Sono state analizzate le evidenze di ~362.000 documenti rilevanti per la malattia per identificare le principali proteine mitocondriali e i percorsi associati alle malattie. Successivamente, queste proteine, le loro proteine funzionalmente correlate e i loro risultati di text-mining sono stati incorporati in un grafo della conoscenza. Questo grafico è stato sfruttato in un’analisi predittiva dei collegamenti basata sul deep learning per prevedere le associazioni proteina-malattia finora non riportate all’interno delle pubblicazioni biomediche.

La sezione introduttiva descrive le informazioni di base e gli obiettivi del nostro protocollo. Nella sezione seguente vengono descritti i passaggi del protocollo computazionale. Di seguito, vengono descritti i risultati rappresentativi di questo protocollo. Infine, discutiamo brevemente i casi d’uso del protocollo computazionale, i vantaggi, gli svantaggi e le applicazioni future.

Protocol

1. Esecuzione del contenitore docker Scaricare il contenitore docker CaseOLAP LIFT usando la finestra del terminale e digitando docker pull caseolap/caseolap_lift:latest. Creare una directory che memorizzi tutti i dati e gli output del programma (ad esempio mkdir caseolap_lift_shared_folder). Avviare il contenitore docker con il comando docker run –name caseolap_lift -it -v PATH_TO_FOLDER:/caseolap_lift_shared_folder caseolap/caseolap_lift:latest bash con PATH_TO_FOLDER come percorso completo del file per la cartella (ad esempio, / Users/caseolap/caseolap_lift_shared_folder). I comandi futuri della sezione 2 verranno emessi in questa finestra del terminale. Avviare la ricerca elastica all’interno del contenitore. In una nuova finestra del terminale, digita docker exec -it –user elastic caseolap_lift bash /workspace/start_elastic_search.sh.NOTA: In questo protocollo, CaseOLAP LIFT viene eseguito in modo interattivo, con ogni passaggio eseguito in sequenza. Questa analisi può anche essere eseguita end-to-end passandola come file parameters.txt. I parametri.txt utilizzati in questo studio, si trovano in / workspace/caseolap_lift/parameters.txt. Per accedere a ulteriori dettagli su ogni passaggio, eseguire il comando con il flag – -help o visitare la documentazione nel repository GitHub (https://github.com/CaseOLAP/caseolap_lift). 2. Preparazione delle malattie e delle proteine Passare alla cartella caseolap_lift con cd /workspace/caseolap_lift Assicurarsi che i collegamenti per il download in config/knowledge_base_links.json siano aggiornati e accurati per la versione più recente di ogni risorsa della Knowledge Base. Per impostazione predefinita, i file vengono scaricati una sola volta; Per aggiornare questi file e scaricarli nuovamente, eseguire la fase di pre-elaborazione con -R nel passaggio 2.4. Determinare il termine OB e le categorie di malattia da utilizzare per questo studio. Trova gli identificatori per tutti i termini GO e gli identificatori MeSH rispettivamente in http://geneontology.org/ e https://meshb.nlm.nih.gov/. Eseguire il modulo di pre-elaborazione utilizzando le opzioni della riga di comando. Questa fase di pre-elaborazione assembla malattie specifiche, elenca le proteine da studiare e raccoglie sinonimi proteici per il text-mining. Indicare i termini GO studiati definiti dall’utente utilizzando il flag -c e i numeri dell’albero MeSH della malattia utilizzando il flag -d e specificare le abbreviazioni con -a. Esempio di comando:python caseolap_lift.py pre-elaborazione -a “CM ARR CHD VD IHD CCD VOO OTH” -d “C14.280.238,C14.280.434 C14.280.067,C23.550.073 C14.280.400 C14.280.484 C14.280.647 C14.280.123 C14.280.955 C14.280.195,C14.280.282,C14.280.383,C14.280.470,C14.280.945,C14.280.459,C14.280.720” -c “GO:0005739” –include-sinonimi –include-ppi -k 1 -s 0.99 –include-pw -n 4 -r 0.5 –include-tfd Esaminare le categorie.txt, i file core_proteins.txt e proteins_of_interest.txt del passaggio precedente nella cartella di output . Assicurarsi che tutte le categorie di malattie nelle categorie.txt siano corrette e che una quantità ragionevole di proteine sia identificata entro core_proteins.txt e proteins_of_interest.txt. Se necessario, ripetere il passaggio 2.4 e modificare i parametri per includere un numero maggiore o minore di proteine.NOTA: Il numero di proteine incluse nello studio è determinato dai flag –include-ppi, –include-pw e –include-tfd per includere rispettivamente le interazioni proteina-proteina, le proteine con vie di reattoma condivise e le proteine con dipendenza dal fattore di trascrizione. La loro funzionalità specifica è specificata con flag aggiuntivi, ad esempio -k, -s, -n e -r (vedere la documentazione). 3. Estrazione di testo Assicurarsi che i file di categorie.txt, core_proteins.txt e proteins_of_interest.txt del passaggio precedente si trovino nella cartella di output. Utilizzare questi file come input per il text-mining. Facoltativamente, modificare le configurazioni relative all’analisi e all’indicizzazione del documento nella cartella config . Per ulteriori informazioni sulla configurazione e la risoluzione dei problemi8, vedere una versione precedente del protocollo CaseOLAP. Eseguire il modulo di text-mining con python caseolap_lift.py text_mining. Aggiungere il flag – l per imputare gli argomenti dei documenti non categorizzati e il flag -t per scaricare il testo completo dei documenti rilevanti per la malattia. Altri flag facoltativi specificano un intervallo di date delle pubblicazioni da scaricare (-d) e forniscono opzioni per lo screening dei nomi delle proteine (descritto nel passaggio 3.3). Nella Figura 3 è riportato un esempio di un documento analizzato.Comando di esempio: python caseolap_lift.py text_mining -d “2012-10-01,2022-10-01” -l -tNOTA: la maggior parte del tempo del protocollo computazionale viene impiegato per il passaggio 3.2, che può potenzialmente estendersi per oltre 24 ore. Il runtime dipenderà dalle dimensioni del corpus di testo da scaricare, che dipenderà anche dall’intervallo di date e dall’abilitazione dell’imputazione delle etichette e della funzionalità full-text. (Consigliato) Esamina i nomi delle proteine. I nomi delle proteine identificati nelle pubblicazioni relative alla malattia contribuiscono alle associazioni di malattie proteiche, ma sono soggetti a falsi positivi (cioè omonimi con altre parole). Per risolvere questo problema, enumerare i possibili omonimi in una blacklist (config/remove_these_synonyms.txt) in modo che siano esclusi dai passaggi a valle.Trova i nomi da ispezionare: nella cartella dei risultati, trova i nomi delle proteine con la frequenza più alta in all_proteins o core_proteins (ranked_synonyms/ranked_synonyms_TOTAL.txt) e i nomi delle proteine con i punteggi più alti nelle cartelle in ranked_proteins a seconda dei punteggi di interesse. Se ci sono molti nomi, dai la priorità all’ispezione dei nomi con il punteggio più alto. Ispeziona i nomi: digita python caseolap_lift.py text_mining -c seguito da un nome di proteina per visualizzare fino a 10 pubblicazioni contenenti nomi. Quindi, per ogni nome, controlla se il nome è specifico per la proteina. Ricalcola i punteggi: digita python caseolap_lift.py text_mining -s. Ripetere i passaggi 3.1, 3.2 e 3.3 fino a quando i nomi dei passaggi 3.1 non vengono visualizzati correttamente. 4. Analisi dei risultati Assicurarsi che i risultati del text-mining si trovino nella cartella dei risultati (ad esempio, le directory result/all_proteins e result/core_proteins e i file associati), che verrà utilizzata come input per la fase di analisi. In particolare, un punteggio che indica la forza di ciascuna associazione proteina-malattia è riportato nei risultati del .csv caseolap, dal text-mining. Indicare il set di risultati di text mining da utilizzare per l’analisi specificando –analyze_core_proteins per includere solo le proteine correlate al termine GO o –analyze_all_proteins per includere tutte le proteine funzionalmente correlate. Identifica le proteine e i percorsi principali per ogni malattia. Le associazioni significative proteina-malattia sono definite come quelle con punteggi superiori a una soglia specificata. Lo Z-score trasforma i punteggi CaseOLAP all’interno di ciascuna categoria di malattia e considera significative le proteine con punteggi superiori a una soglia specificata (indicata dal flag -z ).NOTA: I percorsi biologici significativi per ciascuna malattia vengono identificati automaticamente utilizzando le proteine significative come input per l’analisi del percorso del reattoma. Tutte queste proteine sono riportate nel result_table.csv risultante nella cartella analysis_results e le cifre pertinenti e i risultati dell’analisi del percorso vengono generati automaticamente nella cartella analysis_results.Esempio di comando: python caseolap_lift.py analyze_results -z 3.0 –analyze_core_proteins Esaminare i risultati dell’analisi e apportare le modifiche necessarie. Il numero di proteine e, quindi, le vie di reattoma arricchito significative per ciascuna categoria di malattia dipendono dalla soglia z-score utilizzata nell’analisi. Una tabella di punteggio z, generata all’output/analysis_results/zscore_cutoff_table.csv, indica il numero di proteine significative per ciascuna categoria di malattia per aiutare nella selezione di una soglia di punteggio z il più alta possibile, producendo diverse proteine significative per ciascuna categoria di malattia. 5. Analisi predittiva Costruisci un grafo della conoscenza.Assicurarsi che i file richiesti si trovino nella cartella dei risultati, inclusa la cartella kg generata dalla pre-elaborazione (passaggio 2.4) e il caseolap.csv dai risultati del text mining nelle cartelle all_proteins o core_proteins (passaggio 3.2). Progettare il grafo della conoscenza. A seconda dell’attività a valle, includi o escludi componenti del Knowledge Graph completo. Il grafo della conoscenza è costituito dai punteggi delle malattie proteiche dal text-mining e dalle connessioni alle risorse della knowledge base utilizzate nel passaggio 2.4 (Figura 4). Includere l’albero della malattia MeSH con il flag –include_mesh , le interazioni proteina-proteina da STRING con –include_ppi, le vie di reattoma condivise con –include_pw e la dipendenza del fattore di trascrizione da GRNdb/GTEx con –include_tfd. Eseguire il modulo di costruzione del grafico della conoscenza. Indicare il set di risultati di text mining da utilizzare per l’analisi specificando –analyze_core_proteins per includere solo le proteine correlate al termine GO o –analyze_all_proteins per includere tutte le proteine funzionalmente correlate. Per impostazione predefinita, i punteggi CaseOLAP grezzi vengono caricati come pesi del bordo tra i nodi della proteina e della malattia; Per scalare gli spessori dei bordi, indicare –use_z_score o i punteggi z non negativi con –scale_z_score.Comando di esempio: python caseolap_lift.py prepare_knowledge_graph –scale_z_score Predire nuove associazioni proteina-malattia.Assicurati che i file del Knowledge Graph, merged_edges.tsv e merged_nodes.tsv, siano emessi dal passaggio precedente (passaggio 5.1.3). Esegui lo script di previsione del grafo della conoscenza per prevedere le associazioni proteina-malattia finora non riportate nella letteratura scientifica digitando python kg_analysis/run_kg_analysis.py. Questo è implementato con GraPE30 e utilizza DistMult31 per produrre incorporamenti del grafo della conoscenza, che un percettrone multistrato utilizza per prevedere le associazioni proteina-malattia. Nella cartella output/kg_analysis vengono salvate le stime con una probabilità stimata >0,90 (previsioni.csv) e le metriche di valutazione del modello (eval_results.csv).NOTA: In questo lavoro, i parametri del modello scelti (ad esempio, metodo di incorporamento, modello di previsione dei link, iperparametri) sono stati adattati per lo studio rappresentativo. Questo codice funge da esempio e punto di partenza per altre analisi. Per esplorare i parametri del modello, fare riferimento alla documentazione di GraPE (https://github.com/AnacletoLAB/grape).

Representative Results

Seguendo questo protocollo sono stati prodotti risultati rappresentativi per studiare le associazioni tra le proteine mitocondriali (Tabella 2) e otto categorie di malattie cardiovascolari (Tabella 3). In queste categorie, abbiamo trovato 363.567 pubblicazioni pubblicate dal 2012 all’ottobre 2022 (362.878 classificate in base ai metadati MeSH, 6.923 classificate in base all’imputazione dell’etichetta). Tutte le pubblicazioni avevano un titolo, 276.524 avevano un abstract e 51.065 avevano il testo completo disponibile. Complessivamente, 584 delle 1.687 proteine mitocondriali interrogate sono state identificate all’interno delle pubblicazioni, mentre 3.284 delle loro 8.026 proteine funzionalmente correlate sono state identificate. In totale, sono state identificate 14 proteine uniche con punteggi significativi in tutte le categorie di malattia, con una soglia di z-score di 3,0 (Figura 5). L’analisi del pathway Reactome di queste proteine ha rivelato 12 pathway significativi per tutte le malattie (Figura 6). Tutte le proteine, i percorsi, le malattie e i punteggi sono stati integrati in un grafo della conoscenza (Tabella 4). Questo grafico di conoscenza è stato sfruttato per prevedere 12.688 nuove associazioni proteina-malattia e filtrato con un punteggio di probabilità di 0,90 per produrre 1.583 previsioni ad alta confidenza. Un esempio evidenziato di due associazioni proteina-malattia è mostrato nella Figura 7, illustrata nel contesto di altre entità biologiche rilevanti funzionalmente correlate alle proteine. Le metriche di valutazione del modello sono riportate nella Tabella 5. Figura 1: Visualizzazione dinamica del flusso di lavoro. Questa figura rappresenta i quattro passaggi principali di questo flusso di lavoro. In primo luogo, le proteine rilevanti vengono curate in base ai termini OB forniti dall’utente (ad esempio, i componenti cellulari) e le categorie di malattie vengono preparate in base agli identificatori MeSH della malattia forniti dall’utente. In secondo luogo, le associazioni tra proteine e malattie vengono calcolate nella fase di estrazione del testo. Le pubblicazioni all’interno di un determinato intervallo di date vengono scaricate e indicizzate. Le pubblicazioni che studiano le malattie vengono identificate (tramite etichette MeSH e, facoltativamente, tramite etichette imputate) e i loro testi integrali vengono scaricati e indicizzati. I nomi delle proteine vengono interrogati all’interno delle pubblicazioni e utilizzati per calcolare i punteggi di associazione proteina-malattia. Successivamente, dopo l’estrazione del testo, questi punteggi aiutano a identificare le principali associazioni di proteine e percorsi. Infine, viene costruito un grafo della conoscenza che comprende queste proteine, malattie e le loro relazioni all’interno della base di conoscenza biomedica. Le nuove associazioni proteina-malattia sono previste sulla base del grafo della conoscenza costruito. Questi passaggi utilizzano i dati più recenti disponibili provenienti dalle basi di conoscenza biomedica e da PubMed. Fare clic qui per visualizzare una versione più grande di questa figura. Figura 2: Architettura tecnica del flusso di lavoro. I dettagli tecnici di questo flusso di lavoro sono illustrati in questa figura. L’utente fornisce i numeri dell’albero MeSH delle categorie di malattie e dei termini GO. I documenti di testo vengono scaricati da PubMed, i documenti rilevanti per la malattia vengono identificati in base alle etichette MeSH fornite e i documenti senza etichette MeSH che indicano l’argomento ricevono etichette di categoria imputate. Vengono acquisite le proteine associate al/ai termine/i OB fornito/i. Questo set di proteine è stato ampliato per includere proteine che sono funzionalmente correlate tramite interazioni proteina-proteina, percorsi biologici condivisi e dipendenza da fattori di trascrizione. Queste proteine vengono interrogate all’interno di documenti rilevanti per la malattia e valutate da CaseOLAP. Fare clic qui per visualizzare una versione più grande di questa figura. Figura 3: Esempio di documento elaborato. Di seguito viene presentato un esempio di documento di testo analizzato e indicizzato. In ordine, i campi pertinenti indicano il nome dell’indice (_index, _type), l’ID PubMed (_id, pmid), le sottosezioni del documento (titolo, abstract, full_text, introduzione, metodi, risultati, discussione) e altri metadati (anno, MeSH, posizione, rivista). Solo a scopo di visualizzazione, le sottosezioni del documento vengono troncate con puntini di sospensione. Il campo MeSH contiene gli argomenti del documento, che a volte possono essere forniti dal passaggio di imputazione dell’etichetta. Fare clic qui per visualizzare una versione più grande di questa figura. Figura 4: Schema del grafo della conoscenza e risorse biomediche. Questa figura illustra lo schema del Knowledge Graph. Ogni nodo e spigolo rappresenta rispettivamente un tipo di nodo o di spigolo. I margini tra le malattie cardiovascolari (CVD) e le proteine sono ponderati in base ai punteggi CaseOLAP. I bordi dell’interazione proteina-proteina (PPI) sono ponderati in base ai punteggi di confidenza STRING. I bordi di dipendenza dal fattore di trascrizione (TFD) derivati da GRNdb/GTEx, i bordi dell’albero della malattia derivati da MeSH e i bordi del percorso derivati dal reattoma non sono ponderati. Fare clic qui per visualizzare una versione più grande di questa figura. Figura 5: Principali associazioni proteine-malattie. Questa figura presenta le proteine mitocondriali significative per ogni categoria di malattia. La trasformazione Z-score è stata applicata ai punteggi CaseOLAP all’interno di ciascuna categoria per identificare le proteine significative utilizzando una soglia di 3,0. (Torna su) Numero di proteine mitocondriali significative per ciascuna malattia: questi grafici a violino mostrano la distribuzione dei punteggi z per le proteine in ciascuna categoria di malattia. Il numero totale di proteine significative per ciascuna categoria di malattia è mostrato sopra ogni grafico a violino. Un totale di 14 proteine uniche sono state identificate come significative in tutte le malattie e alcune proteine erano significative per più malattie. (In basso) Proteine con il punteggio più alto: la mappa di calore mostra le prime 10 proteine che hanno ottenuto i punteggi z medi più alti in tutte le malattie. I valori vuoti non rappresentano alcun punteggio ottenuto tra la proteina e la malattia. Fare clic qui per visualizzare una versione più grande di questa figura. Figura 6: Principali associazioni pathway-malattia. Questa figura illustra i principali percorsi biologici associati alle categorie di malattie studiate, come determinato tramite l’analisi del percorso del reattoma. Tutte le analisi del percorso sono state filtrate con p < 0,05. I valori della mappa di calore rappresentano lo z-score medio di tutte le proteine all'interno del percorso. (Torna su) Percorsi conservati tra tutte le malattie: Complessivamente, sono state identificate 14 proteine con rilevanza per tutte le categorie di malattia e sono stati rivelati 12 percorsi conservati tra tutte le categorie di malattia. È stato costruito un dendrogramma basato sulla struttura gerarchica del percorso per collegare i percorsi con funzioni biologiche simili. L’altezza del dendrogramma rappresenta la profondità relativa all’interno della gerarchia del percorso; Le funzioni biologiche più ampie hanno arti più lunghi e percorsi più specifici hanno arti più corti. (In basso) Percorsi distinti per una categoria di malattia: l’analisi del percorso è stata eseguita utilizzando proteine che hanno raggiunto un punteggio z significativo in ciascuna malattia. Le prime tre vie con i valori p più bassi associati a ciascuna malattia sono mostrate e indicate da asterischi. I percorsi potrebbero essere tra i primi tre in più malattie. Fare clic qui per visualizzare una versione più grande di questa figura. Figura 7: Applicazione del deep learning per il completamento del knowledge graph. In questa figura viene presentato un esempio di applicazione del deep learning a un grafo della conoscenza specifico della malattia. Sono previste relazioni nascoste tra proteine e malattia, e queste sono indicate in blu. Vengono visualizzate le probabilità calcolate per entrambe le stime, con valori compresi tra 0,0 e 1,0 e con 1,0 che indica una previsione forte. Sono incluse diverse proteine con interazioni note, che rappresentano le interazioni proteina-proteina, la dipendenza dal fattore di trascrizione e i percorsi biologici condivisi. Per la visualizzazione, viene mostrato un sottografo di alcuni nodi con rilevanza per l’esempio evidenziato. Legenda: IHD = cardiopatia ischemica; R-HSA-1430728 = metabolismo; O14949 = subunità 8 del complesso del citocromo b-c1; P17568 = NADH deidrogenasi (ubichinone) 1 subunità 7 del sottocomplesso beta; Q9NYF8 Fattore di trascrizione associato a Bcl-2 1, punteggio: 7,24 x 10−7; P49821 = NADH deidrogenasi (ubichinone) flavoproteina 1, mitocondriale, punteggio: 1,06 x 10−5; P31930 = subunità 1 del complesso del citocromo b-c1, mitocondriale, punteggio: 4,98 x 10−5; P99999 = citocromo c, punteggio: 0,399. Fare clic qui per visualizzare una versione più grande di questa figura. Tabella 1: Flusso di lavoro e passaggi di limitazione della velocità. Questa tabella presenta stime approssimative del tempo di calcolo per ogni fase del flusso di lavoro. Le opzioni per includere i componenti della pipeline modificheranno il tempo di esecuzione totale necessario per completare l’analisi. La stima del tempo totale varia a seconda delle risorse computazionali disponibili, comprese le specifiche hardware e le impostazioni software. Come stima approssimativa, il protocollo ha impiegato 36 ore di runtime attivo per essere eseguito sul nostro server di calcolo, con sei core, 32 Gb di RAM e 2 Tb di spazio di archiviazione, ma questo potrebbe essere più veloce o più lento su altri dispositivi. Clicca qui per scaricare questa tabella. Tabella 2: Assemblaggio automatico delle proteine componenti cellulari. Questa tabella mostra il numero di proteine associate a un dato componente cellulare (cioè il termine GO), le proteine funzionalmente correlate ad esse tramite interazioni proteina-proteina (PPI), percorsi condivisi (PW) e dipendenza da fattori di trascrizione (TFD). Il numero di proteine totali è il numero di proteine di tutte le categorie precedenti combinate. Tutte le proteine funzionalmente correlate sono state ottenute utilizzando i parametri predefiniti di CaseOLAP LIFT. Clicca qui per scaricare questa tabella. Tabella 3: Statistiche sull’imputazione delle etichette MeSH. Questa tabella mostra le categorie di malattie, i numeri dell’albero MeSH utilizzati come termine padre di tutte le malattie incluse nella categoria, il numero di articoli PubMed trovati in ciascuna categoria dal 2012 al 2022 e il numero di articoli aggiuntivi inclusi in base alla fase di imputazione dell’etichetta. Clicca qui per scaricare questa tabella. Tabella 4: Statistiche sulla costruzione del grafo della conoscenza. Questa tabella descrive le statistiche per le dimensioni del Knowledge Graph costruito, inclusi i vari nodi e tipi di spigoli. I punteggi CaseOLAP rappresentano la relazione tra una proteina e una categoria di malattie cardiovascolari (CVD). Clicca qui per scaricare questa tabella. Tabella 5: Statistiche e convalide di previsione del Knowledge Graph. Questa tabella riporta le metriche di valutazione per la previsione del collegamento del grafo della conoscenza di associazioni proteina-malattia nuove/nascoste. Gli archi del grafo della conoscenza sono stati partizionati in set di dati di training e test 70/30 e la connettività del grafo degli archi è stata mantenuta in entrambi i set di dati. L’accuratezza indica la proporzione di stime classificate correttamente, mentre l’accuratezza bilanciata corregge lo squilibrio di classe. La specificità indica la proporzione di previsioni negative correttamente classificate. La precisione indica la proporzione di previsioni positive corrette rispetto a tutte le previsioni positive, mentre il richiamo indica la proporzione di previsioni positive corrette tra tutti i bordi positivi (ad esempio, le associazioni proteina-malattia identificate tramite text-mining). Il punteggio F1 è la media armonica della precisione e del richiamo. L’area sotto la curva caratteristica operativa del ricevitore (AUROC) descrive quanto bene il modello distingue tra previsioni positive e negative, con 1,0 che indica un classificatore perfetto. L’area sotto la curva di precisione-richiamo (AUPRC) misura il compromesso tra precisione e richiamo a soglie di probabilità variabili, con valori più alti che indicano prestazioni migliori. Clicca qui per scaricare questa tabella.

Discussion

CaseOLAP LIFT consente ai ricercatori di studiare le associazioni tra proteine funzionali (ad esempio, proteine associate a un componente cellulare, a un processo biologico o a una funzione molecolare) e categorie biologiche (ad esempio, malattie). Il protocollo descritto deve essere eseguito nella sequenza specificata, con la sezione 2 e la sezione 3 del protocollo che sono i passaggi più critici, poiché la sezione 4 e la sezione 5 del protocollo dipendono dai risultati. In alternativa alla sezione 1 del protocollo, è possibile clonare il codice CaseOLAP LIFT e accedervi dal repository GitHub (https://github.com/CaseOLAP/caseolap_lift). Va notato che, nonostante i test durante lo sviluppo del software, possono verificarsi bug. In tal caso, il passaggio non riuscito deve essere ripetuto. Se il problema persiste, si consiglia di ripetere la sezione 1 del protocollo per assicurarsi che venga usata la versione più recente del contenitore Docker. È disponibile ulteriore assistenza creando un problema nel repository GitHub per ulteriore supporto.

Questo metodo supporta la generazione di ipotesi consentendo ai ricercatori di identificare le entità di interesse e rivelare le potenziali associazioni tra di loro, che potrebbero non essere facilmente accessibili nelle risorse biomediche esistenti. Le risultanti associazioni proteina-malattia consentono ai ricercatori di ottenere nuove informazioni attraverso le metriche interpretabili dei punteggi: i punteggi di popolarità indicano le proteine più studiate in relazione a una malattia, i punteggi di distintività indicano le malattie più uniche per una proteina e il punteggio CaseOLAP combinato è una combinazione dei due. Per prevenire le identificazioni di falsi positivi (ad esempio, a causa di omonimi), alcuni strumenti di text-mining utilizzano una lista nera di termini per evitare 9,11. Allo stesso modo, anche CaseOLAP LIFT utilizza una lista nera, ma consente all’utente di adattare la lista nera al proprio caso d’uso. Ad esempio, quando si studia la malattia coronarica (CAD), “CAD” non dovrebbe essere considerato un nome per la proteina “desossiribonucleasi attivata dalla caspasi”. Tuttavia, quando si studiano altri argomenti, “CAD” potrebbe di solito riferirsi alla proteina.

CaseOLAP LIFT si adatta alla quantità di dati disponibili per il text mining. La funzionalità dell’intervallo di date allevia il carico computazionale e crea flessibilità per la generazione di ipotesi (ad esempio, studiando come le conoscenze scientifiche su un’associazione proteina-malattia sono cambiate nel tempo). Nel frattempo, l’imputazione delle etichette e i componenti full-text migliorano l’ambito dei dati disponibili per il text-mining. Entrambi i componenti sono disabilitati per impostazione predefinita per ridurre i costi di calcolo, ma l’utente può decidere di includere uno dei due componenti. L’imputazione dell’etichetta è conservativa e categorizza correttamente la maggior parte delle pubblicazioni (precisione dell’87%) ma non tiene conto delle altre etichette di categoria (richiamo del 2%). Questo metodo attualmente si basa su un’euristica basata su regole che corrisponde alle parole chiave della malattia e ci sono piani per migliorare le prestazioni attraverso l’uso di tecniche di modellazione degli argomenti dei documenti. Poiché molti report non categorizzati tendono ad essere pubblicazioni recenti, gli studi che indagano su un intervallo di date recente (ad esempio, tutte le pubblicazioni negli ultimi 3 anni) sono meglio serviti disabilitando l’imputazione dell’etichetta. Il componente full-text aumenta i requisiti di runtime e di archiviazione. In particolare, solo una minoranza di documenti ha il testo completo disponibile (~14% dei documenti nel nostro studio). Supponendo che i nomi delle proteine menzionati nella sezione dei metodi delle pubblicazioni abbiano meno probabilità di essere correlati agli argomenti della malattia, si consiglia di interrogare gli articoli full-text escludendo la sezione dei metodi.

I punteggi di associazione proteina-malattia risultanti sono utili per le analisi tradizionali come il clustering, la riduzione della dimensionalità o le analisi di arricchimento (ad esempio, GO, percorsi), con alcune implementazioni incluse in questo pacchetto software. Per contestualizzare questi punteggi all’interno delle conoscenze biomediche esistenti, viene costruito automaticamente un grafo della conoscenza che può essere esplorato utilizzando strumenti di visualizzazione grafica (ad esempio, Neo4j32, Cytoscape33). Il grafo della conoscenza può essere utilizzato anche per analisi predittive (ad esempio, previsione di link di relazioni proteina-malattia non segnalate, rilevamento comunitario di reti proteiche, metodi di path-walking per la raccolta di premi).

Abbiamo esaminato le metriche di valutazione del modello per le associazioni proteina-malattia previste (Tabella 5). Il modello assegna un punteggio di probabilità compreso tra 0,0 e 1,0 a ciascuna associazione proteina-malattia, con punteggi più vicini a 1,0 che indicano un livello più elevato di confidenza nella previsione. La valutazione interna delle prestazioni del modello, che si basava su varie metriche tra cui l’AUROC, l’accuratezza, l’accuratezza bilanciata, la specificità e il richiamo, ha indicato eccellenti prestazioni complessive nel suo lavoro. Tuttavia, la valutazione ha anche evidenziato un punteggio piuttosto scarso per la precisione (0,15) del modello, con conseguente punteggio AUPRC e F1 più basso. Gli studi futuri per migliorare questa metrica contribuiranno a migliorare le prestazioni complessive del modello. Prevediamo che questo obiettivo potrebbe essere raggiunto implementando modelli più sofisticati di incorporamento del grafo della conoscenza e di previsione del grafo. Sulla base della precisione del modello di 0,15, i ricercatori dovrebbero prevedere circa il 15% di identificazioni positive; In particolare, di tutte le 12.688 associazioni proteina-malattia previste dal modello, circa il 15% sono associazioni vero-positive. Questo può essere mitigato considerando solo le associazioni proteina-malattia con un punteggio ad alta probabilità (ad esempio, >0,90); Nel nostro caso d’uso, il filtro con una soglia di probabilità di 0,90 ha portato a previsioni ad alta confidenza di 1.583 associazioni. Gli investigatori possono trovare utile ispezionare manualmente queste previsioni per garantire un’elevata validità (vedere la Figura 7 come esempio). Una valutazione esterna delle nostre previsioni ha determinato che delle 310 associazioni proteina-malattia da un ampio database curato, DisGeNet19, 103 sono state identificate nel nostro studio di text-mining e 88 associazioni aggiuntive sono state previste dalla nostra analisi del grafo della conoscenza con un punteggio di probabilità >0,90.

Nel complesso, CaseOLAP LIFT offre una maggiore flessibilità e usabilità nella progettazione di analisi personalizzate delle associazioni tra gruppi proteici funzionali e più categorie di malattie in corpora di testo di grandi dimensioni. Questo pacchetto è semplificato in una nuova interfaccia a riga di comando user-friendly e viene rilasciato come contenitore docker, riducendo così i problemi associati alla configurazione degli ambienti di programmazione e delle dipendenze software. La pipeline CaseOLAP LIFT per lo studio delle proteine mitocondriali nelle malattie cardiovascolari può essere facilmente adattata; ad esempio, le future applicazioni di questa tecnica potrebbero comportare lo studio delle associazioni tra qualsiasi proteina associata a qualsiasi termine OB e qualsiasi categoria biomedica. Inoltre, le associazioni classificate proteina-malattia identificate da questa piattaforma di text-mining sono importanti nella preparazione del set di dati per l’uso di tecniche avanzate di linguaggio naturale. Il grafo della conoscenza risultante consente ai ricercatori di convertire questi risultati in conoscenze biologicamente informative e getta le basi per analisi di follow-up basate su grafici.

Divulgations

The authors have nothing to disclose.

Acknowledgements

Questo lavoro è stato supportato dal National Institutes of Health (NIH) R35 HL135772 a P.P., NIH T32 HL13945 ad A.R.P. e DS, NIH T32 EB016640 ad A.R.P., National Science Foundation Research Traineeship (NRT) 1829071 ad A.R.P. e DS, NIH R01 HL146739 per I.A., J.R., A.V., K.B. e il TC Laubisch Endowment a PP presso l’UCLA.

Materials

Software – Docker Docker N/A docker.com

References

  1. The UniProt Consortium et al. UniProt: The universal protein knowledgebase in 2021. Nucleic Acids Research. 49, D480-D489 (2021).
  2. Davis, A. P., et al. Comparative toxicogenomics database (CTD): Update 2023. Nucleic Acids Research. 51, D1257-D1262 (2023).
  3. Mohtashamian, M., Abeysinghe, R., Hao, X., Cui, L. Identifying missing IS-A relations in orphanet rare disease ontology. Proceedings. IEEE International Conference on Bioinformatics and Biomedicine. 2022, 3274-3279 (2022).
  4. Rehm, H. L., et al. ClinGen – The clinical genome resource. New England Journal of Medicine. 372 (23), 2235-2242 (2015).
  5. Caulfield, M., et al. . The National Genomics Research and Healthcare Knowledgebase. , (2019).
  6. Ma, X., Lee, H., Wang, L., Sun, F. CGI: A new approach for prioritizing genes by combining gene expression and protein-protein interaction data. Bioinformatics. 23 (2), 215-221 (2007).
  7. Gutiérrez-Sacristán, A., et al. Text mining and expert curation to develop a database on psychiatric diseases and their genes. Database. 2017, 043 (2017).
  8. Sigdel, D., et al. Cloud-based phrase mining and analysis of user-defined phrase-category association in biomedical publications. Journal of Visualized Experiments. (144), e59108 (2019).
  9. Yu, K. -. H., et al. Systematic protein prioritization for targeted proteomics studies through literature mining. Journal of Proteome Research. 17 (4), 1383-1396 (2018).
  10. Lau, E., et al. Identifying high-priority proteins across the human diseasome using semantic similarity. Journal of Proteome Research. 17 (12), 4267-4278 (2018).
  11. Pletscher-Frankild, S., Pallejà, A., Tsafou, K., Binder, J. X., Jensen, L. J. DISEASES: Text mining and data integration of disease-gene associations. Methods. 74, 83-89 (2015).
  12. Liu, Y., Liang, Y., Wishart, D. PolySearch2: A significantly improved text-mining system for discovering associations between human diseases, genes, drugs, metabolites, toxins and more. Nucleic Acids Research. 43, W535-W542 (2015).
  13. Minot, S. S., Barry, K. C., Kasman, C., Golob, J. L., Willis, A. D. geneshot: Gene-level metagenomics identifies genome islands associated with immunotherapy response. Genome Biology. 22 (1), 135 (2021).
  14. Lee, S., et al. BEST: Next-generation biomedical entity search tool for knowledge discovery from biomedical literature. PloS One. 11 (10), 0164680 (2016).
  15. Wei, C. -. H., Allot, A., Leaman, R., Lu, Z. PubTator central: Automated concept annotation for biomedical full text articles. Nucleic Acids Research. 47 (W1), W587-W593 (2019).
  16. Jimeno-Yepes, A. J., Sticco, J. C., Mork, J. G., Aronson, A. R. GeneRIF indexing: Sentence selection based on machine learning. BMC Bioinformatics. 14 (1), 171 (2013).
  17. Wei, C. -. H., et al. tmVar 2.0: Integrating genomic variant information from literature with dbSNP and ClinVar for precision medicine. Bioinformatics. 34 (1), 80-87 (2018).
  18. Maglott, D., Ostell, J., Pruitt, K. D., Tatusova, T. Entrez Gene: Gene-centered information at NCBI. Nucleic Acids Research. 33, D54-D58 (2005).
  19. Piñero, J., et al. The DisGeNET knowledge platform for disease genomics: 2019 update. Nucleic Acids Research. 48, D845-D855 (2019).
  20. Lee, J., et al. BioBERT: A pre-trained biomedical language representation model for biomedical text mining. Bioinformatics. 36 (4), 1234-1240 (2020).
  21. Szklarczyk, D., et al. STRING v11: Protein-protein association networks with increased coverage, supporting functional discovery in genome-wide experimental datasets. Nucleic Acids Research. 47, D607-D613 (2019).
  22. Gillespie, M., et al. The reactome pathway knowledgebase 2022. Nucleic Acids Research. 50, D687-D692 (2022).
  23. Fang, L., et al. GRNdb: Decoding the gene regulatory networks in diverse human and mouse conditions. Nucleic Acids Research. 49, D97-D103 (2021).
  24. Doğan, T., et al. CROssBAR: Comprehensive resource of biomedical relations with knowledge graph representations. Nucleic Acids Research. 49 (16), 96 (2021).
  25. Fernández-Torras, A., Duran-Frigola, M., Bertoni, M., Locatelli, M., Aloy, P. Integrating and formatting biomedical data as pre-calculated knowledge graph embeddings in the Bioteque. Nature Communications. 13 (1), 5304 (2022).
  26. Himmelstein, D. S., et al. Systematic integration of biomedical knowledge prioritizes drugs for repurposing. eLife. 6, e26726 (2017).
  27. Zheng, S., et al. PharmKG: A dedicated knowledge graph benchmark for biomedical data mining. Briefings in Bioinformatics. 22 (4), (2021).
  28. Morselli Gysi, D., et al. Network medicine framework for identifying drug-repurposing opportunities for COVID-19. Proceedings of the National Academy of Sciences of the United States of America. 118 (19), 2025581118 (2021).
  29. Santos, A., et al. A knowledge graph to interpret clinical proteomics data. Nature Biotechnology. 40 (5), 692-702 (2022).
  30. Cappelletti, L., et al. GraPE: Fast and scalable graph processing and embedding. arXiv. , (2021).
  31. Yang, B., Yih, W., He, X., Gao, J., Deng, L. Embedding entities and relations for learning and inference in knowledge bases. arXiv. , (2014).
  32. . Neo4j Graph Data Platform Available from: https://neo4j.com/ (2022)
  33. Shannon, P., et al. Cytoscape: A software environment for integrated models of biomolecular interaction networks. Genome Research. 13 (11), 2498-2504 (2003).

Play Video

Citer Cet Article
Pelletier, A. R., Steinecke, D., Sigdel, D., Adam, I., Caufield, J. H., Guevara-Gonzalez, V., Ramirez, J., Verma, A., Bali, K., Downs, K., Wang, W., Bui, A., Ping, P. A Knowledge Graph Approach to Elucidate the Role of Organellar Pathways in Disease via Biomedical Reports. J. Vis. Exp. (200), e65084, doi:10.3791/65084 (2023).

View Video