Python & Data Science/머신러닝 & 딥러닝
심층 학습의 발전 심층학습의 출현은 인공지능 역사에 있어 매우 큰 전환점이다. 기존의 머신러닝에서는 데이터의 특징 중 어떤 특징을 추출할지를 사람이 분석하고 판단해야만 했다. 하지만 딥러닝에서는 기계가 자동으로 학습하려는 데이터에서 특징을 추출하여 학습할 수 있게 되었다. 마치 주입식 교육과 자기주도적 학습의 느낌이랄까? 자동으로 대규모 데이터에서 중요한 패턴 및 규칙을 학습할 수 있다는 측면은 복잡한 데이터, 비정형 데이터와 같은 높은 수준의 학습이 가능해졌다. 1. McCulloch & Pitts(1943) :뉴런 구조를 수학적으로 근사하는 모델에 대한 개념 제시 2. Hebb(1949) :시냅스의 연결 강도 조정을 위한 학습 규칙을 기술 3. Rosenblatt(1958) :Perceptron, 최..
포스팅된 글의 인용한 모든 이미지는 CCL 라이선스의 이미지만을 사용했으며, 출처를 밝힙니다. Boosting Boosting은 여러 개의 약한 학습기(Weak Learner)를 결합하여 강한 학습기(Strong Learner)를 만드는 앙상블 기법이다. 여러 개의 Weak Learner를 순차적으로 결합하여 예측 성능을 향상하면서, 모델의 오류를 보정해나간다. 순차적인 앙상블 모델이다. AdaBoost 잘못 분류된 샘플에 가중치를 높여서 다음 모델을 학습시키는 방식 Weak Learner의 결과에 가중치를 적용하여 Strong Learner를 생성한다. Gradient Boosting 이전 모델의 예측 오차에 새로운 모델을 학습시켜 오차를 줄이는 방식. Gradient Descent를 사용하여 가중치 ..
포스팅된 글의 인용한 모든 이미지는 CCL 라이선스의 이미지만을 사용했으며, 출처를 밝힙니다. 앙상블 모델 앙상블 모델은 여러 다른 개별 모델을 결합하여 예측 능력을 향상시키는 기법이다. 서로 다른 알고리즘, 다른 훈련 데이터셋을 이용할 수 있으며, 모델들의 예측을 통합하여 미지의 데이터로부터의 예측을 수행한다. Voting 각 모델의 결과에 대한 투표를 실시하는 것. Voting은 여러 다른 모델의 예측 결과를 결합하여 최종 예측을 수행하는 앙상블 기법이다. 각 모델의 예측을 조합하여 더 강력한 예측을 만들어낸다. Hard Voting 다수결 방식으로 예측 결과를 합치는 방법. 각 모델이 예측한 클래스 레이블 중 가장 많은 클래스 레이블을 최종 예측 결과로 선택한다. 이 방식은 각 모델이 동일한 중요도..
포스팅된 글의 인용한 모든 이미지는 CCL 라이선스의 이미지만을 사용했으며, 출처를 밝힙니다. 비지도 학습 - Label이 없는 데이터를 학습시키는 방법 - 유사성을 기반으로 그룹화하거나 데이터에 숨어있는 구조를 파악 비지도 학습의 종류 - 군집화 : 데이터로부터 몇 개의 대표적인 집합을 얻어내는 방법 - 연관 규칙 분석 : 항목들 사이의 관계를 분석하여 연관성을 찾는 방법 - 차원 축소 : 높은 차원의 데이터를 낮은 차원의 데이터로 변환하는 방법 연관 규칙 분석 연관 규칙 분석은 비지도 학습의 한 종류로서, 데이터에서 아이템 간의 연관성을 찾아내는 기법. 이를 통해 데이터 집합 내에서 아이템들 간의 패턴, 규칙, 관계를 발견하거나 예측하는 데 사용된다. 연관 규칙 분석의 대표적인 예는 슈퍼마켓에서의 장..
K-Means Clustering https://upload.wikimedia.org/wikipedia/commons/b/b3/K-means_versus_k-medoids.png 중심점(Centroid) 기반의 클러스터링 데이터는 다른 군집의 중심점보다 속한 군집의 중심점에 가까워야 한다. 방법 1. 초기 세팅 클러스터 개수(K) 설정: 사용자는 클러스터의 개수를 결정해야 한다. 초기 중심 설정: K개의 클러스터의 중심을 초기에 무작위로 설정한다. 2. 할당 단계 각 데이터 포인트를 가장 가까운 중심에 할당. 이 때 거리 측정은 일반적으로 유클리디안 거리를 사용합. 각 데이터 포인트는 그것과 가장 가까운 클러스터에 속하게 된다. 3. 업데이트 단계 각 클러스터의 중심을 해당 클러스터에 속한 데이터 포인트..
포스팅된 글의 인용한 모든 이미지는 CCL 라이선스의 이미지만을 사용했으며, 출처를 밝힙니다. 비지도 학습 - Label이 없는 데이터를 학습시키는 방법 - 유사성을 기반으로 그룹화하거나 데이터에 숨어있는 구조를 파악 비지도 학습의 종류 - 군집화 : 데이터로부터 몇 개의 대표적인 집합을 얻어내는 방법 - 연관 규칙 분석 : 항목들 사이의 관계를 분석하여 연관성을 찾는 방법 - 차원 축소 : 높은 차원의 데이터를 낮은 차원의 데이터로 변환하는 방법 군집화 비지도 학습, 범주형 변수 예측 군집화는 분류와 달리 라벨(카테고리)를 회귀하는 것이 아니라 유사 집단으로 묶는 것 분할적 군집화 - Top-Down, 몇 개의 집합으로 분할할지 결정한 후 유사한 데이터를 모음 - K-Means : 중심점 기반 - DB..
포스팅된 글의 인용한 모든 이미지는 CCL 라이선스의 이미지만을 사용했으며, 출처를 밝힙니다. 분류 (Classification) 분류는 지도 학습의 방법 중 하나이다. - 범주형 변수를 인식하고 구분하는 방법 - 데이터를 잘 구분하는 경계(Decision Boundary)를 찾는 문제. 로지스틱 회귀와 분류 - 결정 경계 문제를 해결하기 위해 로지스틱 분류를 가장 많이 사용 - 로지스틱(시그모이드) 함수는 x->∞일 시 1, x->(-∞)일 시 0, x=0일 때 변곡점, 좌우대칭, 증가함수의 특징을 가진다. 로지스틱 분류의 손실 함수의 조건 기존의 MSE Loss 함수는 로지스틱 함수를 제곱하고 미분하기에 어려움 -> Cross Entropy Loss 함수를 손실 함수로 사용한다. Convex한 함수 ..
포스팅된 글의 인용한 모든 이미지는 CCL 라이선스의 이미지만을 사용했으며, 출처를 밝힙니다. AI 모델의 검증 방법 데이터셋은 모델을 훈련하고 평가하는 데 사용되는 데이터의 집합 - 데이터셋을 Traning Set / Validation Set / Test Set으로 데이터를 나눔 - Traning Set : AI 모델을 훈련, 60% - Validation Set : 훈련이 끝난 모델의 성능 검증, 20% - Test Set : 최종 출시 전 AI 모델 성능 검증, 20% 훈련 세트 (Training Set, 60%): 이 부분은 실제로 모델을 훈련하는 데 사용되는 데이터. 모델은 이 데이터를 사용하여 패턴과 관계를 학습하며, 최적의 파라미터를 찾아가는 과정을 거친다. 검증 세트 (Validation..
1. 라이브러리 Import from sklearn.model_selection import train_test_split from sklearn.linear_model import LinearRegression from sklearn.metrics import mean_squared_error import numpy as np import pandas as pd import matplotlib.pyplot as plt from sklearn.datasets import load_diabetes 2. 데이터 수집 diabetes = load_diabetes() #data와 target을 x와 y로 설정 x, y = diabetes["data"], diabetes["target"] 라이브러리에서 제공하는 ..