4. Gyeonghun Kim1.png Gyeonghun Kim 2022.10.27

JYR_24846be11.png Youngrok Jang 2022.10.27

[CLEF 2022] Context Aware Named Entity Recognition and Relation Extraction

LG AI연구원은 세계적 과학 학술 분야 선두 출판사 Elsevier와 공동으로 화학 분야의 Information Extraction 기술을 연구하고 있습니다. Information Extraction이란 비정형화 텍스트로부터 구조화된 정보를 자동으로 추출하는 기술입니다. Elsevier는 다양한 화학 저널, 특허를 활용하여 데이터베이스를 구축하고, Reaxys[1]라는 웹 기반 서비스를 통해 원문뿐만 아니라 화학 실험, 물질 등의 정보를 구조화된 형태로 제공하고 있습니다. 이는 화학자들이 연구에 필요한 정보를 얻기 위해 문서를 하나하나 찾고 조사하는 시간을 줄이는 데 크게 도움이 됩니다. 이때 Reaxys 서비스 구성에 필수적인 것이 Information Extraction 기술입니다. 매년 수많은 화학 저널, 특허가 다양한 형태로 등장하고 있고 이로부터 필요한 정보를 자동으로 추출하여 데이터베이스를 구축해야 화학자에게 필요한 정보를 정리하여 제공할 수 있습니다.

Elsevier는 CLEF (Conference and Labs of the Evaluation Forum) 2022에서 화학 특허에서 화학 반응 정보를 추출하는 것을 목표로 하는 ChEMU (Cheminformatics Elsevier Melbourne Universities lab)[2] Challenge를 개최한 파트너사 중 하나입니다. Elsevier의 소개로 이번 행사에 참여한 LG AI연구원은 Challenge에서 공개한 다섯 개의 Task 중에서 두 개의 Task에 참여하였고 참가한 네 개의 팀 중 가장 높은 성능을 달성했습니다. 이번 글에서는 LG AI연구원 Language lab에서 참여한 두 개의 Task와 이에 적용된 기술인 화학 특허에서 화학 반응 정보를 추출하는 기술을 소개하려고 합니다.

 

Task

ChEMU 2022에서는 총 다섯 개의 Task를 공개했으며 그중 LG AI연구원이 참가한 두 개의 Task는 각각 1a와 1b입니다. 각 Task는 Figure 1에서 볼 수 있듯 화학 특허에서 화학 반응에 관해 설명하는 부분의 snippet으로부터 필요한 정보를 추출하는 것입니다.

 

Figure 1. ChEMU2022에서 Task 1a와 1b의 예시

 

Task 1a (Named Entity Recognition)

- 화학 반응을 설명하는 화학 물질, 수치 정보 등의 Entity를 추출
- EXAMPLE_LABEL, REACTION_PRODUCT, STARTING_MATERIAL 등 총 10개의 Entity로 구성

 

Task 1b (Event Extraction) (Named Entity Recognition)

-화학 반응을 설명하는 Trigger word를 추출하고 추출한 Trigger word와 Entity 간 Relation을 추출
-WORKUP, REACTION_STEP 두 개의 Trigger Word와 ARG1, ARG M 두개의 Relation으로 구성

 

각 Task는 Exact Match와 Relaxed Match 두 가지로 F1 Score를 사용하여 평가합니다. Task 1a의 경우 예측한 Entity의 Type과 구성하는 Text인 Position이 정답과 일치하는지를 평가합니다. 단, Exact Match의 경우 Span이 정확히 일치해야 하고 Relaxed Match의 경우 Span에 조금이라도 겹치는 텍스트가 있으면 점수를 획득합니다. Task 1b는 Trigger Word와 Relation이 모두 일치하는지를 평가하며 Trigger Word의 경우 Task 1a와 유사하게 평가합니다.

Challenge에서 측정된 F1 Score는 Public Score와 Private Score 두 가지로 나누어 공개했습니다. Public Score는 제출 마감일 전에 사전 공개된 점수로, 전체의 30% 데이터에 대한 평가 결과이고, Private Score는 제출 마감일 이후에 공개된 점수로, 전체의 70% 데이터를 평가한 결과입니다.

 

Contributions

이번 섹션에서는 참여한 Task에서 성능 개선에 기여한 다섯 가지 Contribution을 소개하고자 합니다.

 

1. Domain-specific language model

