다른 Decision Tree 들을 합쳐서 만든 것 다른 쪽에 편향된 decision tree를 종합해서 오히려 일반화가 된다. 경향을 파악하게 된다. 서로 다른 decision tree를 만들기 위해서 무작위성을 도입한 것. Bagging : Bootstrap aggregating의 줄임말 Bootstrap: (신발 등을 끌어올리려고 만든 스트랩) 끌어올리다 (원본을 끌어올려서 사본을 만들다) aggregating: 합치다 서로 다른 데이터를 주입해서 서로 다른 학습기가 되도록 하는 것. 부트스트랩을 하고 -> 학습은 각각 하고 -> 모델을 합친다.(투표한다) 투표방식 1) 하드 보팅 -> 다수결 2) 소프트 보팅 -> 확률로 구해서 평균을 내서 threshold를 넘느냐 안 넘느냐. 회귀분석은 평균을..
개발
분류에 관한 관점으로 설명. 결정트리와 스무고개의 다른 점은 Decision Tree 는 정답의 후보가 정해져있다 질문의 선택지도 정해져 있다. 창의적으로 질문할 수 없고 데이터가 가지고 있는 feature 값 중에 질문할 수 있다. 닮은 점은 계속 파티셔닝을 해나간다 좋은 질문인지 나쁜 질문인지에 대해 판단하는 것이 비슷하다 (질문을 던졌을 때 우리가 예측해야하는 것에 대한 기준으로 봤을 때 100% 양분은 아니지만 클래스를 기준으로 적절히 나눠지는가, 정보획득량이 큰 질문인지.) 좋은 질문의 기준 정보획득량이 큰 것 카테고리를 기준으로 명확하게 잘 구분해주는 질문 규칙 하나의 feature에 대해 하나의 질문을 할 수 있다. 기하학적으로는 축에 수직인 경계선을 그리는 것이다. (대각선 X, 곡선 X)..
머신러닝에서 convex는 매끄럽다는 것. linear regression 오차를 구하는 수식 1 / 1 + e^-wx 에서 왜 이것을 사용하느냐, 예측값과 실제값의 오차로 사용하면 non-convex 하다. 저 수식을 사용하면 convex 하게 gradient 계산이 되기 때문이다. 그러므로 저 수식을 사용한다. sigmoid 라고 부르는 이유는 거기에 속해있는 것 중 하나이기 때문에 그렇게 부르기도 한다. 다른 종류도 있다. 0.5가 아닌 다른 수치로도 threshold 를 조절할 수도 있다.
model 정리할 때 1) hypothesis 2) cost 를 정리하라. 1) hypothesis 입력값과 출력값 과의 상관관계. 어떻게 예측할지에 대해 얘기하는 것. 모델의 예측 방식 겉 2) cost 오차를 어떻게 계산할 것인가에 대해 얘기하는 것. 오차를 계산해서 minCost weight 를 한다. 이게 학습. 모델의 학습방식 속 국민대는 y ==]xf 출처: https://ardino.tistory.com/
Train | Test Good | Bad 학습은 잘하는데 시험은 못 보는 경우 train x test x -> underfit train o test o -> fit train o test x -> overfit underfit, overfit 일 경우 학습을 잘 했는지 확인 학습을 잘 했으면 overfit, 학습도 못 했으면 underfit. 데이터 복잡도 > 모델 복잡도 : underfit 데이터 복잡도 < 모델 복잡도 : overfit 데이터 복잡도에 적절한 모델 복잡도를 가지고 있으면 fit 하다. underfit 은 모델의 복잡도를 끌어올리면 된다. overfit은 모델의 복잡도를 끌어내리면 된다. 모델의 복잡도를 올리거나 내리거나 하면 된다. 데이터 복잡도를 올리거나 내리는 것은 전처리. 어..
어떻게 cost 가 낮은 weight를 구할 수 있을까? 0단계 Hypo 폼 결정 y = w1x + w0(bias) 1단계 초기값 설정 y = 7x + 3 2단계 cost 확인 3단계 weight update weight update를 어떻게 하는지. update 하는 방향이 있어야되지 않냐. 특정 weight가 특정 cost를 가지게 된다. weight와 cost 간의 어떤 관계가 성립된다. 관계 -> 함수. cost는 weight에 의한 함수다. 적절한 기울기일 때 cost가 최소이다. 그 순간의 cost와 weight 관계에서 기울기를 계산해서 이동할 방향을 알 수 있다. cost가 감소해야되는 상황은 고정. 그게 목적이니까. 기울기가 양수일 경우 둘의 방향이 같다. cost가 감소해야되는 상황이니..
데이터에 y값의 유무를 보고 정답이 있는지 보고 지도학습인지 비지도학습인지 알 수 있다. y값의 유: 지도학습 y값의 무: 비지도학습 지도학습은 회귀와 분류로 나뉜다. y가 숫자냐, 카테고리냐에 따른 것. 숫자면 회귀, 카테고리면 분류이다. 학습시키는 목적에 따라 다른 것이다. 값이 없다고 비지도학습을 하는 것이 아니라. 지도학습은 '예측'하려고 하는 것이다. 비지도는 x 끼리의 관계를 학습시키려고 하는 것이다. 출처: https://ardino.tistory.com/
데이터의 패턴, 규칙성을 기계가 발견하도록 양도하는 것 대량의 데이터를 학습시킴으로써 내재적인 사람이 찾지 못하는 규칙을 기계가 찾도록 하여 대량의 데이터를 넣고 학습을 시킨다. 데이터의 상관관계를 학습한다. 데이터의 hypothesis(가설)을 학습하도록 하는 것 hypothesis는 우리가 잡고, 구성하고 있는 weight를 기계가 찾도록 하는 것. 우선순위가 없이 다양한 답이 나올 수 있기 때문에 폼은 우리가 정해줘야 한다. ex) y = 10x, y = x^3 + 6x^2 + 21x - 6... hypothesis의 폼을, 어떤 모델을 쓰는 것이 적합한지의 판단력을 기르기 위해 머신러닝을 공부하는 것이다. 기계가 학습해야 하는 것은 상관관계 hypothesis 중 weights를 학습하는 것이다...