Major Study./Bioinformatics

Radiology reports의 Causal relationship

sosal 2023. 12. 14. 07:34
반응형

Informatics in Radiology: Radiology Gamuts Ontology: Differential Diagnosis for the Semantic Web

 

 

 

Charles E. Kahn, Jr., 교수님께서 스탠포드에 방문하셔서 좋은 강의를 해주셨다.

아래는 발표를 들으면서 정리한 내용이다.

 

 

Radiology reports의 text data와, Bayesian network를 활용해서,

Pair-wise statistics보다 더 좋은 Ontology간의 causal relationship을 추론하는 연구이다.

 

JOURNAL OF THE AMERICAN MEDICAL INFORMATICS ASSOCIATION (JAMIA)에 실린 논문

이 저널은 IF가 막 높진 않지만, 사실상 medical informatics 분야의 탑저널.

 

 

 

 

Radiology Gamuts Ontology (RGO)

The Radiology Gamuts Ontology (RGO) is a formal knowledge model of differential diagnoses in radiology that includes 1674 differential diagnoses,

19,017 terms, and 52,976 links between terms.Jan 1, 2014
16839 disorders, interventions,

 

RGO는 방사선학에서 차별 진단을 위한 지식 모델이다.

1,674개의 차별 진단, 19,017개의 용어, 그리고 이 용어들 간의 52,976개의 연결을 포함

연구에서 분석된 RGO의 질병과 영상 소견은 16,839개이다


주요한 RGO의 Ontology term들의 정의는 다음의 데이터들을 포함

RadLex, SNOMED Clinical Terms, the Disease Ontology, Human Phenotype Ontology,, Orphanet Rare Disease Ontology

 

 

 

Named entity recognition (NER)

Named entity를 정리하는 전처리는, 이 연구에서 사실상 가장 중요한 부분이다.

예를 들어, "galstones" 이란 단어는 다음과 같이 reports에 나타날 수 있다.

- gallstone

- gall stone

- gall stones

- cholelithiasis

- cholelith

- choledocholithiasis

- cholecystolithiasis

- gallbaldder calculus

....

 

따라서, radiology reports에서 RGO(Radiology Gamuts Ontology)를 인식하기 위해

자연어 처리(NLP)의 하위 유형인 명명된 엔티티 인식(NER)을 수행하였다.

 

또한, 각 단어를 확장하여 구문을 포함시키는 과정을 Query expansion이라 한다.

Query expansion: (동의어, 어휘변형, 등등 단어로부터 개념 확장)

 

이 과정에서 RGO 자체의 동의어뿐만 아니라 RadLex 및 SNOMED Clinical Terms와 같은 연결된 온톨로지의 동의어도 포함하였고, Nuance mPower와 같은 상용 텍스트 검색 알고리즘을 사용하였다.

# Commercial radiology-report search tool (Nuance mPower)

 

 

 

- RGO Entities

각 환자에 대한 Radiology Reports를, 35071개의 entity로 matrix를 만든 결과.

환자는 1,396,293명.

각 점은 RGO entity가 radiology reports에 존재함을 의미함.

 

정말 sparse 한 matrix가 만들어진다.

 

 

 

 

Causality

인과성에 대한 이해: 간단히 말해, 'A가 B를 일으킨다'는 것을 의미한다.

  1. 사전 확률(Prior Probability) P(B): 이는 B가 일어날 기본적인 확률입니다. 다른 어떤 정보 없이 B가 발생할 확률을 나타냅니다.
  2. 조건부 확률(Conditional Probability) P(B|A): A가 주어졌을 때 B가 일어날 확률입니다. 이 확률은 A가 발생한 후에 B가 발생할 확률을 나타냅니다.

A causes B라는 가정 하에,

P(B|A) >= P(B)

 

B가 일어날 Prior probability보다, A가 주어졌을 때 B가 일어날 Posterior probability가 당연히 높아야한다.

조건부 확률 Conditional probability: P(B|A) = P(B, A) / P(A)

 

 

Pairwise statistics

Phi coefficient (Φ)

Cohen's kappa (κ)

이러한 지표들은 두 변수 간의 관계의 강도나 일관성을 수치적으로 나타낸다.

 

 

Confounding factors

Correlation is not Calsuality

보통 Icecream을 먹으면, 상어에게 물린다! 라는 농담을 많이 얘기하는데,

사실 아이스크림 소비량은 상어공격에 절대 causal factor가 될 수 없다.