Task에 주어진 데이터는 제한적이기 때문에 대용량 데이터로 사전 학습된 Language model이 필요합니다. 본 논문에서는 NER (Named Entity Recognition), RE (Relation Extraction)와 같은 Task에서 여전히 강세를 보이고 있는 Encoder 기반의 모델을 화학 분야의 텍스트로 학습하여 Domain-specific language model을 구축하였습니다. 시간이 충분했다면 scratch부터 모델을 학습했겠지만 그렇지 않아 화학 분야와 유사한 생물의학 분야에서 높은 성능을 보이는 Bio-LinkBert[3]를 Post-training 했습니다.

학습을 위해 활용한 데이터는 화학 특허(23GB), 저널(22GB)과 Bio-LinkBert 학습에 활용됐던 생물의학 분야의 텍스트로 구성된 Pubmed(20GB)입니다. 다양한 데이터의 조합으로 실험을 수행했고 화학 저널과 Pubmed[4]를 활용하여 학습한 모델의 성능이 가장 높았습니다. ChEMU 2022의 Task 1a와 1b에 대해 평가했을 때는 Table 1과 같이 공개된 다른 모델보다 Task 1a에서 높은 성능을 달성했습니다.

 

Table 1. 자체 개발한 Domain-specific language model(Ours)과 공개된 생물의학 분야의 다른 language model을 활용했을 때 ChEMU 2022 Task 1a와 1b의 성능 비교

 

2. NER (Named Entity Recognition) & RE (Relation Extraction) model

저희는 앞서 설명한 Domain-specific language model을 활용하여 Task 1a와 1b에 적합한 형태의 NER, RE 모델을 개발했습니다. NER 모델은 Task 1a의 Entity와 Task 1b의 Trigger Word를 추출하고 RE 모델은 Task 1b의 Entity와 Trigger Word 간 Relation을 추출하는 데 사용합니다.

NER, RE를 한 개의 모델로 개발해 Multi-task로 학습하는 방식도 있지만 Table 2에서와 같이 [5]에서 각 Task 별 모델을 학습하는 것이 높은 성능을 보인다는 실험적 결과를 참고하여 두 개의 모델을 따로 제작해 Pipeline 방식으로 동작하도록 했습니다.

Table 2. News로부터 정보를 추출하는 ACE05 dataset에 NER, RE 모델을 Multi-task로 학습한 단일 모델 혹은 Pipeline으로 동작하는 두 개의 모델로 학습했을 때의 성능 차이

 

NER 모델은 대표적으로 Sequence tagging approach[7]와 Span-based approach[5][6]가 있습니다. Sequence tagging approach는 Token들을 각각 BIO Tag로 분류하는 방식입니다. 이에 반해, Span-based approach는 Entity가 될 수 있는 모든 Span을 특정 entity type 혹은 no-entity로 분류하는 방식입니다. 여기서 Span이란 보통 특정 길이 이하의 모든 Token Sequence를 의미합니다.

 

Figure 2. Span-based approach와 Sequence tagging approach의 예시

 

저희는 Table 3과 같이 두 가지를 모두 실험한 뒤, Span-based approach보다 더 높은 성능을 보여주는 Sequence tagging approach를 최종 선택했습니다. 이와 같은 결과가 나온 이유는 ChEMU 데이터 특성상 Entity를 구성하는 Token의 수가 많은 경우가 있어 모든 Span을 분류하는 Span-based approach가 적합하지 않기 때문입니다. 또한, Sequence tagging approach로 모델 개발 시 Classification layer를 Dense layer뿐만 아니라 CRF (Conditional Random Field)로도 설정해 실험해보았으나 그 결과가 성능 면에서 큰 차이를 보이지 않아 둘 중 비교적 속도가 빠른 Dense layer를 활용했습니다.

 

