본문 바로가기

책 정리/구글 Bert의 정석

(9)
BioBERT BioBERT는 2019년 Bioinformatics라는 저널에 올라온 한국인이 작성한 논문이다. Abstract - BioBERT가 등장하기 이전 biomedical domain에서의 NLP를 활용한 textmining 연구는 좋은 성과를 거두지 못했다. 생명과학 분야에서의 텍스트 마이닝 더보기 생명 과학 분야에서의 텍스트 마이닝은 대체로 바이오데이터에서 유용한 정보를 추출하거나, 생물학 연구를 위한 가설을 검증하기 위해 자연어 처리 기술을 적용합니다. 다양한 응용 분야가 있는데, 대표적인 예로는 아래와 같습니다. 바이오마커 발견: 생물학 연구에서 중요한 역할을 하는 바이오마커는 생체 내에서 발생하는 생리적, 화학적 또는 분자적 변화를 나타내는데, 텍스트 마이닝 기술을 적용하면 바이오마커 후보군을 발견..
8-2 장. domain-BERT(ClinicalBERT) domain-BERT - 일반적인 위키피디아 corpus를 사용해 사전 학습 시킨 BERT를 사용하는 대신 - 특정 도메인 말뭉치에서 BERT를 처음부터 학습할 수도 있다. - 이는 BERT가 특정 도메인 임베딩을 학습시키는 데 도움이 된다. - domain BERT의 두가지 모델 ClinicalBERT, BioBERT에 대해 소개하고자 한다. ClinicalBERT - ClinicalBERT는 대규모 임상 말뭉치에서 사전 학습된 임상 domain-BERT 모델이다. - 임상노트(clinical note), 진행 노트(progress note)는 환자에 대한 매우 유용한 정보를 포함한다. - 임상 메모의 콘텍스트 표현을 이해하는 것은 자체 문법 구조, 약어 및 전문 용어와 관련되어 난이도가 높다. - 따..
8-1 장. sentence-BERT 1. Sentence-BERT - BERT의 파생 모델로, 주로 문장 표현을 계산하는데 사용된다. - 기존의 BERT 모델에서 문장의 표현을 얻기 위해서는 막대한 추론 시간이 걸린다. - 본 논문에서는 10,000개의 문장 모음에서 BERT 모델을 사용해서 가장 유사한 쌍을 찾으려면 최대 65시간이 필요하다 라고 하였다. - sentence-BERT를 사용하게 된다면 추론 시간은 크게 줄어들게 될것이다. 1.1 문장 표현 계산 - 기존의 문장 표현을 계산하는 방법을 생각해 보자 - 주어진 문장 'She cooked pasta. It was delicous'라는 문장을 예로 들어보자. tokens = [ [CLS], She, cooked, pasta, [SEP], It, was, delicous, [SEP..
5장. 지식 증류 기반 BERT 파생 모델 사전 학습된 BERT를 사용하는데 따르는 문제는 계산 비용이 많이 들고 제한된 리소스로 모델을 실행하기가 매우 어렵다는 것이다. 사전 학습된 BERT는 매개변수가 많고 추론에 시간이 오래 걸려 휴대폰과 같은 edge 디바이스에서 사용이 어렵다. 즉, 상용화 레벨에서는 BERT를 바로 사용하는 것은 쉽지 않다. 지식 증류 : 소금물에서 증류하여 소금을 얻어내듯이, 지식 증류(knowledge distilation)는 커다란 Teacher 모델에서 엑기스만 뽑아내어 작은 Student 모델로 전달하는 방식. 5.1 지식 증류 소개 - 지식 증류 : 사전 학습된 모델의 동작을 재현하기 위해 소형 모델을 학습시키는 모델 압축 기술. - 교사-학생 학습(teacher-student learning)이라고도 함. ..
4.4장-Span BERT Abstract - BERT의 파생 모델 중 하나. - 토큰을 무작위로 마스킹하는 대신, 연속된 임의의 범위를 마스킹하고, 마스킹 된 전체 내용을 예측하도록 범위 경계 표현을 훈련함으로써 BERT를 확장한다. - SpanBERT는 question-answering이나 coreference resolution와 같은 span selection task(텍스트의 범위를 예측하는 태스크)에 주로 사용된다. coreference resolution - 임의의 개체(entity)를 표현하는 다양한 명사구들을 찾아 연결해주는 자연어처리 문제. 1. Introduction - BERT와 같은 Pre-Training 방법은 individual words나 subword units을 mask하는 self-supervis..
4-3장. ELECTRA ELECTRA - ELECTRA(Efficiently Learning an Encoder that Classifies Token Replacements Accuratley) - BERT의 파생 모델 중 하나로 MLM 태스크를 사전 학습에 사용하는 대신 교체한 토큰 탐지(replaced token detection)라는 태스크를 사용해 학습을 진행함. 1. Abstract - 기존 BERT를 비롯한 많은 language model들은 입력을 마스크 토큰으로 치환하고 이를 치환 전의 원본 토큰으로 복원하는 MLM 태스크를 통해 pre-training을 한다. - 이는 bidirectional으로 효과적이지만 example당 15%만 학습하기 때문에 상당한 계산 비용이 발생한다. - 하지만 이러한 모델들은 학..
3장. BERT 활용하기 1. 사전 학습된 BERT 모델 탐색 - 2장에서 MLM과 NSP를 사용하여 BERT를 사전학습시키는 방법을 배웠다. - 그러나 BERT를 처음부터 사전 학습시키는 것은 계산 비용이 많이 든다. - 따라서 사전 학습된 공개 BERT 모델을 다운로드해 사용하는게 효과적이다. - 구글은 사전학습된 BERT 모델을 오픈소스로 제공했으며 구글 리서치의 깃허브 저장소(https://github.com/google-research/bert.git)에서 다운로드할 수 있다. - 사전 학습된 모델은 BERT-uncased 및 BERT-cased 형식으로도 제공된다. BERT-uncased 1. 입력 단어를 소문자로 만들어준다. 2. 어떠한 accent marks를 없애준다. MyDrive -> mydrive franç..
2장. BERT 시작하기 1. BERT의 기본 개념 - NLP 분야에서 좋은 성능을 내는 LM. - Transformer 구조를 기반함. - BERT가 성공한 주된 기능은 문맥(context)을 고려하지 않은 word2vec과 같은 임베딩 모델과는 달리, 문맥을 고려한 동적 임베딩 모델이기 때문. * 문맥 기반(context-based) 임베딩 모델과 문맥 독립(context-free)임베딩 모델의 차이 A : He got bit by Python --> 파이썬(뱀)이 그를 물었다. B : Python is my favorite programming language --> 내가 가장 좋아하는 프로그래밍 언어는 파이썬이다. - 두 문장에서 'Python'이라는 단어의 의미가 서로 다르다는 것을 알 수 있다. (A : 뱀을 의미 ,..