ML&DL&AI/ML
-
ML - Text Mining 01ML&DL&AI/ML 2023. 9. 17. 13:24
1. 텍스트 마이닝이란 데이터로부터 유용한 인사이트를 발굴하는 Data Mining의 한 종류 정형 및 비정형 데이터를 자연어 처리 방식(Natural Language Processing)과 문서처리 방법을 적용하여 유용한 정보를 추출/가공하는 것을 목적으로 하는 기술 2. 자연언어(Nature language)란? 정보를 전달하는 수단 인간이 일상생활에서 사용하는 언어 특정 집단에서 사용되는 모국어의 집합 (한국어, 영어, 불어, 일본어, 중국어 등) 인공언어에 대응되는 개념 인공언어란 특정한 법칙들에 따라 적절하게 구성된 문자열들의 집합 특정 목적을 위해 인위적, 의도적으로 만든 언어 ex) 에스페란토, 형식언어(수식), 프로그래밍 언어 - 자연어처리 응용 분야 인간의 언어가 사용되는 실세계의 모든 ..
-
ML Linear Model(선형 모델)ML&DL&AI/ML 2023. 9. 3. 14:59
1. Linear Model(선형 모델) 다양한 선형 모델이 존재 회귀 분석은 예측값이 평균과 같이 일정한 값으로 돌아가려는 경향을 이용한 통계학 기법 이용 입력 특성에 대한 선형 함수를 만들어 예측을 수행 분류와 회귀에 모두 사용 가능 2. 선형 모델 예시 7시간 공부 할경우 예상 되는 시험 점수는? y = ax + b 3. 선형 모델 회귀 함수 w : 가중치(weight), 계수(coefficient) b : 절편(intercept), 편향(bias) 모델 w 파라미터 : model.coef_ 모델 b 파라미터 : model.intercept_ 4. 선형모델 MSE 5. 선형모델 MSE 평균제곱 오차 6. 경사하강법
-
ML 데이터 스케일링ML&DL&AI/ML 2023. 8. 30. 12:28
1. 데이터 스케일링 특성(Feature)들의 범위(range)를 정규화 해주는 작업 특성마다 다른 범위를 가지는 경우 머신러닝 모델들이 제대로 학습되지 않을 가능성이 있음 (KNN, SVM, Neural network 모델, Clustering 모델 등) 2. 데이터 스케일링 장점 설명 특성들을 비교 분석하기 쉽게 만들어 준다 Linear Model, Neural network Model 등에서 학습의 안정성과 속도를 개선 하지만 특성에 따라 원래 범위를 유지하는게 좋을 경우는 scaling을 하지 않아도 된다 3. 데이터 스케일링 종류 StandardScaler 변수의 평균,표준편차를 이용해 정규분포 형태로 변환 (평균 0, 분산 1) 이상치(Outlier)에 민감 RobustScaler 변수의 사분..
-
ML 모델 성능 평가(K-fold cross-validation, GridSearchCV)ML&DL&AI/ML 2023. 8. 21. 09:44
1. 모델 성능 평가 - 일반적인 경우 전체 데이터 100% Train Data 80% Test Data 20% - 데이터의 분할과 용도 전체 데이터 100% Train Data 60~70% Validation Data 15~20% Test Data 15~20% * 해결방안 : 검증 Data를 하나로 고정하지 않고 Test 데이터의 모든 부분을 사용 2. K-fold cross-validation Test 데이터를 k개의 그룹으로 나누기 K-1개의 그룹을 학습에 사용 나머지 1개의 그룹을 이용해서 평가 수행 2번, 3번 과정을 k번 반복 모든 결과의 평균을 구하기 - 장점과 단점 장점 모든 Test 데이터 셋을 평가에 활용할 수 있다. 평가에 사용되는 데이터 편중을 막을 수 있다. 특정 평가 데이터 셋에..
-
ML AdaBoost(Adaptive Boosting)ML&DL&AI/ML 2023. 8. 16. 10:15
1. AdaBoost(Adaptive Boosting) 랜덤포레스트처럼 의사 결정 트리 기반의 모델 각각의 트리들이 독립적으로 존재 X - 동작 순서 1. 첫번째 의사 결정 트리를 생성 위쪽 빨간 원이 3개 있는 곳을 대충 분류 2개의 빨간 원과 1개의 녹색 세모가 잘못 구분 2. 잘못된 2개의 빨간 원과 1개의 녹색 세모에 높은 가중치를 부여, 맞은것 (빨간 원 3개와 녹색 세모 4개)에는 낮은 가중치 부여 3. 가중치를 부여한 상태에서 다시 분류 시킴 잘못된 3개의 빨간 원에 높은 가중치를 부여하고 맞은 5개의 녹색 세모는 낮은 가중치를 부여 4. 가중치를 부여한 상태에서 다시 분류 시킴 5. 진행한 분류들을 결합 2. 사용 방법 learning_rata : 학습률 0~1 기본값 : 0.1 n_est..
-
앙상블(Ensemble) 모델ML&DL&AI/ML 2023. 8. 16. 09:20
1. 앙상블(Ensemble) 여러 개의 머신 러닝 모델을 연결하여 더 강력한 모델을 만드는 기법 - 앙상블 모델 방식 voting bagging boosting * boosting방식을 많이 사용한다. 2. Voting 방식 서로 다른 모델을 결합하여 투표를 통해 최종 예측 결과를 결정하는 방식 - 하드 보팅 vs 소프트 보팅 하드 보팅 예측한 결과값들 중 다수의 분류기가 결정한 예측한 값을 최종 보통 결과값으로 선정하는 방식 다수결의 윈칙이라고 생각 소프트 보팅 분류기들의 레이블 값 결정 확률을 모두다 더한 뒤, 평균 해서 확률이 가장 높은 레이블 값을 최종 보팅 결과값으로 선정 3. Bagging 방식 같은 알고리즘으로 여러개의 모델을 만들어서 투표를 통해 최종 예측, 결과를 결정하는 방식 ex) ..
-
ML Decision TreeML&DL&AI/ML 2023. 8. 14. 10:00
1. Decision Tree 란 스무고개 하듯이 예/아니오 질문을 반복하는 학습 특정 기준(질문)에 따라 데이터를 구분하는 모델 분류와 회귀에 모두 사용 가능 - 의사 결정 방향 불순도가 낮아지는 방향 불순도란? 정보 이론에서 얻을 수 있는 정보량의 정도를 뜻함. 하나의 범주 안에 여러종류의 데이터가 속해있으면 불순도가 높아진다. 데이터를 분기할 때 현재 노드보다 자식 노드의 불순도가 감소되도록 분기를 해야 된다. - Root Node, Decision Node, Leaf Node, depth, Sub Tree Root Node : 최상위 노드 Decision : 결정 노드 (사각형의 모양) Leaf Node : 자식이 없는 노드, 단말 노드 Depth : 자신을 제외한 조상의 노드의 개수 Sub tr..
-
KNN 실습 - 붓꽃(iris) 품종 구분하기ML&DL&AI/ML 2023. 8. 9. 13:56
1. 문제 정의 붓꽃 3가지 품종을 구분하는 모델 만들기 2. 데이터 수집 sklearn에서 제공하는 데이터 셋 이용 from sklearn.datasets import load_iris iris_data = load_iris() - 데이터 확인하기 iris_data.keys() dict_keys(['data', 'target', 'frame', 'target_names', 'DESCR', 'feature_names', 'filename', 'data_module']) data : 특성 데이터 (입력 데이터) 문제 데이터 target : 타깃 데이터(출력 데이터) 답지 데이터 DESCR : 데이터셋에 대한 설명 feature_names : 특성의 이름 target_names : 타깃 클래스의 이름 - 데..