목록전체 글 (34)
BASEMENT

K-평균 알고리즘 (K-means algorithm) 1. 개념 - 주어진 데이터를 K개의 클러스터로 묶는 알고리즘으로, 각 클러스터와 거리 차이의 분산을 최소화하는 방법 - label이 없는 입력 데이터에 label을 달아주는 역할을 수행함 - 각 군집 중심의 위치, 각 개체가 어떤 군집에 속해야 하는지 EM 알고리즘을 사용함 - 데이터 분류, 클러스터링 / 성향이 불분명한 시장 분석 / 패턴인식, 음성인식 / 관련성 파악 등 - K 는 데이터 세트에서 찾을 것으로 예상되는 클러스터(그룹) 수 - Means 는 각 데이터로부터 그 데이터가 속한 클러스터의 중심까지의 평균 거리 1) 장점 - 간단한 알고리즘으로 대규모에도 적용 가능 (계산시간이 짧음) - 데이터에 대한 사전정보가 필요 없음 (특정 변수에..
군집화 1. 비지도학습(Unsupervised Learning) - 정답이 없음 (label이 없음) - 목표값을 정해주지 않아도 되고 사전 학습이 필요 없으므로 속도가 빠름 - 지도학습에서의 적절한 feature를 찾아내기 위한 전처리 방법으로 사용됨 구분 지도학습 비지도학습 사용이유 예측 모델 생성 고차원 데이터 분류 성능평가 교차 검증 수행 검증 방법 없음 입력정보 Labeled Data Raw Data (Label이 없음) 유형 회귀 (x, y로 f(x)=y 파악) 분류 (그룹별 특징 파악) 군집 (데이터끼리 묶음) 패턴인식 (여러 그룹 인식) 알고리즘 머신러닝 K-Means, DBSCAN, Clustering 등 예시 패턴인식, 질병진단, 주가예측, 회귀분석 등 스팸필터, 차원축소, 데이터 마이..
랜덤포레스트 (Random Forest) 1. 개념 - Decision Tree의 오버피팅 한계를 극복하기 위한 방법 - 데이터에 의사결정나무 여러 개를 동시에 적용해서 학습성능을 높이는 앙상블 기법 - 동일한 데이터로부터 복원추출(bootstrap sampling)을 통해 30개 이상의 데이터 셋을 만들어 각각 의사결정나무를 적용한 뒤 학습 결과를 취합하는 방식 - 데이터 분류, 군집, 예측, Feature 중요성 확인 - 배깅(bagging) : 부트스트랩(bootstrap)을 통해 조금씩 다른 훈련 데이터에 대해 훈련된 기초 분류기들을 결합시키는 방법 - 트리들의 편향(오차)은 그대로 유지하면서, 분산(편차)은 감소시키기 때문에 포레스트의 성능이 향상됨 1) 장점 - 다양성을 극대화 하여 예측력이 ..

의사결정트리 (decision tree) 1. 개념 - 데이터네 내재되어 있는 패턴을 변수의 조합으로 나타내는 예측 분류 모델을 나무 형태로 만드는 방법 - 어떤 항목에 대한 관측값과 목표값을 연결시켜주는 예측 모델로서 결정트리를 사용 - 지도학습 방법, 분류와 회귀에 사용 - 의사 결정에 이르기까지 yes/no로 분류하여 사용하고 질문을 던져 대상을 좁히는 방법 1) 장점 - 자료를 가공할 필요가 거의 없고 다른 기법들의 경우 자료를 정규화하거나 임의의 변수를 생성하거나 값이 없는 변수를 제거해야 하는 경우 - 수치 자료와 범주 자료 모두 적용 가능 - 대규모 데이터 셋에서도 잘 동작함. 방대한 분량의 데이터를 일반적인 컴퓨터 환경에서 합리적인 시간 안에 분석 가능 2) 단점 - 결정 트리 학습자가 훈..

1. SVM (Support Vector Machine) 1. 개념 - 이질적인 두개 또는 그 이상의 데이터 집단을 분류하는 최적의 초평면을 찾는 모델 -> 분류되지 않은 새로운 점이 나타나면 경계의 어느 쪽에 속하는지 확인해서 분류할 수 있음 - 각 데이터 항목을 n차원 공간상 하나의 점으로 표시함 - 분류 또는 회귀문제에 사용할 수 있는 알고리즘 - 딥러닝 못지 않은 성능, 가벼움 - Classification한 다음 Margin이 가장 큰 선을 찾음 - Margin : 초평면 가까이에 있는 서포트 벡터에서 초평면까지의 거리의 합 - 서포트 벡터 : 두 클래스 사이의 경계에 위치한 데이터 포인트 -> 서포트 벡터들이 결정 경계를 만드는데 영향 2. SVM 분류 - 각각 커널에서는 최적화를 도와주는 파..

나이브 베이즈 1. 정의 - 속성들 사이의 독립을 가정하는 베이즈정리(조건부 확률)를 적용한 확률적 분류기법 - 지도학습 알고리즘으로, 주로 분류(classification)의 목적으로 사용됨 - 나이브베이즈의 독립변수(x)는 범주형 변수 - ex) 스팸 이메일 필터링 (텍스트 분류) 2. 베이즈정리 - 두 확률변수의 사전확률과 사후확률 사이의 관계를 나타내는 정리 - 사전확률 : 가지고 있는 정보를 기초로 정한 초기확률 - 사후확률 : 결과가 발생했다는 조건에서 어떤 원인이 발생했을 확률 - 우도(Likelihodd) : 원인이 발생했다는 조건에서 결과가 발생했을 확률 3. 조건부확률 - 사건 A가 일어났을 때 사건 B가 일어날 확률 4. 나이브베이즈 장점&단점 장점 - 우도 테이블 하나만 있으면 분류..

KNN (K-Nearest Neighbor) 알고리즘 1. 정의 - 새로운 데이터와 기존 데이터들간 거리를 측정하고, 가까운 데이터들의 종류가 무엇인지 확인하여 새로운 데이터의 종류를 판별 - K는 인접한 데이터의 개수로, KNN알고리즘은 K의 결과에 따라 달라지기 때문에 K를 정해주는 것이 가장 중요 1) 장점 - 어떤 분포든 상관 없음 - 쉽고 이해하기 직관적 - 샘플 수가 많을 때 좋은 분류법 2) 단점 - 최적의 K를 선택하기 어려움 - 데이터가 많을 경우 분석속도가 느릴 수 있음 - 특정분포를 가정하지 않기 때문에 샘플수가 많이 있어야 정확도가 좋음 2. KNN 거리 구하는 공식 1) 유클리드 거리 공식 2) Manhattan Distance 거리 공식 -> 일반적으로 유클리드를 더 많이 사용함..

1. 모델 성능 평가 척도 모델의 예측결과와 성능을 살펴볼 수 있는 척도 1. Confusion Matrix - 실제값 : 데이터의 실제 카테고리. y_test - 예측값 : 모델이 분류, 예측한 데이터의 카테고리. y_pred - TP : 실제 yes 카테고리의 데이터 중 모델이 yes 카테고리로 예측한 데이터의 건 수 - FN : 실제 yes 카테고리의 데이터 중 모델이 no 카테고리로 예측한 데이터의 건 수 - FP : 실제 no 카테고리의 데이터 중 모델이 yes 카테고리로 예측한 데이터의 건 수 - TN : 실제 no 카테고리의 데이터 중 모델이 no 카테고리로 예측한 데이터의 건 수 from sklearn.metrics import confusion_matrix import matplotlib..