목록인공지능/코세라 머신러닝 특화과정 (19)
juuuding
Neural network layer hidden layer 내부를 좀 더 자세히 살펴보자. 아래의 사진은 layer1의 내부이다. 각 neuron 마다 w, b 값이 있으며 표기는 다음과 같이 한다. hidden layer1을 거친 결과는 a[1]로 표현되며 이는 각 뉴런에 해당되는 w,b가 적용된 sigmoid 함수를 거친 활성화 값이다. a[1] 값이 output layer인 layer2에 들어가면 한 뉴런의 sigmoid 함수를 거쳐 결과가 도출되고 이 결과 값은 스칼라 값으로 결정된다. 이 후 결과 값으로 category를 예측한다. More complex neural networks hidden layer가 더 많은 복잡한 신경망을 자세히 살펴보자. hidden layer1과 마찬가지로 hid..
Neurons and the brain Neural networks란 뇌를 모방한 알고리즘이다. 인간의 뇌는 한 뉴런에서 다른 뉴런으로 신호를 보내며 생각이라는 것을 하게 되는데, 이러한 특징을 단순화하여 만든 모델이 Neural Networks이다. Demand Prediction 예를 들어 소비자가 옷을 살지 안살지를 예측하는 모델을 살펴보자. 소비자의 구매 여부를 결정하는 요소는 cost, shipping cost, marketing, material로 정했다. 그리고 하나의 layer은 3개의 neurons(units)로 구성하였고, 이 unit들은 각각 affordability, awawreness, perceived quality 에 해당한다. 한 layer은 동일하거나 유사한 특징을 입력 받..
Machine Learning 특화 과정 중 첫 번째 과정인 을 완료하였다. 다음으로 두 번째 과정인 을 수강할 예정이다. 에서 regression과 classification을 큰 틀로 하여 linear regression, logistic regression에 대해 배우고, 이에 맞는 cost function과 gradient descent을 학습하였다. 그리고 마지막 주에는 발생할 수 있는 overfitting에 대해 알아본 후 이를 해결할 수 있는 방법을 배웠고, 그 중 regularization 방법을 자세히 공부하였다. 에서는 TensorFlow를 사용하여 Neural Network에 대해 배워볼 예정이다.
Cost Function with Regularization ovefitting 문제가 발생했을 때 이를 해결하는 방법 중 하나는 정규화를 이용하는 것이다. 정규화 과정은 간단하게 parameter에 penalty를 부여하여 각 feature에 대한 영향을 줄이는 것이라고 할 수 있다. 예를 들어 많은 feature로 model을 생성해 다음과 같은 overfitting이 발생했다고 가정하면, 여기서 feature에 대한 영향을 줄이는 방법이 regularization이다. 영향력을 줄이기 위해서는 해당 feature에 대한 parameter w 값을 작게 해야한다. 이를 위해 w가 클수록 cost function 값을 커지게 하므로써 각 feature에 대한 penalty를 부여하여 w가 적당한 크기의..
The Problem of Overfitting [Overfitting in Regression] 5개의 훈련 데이터가 있는 regression을 살펴보았을 때, 그림 1의 model은 훈련 예제에 잘 맞지 않는 모습을 보이고, 이를 underfit 혹은 high bias라고 표현한다. 그림 2를 보면 훈련 예제들이 model에 꽤 적절하게 잘 맞는 양상을 띄며, 이를 generalization이라고 표현한다. 그렇다면 overfit은 무엇일까? overfit은 앞서 보았던 underfit과 반대로 model이 모든 훈련 예제에 과도하게 잘 맞는 것을 말한다. 훈련 예제를 바탕으로 만들어진 model은 본 적이 없는 새로운 예제에서도 잘 맞아야 하는데, 그렇지 못하고 기존에 있는 예제에 과도하게 맞는 것..
Gradient Descent Implementation logistic regression model(f_w,b(x))에 새로운 x값을 입력하면 레이블이 1일 확률이 예측된다. linear regression과 마찬가지로 cost J를 최소화 할 수 있는 w와 b를 찾는 것이 중요한데, linear regression과 logistic regression은 모델부터 다르기 때문에 Gradient descent를 적용하는 식도 다르다. 우선 아래의 식을 cost가 최소가 되는 값을 찾을 때까지 계속해서 반복하는 것이 Gradient descent이다. 미분 값은 위의 식과 같이 표현할 수 있는데, 이러한 gradient descent 식만 보면 linear regression과 다를 게 없어 보인다. 하..
cost function은 특정 파라미터 집합(w,b)이 훈련 데이터에 얼마나 잘 맞는지 측정하는 방법을 제공한다. linear regression의 cost function이었던 squared error cost function은 logistic에 이상적인 cost function이 아니다. 따라서 이번 챕터에서는 logistic regression에 맞는 cost function에 대해 알아볼 것이다. 우선 아래는 linear regression에 잘 맞는 squared error cost이다. loss와 cost의 관계를 조금 더 명료하게 하기 위해 1/2m에서 1/2를 sigma 안으로 넘겨보면, cost는 training set들의 loss 평균이라고 말할 수 있다. 이것을 linear regr..
출력 변수 y가 숫자 범위에 있는 값 대신 가능한 몇가지 값 중 하나만 가질 수 있는 "Classification"에 대해 알아볼 것이다. 결론부터 말하면 linear regression은 classification 문제에 적합한 알고리즘이 아니며, classification에는 "logistic regression"을 이용한다. Classification 출력 값 y가 오직 두 값 중 하나만 될 수 있을 때 이것을 "binary classification"이라고 한다. 이 binary classification은 0 or 1의 결과 값을 가진다고 표현될 수 있으며, 0은 false(negative), 1은 true(positive)의 의미를 나타낸다. 여기서 negative, positive는 나쁘고 ..