본문 바로가기

파이썬2

[CS231n] Lecture 8 | Deep Learning Software 딥러닝 프레임워크에 대해서 알아보자! CPU는 central processing unit, GPU는 graphics processing unit이다. 이 둘은 어떤 차이가 있는 것일까? CPU는 컴퓨터의 뇌에 해당하는 부분이라고 생각하면 된다. 컴퓨터에서 구성 단위 중 기억, 해석, 연산, 제어부분을 수행하는 중요한 녀석이다. 좀 더 적은 core의 수로 연속적인 일을 처리하는데 CPU가 자주 쓰인다. GPU는 computer graphics를 Rendering하기 위해 쓰이는 녀석이다. 더 많은 core로 일을 병렬적으로 수행하고 싶을 때 GPU가 자주 쓰인다. GPU는 내부적으로 자체적인 RAM을 가지고 있다. 아래 표를 보면 차이점을 알 수 있다. GPU에도 여러 종류가 .. 2020. 11. 28.
[CS231n] Lecture 7 | Training Neural Networks II 지난 강의를 돌이켜보면 Neural network에서 가장 중요한 것은 바로 최적화 문제였다. vanilla gradient descent를 하게되면 위 식처럼 weight를 초기화 해준다. 여기서 batch단위로 끊어서 한게 SGD이다. 미니 배치 안에서 데이터 loss를 계산하고, 그리고 gradient의 반대 방향을 이용해서 파라미터 벡터를 업데이트 시켜준다. 그런데 SGD의 문제점이 있다. 손실함수의 모양에 따라 영향을 많이 받는다. 위 그림처럼 타원 모양을 갖게 되면 저 빨간색 점에서 스마일표시까지 어떻게 찾아가게 될까? 위의 경우 loss가 수직 방향의 가중치 변화에 훨씬 더 민감하게 반응하여서 빨간색 선처럼 gradient의 방향이 매우 크게 튀면.. 2020. 11. 28.