목록활성화함수 (4)
Dev log
저번 포스팅에서는 forward와 backward 그리고 활성화 함수인 Relu함수를 클래스로 구현해보았습니다. 이번에는 cross entropy와 softmax도 함께 구현해보도록 하겠습니다. cross entropy와 softmax 신경망에서 분류할 때, 자주 사용하는 활성화 함수는 softmax 함수입니다. softmax 함수는 신경망 마지막 층에서 사용합니다. softmax에 관한 자세한 설명은 저번 포스팅인 여기를 확인해주세요. softmax와 함께 오차 함수로 cross entropy 함수를 사용하는데, cross entropy error는 줄여서 CEE라고 쓸 수 있습니다. $$ E\quad =- \sum_{ k }{ { t }_{ k } }{ log\, y }_{ k }$$ $y_k$는 신..
저번 포스팅 때, 순전파와 역전파 원리를 간단하게 보고, class를 만들어봤습니다. 이번에는 활성화 함수를 넣어 조금 그럴듯한 신경망을 만들어보도록 하겠습니다. 활성화 함수를 사용하지 않고 열심히 신경망만 깊게 쌓기만 하면 깊게 쌓는 의미도 없을 뿐더라 그냥 단층 신경망이라도 봐도 무방합니다. 그렇기 때문에 꼭 넣어주어야 깊게 쌓는 의미가 있습니다. Relu Class 저번 포스팅에서 만들었던 Affine class는 냅두고 Relu(렐루) 클래스를 한번 만들어 보겠습니다. Relu 함수는 예전 포스팅에서 한번 다루었는데 혹시나 약간 개념이 헷갈리거나 다른 활성화 함수에 대해 알고 싶다면 여기를 눌러 참고해주세요. Relu의 특징은 0이하면 0을 출력하고 0을 넘으면 그냥 그대로 출력하는 비교적 간단하..
저번 포스팅에서 이야기 한 활성화 함수 3가지는 가장 기본적인 활성화 함수이며, 흔히 쓰이는 활성화 함수입니다. 그런데 이 활성화 함수 외에도 더 많은 활성화 함수가 있습니다. 오늘은 그 외 나머지 활성화 함수에 대해서 이야기 해보도록 하겠습니다. 오늘 포스팅할 대부분의 활성화 함수는 Relu함수의 변형 버전이 많습니다. Relu 함수에서 변형된 활성화 함수들 Relu 함수에서 변형된 활성화 함수들은 아래와 같습니다. 물론 여기서 Softplus와 Tanh함수는 변형된 함수는 아니라는 점! 기억해주세요. 위의 그래프에서 Leaky ReLu, ELU가 Relu의 변형 함수입니다. 위 그래프 외에도 p-Relu와 swish함수도 다루어보겠습니다. Relu함수는 저번 포스팅때 현업에서도 많이 쓰인다고 이야기 ..
이번 포스팅에서는 활성화 함수가 무엇인지와 Python으로 간단하게 함수 구현을 해보도록 하겠습니다. 활성화 함수(Activation function) 활성화 함수란 신호의 총합을 받아서 다음 신호로 내보낼지 말지를 결정하는 함수를 이야기 합니다. 활성화 함수에는 사실 시그모이드(Sigmoid)와 렐루(Relu)함수 외에도 많은 활성화 함수들이 있습니다. 그중에서도 가장 기본적인 활성화 함수인 Sigmoid, Relu, Softmax 이 3가지에 대해 알아보겠습니다. 시그모이드(Sigmoid) 시그모이드 함수는 0에서 1사이의 실수를 출력하는 함수를 이야기 합니다. $$h(x)= \frac { 1 }{ 1+exp(-x) } $$ 시그모이드는 자연 상수인 $exp$을 사용하는데, vanishing 현상을 ..