일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 이분그래프
- 시간복잡도
- iOS14
- 2557
- 자료구조
- EOF
- Django의 편의성
- 백준
- 엑셀
- 알고리즘 공부방법
- 표준 입출력
- 입/출력
- c++
- getline
- scanf
- 프레임워크와 라이브러리의 차이
- k-eta
- UI한글변경
- string 함수
- 구조체와 클래스의 공통점 및 차이점
- Django Nodejs 차이점
- correlation coefficient
- string 메소드
- 장고란
- Django란
- 입출력 패턴
- 연결요소
- double ended queue
- 매크로
- vscode
- Today
- Total
Storage Gonie
모두를 위한 딥러닝 제25강 lec9-1: XOR 문제 딥러닝으로 풀기 본문
# XOR 문제를 Neural network로 어떻게 풀 수 있는지 확인
- 단, weight와 bias를 학습시키는 방법은 다다음장에서 배움
1) 하나의 유닛 or 모델로는 XOR 문제를 풀 수 없다는 것을 Minsky교수가 수학적으로 증명하였고, XOR문제는 풀 수 없는 것이라 믿는 계기가 되었음.
2) Minsky교수는 유닛을 2개, 3개 붙이면 XOR 문제를 풀 수 있다고 하였는데, weight, bias를 학습시킬 방법을 아는 사람이 아무도 없다고 하였음.
https://cs231n.github.io/convolutional-networks
3) 지금은 weight, bias를 학습시키는 대신, 값을 잘 초기화 시켜서 한번 XOR 문제를 풀어보자
- 네모난 박스에서는 xw+b의 연산이 일어나고 이 결과에 시그모이드를 취해준게 출력 y가 된다.
- weight, bias는 아래와 같이 초기화 시켰다고 가정.
- 아래서 시그모이드 취한 값은 근접값을 따짐. 0 or 1로.
- case1) x1 = 0, x2 = 0일때
- case2) x1 = 0, x2 = 1일때
- case3) x1 = 1, x2 = 0일때
- case4) x1 = 1, x2 = 1일때
4) 위의 것을 하나로 나타내면 아래와 같고 이것으로 XOR문제를 해결할 수 있음이 확인되었음.
- 네모 박스는 하나의 퍼셉트론 혹은 유닛이라고 부르며 이로 구성된 것을 뉴럴네트워크 라고 함
5) 박스를 합쳐보자.
- 이를 텐서플로우로 구현하면 아래와 같다.
* 다다음 강의에서는 Minsky 교수님이 못푼다고 말한 weight, bias을 자동으로 학습시키는 방법에 대해 알아볼 예정.
'데이터 사이언스 > 모두를 위한 딥러닝' 카테고리의 다른 글
모두를 위한 딥러닝 제27강 lec9-2: 딥넷트웍 학습 시키기 (backpropagation) (0) | 2018.10.01 |
---|---|
모두를 위한 딥러닝 제26강 lec9-x: 특별편: 10분안에 미분 정리하기 (lec9-2 이전에 보세요) (0) | 2018.10.01 |
모두를 위한 딥러닝 제24강 ML lab 08: Tensor Manipulation(연산함수) (0) | 2018.09.29 |
모두를 위한 딥러닝 제22-23강 lec 08-1, lec 08-2: 딥러닝의 역사 (0) | 2018.09.27 |
모두를 위한 딥러닝 제21강 ML lab 07-2: Meet MNIST Dataset (0) | 2018.09.27 |