Table 3. NER 아키텍쳐에 따른 ChEMU 2020의 NER에서의 성능 비교
(ChEMU 2020의 NER task는 2022와 같지만 보다 적은 데이터로 학습 및 평가를 수행함. ChEMU 2022 평가를 위해서는 모델을 ChEMU 웹페이지에 등록해야 하는데 모든 모델을 등록해 평가하는 것이 적합하지 않아 공개된 2020의 데이터로 평가

 

RE 모델은 NER에서 추출한 모든 Entity와 Trigger Word 간 쌍을 만들어 특정 Relation type 혹은 No-relation으로 분류합니다. 이를 위해 Figure 3과 같이 모델의 입력 데이터를 구성합니다. Entity의 앞뒤와 Trigger Word의 앞뒤에 각 Type과 앞뒤 여부를 나타내는 Special Token을 추가합니다. 이렇게 구성된 데이터를 Language model에 입력하고 Entity와 Trigger Word 앞의 Special Token의 Representation을 각각 이어 붙여 해당 쌍의 Relation을 분류하는 데 활용합니다.

 

Figure 3. Entity와 Trigger Word 쌍의 Relation을 분류하기 위한 모델의 입력 데이터 구성 예시

 

3. Pre-processing methods

Task 1a와 1b의 데이터는 화학 특허를 OCR을 통해 텍스트로 변환한 후 화학 반응을 설명하는 Snippet 부분을 추출하여 생성했습니다. 주어진 데이터를 전처리하여 모델의 입력 데이터로 만드는 방식에 따라 성능의 차이가 발생할 수 있습니다.

Figure 4는 데이터의 예시로 각 텍스트의 색상은 OCR 결과에서 본 각 Line의 텍스트를 나타냅니다. 보통 OCR은 문단 혹은 섹션 등이 나뉘었을 때 Line을 나누어 데이터를 생성합니다.

 

Figure 4. ChEMU 2022에서 제공한 화학 특허의 Snippet 예시

 

주어진 데이터를 모델의 입력 데이터로 만들 때 가장 중요한 점은 모델의 최대 입력 길이인 512 tokens를 넘지 않는 범위에서 가능한 많은 token을 포함하는 데이터를 만드는 것입니다. 이는 모델이 Task 1a, 1b에서 Entity 혹은 Relation을 예측할 때 주변 텍스트의 정보가 필요할 뿐만 아니라 때때로는 꽤 멀리 떨어진 텍스트의 정보를 요구하기도 하기 때문입니다.

이 조건을 충족하는 가장 간단한 방법은 Line 내에서 모델의 최대 입력 길이인 512 tokens 넘지 않는 범위에서 가능한 많은 텍스트를 포함한 데이터를 만드는 것입니다. 하지만, 데이터를 분석해보니 몇몇 Entity는 다른 Line에 있는 텍스트 정보를 참고해야 추출이 가능하고 어떤 Relation은 여러 Line에 걸쳐 있는 것을 알 수 있었습니다. 따라서 Figure 5와 같이 Line을 구분하지 않고 전체 Snippet에서 512 tokens를 넘지 않으며 최대한 많은 문장을 포함하는 방식으로 NER 모델의 입력 데이터를 생성했습니다. RE 모델의 경우 Entity와 Trigger Word 사이의 텍스트와 더불어 주변의 텍스트를 최대한 많이 포함하도록 데이터를 생성하였습니다.

 

Figure 5. Snippet 단위로 전처리 후 생성한 NER 입력 데이터의 예시

 

이 방법은 매우 간단하면서도 Table 4와 같이 성능을 크게 개선할 수 있습니다. 모델의 입력 데이터를 Line 단위가 아닌 Snippet 단위로 구성한 경우, NER 모델에서는 Public, Private EM f1 score가 모두 1점 이상 개선되었습니다. 또한, task 1b도 소폭 개선된 성능을 보였습니다.

 

Table 4. Line 혹은 Snippet 단위로 Pre-processing method를 적용하여 얻은 입력 데이터로 모델 학습 시 Task 1a와 Task 1b의 성능 비교

 

4. Post-processing methods

데이터 기반으로 학습한 NER, RE 모델의 예측 결과를 규칙 기반으로 보정하는 Post-processing method를 적용했습니다. 모델의 예측 데이터 분석을 통해 1) Entity Type을 오분류 하는 경우, 2) Trigger Word의 Type을 오분류 하는 경우, 3) Entity 혹은 Trigger Word의 Span을 잘못 예측하는 경우를 보정하는 규칙을 개발했습니다. 각 규칙은 Entity, Trigger Word, Relation Type의 정의를 참고했습니다. 예를 들어, 특정 Trigger Word Type이 정의에 따르면 연결될 수 없는 Entity Type과 Relation이 존재할 것이라고 모델이 예측했다면 이를 올바르게 고쳐주었습니다. 다만, 연구 초기의 모델은 성능이 좋지 않아 구현한 규칙으로 보정할 때 성능이 꽤 많이 개선되었지만, 최종 모델의 경우 기본 성능이 좋았기에, 동일한 규칙으로 보정할 때 성능이 다소 낮은 폭으로 개선되는 것을 볼 수 있었습니다.

 

5. Cross validation & Ensemble

NER과 RE 모델의 성능을 개선하기 위해 각각 10-Fold Cross validation을 적용하여 10개의 모델을 학습했습니다. 이후 Soft-voting을 통해 10개 모델의 예측 결과를 결정하는 Ensemble을 적용했고 Evaluation Results에서처럼 단일 모델 대비 성능이 개선되었습니다.

 

