활용대회7 [2022 통계청 공모전] 5. test 및 후기.. 마지막.. test padding이다. 토크나이저시키고.. tokenizer = Tokenizer() tokenizer.fit_on_texts(test) X_encoded = tokenizer.texts_to_sequences(test) 패딩시킨다... X_test = pad_sequences(X_encoded, maxlen=max_len, padding='post') 잘잘한 코드를 몇 줄 작성한 뒤, predicted에 y_pred의 argmax 다시 말해서, 최대가 되는 벡터값을 넣어주면 완료! y_pred = np.mean(pred_list,axis=0) predicted = y_pred.argmax(axis=-1) 이후 아래 그림처럼 digit_1, digit_2, digit_3이 비어있는데, 이.. 2022. 5. 16. [2022 통계청 공모전] 3. embedding_model Embedding_model 만들기 Word2Vec 함수 사용 from gensim.models import Word2Vec embedding_okt = Word2Vec(tokenized_okt1, size=100, window = 2, min_count=50, workers=4, iter=100, sg=1) embedding 모델을 구축한다는 것은 Word2Vec의 함수를 써서 단어벡터를 만들어준다는 뜻이다. 이후 아래 코드처럼 저장해주면 임베딩된 모델이 완성되게 된다. embedding_okt.save('/emb__okt.model') 자연어처리에서 사용하는 gensim 라이브러리는 아래를 참고하면 된다. https://radimrehurek.com/gensim/ Gensim: topic modell.. 2022. 5. 9. [2022 통계청 공모전] 2. remove stopwords (불용어 처리) check bigword split 큰 단어들을 일일이 쪼개준 뒤, 잘 쪼개져있는지 확인 후 불용어 처리를 하였다. bigword = {key: value for key, value in count.items() if len(key)>=5 and value 2022. 5. 8. [2022 통계청 공모전] 1. bigword split 이름을 bigword split이라고 지은 이유는.. tokenized를 봤을 때, noun(명사)로 토큰화하였다고 할지어도, '이벌게임'처럼 명사화가 잘 되지 않은 문장들을 더 잘게 쪼개주어 의미를 부여할 수 있도록 하기 위해서 단어수가 긴 단어의 경우, 잘게 쪼개주면 좋지 않을까 싶었다. 나중에 임베딩 모델을 구현할 때, 단어수의 빈도가 50 이상인 단어들로만 이뤄지게 하기에. 단어수의 빈도가 50 미만인 (임베딩에 영향을 주지 않는) 단어들을 Split 해주기로 하였다. count={} for j in range(len(bigword_split_okt)): for i in bigword_split_okt[j]: try: count[i] += 1 except: count[i]=1 print(count.. 2022. 5. 6. [2022 통계청 공모전] 0. tokenized Tokenizing 문장을 분해하여 관계를 만들어 준다. 2차원 이상으로의 벡터로 만들어준다. 자연어의 전처리와 결과의 해석이 중요하다. Document -> Tokenizing -> Tagging 의 방식으로 Word2Vec으로 사용한다. 이외의 토크나이저의 과정에서의 EDA를 진행하였다. 필요패키지 설치 import numpy as np import pandas as pd import seaborn as sns import matplotlib as mpl import matplotlib.pylab as plt data= pd.read_csv('data.txt', sep ='|',encoding='CP949', header=0) submission= pd.read_csv('submission.txt',.. 2022. 5. 5. [2022 통계청 공모전] Word2Vec이란? 1. Word2Vec Word2Vec은 말 그대로 단어를 벡터로 바꿔주는 알고리즘 크게 CBOW와 Skip-Gram 두 가지 방식으로 분류된다. CBOW(Continuous Bag of Words) 주변에 있는 단어들을 가지고 중심에 있는 단어를 맞추는 방식 나는 ______에 간다. 주변 단어들을 바탕으로 중심에 있는 단어를 예측 Skip-Gram 중심에 있는 단어로 주변 단어를 예측하는 방법 _____ 외나무다리 ______ 중심 단어를 바탕으로 앞뒤 어떤 단어가 올지 예측 사용자가 주변단어 몇 개를 볼 지(window)를 정해주면 Word2Vec은 말뭉치를 window 크기로 슬라이딩하면서 스크린하며 중심단어별로 주변단어들을 보고 각 단어에 해당하는 벡터들의 요소값들을 조금씩 업데이트함으로써 단어를.. 2022. 5. 4. 이전 1 2 다음