관리 메뉴

개발자의 스터디 노트

한국어 버트(KoBERT) 본문

파이썬/파이토치 자연어처리

한국어 버트(KoBERT)

박개발씨 2022. 3. 12. 01:03

BERT란?

- 구글에서 개발한 NLP(자연어처리) 사전 훈련 기술이며, 특정 분야에 국한된 기술이 아니라 모든 자연어 처리 분야에서 좋은 성능을 내는 범용 Language Model입니다. 

- BERT는 사전 훈련 언어모델 입니다. 특정 과제를 수행하기 위한 모델의 성능은, 데이터가 충분히 많다면 Embedding이 큰 영향을 미칩니다. 이 임베딩 과정에서 BERT를 사용하는 것이고, BERT는 특정 과제를 하기 전 사전 훈련 Embedding을 통해 특정 과제의 성능을 더 좋게 할 수 있는 언어 모델입니다.

- BERT 이전에 임베딩을 Word2Vec, GloVe, FastText 등의 방식을 많이 사용했지만, 요즘은 고성능을 내는 대부분의 모델에서 BERT를 많이 사용하고 있다고 합니다.

 

이런 BERT 모델을 한국어 기반으로 제작한 것이 바로 KoBERT입니다.

 

KoBERT의 사용 방법은 아래의 Github에 간략히 소개되어 있습니다.

https://github.com/SKTBrain/KoBERT

 

GitHub - SKTBrain/KoBERT: Korean BERT pre-trained cased (KoBERT)

Korean BERT pre-trained cased (KoBERT). Contribute to SKTBrain/KoBERT development by creating an account on GitHub.

github.com

 

KoBERT를 설치하려면 기존에 사용하던 가상 환경의 버전이 맞지 않아 설치가 안 되는 경우가 종종 발생하니 새로운 가상 환경을 만들어 새로 설치하는 것이 좋습니다.

 

윈도우 환경에서보다 리눅스 환경에서의 설치가 용이하므로 리눅스 환경에서 테스트하였습니다.

 

1. 새로운 가상 환경 생성

conda create -m kobert_test python=3.6

 

2. pytorch 환경에 맞춰 설치

* pytorch 는 신규 버전을 설치하면 함께 설치되는 Numpy 버전 호환성 문제로 KoBERT가 설치되지 않습니다.

 LTS(1.8.2) 버전을 선택 하여 설치합니다.

conda install pytorch torchvision torchaudio cudatoolkit=10.2 -c pytorch-lts

 

3. KoBERT 를 설치합니다.

pip install git+https://git@github.com/SKTBrain/KoBERT.git@master

 

4. Jupyter노트북에 커널을 추가합니다.

pip install ipykernel
python -m ipykernel install --user --name kobert_test --display-name "kobert_test"

 

5. Jupyter노트북을 새로 실행합니다.

 

 

 

이상 Jupyter노트북으로 KoBERT 학습 테스트 환경이 생성되었습니다.