[Python] 자연어처리 - TfidfVectorizer
·
AI
직접 지정한 키워드들을 바탕으로 각 텍스트가 키워드의 특성을 얼마나 반영하고 있는지를 임베딩으로 나타내기 위해 TF-IDF 매트릭스를 사용하기로 했다.공식문서TF-IDF주로 문서간 유사성/연관성을 판단하고 싶을 때 사용한다.단어(term) 별로 문서의 정보를 얼마나 가지고 있는지를 나타내는 값이다.TF - Term Frequency문서가 있을 때 단어가 여러번 출현하면, 문서와 연관성이 높은 단어일 것이다 -> tf score를 높게 측정그러나, TF score만 고려한다면 불용어까지 연관성을 높게 책정할 위험성 ↑IDF - Inverse Document Frequency어느 문서에서나 자주 등장하는 단어들은 문서와 연관성이 낮은 단어일 것이다. -> idf score를 낮게 측정 => 문서 또는 문장에..
[RecSys] Latent Factor 알아보기
·
AI
우리가 일상에서 쉽게 사용하는 콘텐츠 제공 서비스에서는 흔하게 아이템을 추천해주는 기능을 확인할 수 있다. 기존 추천시스템들은 메모리 기반 추천시스템으로, 메모리에 사용자-아이템 정보를 쌓아두는 방식으로 연관성을 파악했다. 다만 이러한 방식은 사용자가 많아지면서 쌓아지고, 듬성듬성한 sparse data로 나타난다는 단점이 있었다. 이러한 단점을 극복하기 위해서 나타난 방식이 모델 기반 추천시스템이고, 자주 등장하는 용어인 Latent Factor에 대해 알아보겠다. 모델 기반 추천시스템이란? 메모리 기반 추천시스템과는 다르게 모델을 생성해 둔 후, 모델을 통해서 추천을 제공하는 방식이다. 요새는 다양한 추천시스템 모델들이 발전하며(LightGCN, MF 등 ... 논문 카테고리에 몇개 정리되어있다.) ..
[NLP] 언어모델의 평가 지표 - PPL, BLEU score
·
AI
이미지 태스크와 달리 NLP에서는 모델의 성능을 평가하기 위해서는 정답 문장과 예측 문장 사이의 연관성을 평가해야 한다. BLEU score(↑) : 정답 문장과 예측 문장 사이에 n-gram이 겹치는 정도의 기하평균 PPL score(↓) : token 예측 확률 q의 역수를 기하평균 - “혼란이 적어질수록, 원하는 결과를 얻을 수 있는 확률이 높아진다” BLEU score BLEU score를 이해하기 위해서는 precision과 N-gram에 대한 이해가 선행되어야 한다. precision : #(correct words) / (length_of_prediction) N-gram : 연속적인 단어들을 의미 -> 둘을 합치면? 각 N-gram 에서의 precision을 구할 수 있다. BLEU sco..
[PyTorch] Transformers 라이브러리 #2
·
AI
Hugging Face 🤗 사에서 제공하는 Transformers Course를 한국어 버전으로 혼자 공부하며 정리한 글입니다. 1장에서 소개한 pipeline() 함수를 대체하기 위해, 직접 model과 tokenizer를 함께 사용한다. tokenizer는 텍스트 입력을 수치 데이터(numerical data)로 변환하고, 이 수치 데이터를 다시 텍스트로 변환하는 기능을 수행한다. model은 적합한 모델 아키텍처를 불러와 학습을 진행하는 기능을 수행한다. 파이프라인은 전처리, 모델로 입력 전달, 후처리의 3단계를 한 번에 실행한다. 모델 / 토크나이저 불러오기 config() 기본 설정에서 모델을 생성하는 방법도 있지만, 보통 사전 학습된 Transformer 모델을 로드해온다. from_pretr..