본문 바로가기

반응형

전체 글

(291)
차원축소 (2) 6.3 LSA를 이용한 차원 축소와 의미 파악 LSA(Latent Semantic Analysis): 잠재 의미 분석 LSA에서 차원 축소는 SVD의 변형인 절단된 SVD(Truncated SVD)를 통해 이루어짐 6.3.1 LSA를 이용한 차원 축소와 성능 from sklearn.decomposition import TruncatedSVD svd = TruncatedSVD(n_components=2000, random_state=7) #압축할 component의 수 지정 X_train_lsa = svd.fit_transform(X_train_tfidf) X_test_lsa = svd.transform(X_test_tfidf) print('LSA Converted X shape:', X_train_lsa..
차원축소 (1) 6.1 차원의 저주와 차원 축소의 이유 차원의 저주: 낮은 차원에서는 발생하지 않던 문제가 차원이 커지면서 발생하는 것 해결방법 데이터를 충분히 늘리는 것 BOW로 표현한 문서의 특성 수를 줄임 6.2 PCA를 이용한 차원 축소 PCA(Principal Component Analysis): 주성분 분석, 데이터의 분산을 최대한 보존하는 새로운 축을 찾아 변환함으로써 차원을 축소하고자 하는 방법 from sklearn.datasets import fetch_20newsgroups #20개의 토픽 중 선택하고자 하는 토픽을 리스트로 생성 categories = ['alt.atheism', 'talk.religion.misc', 'comp.graphics', 'sci.space'] #학습 데이터셋을 가져옴 n..
BOW 기반의 문서 분류 (8) 5.8 한국어 문서의 분류 5.8.2 성능을 개선하기 위한 노력 tfidf = TfidfVectorizer(tokenizer=okt.morphs, max_features=2000, min_df=5, max_df=0.5) # 명사 대신 모든 형태소를 사용 X_train_tfidf = tfidf.fit_transform(X_train) X_test_tfidf = tfidf.transform(X_test) clf = LogisticRegression(max_iter=1000) # 충분한 학습을 위해 max_iter를 1,000으로 설정, 기본은 100 clf.fit(X_train_tfidf, y_train) print('#Train set score: {:.3f}'.format(clf.score(X_train..

반응형