본문 바로가기

AI44

[분류 - 5] 서포트 벡터 머신(SVM)이란? 최근 들어서 머신러닝에서 인기가 아주 높아지고 있는 강력한 알고리즘이다. SVM은 다른 머신러닝과 비교해서 정확도가 높다고 한다. 서포트 벡터 머신은 각기 다른 분류의 두 데이터 사이에 초평면(튜브) 그린다. 보통은 훈련 두 점 사이에서 가장 마진이 큰 초평면을 선택한다. (여러 점들에게 만족하는) 그리고 이 초평면의 Positive Hyperplane과 Negativeplaned에 닿아있는 점들을 Support Vector라고 한다. 이는 이 점들에 의해 초평면이 결정되기 때문에 붙여진 이름이라고 한다. 2022. 4. 30.
[분류 - 4] K-NN 분류 실습 빠르게 훈련 세트와 테스트 세트를 나누고 스케일링까지 해준다 library(caTools) set.seed(123) split = sample.split(dataset$Purchased, SplitRatio = 0.75) training_set = subset(dataset, split == TRUE) test_set = subset(dataset, split == FALSE) # Feature Scaling training_set[-3] = scale(training_set[-3]) test_set[-3] = scale(test_set[-3]) 훈련 세트를 통해 생성된 K-NN classifier로 테스트 세트를 분류하면 아래와 같은 결과가 나온다. y_pred = knn(train = training.. 2022. 4. 29.
[분류 - 3] K-Nearest Neighbors 데이터가 어떤 카테고리에 가까울지 찾는 알고리즘. 그래프 상으로 말해보면 초록점이 어느색 점에 더 가까울 것인가를 찾는 분류 기법이다. Step 1. K개의 데이터를 고른다. (일반적으로 K=5이다) Step2. 새로운 데이터포인트에서 가장 가까운 K개의 데이터들을 분류한다. Step3. 새로운 데이터를 갯수가 많은 쪽으로 카테고리로 분류한다. 그냥 데이터가 어디에 더 가까운지 찾는거임...... 2022. 4. 29.
[분류 - 2] 로지스틱 회귀 실습 dataset = dataset[3:5] (성별 제외) 나이에와 연봉에 따른 구매 회귀 예측을 해보려고 한다. Purchased 열의 0이 구매하지 않음, 1이 구매함이다. 테스트 세트와 훈련 세트틑 1:3 비율로 나누고, 스케일링을 해준다 library(caTools) set.seed(123) split = sample.split(dataset$Purchased, SplitRatio = 0.75) training_set = subset(dataset, split == TRUE) test_set = subset(dataset, split == FALSE) training_set[-3] = scale(training_set[-3]) test_set[-3] = scale(test_set[-3]) 로지스틱 .. 2022. 4. 27.
[분류 - 1] 로지스틱 회귀(Logistic Regression)란? 로지스틱 회귀는 종속 변수가 범주형 데이터이며, 입력 데이터가 주어졌을 때 해당 데이터의 결과가 특정 분류로 나뉘기 때문에 분류 기법으로 볼 수 있다. (그래서 분류 카테고리) 종속 변수가 범주형 데이터라는 것을 눈여겨 볼 필요가 있다. 위 그래프에서 x축의 값을 x, y축의 값을 y라고 했을 떄, -6 < x < 0은 y값이 0, 0 < x < 6은 y값이 1로 표현된다. 즉, 종속 변수는 0 혹은 1 외엔 없다는 말이다. 2022. 4. 26.