일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- error
- 리눅스
- shell
- linux
- 프로그래밍
- 영상처리
- Windows10
- 텐서플로우
- Windows 10
- Computer Vision
- 백준
- 시스템프로그래밍
- 턱걸이
- 학습
- 공부
- C언어
- 알고리즘
- 백준알고리즘
- C++
- OpenCV
- CV
- 쉘
- 프로세스
- 운영체제
- TensorFlow
- 코딩
- 회귀
- 딥러닝
- python
- c
- Today
- Total
목록활성화 함수 (2)
줘이리의 인생적기

sigmoid 활성화 함수를 구현하여, 입력이 1일 때 출력이 0이 되는 뉴런을 만들어보겠습니다. import tensorflow as tf import math def sigmoid(x): return 1 / (1 + math.exp(-x)) x = 1 y = 0 w = tf.random.normal([1], 0, 1) output = sigmoid(x * w) error = y - output print("output = ", output) print("error = ", error) 0이 되기에는 역부족으로 보입니다. 이제 w값을 변화시켜야 하는데 경사하강법을 사용해보겠습니다. 경사하강법은 w에 입력과 학습률(α)과 error를 곱한 값을 더해주는 것입니다. w = w + x * α * error ..

뉴런은 신경망의 가장 기본적인 구성요소입니다. 뉴런은 입력을 받아 계산 후 출력을 반환하는 구조입니다. 뉴런들이 여러개 모여 구성한 것을 레이어라고 합니다. 뉴런의 구성요소로는 입력, 가중치, 활성화 함수, 출력으로 구성되어 있습니다. 위처럼 가장 간단한 형태의 뉴런은 입력에 가중치를 곱한 뒤 활성화 함수를 취하는 것입니다. 가중치는 처음에 초기화를 통해 랜덤 값이 들어가게 되며, 학습하며 가중치만 변하게 됩니다. 학습이 잘 된다는 것은 원하는 출력에 가까운 값을 얻는 가중치를 얻게 되는 것입니다. 활성화 함수로는 주로 sigmoid, ReLU 함수들을 씁니다. sigmoid는 S자 형태의 곡선이라는 뜻이고, ReLU는 정류된 선형 함수(Rectified Linear Unit)라는 뜻입니다.