728x90
오전 - 자연어처리(NLP)
용어
- DTM: 문서 행렬 (Documnet Term Matrirx)
- tf: 현재 문서에 출현한 단어의 빈도(횟수) (Term Frequency)
- idf : 역문서 빈도, 전제 문서의 수를 해당 단어가 나오는 문서수로 나눈 것(Inverse Document Frequency)
- td-idf : 단어빈도 * 역문서 빈도
문서행렬은 문서에 나타나는 어휘를 모아 one-hot 인코딩으로 표현한 벡터다.
모든 어휘들이 columns가 되는데 columns에서 저빈도 어휘들은 빼고 고빈도 어휘들로 채운다.
고빈도 어휘들 중에서도 불용어(을/를, 은/는 ....)는 제외한다.
이때 빈도는 tf나 tf-idf가 될 수 있다.
tf가 단순히 출현 횟수만을 카운트한다.
if-idf는 특정 문서들에만 나오는 어휘들에 대한 IDF값은 높게 주고, 모든 문서에서 나오는 단어들의 IDF값은 적게 준다.
즉, TF-IDF는 불용어의 가능성을 감안한 빈도다.
# 데이터를 학습용과 테스트 용으로 나눠준다
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(x_data, y_data, stratify=True, shuffle=True...)
# train_data_text의 columns을 만들어주고, 그 columns에 맞게 data를 벡터화 시켜준다.
# vect객체는 한번 만든거로 y한테도 써야한다. y도 새로운 vect 객체를 만들면 안 된다.
from sklearn.feature_extraction.text import CountVectorizer
vect = CountVectorizer(min_df=5).fit(train_data_text)
X_train = vect.transform(train_data_text)
#
from sklearn.model_selection import cross_val_score
from sklearn.linear_model import LogisticRegression
lr = LogisticRegression(solver='liblinear") # 모델 생성
lr.fit(X_train, y_train) # 모델 훈련
x는 대문자로 쓰고 y는 소문자로 쓰는 이유는, x가 2차원데이터라는 것을 표현하기 위함이라네요. 몰랐습니다.
from collections import Counter
# feature와 각 feature의 개수를 묶어 딕셔너리로 반환한다
그 뒤에 딥러닝도 했는데 뭔말인지 모르겠네요^^
과외받고 싶습니다...
오후 - 머신러닝(ML)
# 모델 성능평가 관련 모듈
from sklearn.metrics import confusion_matrix
from sklearn.metrics import accuracy_score
from sklearn.metrics import classification_report
from sklearn.metrics import roc_auc_score
from sklearn.metrics import mean_squared_error
# model_selection
from sklearn.model_selection import train_test_split # 테스트 데이터 셋 분리
from sklearn.model_selection import KFold # Kfold
from sklearn.model_selection import StratifiedKFold # Stratified Kfold
from sklearn.model_selection import cross_val_score
from sklearn.model_selection import cross_validate
from sklearn.model_selection import GridSearchCV
# 의사결정나무
from sklearn.tree import DecisionTreeClassifier
# iris 데이터셋
from sklaern.datasets import iris
그냥 오늘 나왔던 것들만 다 썼습니다.
얼른 자고 일찍 일어나서 따로 강의들어야 합니다 ㅎㅎ
빨리 일어나면 좋겠네요.
바위^^
728x90
'교육, 대외활동, 봉사 > BIG리더 AI 아카데미 2기' 카테고리의 다른 글
[데이터 청년 캠퍼스] 경남대학교 빅리더 AI 아카데미 - Day 13 (마이크로소프트 이소영 이사님, 빅리더 2기 3기 선배님들) (0) | 2020.07.19 |
---|---|
[데이터 청년 캠퍼스] 경남대학교 빅리더 AI 아카데미 - Day 12 (0) | 2020.07.18 |
[데이터 청년 캠퍼스] 경남대학교 빅리더 AI 아카데미 - Day 10 (0) | 2020.07.16 |
[데이터 청년 캠퍼스] 경남대학교 빅리더 AI 아카데미 - Day 9 (1) | 2020.07.15 |
[데이터 청년 캠퍼스] 경남대학교 빅리더 AI 아카데미 - Day 8 (2) | 2020.07.14 |
댓글