데이터를 병렬로 처리하는 방법에는 크게 두 가지가 있다. 동기 훈련: 모든 worker 가 입력 데이터를 나누어 갖고 동시에 훈련, 각 단계마다 gradient 를 모음.비동기 훈련: 모든 worker 가 독립적으로 입력 데이터를 사용해 훈련하고 비동기적으로 param
시각 피질 안의 각 뉴런들은 일부 범위 안에 있는 시각 자극에만 반응한다 !각 뉴런들의 receptive field 가 합쳐져서 우리 눈에 보이는 전체 시야를 감싸게 된다.어떤 뉴런은 수평선에 반응하고 어떤 뉴런은 다른 각도의 라인에 반응한다.
신경망의 위쪽으로 갈수록 층을 지날 때마다 분산이 계속 커져 가장 높은 층에서는 활성화 함수가 0이나 1로 수렴함.예시: logistic regression 에서 입력이 커지면 0이나 1로 수렴해서 기울기가 거의 0에 가까워지기 때문에 이 거의 없는 gradient 가
곱연산, 합연산을 수행하는 articial neuron 의 등장입력과 출력이 어떤 숫자이고, 각각의 입력 연결은 가중치와 연관되어 있음.가중치의 합을 계산하고 이에 step function 을 적용하여 결과를 출력. $$h_w(x) = step(z), z = X^Tw$
Scikit-learn 에서 제공하는 MNIST 데이터셋은 이미 train set 가 잘 섞여있어서 fold 를 나누기 용이함. SGD classifier 를 이용하여 5인 숫자와 5가 아닌 숫자를 구별하는 binary classification 문제를 먼저 풀어보자.
HTTP는 기본적으로 Real-time 이 불가능하다. 클라이언트가 서버에 요청을 날리면 요청을 처리한 후 응답을 주고 이 요청은 끊어지기 때문이다. 서버는 클라이언트에게 통지해줄 수 있는 방법이 없고, 이는 매우 서버를 수동적인 (...) 존재로 만들어버린다.
컴포넌트란 배포 단위를 뜻한다. 시스템의 구성 요소로 배포할 수 있는 가장 작은 단위를 말한다.재사용 단위는 릴리즈 단위와 같다. 소프트웨어 컴포넌트가 릴리즈 절차를 통해 추적 관리되지 않거나 릴리즈 번호가 부여되지 않는다면 컴포넌트를 재사용하고 싶어도 할 수도 없다.
하나의 모듈은 하나의, 오직 하나의 Actor 에 대해서만 책임을 져야 한다. The module here refers to a cohesive set of codes.
구조적 프로그래밍 goto 문을 최대한 배제하면서 제어 흐름을 유지하는 방식. 현대의 프로그래밍은 기본적으로 모두 구조적 프로그래밍을 따르도록 되어있다.