머신러닝 15

Chapter 3.6 결정 트리 학습, 머신러닝교과서, pyhon

* 본 포스팅은 머신러닝교과서를 참조하여 작성되었습니다 3.6 결정 트리 학습 결정 트리(decision tree) 분류기는 설명이 중요할 때 아주 유용한 모델이다. 결정 알고리즘을 사용하면 트리의 루트(root)에서 시작해서 정보 이득(Information Gain)이 최대가 되는 특성으로 데이터를 나눈다. 반복 과정을 통해 리프 노드(leaf node)가 순수해질 때까지 모든 자식 노드에서 이 분할 작업을 반복한다. 트리의 최대 깊이를 제한하여 가지치기(pruning)를 한다. 3.6.1 정보 이득 최대화: 자원을 최대로 활용 import matplotlib.pyplot as plt import numpy as np def gini(p): return p * (1 - p) + (1 - p) * (1 ..

Chapter 3.4 서포트 벡터 머신을 사용한 최대 마진 분류, 머신러닝교과서, python

* 본 포스팅은 머신러닝 교과서를 참고하여 작성되었습니다. 3.4 서포트 벡터 머신을 사용한 최대 마진 분류 서포트 벡터 머신(Support Vector Machine, SVM) : SVM은 퍼셉트론의 확장으로 생각 할 수 있다. SVM의 최적화 대상은 마진을 최대화 하는 것이다. 3.4.1 최대 마진 큰 마진(large margin)의 결정 경계를 원하는 이유는 일반화 오차가 낮아지는 경향이 있기 때문이다. 반면 작은 마진의 모델은 과대적합되기 쉽다. 3.4.2 슬랙 변수를 사용하여 비선형 분류 문제 다루기 슬랙변수 : 오류를 허용하는 '직선', 소프트 마진 분류(soft margin classification) 슬랙 변수는 선형적으로 구분되지 않는 데이터에서 선형 제약 조건을 완화할 필요가 있기 때문..

머신러닝 교과서, 2.2, python

*본 포스팅은 머신러닝 교과서를 참고하여 작성되었습니다~! 2.2 파이썬으로 퍼셉트론 학습 알고리즘 구현 2.2.1 객체 지향 퍼셉트론 API import numpy as np class Perceptron(object): """퍼셉트론 분류기 매개변수 --------------- eta : float 학습률 (0.0과 1.0 사이) n_iter : int 훈련 데이터셋 반복 횟수 random_state : int 가중치 무작위 초기화를 위한 난수 생성기 시드 속성 --------------- w_ : 1d-array 학습된 가중치 errors_ : list 에포크마다 누적된 분류 오류 """ def __init__(self, eta=0.01, n_iter=50, random_state = 1): sel..

Chapter6.2 가중치의 초깃값, DL from Scratch, 파이썬

6.2 가중치의 초깃값 신경망 학습에서 특히 중요한 것은 가중치의 초깃값이다. 가중치의 초깃값을 무엇으로 설정하느냐가 신경망 학습의 성패가 가르는 일이 있다. 이번 절에서는 권장 초깃 값에 대해서 설명하고 실험을 통해 실제로 신경망 학습이 신속하게 이뤄지는 모습을 확인하겠다. 6.2.1 초깃값을 0으로 하면? 가중치 감소(weight decay) 기법 : 가중치 매개변수의 값이 작아지도록 학습하는 방법이다. 즉, 가중치 값을 작게 하여 오버피팅이 일어나지 않게 하는 것이다. 그렇다면 가중치의 초깃값을 모두 0으로 설정한다면 어떨까? 이는 나쁜 아이디어인데, 실제로 가중치 초깃값을 0으로 하면 학습이 올바로 이뤄지지 않는다. 그 이유는 오차역전파법에서 모든 가중치의 값이 똑같이 갱신되기 때문이다. 6.2...

3.6.2 신경망의 추론 처리, No such file or directory: 'sample_weightpkl', 코랩, colab

나는 계속해서 colab 환경에서 하고 있는데, 3.6.2 장에서 또 에러가 생겼다. 이유인즉슨, 내가 찾으려고하는 sample_weight 피클 파일을 찾으려는데 현재의 경로에 이 파일이 존재하지 않아 발생하는 문제이다. 이를 해결하기 위해서 현재 경로를 설정해주어야 한다. 다음의 명령어를 실행하서 확인해보면, pwd >> '/content' 이렇게 설정이 되어있다. 내가 필요한 피클 파일은, 실습파일에서 3번 디렉토리에 해당되는 경로이므로 %cd /content/drive/MyDrive/Colab Notebooks/밑바닥부터 시작하는 딥려닝/deep-learning-from-scratch-master/ch03 를 입력하여 실행해준다. (각자의 경로에 맞게 설정해주면 된..