신경망(Neural network)
퍼셉트론(perceptron) 같은 단위를 층으로 쌓고 사이에 비선형 함수(function)를 끼운 함수. 숨은 층(hidden layer)이 있으면 XOR처럼 직선 하나로 가를 수 없는 것도 배운다.
퍼셉트론 하나는 평면을 직선 하나로 가를 뿐입니다. 신경망은 이런 단위를 여러 개 나란히 놓아 층을 만들고, 그 출력을 다음 층의 입력으로 씁니다. 아래 신경망에서는 숨은 층의 단위 H =
자료:
지금 손실은
'새로 시작'은 다른 무작위 가중치에서 출발합니다. H = 2의 XOR에서는 가끔 한쪽 무리를 놓친 채 더 나아지지 않는데, 경사 하강법(gradient descent)이 국소 최솟값(local minimum)이나 거의 평평한 곳에 빠진 것입니다. 단위를 넉넉히 두면 이런 일이 드물어집니다. 가중치는 교차 엔트로피(cross-entropy) 손실(정답에 매긴 확률의 로그에 −를 붙여 평균(mean)한 값, 엔트로피(entropy)와 같은 꼴)을 줄이도록 경사 하강법의 변형인 Adam으로 고치고, 모든 가중치에 대한 기울기(slope)는 역전파(backpropagation)가 한꺼번에 계산합니다. 학습은 버튼을 누를 때만 하고, 손실이 0.02 아래로 내려가거나 더 줄지 않으면 스스로 멈춥니다.
왜 tanh 같은 비선형 함수가 꼭 필요할까요? 층 하나는 행렬(matrix) W를 곱하고 벡터(vector) b를 더하는 일입니다. 구부리는 함수 없이 층을 쌓으면 행렬의 곱(matrix multiplication)은 다시 행렬 하나이므로, 몇 층을 쌓아도 선형변환(linear transformation) 하나(와 평행이동)와 다를 바가 없습니다. 층 사이에 비선형 함수를 끼워야 쌓는 의미가 생깁니다. 요즘은 음수를 0으로 자르는 ReLU,
숨은 단위를 충분히 많이 두면 숨은 층 하나로도, 경계를 포함한 유계인 범위(예를 들어 테두리까지 포함한 정사각형) 위의 연속인 함수를 그 범위의 모든 점에서 한꺼번에 원하는 만큼 가깝게 흉내 낼 수 있다는 것이 보편 근사 정리입니다. 시그모이드에 대해서는 1989년 미국의 수학자 조지 시벤코의 증명이 잘 알려져 있고, 뒤에 구부리는 함수가 다항식(polynomial)만 아니면 된다는 것까지 밝혀졌습니다. 그 범위 바깥에서의 값에 대해서는 아무것도 보장하지 않습니다. 사인파(sinusoid)를 더해 주기 함수(periodic function)를 짓는 푸리에 급수(Fourier series)처럼, 단순한 '구부러진 조각'을 가중합해 복잡한 함수를 짓는 셈입니다. 다만 이 정리는 그런 가중치가 있다는 것만 말할 뿐, 찾는 방법이나 필요한 단위 수는 말하지 않습니다. 흔히 '신경망은 무엇이든 배울 수 있다'로 읽지만, 이 정리는 학습이 그 가중치를 찾아낸다는 것도, 적은 자료에서 배운 것이 새 자료에 들어맞는다는 것도 말하지 않습니다. 실제로는 층을 여러 겹 쌓은 깊은 신경망(딥러닝, deep learning)이 같은 수의 가중치로 훨씬 많은 것을 표현하는 경우가 많습니다. 가중치가 자료보다 훨씬 많으면 잡음까지 외울 수 있어 과적합(overfitting)을 조심해야 합니다.
이어지는 곳. '신경망'이라는 이름은 1943년 맥컬러와 피츠가 뇌의 신경세포를 켜짐·꺼짐 단위로 본 모형에서 왔지만, 오늘날의 신경망은 뇌를 흉내 낸 것이라기보다 미분(differentiation)할 수 있는 함수를 층층이 이어 붙인 것입니다. 1986년 역전파가 널리 알려지며 여러 층을 학습시킬 수 있게 되었고, 2012년 힌턴의 연구실이 만든 깊은 신경망이 페이페이 리가 연 대규모 이미지 인식 대회(ImageNet)에서 다른 방법들을 큰 차이로 이기면서 딥러닝이 기계 학습(machine learning)의 중심이 되었습니다. 낱말을 수의 벡터로 바꾸는 단어 임베딩(word embedding)은 작은 신경망이 배운 가중치이고, 앞 낱말들로 다음 낱말의 확률을 매기는 n-그램(n-gram) 언어 모델(language model)을 신경망으로 바꾼 것이 오늘날 언어 모델의 뿌리입니다. 이미지를 다루는 신경망은 3×3 화소 같은 작은 가중치 묶음 하나를 그림 곳곳에 옮겨 가며 되풀이해 씁니다(합성곱 신경망, convolutional neural network). 그래서 고양이 귀가 그림의 어디에 있든 같은 가중치로 알아봅니다. 2017년에 나온 트랜스포머(transformer)는 문장의 낱말 벡터들을 각각 변환한 벡터들 사이의 내적(dot product)으로 각 낱말이 다른 낱말에 얼마나 주목할지를 정하는(어텐션, attention) 신경망이고, 오늘날 대형 언어 모델의 뼈대입니다. 2022년 이후 이 뼈대 위에서 일어난 일, 곧 선호 학습, 전문가 혼합(mixture of experts), 긴 문맥, 추론 모델은 언어 모델의 발전사에 날짜순으로 정리되어 있습니다.
이 개념이 나오는 긴 글
이 개념 위에 세워진 것
이 개념을 언급하는 페이지
- 미분계수
… 쓰입니다. 함수 안에 함수를 넣은 합성함수(예: \sin(x^2) )는 연쇄법칙으로 미분합니다.신경망은 조절할 수 있는 수(가중치)를 아주 많이 가진 거대한 합성함수입니다. 오차를 줄이려면 가중치 하나하나에 …
- 연쇄법칙
… x)' = 1 , 곧 x\cdot(\ln x)' = 1 이라 (\ln x)' = 1/x 입니다.신경망학습의 역전파도 이 곱을 출력 쪽에서 입력 쪽으로 거꾸로 따라가는 계산입니다. 행렬 곱은 어느 쪽부터 …
- 뉴턴 방법
… 계산해야 합니다. 변수가 n개이면 이계 도함수는 n×n개의 수로 된 표가 되어, 변수가 수백만 개인신경망에서는 너무 비쌉니다. 그래서 신경망 학습에는 주로 기울기만 보고 내리막으로 조금씩 걷는 경사 하강법을 …
- 행렬의 곱
… 붙인 함수의 야코비 행렬은 각 함수의 야코비 행렬의 곱이고, 이것이 여러 변수에서의 연쇄법칙입니다.신경망은 층을 지날 때마다 입력에 행렬을 곱하고, 이어서 휘어진 함수를 한 번 적용합니다. 학습에 쓰는 …
- 코사인 유사도
… 곱한 값이라서, '그리고'처럼 어디에나 나오는 단어의 무게는 거의 0이 됩니다. 오늘날에는신경망이 문장이나 그림을 뜻이 비슷할수록 가까운 수백 차원의 벡터(임베딩 벡터)로 바꾼 뒤 역시 코사인으로 …
- n-그램 언어 모델
… 않는 품사열에 n-그램을 두고 낱말은 품사에서 확률적으로 나온다고 보면 은닉 마르코프 모델이 됩니다.신경망언어 모델은 낱말을 단어 임베딩 벡터로 바꿔 비슷한 낱말끼리 통계를 나누어 쓰며 희소성 문제를 …
- 단어 임베딩
… 출신 컴퓨터 과학자 토마시 미콜로프 등 구글 연구진이 발표한 word2vec은 주변 낱말을 맞히는 작은신경망을 학습시켜 이런 벡터를 얻었고, 이 유추 실험으로 널리 알려졌습니다. 다만 주의할 점이 있습니다. A − …
- 퍼셉트론
… 한계를 엄밀하게 따진 뒤 신경망 연구가 한동안 움츠러들었다고 흔히 말합니다. 해법은 퍼셉트론을 층으로 쌓은신경망이었습니다. 퍼셉트론은 1958년 코넬 항공 연구소의 프랭크 로젠블랫이 발표했습니다. 규칙을 사람이 …
- 경사 하강법
… 변수가 n개면 n × n 헤세 행렬을 만들고 연립방정식을 풀어야 합니다. 변수가 수백만에서 수십억 개인신경망에서는 그럴 수 없어서, 기울기만 쓰는 경사 하강법과 그 변형을 씁니다. 그 기울기는 역전파로 …
- 역전파
신경망을 경사 하강법으로 학습시키려면 손실 L을 가중치 하나하나로 미분한 값이 모두 필요합니다. 가중치가 …
- 과적합
… λ를 키우면 출렁임이 가라앉고 검증 오차가 내려갑니다. 너무 키우면 곡선이 납작해져 다시 과소적합입니다.신경망에서는 같은 벌점을 가중치 감쇠라 부르고, 검증 오차가 오르기 시작할 때 경사 하강법을 멈추는 조기 …
- 원천 부호화 정리
… 하는 실험으로 영어의 엔트로피율을 글자당 약 0.6~1.3비트로 어림했습니다. 오늘날 n-그램이나신경망언어 모델의 성능도 같은 잣대로 잽니다. 모델이 실제 글에 준 확률로 잰 기호당 평균 비트 수(교차 …
- 쿨백–라이블러 발산
… 기계 학습의 손실 함수, 곧 모형이 얼마나 틀렸는지를 재어 줄여 나가는 값에 숨어 있습니다. 분류하는신경망은 정답 분포 p와 모형이 내놓는 분포 q 사이의 교차 엔트로피 -\sum p_i \log q_i 를 …
- 최대 엔트로피 원리
… 꼴입니다. 점수마다 e의 거듭제곱을 씌운 뒤 합이 1이 되게 나눈 이 모양을 소프트맥스라 하고,신경망의 마지막 층과 자연어 처리의 '최대 엔트로피 분류기'가 이 모양입니다. 제약이 상호 정보량이나 왜곡에 …
- 산술 부호화
… 클리어리와 위튼. 부분 일치에 의한 예측이라는 뜻입니다)은 오랫동안 글 압축의 선두였고, 요즘은신경망언어 모델의 예측을 산술 부호화에 넣어 더 줄이기도 합니다. 거꾸로 언어 모델의 퍼플렉시티는 이 압축 …
- 근사 이론
… 않는 영역)에서 연속함수를 얼마든지 가깝게 흉내 낼 수 있다는 보편 근사 정리도 같은 계열의 정리입니다(신경망). 다만 이 정리들은 근사가 있다는 것만 말할 뿐, 얼마나 큰 다항식이나 신경망이 필요한지는 따로 따져야 …
- 동역학계
… 동역학계입니다. 우연이 섞이면 무작위 행보와 도박꾼의 파산이 되고, 경사 하강법으로신경망을 훈련하는 과정도 매개변수 공간 위의 이산 동역학계입니다. 입력을 받으며 같은 규칙을 되풀이하는 ⟦순환 …
- 최대가능도법
… \sum_i \log q_\theta(y_i \mid x_i) 이고, 여기에 −1을 곱해 자료 수로 나누면신경망이 줄이는 손실 함수인 교차 엔트로피가 됩니다(쿨백–라이블러 발산). 그러니 교차 엔트로피를 줄이도록 …
- 기계 학습
… 회귀⟧, 로지스틱 회귀, 퍼셉트론, 결정 트리, 서포트 벡터 머신, 최근접 이웃 분류,신경망이 여기 속합니다. 정답 없이 자료만 주고 그 안의 구조를 찾게 하는 것은 비지도 학습 입니다. 비슷한 …
- 로지스틱 회귀
… 에 벌점을 주면, 두 무리 사이의 빈 띠를 가장 넓히는 서포트 벡터 머신이 됩니다. 분류하는신경망의 마지막 층은 대개 로지스틱 회귀나 그 여러 부류 판인 소프트맥스이고, 앞의 층들은 그 회귀가 쓸 특성을 …
- 정규화: 릿지와 라소
… 복원할 수 있는 조건을 증명했고(압축 센싱), 이 생각은 MRI 촬영 시간을 줄이는 데에도 쓰입니다.신경망에서는 제곱 벌점을 가중치 감쇠라 부릅니다. 이어지는 곳. 두 영역의 모양이 다른 까닭은 Lp 노름의 …
- 서포트 벡터 머신과 커널
… 주성분 분석이 됩니다. 커널을 고르는 것은 점들을 옮겨 놓을 특성 공간을 사람이 미리 정하는 셈인데,신경망은 그 특성 자체를 자료에서 배웁니다. 2010년대 이후 이미지와 음성에서는 신경망이 SVM을 앞질렀습니다.
- 특잇값 분해
… 제곱 오차를 가장 작게 만들면, 배운 부분공간은 처음 k개 주성분이 펼치는 부분공간과 같습니다. 깊은신경망의 역전파에서는 기울기가 층마다 야코비 행렬을 곱하며 흐릅니다. 그 특잇값이 층마다 모두 1보다 …
- 볼록 함수와 볼록 최적화
… 모두 엄격하게(등호 없이) 만족하는 점이 있다는 슬레이터 조건입니다. 신경망의 손실은 볼록이 아닙니다.신경망에서 숨은 단위 두 개의 가중치를 통째로 맞바꾸면 같은 함수를 계산하니 손실도 같습니다. 손실이 볼록이라면 …
- 자동 미분
… x_1 (지금 )과 \partial f/\partial x_2 (지금 )가 함께 나옵니다.신경망의 역전파는 후진 모드 자동 미분을 신경망에 쓴 것입니다. 무엇이 얼마나 드나. 입력이 n개, 출력이 …
- 인공지능
… 옮겨 갔습니다. 1986년 데이비드 러멜하트, 제프리 힌턴, 로널드 윌리엄스는 여러 층의신경망을 역전파로 학습시키는 방법을 널리 알렸고, 1989년 벨 연구소의 얀 르쿤과 동료들은 손글씨 …
- 합성곱 신경망
… 8 − 3 + 1 = 6칸짜리 새 표(특징 맵)가 생깁니다. 이 연산이 합성곱이고, 합성곱을 층마다 쌓은신경망이 합성곱 신경망(CNN)입니다. (I \star K)[i,j] = …
- 순환 신경망과 LSTM
… 동역학계이기도 합니다. 시간 축을 따라 펼쳐 놓으면 RNN은 층마다 같은 가중치를 쓰는 아주 깊은신경망이어서, 펼친 망에 역전파를 그대로 적용해 학습합니다(시간 역전파, BPTT). 합성곱 신경망이 같은 …
- 강화 학습
… 하되 작은 확률 ε(엡실론)로 아무 행동이나 해 보는 것이고, 이것을 ε-탐욕이라 부릅니다. 값을 표 대신신경망으로 어림하면 이런 수렴 보장은 일반적으로 사라지고, 실제로 값이 발산하는 예도 알려져 있습니다. 역사. …
- 확산 모델
… 어느 시간의 점수든 식으로 정확히 계산할 수 있습니다. 사진 모음의 점수는 아무도 모릅니다. 그래서신경망\varepsilon_\theta(x_t, t) 가 잡음 섞인 점 x_t 를 보고 거기 더해진 잡음 ε을 …
- 오토인코더와 잠재 공간
… 큰 특잇값 k개만 남기는 것(에카르트–영 정리)과 같습니다. 비선형으로. 인코더와 디코더를 여러 층의신경망으로 바꾸면 직선이나 평면이 아닌 휘어진 면을 따라 압축할 수 있습니다. 2006년 제프리 힌턴과 …
- 트랜스포머
트랜스포머는 토큰 열을 받아 토큰마다 벡터 하나를 내놓는신경망입니다. GPT 같은 언어 모델은 각 위치의 벡터로 그 바로 다음 토큰의 확률을 계산합니다. 학습할 때는 …
- 배타적 논리합
… 0110111이 오면 101이 더해지므로 결과는 101, 곧 5가 되어 뒤집힌 자리를 가리킵니다. XOR은신경망의 역사에서도 이정표입니다. 입력에 가중치를 곱해 더한 값이 문턱 θ(세타) 이상이면 1을 내는 …