단순히 association일 뿐, A가 B를 일으킨다는 개념이 포함되지 않는다.

 

 

 

 

 

# Bayesian networks (Thomas bayes)

이 논문에서는 causality inference를 bayesian network를 활용하여 수행하였다.

Scutari, Marco. "Learning Bayesian networks with the bnlearn R package." arXiv preprint arXiv:0908.3817 (2009).

 

https://www.bnlearn.com/examples/

Score functions: computing & comparing
    - Loading the reference data sets
    - Computing a network score
    - Testing score equivalence

 

베이지안 네트워크의 구조 학습 과정에서 네트워크의 가능한 구조들을 평가하기 위해 사용되는 함수.

Bayesian Information Criterion (BIC)는 네트워크가 얼마나 데이터를 잘 설명하는지 (적합도), 그리고 파라미터 수를 고려해서 계산되고, 가장 점수가 낮은 네트워크를 추론한다. (최적의 네트워크 구조 추론)


노드 (Nodes): 각 노드는 RGO의 한 엔티티를 의미. (특정 질병, 진단, 표현형, 임상변수 등등)
엣지 (Edges): 엣지는 두 엔티티 간의 가능한 인과 관계.

Node: included RGO entities

(states = present, absent)

 

BIC를 직접 써본적은 없지만, 내가 이해하기로는

반복(iteration)에 따라, 정의된 Node간의 아크(엣지)를 삽입, 제거 또는 반전시키며,

네트워크의 BIC 점수를 계산하여 가장 적합한 네트워크 구조의 적합성을 평가.

 

이렇게 예측된 각 노드간의 인과관계를 간단한 pair-wise statistics에서 활용하는 통계로 성능 검증.

 

Uncertain variables: such as diagnosis

Observable variables, such as physical findings, lab test results, and imaging fnds

 

 

얘기하다 갑자기 bayesian theory 기초적인 부분을 얘기하는데, 생각없이 적었는데 너무 기본적인 내용..

Bayes Net: A graph (node, edge)

Node: represnet stochastic variables

Edge: between nodes indicate probabilisitc influence

- directed, acycle

 

[Brest cancer]

- Present (1.0%)

- Absent (99.0%)

 

condition: Mammograpm

 

Posterior probability

Confusion matrix by mammography

Yes: 8.3%

No: 91.7%

 

데이터가 워낙 sparse 하고, rare event가 네트워크에 악영향을 끼칠 것이므로,

Exclude entities seen in <25 patients 하여 학습 진행

 

 

The Bayesian network algorithm evaluated more than 12,440,441 possible associations;

the final model identified 725 pairs of probabilistically related entities.

 

 

 

bnlearn hill-clmbing algorithm

Bayesian Information Criterion (BIC) for network scores

Scutari M. Learning Bayesian networks with the bnlearn R package. J Stat Soft 2010; 35 (3): 1–22. doi: 10.18637/jss.v035.i03.

 

No pre-seeded graph, no domain knowledge

Threshold p<0.5

 

 

 

 

RGO, Physician review를 기반으로 Ground truth 결정

(RGO and/or physician consensus served as ground truth)

 

 

 

 

 

PPV( Precision ) = 634/725 (87%)

recall (Sensitivity) = 216/3804 (5.7%)

specificity = 1

Positive Likelihood Ratio (PLR) = 6876

 

Algorithm increased the odds of detected a true causal association

-> Specificity는 100%, 그러나 낮은 Sensitivty. 얼마나 challenging한 문제인지 알 수 있음.

 

 

 

## Discussion

One can discover causal relations from text!

 

Bayes nets > Pairwise statistics

- able to exclude confounding variables

 

Sparseness of data limits analysis

Cirrhosis: 5275 patients (0.38%)

 

 

 

** Future work

More data : ~20M reports each from Penn + Mayo

 

More entities

- Gamuts, RadLex, SNOMED CT, DO, HOP

More sophisticated analysis

LLM model to improve negex detection

 

 

 

질의 시간에 ChatGPT 관련된 많은 얘기가 있었는데,

 

chatGPT가 무슨 전력소모가 얼마나 많고 이런얘기들 하고있었다.

또한 Radiology department의 informatics 하시는 분들이 많이 오셔서,

Medical image로부터 text를 추출하는 등의 연구에 대한 얘기들이 있었는데,

 

솔직히 전혀 흥미롭지 않았다.