본문 바로가기
Study/NLP

개체명 인식 학습 기법

by GodKim 2020. 7. 17.

이 글은 정보과학학회논문지 제 45권에 실린 [배깅 기반의 부트스트래핑을 이용한 개체명 인식 학습 기법]을 읽고 정리한 글이다.

https://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE07514226&language=ko_KR

 

배깅 기반의 부트스트래핑을 이용한 개체명 인식 학습 기법

논문, 학술저널 검색 플랫폼 서비스

www.dbpia.co.kr


1. 배경

 

- 기존의 개체명 인식기는 지도학습에 기반하고 있다. 지도학습 기반의 개체명 인식은 좋은 성능을 보이지만, 대량의 정답 말뭉치를 구축하기엔 많은 시간과 비용이 든다.

 

- 이를 해결하기 위해 적은 양의 정답 말뭉치만으로 대량의 정답 말뭉치를 생성하고 학습에 사용하는 기법을 제안한다. 

 

2. CRF 개체명 인식

 

 - 본 논문에선 개체명인식을 위한 기본 모델을 CRF(Conditional Random Field)로 설정하였다. 

 

- CRF란, 시퀀스 라벨링을 위한 potential function을 이용하는 softmax regression이다. RNN이 등장하기 전에 시퀀스 라벨링에 있어 좋은 성능을 보이는 것으로 알려진 모델이며, 자연어 처리에 있어서 개체명 인식에 많이 사용된다. 이에 대한 상세한 내용은 다음에 설명하도록 하겠다. 

 

3. 부트스트래핑 기법

 

- 부트스트래핑이란 주어진 데이터에서 복원 표본을 구하는 작업을 여러번 반복해 원하는 값을 추정하는 것이다. 

 

- 여기서는 정답이 부여되지 않은 대량의 말뭉치에서 일부 문장들을 비복원 추출하여 기본 개체명 인식 모델의 예측 결과를 정답으로 부여한다. 여기서 생성된 말뭉치 중 신뢰도가 높은 문장과 정답을 개체명 인식 말뭉치에 추가하고 다시 기본 개체명 인식 모델을 학습하는 것이다. 이를 반복하여 소량의 말뭉치로 존재하지 않는 개체명 패턴을 학습하는 것이다.

 

- 이 과정 중에 신뢰도가 높은 문장을 선별하는 과정이 있는데, 이 과정을 생략하면 잘못 예측된 개체명까지 정답 말뭉치에 추가될 가능성이 있어 배깅 기법을 사용한다.

 

4. 배깅 기법

 

 - 배깅 기법이란 부트스트래핑을 통해  생성된 말뭉치를 각 모델로 사용하여  최종적으로 결합하여 예측 모델을 생성하는 것을 말한다.

 

- 부트스트래핑 기법을 통해 특정 개수의 말뭉치를 추출한다. 각각 추출된  말뭉치에 기존에 존재한던 정답 말뭉치를 소량 추출해 추가한다. 새로 생성된 말뭉치를 사용해 독립적인 개체명 인식 모델 5개를 학습시킨다. 

 

- 5개의 모델로 정답이 포함되지 않은 비복원 추출된 말뭉치에 예측 정답을 부여한다. 이때, 개체명 태그 별 주변 확률(Marginal Probability)의 평균이 가장 큰 태그를 해당 형태소의 정답으로 선택한다. 이 중에서 일정 기준보다 확률의 평균 값이 큰 것만 정답 말뭉치에 추가한다. 

 

5. 결론

 

- CRF 모델에 배깅과 부트스트래핑 기법을 사용한 모델은 배깅으로 생성한 모델이 5개, 부트스트랩으로 추출한 문장이 2500개일때, 그 F1 점수가 70.67로 제일 높았다. 이는 양방향 LSTM CRF 모델의 F1 점수인 67.23보다 3점이상 높은 점수이다.

 

- 이 논문에서 제안한 방식을 사용하면, 적은 양의 정답 말뭉치 많으로도 효과적인 성능의 개체명 인식기를 구현할 수 있다. 

반응형

댓글