[Paper Review] CURE: Context- and Uncertainty-Aware Mental Disorder Detection
논문링크
https://aclanthology.org/2024.emnlp-main.994/
Introduction
시간적, 공간적 제약 없이 온라인에서 정신 건강 전문가와 유사한 경험을 공유하는 많은 동료들과 개인을 연결하는 소셜 미디어는 정신 장애 감지에 널리 사용되는 수많은 데이터를 채우고 있다. 현재 정신적 장애 탐지의 중요성과 풍부한 데이터의 접근성은 연구 커뮤니티에서 정신 장애 탐지를 위한 딥러닝 모델 개발하고 있다. 하지만 최근에 나온 모델들은 정신적 장애에 대해 탐지를 잘 하지만 왜 탐지를 잘하는지에 대해서 설명능력이 매우 부족해서 블랙박스로 여겨지고 있다.
모델의 설명 가능성의 중요성을 활용하여 정신 장애를 감지하는 데 있어 정신 장애를 감지하는 데 있어 정신과적 증상을 찾는 몇 가지 시도가 있었다. 이러한 방법들은 증상 기반의 모델이며, 두 가지 단계로 구성되어 있다.
- 유저가 생성한 포스트로 부터 증상을 파악
- 증상 벡터를 이용한 정신적 장애를 탐지하는 질병 탐지
이러한 접근 방식은 고성능 정신 장애를 감지할 뿐만 아니라 증상 벡터를 사용하여 증상 발생 가능성에 따른 결정을 해석할 수 있으므로 모델 결과에 대한 해석 가능성을 제공한다.
하지만 증상 기반의 방식에서 증상 벡터만 이용하는 것은 증상과 질병에 관한 문맥적 정보를 파악하는데 정신 장애를 위한 탐지에 부정확한 결과를 초래할 수 있다. 예를 들면 다음과 같다.
- I feel sad because I failed my exam yesterday.
- I have been feeling sad for a month
여기서 증상 기반의 모델들은 두 포스트 둘 다 정신장애로 분류한다. 증상 기반의 모델은 단순히 기간보다 단어와 관련해서 파악하기 때문에 부정확한 탐지가 많이 나오게 된다.
이러한 한계를 파악하고 논문에서는 CURE(Context- and Uncertainty-aware Mental DisoRder DEtection) 방식을 소해한다. 이 방식은 정신 장애를 탐지하는 새로운 방식이다.
- 증상의 가능성이나 존재 및 문맥적 정보를 사용
- 증상 정의로부터 잠재적 불확실성을 줄임
여기서 제시된 모델은 자연어 이해 능력이 뛰어난 LLM을 이용해 사전 정의된 상황에 대한 요소들을 효과적으로 추출한다. 특히, 정신과 의사의 지침에 따라서 5가지 sub-models과 불확실성 인식 의사 결정 융합 네트워크로 구성되어 있는 모델이다. 이를 통해 특정 게시물에서 증상이 거의 포착되지 않더라도 정신 장애를 정확하게 탐지할 수 있다.
Dataset Construction
여기서 모델의 평가를 위한 데이터셋을 생성하였다. KoMOS(a novel Korean Mental health dataset with Mental disOrder and Sympotms)데이터셋이다.
Data Collection
데이터는 한국인들에게 친숙한 네이버 지식인에서부터 데이터 모았다. 데이터는 네이버 지식인에서 정신 건강 카테고리에서 2008년 ~ 2021년 9월까지의 업로드된 데이터로부터 검증된 정신과 의사가 대답한 포스트를 모았다. 모든 데이터는 수동으로 필터링을 진행했다. 공인 정신과 의사가 정보 부족으로 인해 정신 장애 결정을 보류하지 않는 쌍을 걸러내어 약 8,000개의 Q&A 데이터셋을 확보했다.
Data Annotation
Disorder Labeling
게시물에 장애 라벨을 할당하기 위해, 우리는 먼저 인증된 정신과 의사가 작성한 Q&A 쌍의 답변에서 장애 결정 내용을 추출했다. 그런 다음 데이터셋에서 네 가지 주요 장애를 가진 게시물을 선택했다: (i) 우울 장애, (ii) 불안 장애, (iii) 수면 장애, (iv) 섭식 장애. 전문가가 기술된 상태나 신체 반응이 즉각적인 스트레스에 의해 유발되거나 일반적인 상태와 크게 다르지 않다고 명시적으로 언급한 게시물들을 '비질환'으로 라벨링 했다. 선택된 게시물의 총 수는 6,349개다.
Symptom Labeling & Validation
장애 라벨링과 달리, 우리는 증상이 답변에 명시적으로 나타날 가능성이 낮기 때문에 증상을 주석 처리하기 위한 새로운 프로세스를 설계했다. 정신과 의사가 목록을 정제하여 총 28개의 증상 라벨을 도출하여 라벨링을 진행했다. 특히 여기서 두 명의 추가 정신과 의사를 통해 데이터를 검증했다.
Model Construction
모델은 크게 3가지 주요 파트로 구성된다.
- Feature Extraction : 유저의 포스트로부터 증상과 문맥적 정보를 포함한 필요 정보를 추출
- Model Prediction : 다양한 특징들로 훈련된 서브 모델들을 이용한 예측
- Uncertainty-aware Decision Fusion : : SNGP를 이용한 예측의 불확실성 예측 및 정형화된 불확실성과 예측을 합친 최종 예측 생성
밑에서 이에 대해서 자세하게 설명하려고 한다.
Feature Extraction
각 게시물에는 증상의 지속 시간이나 빈도와 같은 관련 콘텍스트 정보가 기본적으로 포함되어 있으므로 인코딩된 게시물의 임베딩을 컨텍스트 정보로 활용할 수 있다. 하지만 이러한 방식은 키워드에 의존할 확률이 높아서 여기에서는 게시물에서 각 증상에 대한 상황 정보를 추출하는 것이 목표다.
그래서 여기에서는 8가지 context factor을 정의한다. Cause, Frequency, Duration, Age, and four types of Affects - Social, Academic, Occupational, and Life-threatening. 여기서 2가지 방식으로 정보를 추출한다.
- 카테고리(Category): 정의된 기준에 따라 분류된 숫자 값으로 표현됩니다. 예를 들어, 증상이 한 달 미만이면 0, 한 달 이상이면 1로 표시.
- 증거(Evidence): 텍스트에서 맥락에 대한 직접적인 표현을 추출. 예를 들어, "2년 동안"과 같은 표.
여러 수식이 나오는데 정리하면 다음과 같다.
- 맥락 카테고리($C_i$) : 정의된 기준에 따라 분류된 맥락 요인
- 숫자 값($n_i$) : 맥락 카테고리에 해당하는 숫자 값
- 맥락 증거($e_i$) 텍스트에서 직접 추출한 맥락에 대한 표현
- 숫자 값 벡터 ($N$) : 모든 $n_i$ 값들의 연결
- 증거 벡터 ($E$) : 모든 $e_i$값들의 연결
- 증상 ($S$) : LLM을 통해 추출한 사용자 게시물의 증상
맥락 요인 $C_i = {c_1,...,c_s}$는 다음과 같이 추출된다.
여기서 $n_i$는 맥락 카테고리에 대한 숫자 값을 나타내며, $N = \{n_1,...,n_s\}$는 이 값들의 연결이다. 마찬가지로, $e_i$는 맥락 증거를 나타내며, $ E = \{e_1,...,e_s\}$는 이 증거들의 연결된 벡터이다.
Model Predictions
증상과 맥락 정보를 모두 고려하는 직관적인 접근법은 이를 입력 특징으로 사용하여 모델을 훈련하는 것이지만, 본질적으로 다른 성질의 특징을 결합하면 서로 간섭하여 최적 이하의 성능을 초래할 수 있기에 여러가지 서브모델을 구성하여 따로 학습을 시켜 여러가지 특성을 활용한다.
- BERT_post: 게시물 내용 $p$만을 활용한다.
- BERT_context: 맥락 증거 $E$만을 사용하며, LLM에서 추출한 증상과 함께 사용한다.
- Symp_symptom: 증상 벡터 $S$만을 활용한다.
- Symp_context: 증상과 맥락 카테고리 두 벡터 $\{S;N\}$를 연결하여 입력으로 고려한다.
- GPT-4o: 사용자의 게시물 $p$를 입력으로 활용한다.
우리는 정의된 특징에 따라 각 모델을 훈련하고, 이러한 모델들로부터 예측 결과 $D={d_1,…,d_5}$를 얻는다.
Uncertainty-Aware Decision Fusion
서브 모델들의 예측을 융합하여 최종 의사 결정을 하기 위해, 우리는 불확실성 인식 의사 결정 융합 네트워크를 도입합니다. 이를 위해 먼저 각 예측의 불확실성을 정량화한다. 불확실성은 모델 예측의 신뢰도를 반영하므로, 최종 의사 결정 과정에서 불확실성이 높은 모델들의 영향은 감소되어야 한다. 이 접근 방식은 증상 식별에서 오류를 방지하여 견고한 결정을 내리는 데 도움이 된다. 증상 식별을 위한 모델인 BERT_symp의 불확실성을 추정하며, 그 불확실성은 예측된 증상에 대한 신뢰도를 반영하며 불확실성은 $U$로 표시한다.
우리는 추정된 불확실성 $와 서브 모델들의 모든 예측 $D$를 융합하여 최종 결정을 한다. 그 후, 데이터는 모든 서브 모델들의 예측을 그들의 불확실성 값과 함께 융합하는 MLP 계층을 통과한다. 식은 다음과 같다.
$ H = \sigma(W_1 \cdot \text{CONCAT}(U, D) + b_1) $
$ \hat{y} = \text{sigmoid}(W_3 \cdot \sigma(W_2 \cdot H + b_2) + b_3) $
Experiments
Setup
- Dataset split : 8 : 2
- Model : BERT, Symp
- Learning Rate : 0.003
- Batch size : 64
- optimizer : AdamW
- Metric : Recall, F1 Score
Evaluation on Feature Extraction
Cause를 제외한 나머지 부분에서 약 93%의 정확도를 나타냈다.
Evaluation on metal Disorder Detection
Overall Performance
Table 1을 통해 알 수 있는 점은 크게 4가지이다.
- 제안된 방법의 성능 :제안된 방법은 가장 높은 F1 점수를 기록했으며, 모든 카테고리에서 높은 재현율(Recall)을 유지하여 기준 모델들을 능가함.
- 단일 특징을 사용하는 모델의 한계 : 단일 특징을 사용하는 모델은 질병 예측에서 높은 민감도를 보였으나, 질병과 비질병 사례를 구분하는 데 어려움을 겪어 비질병 카테고리에서 낮은 성능을 보임.
- PsyEx의 강점 : 증상과 게시물 특징을 모두 활용하는 PsyEx는 풍부한 정보를 기반으로 비질병 사례를 잘 탐지하는 강점을 보임.
- PsyEx의 한계 : PsyEx는 특히 우울 장애와 수면 장애와 같은 질병 탐지에서 제한적인 성능을 보임.
Performance on LLMs
- LLM의 과잉 진단 경향 :LLM은 정신 장애 탐지에서 질병 카테고리에서는 높은 성능을 보였지만, 비질병 사례에서는 낮은 성능을 보이며 과잉 진단 경향을 나타냄.
- 정확한 진단 능력 부족 :LLM은 정신 장애와 관련된 정보를 식별할 수 있지만, 정확한 진단 결정을 내리는 데 필요한 전문성이 부족함.
- MentalLLaMA의 낮은 성능 :정신 건강 데이터셋에 최적화된 MentalLLaMA는 다른 GPT 기반 모델들에 비해 성능이 현저히 낮았음.
- LLM 활용의 한계 : LLM은 정신 건강 관련 정보 탐지에는 유용하지만, 비질병과 질병을 명확히 구분하는 데 한계가 있음.
Ablation Study
- 구성 요소 제거 시 성능 저하 :각 구성 요소가 제거되었을 때 성능이 저하되었으며, 특히 모든 카테고리에서 재현율(Recall)에 큰 영향을 미침.
- 맥락 정보의 중요성 : 맥락 정보는 질병과 비질병 사례를 정확하게 식별하는 데 중요한 역할을 함.
- 불확실성 활용의 효과 :최종 의사 결정 과정에서 불확실성을 효과적으로 활용하면 전반적인 성능이 향상됨.
Conclusion
새로운 접근법 제안 본 연구에서는 정신 장애 탐지를 위한 새로운 접근법을 제안했으며, 맥락 정보를 활용해 더 정확한 탐지를 수행하고, 불확실성 인식 의사 결정 융합 네트워크를 사용해 오류를 줄였다. KoMOS 데이터셋 개발 한국 최초의 정신 건강 데이터셋인 KoMOS를 개발했으며, 이는 인증된 연구자들에게 공개될 예정이다.
'Paper > Model' 카테고리의 다른 글
[Model Review] QWEN2 Technical Report (0) | 2024.10.24 |
---|---|
[Model Review] Orion-14B: Open-Source Multilingual Large Language Models (1) | 2024.09.20 |