전체 글
-
첫 번째 과제: Crawling개인 프로젝트 A 2023. 10. 11. 22:44
나만의 Life-Study 질의응답 모델을 만들기 위한 첫 번째 과제는 바로 데이터 크롤링이다. 무료로 풀려있는 라이프 스터디 영어판을 데이터 형태로 가공할 필요가 있다. Beautiful Soup 아래 사이트에서 Beautiful Soup을 실습해보고 나에게 맞게 변형해서 사용하고자 했다. Real Python - Beautiful Soup: Build a Web Scraper With Python 먼저 필요한 모든 링크를 크롤링한 뒤 원문을 추출할 생각이었다. 그런데....... Beautiful Soup을 통해 추출한 링크로는 접속할 수가 없었다. 크롤링 라이브러리를 통해 접속하려고 하면 에러가 났고, 인터넷에서 직접 주소를 입력하면 로그인 페이지로 전환되었다. 계속해서 링크 추출 및 입력을 반복한..
-
Phrase Retrieval Learns Passage Retrieval, TooNAVER AI TECH 2023. 7. 5. 02:42
이전 논문(Learning Dense Representations of Phrases at Scale)에서는 dense phrase model이 산출한 결과값이 곧 question에 대한 정답이었다. 즉 비교대상이 retrieval model & reader model이었다. (이전 블로그 글 참조) 하지만 dense phrase model은 retriever model로서도 기능할 수 있다. maximmum score of phrases within the passage를 해당 passage의 점수로 사용하면 된다. 이전 논문에서 사용한 모델 그대로 retriever 모델로써의 성능을 평가해보았더니 아래와 같은 결과가 나왔다. 기존 DPR 모델을 상회하는 성능을 보여주는 것을 알 수 있다. 어떻게 이런..
-
Learning Dense Representations of Phrases at ScaleNAVER AI TECH 2023. 7. 4. 23:27
Overview Phrase Retrieval $E_s$는 phrase encoder이고 $E_q$는 question encoder이다. MIPS(Maximum Inner Product Search)를 통해 question에 맞는 phrase를 추출해내고자 한다. Base Architecture pre-trained language model을 이용하여 모든 passage tokens(word tokens)의 representation을 얻는다. 각 passage의 representation은 start token과 end token을 결합한 형태가 된다. 모든 phrases가 아닌 모든 words만 indexing, storing 하면 된다는 장점이 있다. 또다른 pre-trained language ..
-
BERTNAVER AI TECH 2023. 6. 29. 03:18
BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding 개요 BERT에서 한 가지 알파벳을 뽑으라면 BERT의 'B'를 뽑겠다. 기존 모델에서는 단방향적 접근(unidirectional approach)만 가능했으나 BERT는 양방향적 접근(bidirectional approach)을 통해 SOTA를 달성하였다. 그렇다면 어떻게 양방향적 접근이 가능했을까? MLM(Masked Languange Modeling)이라는 방법을 발견했기에 가능했다. 지금부터 BERT에 대해 알아보자. 서론 먼저 사전학습(pre-training)을 위해서는 두 가지 접근 방식이 존재한다. 1. feature-based approach Th..
-
-
Attention Is All You Need(2)NAVER AI TECH 2023. 6. 9. 10:22
Self-Attention 입력으로 다음과 같은 문장이 들어왔다고 해 봅시다. "I am a student" Tokenization과 Embedding을 거쳐 해당 문장은 다음과 같은 Embedding으로 변환됩니다. [[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]] (편의상 one-hot encoding을 적용하였습니다.) 이제 각 Embedding Word는 행렬곱을 통과해 Query, Key, Value를 만들게 됩니다. 즉, 'I'에 대한 Query, Key, Value, 'am'에 대한 Query, Key, Value, 'a'에 대한 Query, Key, Value, 'student'에 대한 Query, Key, Value가 생성되게 됩니다. ..
-
NextRise 2023, Seoul 회고록NAVER AI TECH 2023. 6. 4. 18:09
개요 2023-06-2 금요일. Bootcamp 일정을 다같이 땡땡이치고 (운영진분께 연락은 드렸다.) NextRise 2023, Seoul에 다녀왔다. 아침에 일어나 천천히 코엑스로 출발했다. 팀원 분들과 합류해 맥도날드에서 점심 식사를 했다. 그 후 저녁까지 발표를 듣거나 부스를 기웃거리며 정보를 탐색했다. 부스 탐방 유익했던 부스 탐방 목록은 다음과 같다. 써로마인드, Skelter Labs, Nota AI, wrtn technologies, TOONSQUARE, Dr.Listen. 하나씩 짧게 소개해보겠다. 써로마인드 인공지능을 쉽게 개발할 수 있는 플랫폼 및 품질 검사 솔루션을 제공한다. 이미지를 통한 품질 검사뿐 아니라 음향, 진동, 전류 및 온도를 활용한 품질 검사 솔루션도 제공한다는 점이 ..
-
CleanLabNAVER AI TECH 2023. 6. 4. 16:34
개요 DL(Deep Learning)을 배운 사람이라면 대부분 MNIST 데이터셋을 사용해 학습을 진행해본 경험이 있을 것이다. 그리고 나를 포함한 대부분의 사람들은 굳게 믿고 있었을 것이다. 'MNIST 데이터셋의 Label은 진실되다.'라고. 하지만 현실은 그렇지 않다. Label을 결정하는 것은 누구인가? 사람이다. 사람은 완벽한가? 그렇지 않다. 그렇다면 Label에 거짓이 섞여있다는 것은 자연스럽게 추론 가능한 사실이다. https://labelerrors.com/에서는 오분류된 다양한 데이터를 확인할 수 있다. 아래 데이터는 9로 분류되었어야 하지만 8로 분류된 MNIST 데이터를 보여준다. 그렇다면 좀 더 완벽한 데이터를 얻기 위해서는 어떻게 해야 할까? 일차적으로는 Annotation(La..