과거의 것들

    P-stage3 [Day2]

    강의내용 (04강) FCN의 한계를 극복하려고 한 논문들 FCN의 단점은 지역적으로 관찰해서 커다란 물체가 가까이서 찍히면 하나의 물체로 보지 못하고, 사진상에서 작은 물체는 사라지고, FCN-8s도 경계선을 자세하게 못잡는 문제가 있었음. 이걸 해결하려는 모델 중 하나가 DeConvNet Unpooling은 디테일한 경계를 포착 Transposed Convolution은 전반적인 모습을 포착 단점은 어디서 maxpool을 했는지 따로 정보를 저장해놔야 함. 여기서 얕은 층, 깊은 층이 무슨말이냐 하면 평소 CNN에서도 얕은 층은 전반적인 지식을, 깊은층으로 갈수록 목적에 맞는 구체적인 지식으로 바뀌는데 그거랑 같은거다. 위 그림에서 c, e, g, i가 unpooling이고 b,d,f,h,j가 deco..

    P-stage3 [Day1] 역사, metric 등

    시작하기 전.. 내가 하는 Pstage3는 image segmentation & detection이다. 강의내용 1강 intro 대회 규칙(체점 방법 등)에 관한건 pdf 보자. segmentation의 강의 목표 Semantic Segmentation에 대한 기초 논문에 대한 정확한 이해보다는 논문이 나온 배경과 방법론에 대한 이해 모델의 구조를 살펴보면서 어떤 식으로 코드를 작성할지에 대한 실력 향상 object detection의 강의 목표 Object Detection 흐름 파악 및 캐글 은메달 이상 달성할 수 있는 능력 함양 2강 EDA & Metric 자세한 coco dataset json 설명은 pdf.. 코드에 대한 자세한 설명도 pdf.. 라기엔 코드만 보고 무슨 말인지 이해할 수 있는 ..

    P-stage2 마지막 정리

    피어세션 optuna로 하이퍼 파라미터를 찾아라. 모델마다 이상적인 파라미터는 모두 다를 것 같음. 논문보고 파악해서 알고 쓰는게 좋지않을까. pretrained model에서 어떤걸 뭘보고 어덯게 가져오는게 좋을까. 만약 내가 하는 작업이 pretrained model이 했던거랑 비슷하면 파라미터도 별로 안바꿔도 되고, 잘 되지 않을까. 모든 파라미터를 고정하고 모델만 바꿔서 판단하는거는 조금 위험하지 않을까. 각 모델마다 이상적인 파라미터 값이 있다면? early stopping도 있고.. 이런 보조장치를 달아주면 예쁘게 비교할 수 있지않을까. 진짜 하나만 고정시키고 하는건 안좋은듯. 서로간의 영향이 있을 수 있고 서로간의 영향에 따라 이상적인 설정값이 있을 수 있으니. 사실 하이퍼파라미터를 나중에 ..

    P-stage2 [Day9] 외부 데이터

    수업내용 실습 GPT-2 생성옵션들. 생성모델의 경우 어떤 규칙을 가지고 생성하느냐에 따라 자연어 성능이 천차만별임 Day9_실습자료0자연어_생성법.ipynb의 사본 Google Colaboratory Day9_실습자료1Few_shot_learning.ipynb의 사본 Google Colaboratory ko-GPT 가지고 zero-shot, one-shot, few-shot 해보기. GPT에 비해 많은 데이터로 학습을 한게 아니다보니 잘 작동하지 않는다. fine-tuning해서 우리의 목적에 맞게 해보자. Day9_실습자료2KoGPT_2_기반의_챗봇.ipynb의 사본 Google Colaboratory 챗봇 만들어보기. 다음 수업 이론 1. BERT 이후의 다양한 LM 1.1 XLNet 1.2 RoB..

    P-stage2 [Day8] 외부 데이터, smooth, ner

    수업내용 transformers 전에 GPT라고 있었는데 예전꺼다 보니 RNN처럼 계속 문장을 입력받아 다음 단어나 문장 예측하는 방식으로 만들어진 모델. 생성에 초점을 맞춘 듯. 이 모델도 다른 모델처럼 fine-tuning을 하는데 만든사람 논문에서 굳이 그래야 하나? 싶었다고 한다. 이미 많은 정보들이 들어있을 텐데 굳이 해야 하나? 그래서 few-shot, one-shot, zero-shot등을 했다. 문제를 내놓고 그 문제에 대한 답 예시들을 드는 방식. GPT-2, 3으로 넘어가면서 정말 방대한 양의 데이터를 학습하고 모델 사이즈도 10배가량 키웠다. 그래서 정말 왠만한건 다 되는 듯. 다음 단어 혹은 masked 단어 예측하는 언어 모델 학습 방식으로 정말 다 해결될까? Weight upda..

    P-stage2 [Day7] focal loss, 다른 tokenizer들

    수업내용 오늘은 뭘 할거냐면 문장에 있는 각 token들이 어떤 범주에 속하는지, 그러니까 사람이름인지 장소인지 기업이름인지 등을 구분하는것도 있고, 동사인지 명사인지 등을 구분하는 것도 있다. 개체명 인식 Named Entity Recognition (NER)은 인명, 기관명, 지명 등과 같이 특정한 의미를 가지는 단어 또는 어구(개체)등을 인식하는 과정을 의미한다. 품사태깅 Part-of-speech tagging (POS TAGGING)은 주어진 각 성분의 품사를 확인. 동사인지 명사인지 형용사인지 등.. 이걸 위한 한국해양대학교에서 공개해준 한글용 데이터셋 kor-ner이 있다. 특이한건 이 데이터셋에선 BIO를 지원해줌. 이게 뭐냐면 각 단어가 시작되는 지점 B, 이미 시작해서 안에 있는 지점 ..

    P-stage2 [Day6] autoML로 인한 최적화된 환경 너무좋다.

    수업내용 두 문장 관계 분류 task는 이런 식으로 이루어짐. cls에 관계 표시하고 sentenceA와 sentenceB로 나눠서. 지난번에 했던 거랑 같다. 자연어 맥락을 이해하는 Natural Language Inference (NLI)(3개의 label), 두 문장이 같은 의미의 문장인지 검증하는 Semantic text pair (2개의 label) 등의 문제가 여기에 속함. 오늘 실습할 내용은 지난번에 했던 챗봇인데 단순하게 cosine 유사도로 한걸 개선시켜서 text2vector로 비교하고 top1을 정답으로 할 텐데 이게 정말 맞는지도 알아내는 모델도 넣을거다. 실습 두 문장의 관계 분류를 위한 학습 데이터를 구축해보도록 하겠습니다. 이번 task의 목적은, paraphrasing 된 두..

    P-stage2 [Day5]

    수업내용 한국어 자연어 이해 벤치마크(Korean Language Understanding Evaluation, KLUE) 정말 거의 모든 경우에 대비한 데이터셋들이 들어있다. 의존 구문 분석. 영어 문법시간에 배운 형용사 목적어 구분 그런거 같다. 복잡한 형태의 자연어를 그래프로 구조화해서 표현이 가능하고 각 대상의 정보추출이 가능해진다. 단일문장 구분 task는 여러 종류가 있음. 감정분석(Sentiment Analysis) 주제 라벨링(Topic Labeling) 언어감지(Language Detection) 의도 분류(Intent Classification) 자세한 설명은 pdf를 참조하자. 문장 분류를 위한 데이터 Kor_hate, Kor_sarcasm, Kor_sae, Kor_3i4k 단일 문장..

    P-stage2 [Day4]

    수업내용 도매인 특화 task의 경우, 도메인 특화된 학습 데이터만 사용하는 것이 더 좋다. NLP 특징인듯. 데이터로 넣을 때 데이터셋 만드는것과 데이터로더 만드는것을 확실하게 구분해서 생각하자. 데이터셋은 밥을 만드는거고 데이터로더는 모델한테 밥을 어떻게 먹일거냐.. 적절한 비유인듯. 위 사진은 다음 문장 예측 모델 실습 Day4_실습자료0BERT_MASK_Attack.ipynb의 사본 Google Colaboratory transformers에 내장되어 있는 fill-mask로 mask 채워서 개인정보 유출하기. Day4_실습자료1한국어_BERT_pre_training.ipynb의 사본 Google Colaboratory 데이터 만들고 데이터셋 만들고 로더 만들고 Bert넣고 config 설정하고 ..

    P-stage2 [Day3]

    수업내용 GPT-2는 다음문장 예측. BERT는 문장 사이에 mask가 씌워있을 때 맞추는 예측. 애초에 encoding과 decoding이 decoding은 encoding된 내용물을 완전히 원본으로 복구하는게 목적. 두 문장 두고 두 문장이 연관성이 있는가 없는가를 CLS에 넣어서 알려주고 그걸 학습함. 저게 기본이고 단일 문장 분류, 두 문장 관계 분류, 문장 토큰 분류, 기계 독해 정답 분류 등의 여러 NLP 실험들을 했다.. 하는데 질답이 가능한 이유는 질문을 입력, 답을 출력으로 놓고 계속 학습하다 보면 어디서부터 어디를 봐야할 지를 attention으로 알게되기 때문... NLP의 성능을 측정하는데 대표적으로 쓰이는 데이터셋들 GLUE dataset과 SQuAD 등등.. 한국어용 koBERT..