본문 바로가기
  • 데이터에 가치를 더하다, 서영석입니다.

혼공8

#공부일지 1_1. Introduction to Machine Learning in Production (Coursera) A conversation with Andrew Ng, Robert Crowe and Laurence Moroney Specialization overview 프로젝트 범위 지정에서 데이터, 모델링, 배포에 이르기까지 전체 머신러닝 프로젝트 수명 주기에 대해 배우게 된다. 이 모든 작업을 수행하기 위한 프로세스 및 도구를 MLOps 또는 머신러닝 작업이라고 부른다. 강사진 Andrew Ng : Coursera 창업자 Robert Crowe : Google, TensorFloew 개발자이자 Google 엔지니어 Laurence Moroney : Google에서 AI advocacy를 이끌고 딥러닝AI를 사용하는 Tensorflow 전문 분야의 강사 The Machine Learning Project Lif.. 2022. 11. 16.
Hands-on ML : 5.3 SVM 회귀 앞서 포스팅에 이어 SVM 알고리즘은 다목적으로 사용할 수 있다. SVM을 분류 뿐만 아니라 선형/비선형 회귀에도 사용할 수 있다. SVM을 분류가 아니라 회귀에 적용하는 방법은 목표를 반대로 하는 것이다. 일정한 마진 오류 안에서 두 클래스 간의 도로 폭이 가능한 한 최대가 되도록 하는 대신 SVM 회귀는 제한된 마진 오류(즉, 도로 밖의 샘플) 안에서 도로 안에 가능한 한 많은 샘플이 들어가도록 학습한다. 도로의 폭은 하이퍼파라미터 E로 조절한다. from sklearn.svm import LinearSVR svm_reg=LinearSVR(epsilon=1.5) svm_reg.fit(X,y) 비선형 회귀 작업을 처리하려면 커널 SVM 모델을 사용한다. 임의의 2차 방정식 형태의 훈련 세트에 2차 다항.. 2022. 6. 2.
Hands-on ML : 5.2 비선형 SVM 분류 https://honeyofdata.tistory.com/73 에 이어 포스팅을 하려 한다. 전에는 선형 SVM 분류를 살펴봤으면 이번에는 비선형 SVM분류를 살펴보려고 한다. 좌측이 선형 , 우측이 비선형 SVM 분류이다. 비선형 데이터셋을 다루는 한 가지 방법은 다항 특성과 같은 특성을 더 추가하는 것이다.9 from sklearn.datasets import make_moons from sklearn.pipeline import Pipeline from sklearn.preprocessing import PolynomialFeatures X,y=make_moons(n_samples=100,noise=0.15) polynomial_svm_clf=Pipeline([ ('poly_features',Pol.. 2022. 6. 2.
Hands-on ML : 5.1 선형 SVM 분류 SVM이란? SVM은 서포터 벡터 머신으로 매우 강력하고 선형이나 비선형 분류, 회귀, 이상치 탐색에도 사용할 수 있는 다목적 머신러닝 모델이다. SVM은 복잡한 분류 문제에 잘 들어맞으며 작거나 중간 크기의 데이셋에 적합하다. 5.1 선형 SVM 분류 SVM 분류기를 클래스 사이에 가장 폭이 넓은 도로를 찾는 것으로 생각할 수 있다. 도로 바깥쪽에 훈련 샘플을 더 추가해도 결정 경계에는 전혀 영향을 미치지 않는다. 도로 경계에 위치한 샘플에 의해 전적으로 결정된다. 이런 샘플을 서포트 벡터라고 한다. 5.1.1 소프트 마진 분류 모든 샘플이 도로 바깥쪽에 올바르게 분류되어 있다면 이를 하드 마진 분류(hard margin classification)라고 한다. 하드 마진 분류에는 두 가지 문제점이 있다.. 2022. 5. 26.
Hands-on ML : 4. 6 로지스틱 회귀 4.6 로지스틱 회귀 로지스틱 회귀(logistic regression)는 샘플이 특정 클래스에 속할 확률을 추정하는 데 널리 사용된다. 추정 확률이 50% 이상이면 모델은 그 샘플이 해당 클래스에 속한다고 예측, 아니면 클래스에 속하지 않는다고 예측한다. -> 이진 분류기이다. 4.6.1 확률 추정 로지스틱 회귀 모델은 입력 특성의 가중치 합에 편향을 더해 계산한다. 이때 선형 회귀처럼 바로 결과를 출력하지 않고, 결과값의 로지스틱(logistic)을 출력한다. 로지스틱은 0 과 1 사이의 값을 출력하는 시그모이드 함수(sigmoid function)이다. 이 함수를 거쳐나온 확률값으로 최종적으로 주어진 데이터가 어느 클래스에 속할지에 대해 결정하게 된다. 보통 확률값이 0.5 이상이면 1 (양성 클래.. 2022. 5. 26.
Hands-on ML : 4. 3 다항회귀 및 4.4 학습곡선 4.3 다항회귀 import numpy as np import matplotlib.pyplot as plt m = 100 X = 6 * np.random.rand(m,1) - 3 y = 0.5 * X**2 + X + 2 + np.random.randn(m,1) # 약간의 노이즈 포함 plt.plot(X,y,"b.") plt.show() 사이킷런의 PolynomialFeatures를 사용하여 훈련 데이터를 변환 from sklearn.preprocessing import PolynomialFeatures poly_features = PolynomialFeatures(degree=2, include_bias=False) X_poly = poly_features.fit_transform(X) print(X[0.. 2022. 5. 19.