Chapter 07
가중치 연결
연결. 층과 층, 뉴런과 뉴런 사이의 가중치 연결이다.
챕터별 딥러닝 도식화
챕터를 하나씩 진행할 때마다 아래 도식이 조금씩 채워져요. 지금까지의 구조예요.
층과 층 사이의 각 선이 가중치(w)예요. 입력에 가중치를 곱해 더한 뒤 편향(b)을 더하면 다음 층 Y가 나와요.
동그라미는 값, 선은 가중치(w)예요. 가중합에 편향(b)을 더한 값이 다음 층 Y예요.
딥러닝에서 보는 연결
연결(Connection)은 한 층의 뉴런이 다음 층의 뉴런과 어떻게 이어져 있는지를 나타내요. 각 연결선에는 가중치(숫자)가 있어서, '이 입력이 이 출력에 얼마나 영향을 줄지'를 정해요.
완전 연결(Fully Connected): 앞 층의 모든 뉴런이 뒤 층의 모든 뉴런과 연결된 거예요. 지금까지 배운 선형 계층(Y = W·X + b)이 바로 완전 연결이에요. W 표의 모든 칸에 숫자가 있으니까요.
부분 연결: W 표에 0이 있으면 그 자리는 '연결 없음'이에요. 이미지 인식(CNN)에서는 '가까운 픽셀만' 연결하고, 번역에서는 '어느 단어와 어느 단어를 연결할지'를 데이터에서 배워요.
연결이 많을수록 모델이 더 많은 것을 표현할 수 있지만, 연산량·메모리도 늘어나요. 그래서 휴대폰에 올리는 작은 모델은 연결을 줄이거나 압축해서 가볍게 돌려요.
연결 구조가 모델의 성격을 결정해요. 완전 연결은 정보를 많이 보지만 파라미터가 많고, 부분 연결은 효율적이지만 일부 정보를 놓칠 수 있어요. 어텐션은 '연결을 데이터가 스스로 정하는' 방식이에요.
학습은 이 연결의 세기(가중치)를 조절하는 과정이에요. '이 연결은 강하게, 이 연결은 약하게' 하면서 정답에 가까운 출력을 내도록 수정해요. 대형 모델은 이런 연결이 수십억 개예요.
W가 0에 가까운 연결은 '거의 쓰지 않는 정보'라는 뜻이에요. 학습 후 이런 연결을 잘라 내는 가지치기(pruning)로 모델을 작고 빠르게 만들어 휴대폰에 올리기도 해요.
이미지 인식(CNN): 가까운 픽셀끼리만 연결하는 부분 연결로 선·모서리·물체 같은 특징을 뽑아요.
번역: '어느 단어가 어느 단어와 관련 있는지' 연결 세기를 데이터에서 학습해요. 검색에서 '질문과 어떤 문서가 연결될지'도 비슷한 방식으로 정해요.
추천·검색: 사용자와 상품(또는 질문과 문서)이 어떤 가중치로 연결되는지가 곧 점수가 돼요. 점수가 높은 것을 추천하거나 검색 결과로 보여 줘요.
W가 0이면 그 연결은 없는 것: 예를 들어 W의 (2,1) 칸이 0이면, 입력의 1번째 값은 출력의 2번째 값에 아무 영향도 안 줘요. 그래서 계산할 때 건너뛰어도 돼요.
Y의 한 칸 구하기: 해당 출력에 연결된 입력(W가 0이 아닌 위치)만 찾아서, 그 위치의 W×X를 곱해 더하고 b를 더하면 돼요. 0인 곳은 곱해도 0이니까 무시해도 같은 결과예요.
빈 칸 전략: 먼저 W 표에서 0인 곳을 파악하세요. 그다음 0이 아닌 연결만 가지고 식을 세우면 됩니다. W의 빈 칸이라면 Y와 X 값으로 역계산하고, Y의 빈 칸이라면 W와 X로 순서대로 계산하세요.
연결은 한 층의 뉴런이 다음 층의 뉴런과 어떻게 연결되는지 나타냅니다. 가중치 행렬 W에서 0이 아닌 위치만 실제 연결이 있고, 아래 그래프는 그런 부분 연결만 선으로 그렸습니다.
각 출력: (W 해당 행·X) 곱한 값 + b 더한 값 = Y
W 1행·X + b[0] → Y[0]|W 2행·X + b[1] → Y[1]
문제
연결 에서 빈 칸(?)에 들어갈 값을 구하세요. W가 0인 입력은 해당 출력에 연결되지 않습니다.