본문 바로가기

전체 글

(150)
Bagging & Random Forest Resampling 데이터의 크기가 작은 경우 데이터셋의 크기를 늘리는 방법 1) CV (Cross Validation) dataset을 k fold로 쪼개어 하나의 fold를 validation fold로, 나머지를 training fold로 사용한다. training fold로 model을 생성하고 validation fold로 모델을 평가한다. k번의 iteration이 끝난 후 성능을 평균내어 성능을 평가한다. 2) BootStrap - 앙상블(ensemble): 여러 학습 알고리즘을 사용하여 학습 모델을 생성하는 것으로, 단일 알고리즘을 사용했을 때보다 성능이 높다. bootstrap은 앙상블 기법 중 하나이고 연산량이 많다. - BootStrap: original sample을 하나의 모집단처..
SVM: programming 1. import packagesimport numpy as np import pandas as pd import seaborn as sns import matplotlib.pyplot as plt from matplotlib.colors import ListedColormap 2. 데이터 불러오기df = pd.read_csv(r"train.csv") test=pd.read_csv(r"test.csv") 3. SVM model 생성from sklearn.svm import SVC from sklearn.model_selection import train_test_split from sklearn.preprocessing import MinMaxScaler# feature 와 target 분리 # targ..
SVM (Support Vector Machine) SVM이란 supervised learning algorithm classification / regression 모두 가능하고 classification에 높은 성능을 보인다. 탄탄한 수학적 이론으로 딥러닝 이전에 인기가 많았음 hyperplane(초평면)을 이용하여 카테고리를 나눈다. SVM 모델 margin을 최대로 하는 분류 경계면을 찾는 문제와 같다. SVC 수식 x(i)의 i번째 example의 방향 벡터를 u 벡터, decision boundary와 수직인 벡터를 v 벡터라고 했을 때, w˙v의 내적 길이에 따라 x가 x-인지 x+인지가 결정될 수 있다. 그 경계에 있는 실수를 b라고 했을 때 w˙u+b>=0이면 x는 x+, =1이면 x+, local minimum에 빠지지 않는다. => s..
4주차. Programming: Deep Neural Network - Application 1. packages import time import numpy as np import h5py import matplotlib.pyplot as plt import scipy from PIL import Image from scipy import ndimage from dnn_app_utils_v3 import * %matplotlib inline plt.rcParams['figure.figsize'] = (5.0, 4.0) # set default size of plots plt.rcParams['image.interpolation'] = 'nearest' plt.rcParams['image.cmap'] = 'gray' %load_ext autoreload %autoreload 2 np.random..
4주차. Programming: Building deep neural network 1. Packages import numpy as np import h5py import matplotlib.pyplot as plt from testCases_v4a import * from dnn_utils_v2 import sigmoid, sigmoid_backward, relu, relu_backward %matplotlib inline plt.rcParams['figure.figsize'] = (5.0, 4.0) # set default size of plots plt.rcParams['image.interpolation'] = 'nearest' plt.rcParams['image.cmap'] = 'gray' %load_ext autoreload %autoreload 2 np.random.see..
4주차. Deep Neural Networks Forward propagation in a deep network Getting your matrix dimensions right Why deep Representations? deep neural network가 shallow network 보다 더 쉽고 간편하게 계산 가능 Building blocks of deep neural networks forward propagation에서 layer마다 W[l],b[l]으로 a[l]을 계산하여 yhat까지 계산함. Z[l],W[l],b[l]도 추가적으로 계산하여 저장해놓음. backward propagation에서는 da[l]으로 dw[l],db[l],da[l-1]을 계산하면서 W[l],b[l]을 update 함. Forward and Backward p..
3주차. Programming assignment 1. packages import numpy as np import matplotlib.pyplot as plt from testCases_v2 import * import sklearn import sklearn.datasets import sklearn.linear_model from planar_utils import plot_decision_boundary, sigmoid, load_planar_dataset, load_extra_datasets %matplotlib inline np.random.seed(1) np.random.seed()로 결과값이 항상 동일하도록 설정했다. 2. dataset X, Y = load_planar_dataset() plt.scatter(X[0, :], X[1, :..
3주차. Shallow Neural Network Neural Networks Overview 2주차에서 1층으로 이루어진 neural network의 구조와 back propagation(da,dw,db)을 계산하는 방법을 알아보았다. 이번 단원에서는 2층 신경망에 대해서 알아볼 것이고, 그림은 forward propagation 과정을 나타냈다. backward propagation으로 (da[2]),dz[2],dW[2],db[2],(da[1]),dz[1],dW[1],db[1]을 어떻게 나타내는 지도 볼 것이다. Neural Network Representation neural network는 입력층인 input layer, 출력층인 output layer, 그리고 그 두 층을 제외한 중간의 모든 층인 hidden layer로 구성된다. 0층부터 a..