Evaluation Results

Table 5는 ChEMU 2022 Task 1a의 최종 평가 결과입니다. 단일 모델의 성능을 보면 다른 모델 중 가장 성능이 높은 모델보다 Public, Private Exact F1 score가 각각 +1.3, +1.7 만큼 더 높습니다. 이는 앞서 설명한 다섯 개의 Contribution 중에서 Domain-specific language model, NER & RE 모델, Pre-processing method 등 세 개의 효과입니다. 또한, Post-processing과 Ensemble이 적용되었을 때 성능이 개선되어 Public, Private Exact F1 Score가 각각 +0.8, +1 만큼 향상되는 것을 확인할 수 있었습니다.

 

Table 5. ChEMU 2022에서의 Task 1a 성능

 

Table 6은 Task 1b의 평가 결과를 나타냅니다. Task 1a와 유사하게 단일 모델의 성능은 물론 Ensemble과 Post-processing을 적용한 모델 모두 다른 모델보다 높은 성능을 달성하였습니다. 단, Task 1b는 Trigger Word 추출 성능과 Relation 추출 성능을 의미하므로 NER, RE 두 가지 모델 모두의 평가 결과입니다. Task 1a, 1b 평가 결과에서 NER 모델의 성능이 우수한 것으로 나타나고 있으나 RE 모델 자체의 성능이 개선되었는지는 알 수 없습니다. 따라서, 의도적으로 성능이 낮은(Hokkaido University와 성능이 유사한) NER 모델을 사용하여 Entity와 Trigger Word를 추출 후 RE 모델을 활용하여 Relation을 추출해 보았고 Table 6에서의 Ours (single, worst ner)와 같이 여전히 성능이 가장 높은 다른 모델보다 Public, Private Exact F1 성능이 +2, +1.3점만큼 높습니다. 따라서, RE 모델의 아키텍쳐도 성능을 개선하는 데 영향을 주었음을 알 수 있습니다.

 

Table 6. ChEMU 2022에서의 Task 1b 성능

 

Conclusion

이번 글에서는 ChEMU 2022의 Named Entity Recognition, Event Extraction Task와 LG AI연구원이 해당 task에 적용한 기술에 관해 설명했습니다. 이외에도 ChEMU에는 Anaphora Resolution, Chemical Reaction Reference Resolution과 같은 Task가 있고 나아가 Information Extraction 범위에서는 Text Classification, Sentence Similarity 등 보다 다양한 Task가 존재합니다. LG AI연구원의 Language lab에서는 본 글에서 소개한 연구뿐만 아니라 보다 다양한 Information Extraction Task에서의 모델 아키텍쳐와 기반이 되는 초거대 언어 모델의 연구에 집중하고 있습니다. 이를 통해 다양한 화학 문서에서 정보를 자동 추출하여 Reaxys와 같이 서비스의 질을 높이고 화학 연구자들의 연구 효율을 향상시키는 것이 목표입니다.

참고

[1] https://www.elsevier.com/ko-kr/solutions/reaxys

[2] Li, Y. et al. (2022). Overview of ChEMU 2022 Evaluation Campaign: Information Extraction in Chemical Patents. In: , et al. Experimental IR Meets Multilinguality, Multimodality, and Interaction. CLEF 2022. Lecture Notes in Computer Science, vol 13390. Springer, Cham. https://doi.org/10.1007/978-3-031-13643-6_30

[3] M. Yasunaga, J. Leskovec, P. Liang, Linkbert: Pretraining language models with document links, in: Association for Computational Linguistics (ACL), 2022.

[4] https://www.nlm.nih.gov/databases/download/pubmed_medline.html

[5] Z. Zhong, D. Chen, A frustratingly easy approach for entity and relation extraction, in: North American Association for Computational Linguistics (NAACL), 2021.

[6] D. Ye, Y. Lin, P. Li, M. Sun, Packed levitated marker for entity and relation extraction, in: Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), Association for Computational Linguistics, Dublin, Ireland, 2022, pp. 4904-4917. URL: https://aclanthology.org/2022.acl-long.337. doi:10.18653/v1/2022. acl-long.337.

[7] J. Devlin, M.-W. Chang, K. Lee, K. Toutanova, BERT: Pre-training of deep bidirectional transformers for language understanding, in: Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers), Association for Computational Linguistics, Minneapolis, Minnesota, 2019, pp. 4171-4186. URL: https://aclanthology.org/ N19-1423. doi:10.18653/v1/N19-1423.