본문 바로가기

자연언어처리 (NLP)9

워드 토큰화 영문 pip intall nltk import nltk from nltk import word_tokenize from nltk.tag import pos_tag nltk.download('punkt') text = "I am a boy" word_list =word_tokenize(text) print(word_list) pos_tag(word_list) ['I', 'am', 'a', 'boy'] [('I', 'PRP'), ('am', 'VBP'), ('a', 'DT'), ('boy', 'NN')] ◈ VBP : 동사 RB : 부사 VBG: 현재부사 IN : 전치사 NN : 명사 NNP: 고유 명사 NNS: 복수형 명사 CC : 접속사 DT : 관사 한글 pip install konlpy from ko.. 2024. 3. 13.
(Word2Vec) model training 사용할 데이터: Reviews From TripAdvisor https://github.com/kavgan/phrase-at-scale/blob/master/data/raw-data/reviews_data.txt.gz import gzip # pip install gensim import gensim import logging logging.basicConfig(format='%(asctime)s : %(levelname)s : %(message)s', level=logging.INFO) gz 화일을 풀고 그 안의 라인별로 읽어 들어 gensim.utils.simple_preprocess() 를 이용해 단어별로 소문자화, 불필요한 조동사등을 제거한 후 단어 별로 tokenizer 한 후 리스트를 돌려준다.. 2023. 12. 21.
(Word2Vec) training 앞에서 중요한 개념인 skipgram 과 negative sampling을 알아 보았다. 훈련 초기 상태에서 두개의 매트릭스를 생성한다. 하나는 Embedding 매트릭스, 또 하나는 Context 매트릭스이다.데이터세트(dataset)의 입력(input word)과 출력(outputword) 워드들의 embedding데이터가 들어 있다고 생각하자.디멘젼은 embedding_size x vocab_size 이고 embedding_size는 보통은 300인데 앞에 칼럼에서의 샘플은 50 배열을 가지고 있다. 학습 초기에는 Embedding 과 Context 매트릭스의 embedding은 랜덤값을 가지게 있게 되고 학습을 시작함에 따라 1개의 positive(target=1)와 2개의 negative(tar.. 2023. 12. 17.
(Word2Vec) 2. 자연언어처리 모델 아래는 https://jalammar.github.io/illustrated-word2vec/ 사이트를 내 나름대로 간단히 설명한 것이다. Language Modeling 스마트폰에서 문장을 입력할때 다음 단어를 예측하는 것도 자연언어처리를 이용하는 것이다. 간단하게 모델을 표현하면 아래와 같다. 실질적으로 모델은 하나의 출력이 아니라 모든 단어의 가능성의 스코어를 출력하고 키보드 어플리케이션은 가장 스코어가 높은 순서로 표시를 하게 된다. 이제 학습된 모델 내부를 들여다 보면, 1) 각 단어의 Embedding을 참조하고 2) 이를 예측의 계산에 사용한다. Language Model Training window slide 예제 문장 : “Thou shalt not make a machine in the.. 2023. 12. 17.