사전 딥러닝
개념

딥러닝

gabury1고친 사람 github-actions[bot]

딥러닝은 데이터를 보고 답을 내는 법을 스스로 익힙니다. 답을 낼 때 무엇을 볼지도 데이터에서 찾아냅니다. 계산 단계를 여러 겹 깊게 쌓아 앞 겹이 찾은 것을 뒤 겹이 엮어 쓰게 합니다. 사진을 알아보는 일과 글을 지어내는 일이 이렇게 만들어집니다.

쉽고 빠른 이해

무슨 일을 하는 물건인가 — 날것의 데이터에서 답을 내는 법을 익히는 학습 방식입니다. 답을 낼 때 볼 단서 숫자인 특성까지 데이터에서 함께 찾아냅니다. 사진의 점마다 붙은 색깔 숫자만 건네도 선을 찾습니다. 선을 묶어 눈과 귀를 찾고, 끝내 「고양이」라고 답합니다.

왜 이렇게 하나 — 사진이나 말소리에서 무엇을 봐야 하는지는 사람이 말로 적기 어렵습니다. 특성 찾기까지 데이터에 맡기면 그 일을 사람이 안 해도 됩니다.

어떻게 도나

  1. 받은 숫자에 다른 숫자를 곱해 더한 뒤 음수는 0 으로 바꾸는 작은 계산을 묶어 한 겹을 만듭니다. 이 겹을 여러 장 쌓습니다
  2. 앞 겹이 찾은 특성을 뒤 겹이 받아 더 큰 특성으로 엮습니다
  3. 맨 끝에서 낸 답이 얼마나 틀렸는지 잽니다. 모든 겹에서 곱하는 숫자를 덜 틀리는 쪽으로 함께 고칩니다

대가 — 예시가 아주 많이 있어야 합니다. 학습도 답 내기도 계산이 무겁습니다. 왜 그 답을 냈는지 사람에게 설명하기 어렵습니다.

상세

글을 읽을 줄 아는 사람은 종이 위의 획을 하나하나 따지지 않습니다. 획이 모이면 글자로 보입니다. 글자가 모이면 낱말로 보입니다. 아래 단계에서 알아본 것을 위 단계가 재료로 씁니다.

딥러닝도 단계를 쌓아 데이터를 읽습니다. 딥러닝은 머신러닝의 한 갈래입니다. 머신러닝은 판정 규칙을 사람이 코드로 적는 대신 예시 데이터에서 뽑아내는 방식입니다.

뽑아낸 판정 기준을 담은 물건이 모델입니다. 모델에 새 데이터를 넣으면 그 기준대로 답이 나옵니다.

머신러닝은 다시 인공지능의 한 갈래입니다. 인공지능은 사람이 지능을 써서 하던 일을 컴퓨터가 하게 만드는 분야 전체를 이릅니다. 셋을 겹쳐 보면 인공지능 안에 머신러닝이 있고, 머신러닝 안에 딥러닝이 있습니다.

flowchart TD
    subgraph AI["인공지능"]
        subgraph ML["머신러닝"]
            DL["딥러닝"]
        end
    end

딥러닝이 쓰는 도구는 신경망입니다. 신경망은 곱셈과 덧셈을 이은 작은 계산을 여러 겹 쌓은 모델입니다. 예시에 맞춰 곱할 숫자들을 고쳐 가며 배웁니다.

겹을 여러 장 쌓은 신경망을 깊은 신경망이라 합니다. 깊은 신경망으로 하는 머신러닝이 딥러닝입니다. 이름의 「딥」이 이 깊이를 가리킵니다.

이 절은 앞선 방식과 무엇이 다른가에서 시작해 딥러닝을 쓰는 일과 안 쓰는 일까지 일곱 소절로 나눠 봅니다. 계산은 지어낸 작은 숫자로 따라가 봅니다.

사람이 특성을 골라 건네는 방식

딥러닝이 무엇을 바꿨는지 보려면 그 앞의 방식부터 봐야 합니다. 머신러닝 모델은 입력을 숫자 몇 개로 받습니다. 이 숫자 하나하나를 특성이라고 합니다. 모델은 특성을 보고 답을 냅니다.

스팸 메일을 가리는 모델을 예로 들어 봅니다. 사람이 「본문에 '무료'가 몇 번 나오나」·「링크가 몇 개인가」 같은 특성을 정해 메일마다 셉니다. 모델은 이 숫자들과 정답을 보고 판정 기준을 세웁니다. 이렇게 사람이 특성을 궁리해 만드는 일이 특성 공학입니다.

메일처럼 특성을 말로 적을 수 있는 데이터에는 이 방식이 잘 통합니다. 사진은 다릅니다. 사진은 픽셀이라는 작은 점이 모여 된 것입니다. 컴퓨터에게는 점마다 색깔 숫자가 붙은 숫자 더미입니다. 「고양이다움」을 이 숫자들로 셈하는 식을 사람이 적기는 어렵습니다.

딥러닝은 이 일까지 데이터에 맡깁니다. 점의 색깔 숫자를 손대지 않고 받습니다. 쓸 만한 특성은 중간 계산에서 스스로 만듭니다. 그 특성으로 답을 내는 법까지 한 번에 배웁니다.

두 방식을 위아래로 놓으면 사람이 맡던 단계가 모델 안으로 들어간 것이 보입니다.

flowchart TD
    subgraph FE["특성 공학"]
        A1["데이터"] --> A2["사람이 특성을 정해 센다"] --> A3["모델"] --> A4["답"]
    end
    subgraph DLW["딥러닝"]
        B1["데이터"] --> B2["모델 · 중간 계산에서 특성을 만든다"] --> B3["답"]
    end
    FE ~~~ DLW

겹을 쌓은 계산

이 소절은 딥러닝 모델이 어떤 계산으로 이루어지는지 봅니다. 가장 작은 계산 단위에서 시작해 그것을 쌓은 모양까지 갑니다.

신경망을 이루는 가장 작은 계산은 뉴런입니다. 뉴런은 숫자 몇 개를 받아 숫자 하나를 내놓습니다. 받은 숫자를 그대로 더하지 않고, 저마다 다른 숫자를 곱한 뒤 더합니다.

이때 곱하는 숫자가 가중치입니다. 가중치가 크면 그 입력이 결과를 크게 움직입니다. 가중치가 0 이면 그 입력은 결과에 아무 영향도 주지 않습니다.

더한 값은 활성화 함수를 거쳐 나갑니다. 활성화 함수는 값을 한 번 꺾어 주는 함수입니다. 곧은 선처럼 늘던 값을 어느 지점에서 꺾인 모양으로 바꾼다는 뜻입니다.

흔히 쓰는 ReLU(Rectified Linear Unit)는 음수를 0 으로 바꿉니다. 양수는 손대지 않고 내보냅니다. 그래서 값이 0 에서 한 번 꺾입니다.

뉴런 하나의 계산을 그리면 이렇습니다. 입력 셋이 저마다 가중치를 곱해 한데 모입니다. 그 합이 활성화 함수를 지나 숫자 하나로 나갑니다.

flowchart TD
    X1["입력 1"] -->|"× 가중치"| S["모두 더한다"]
    X2["입력 2"] -->|"× 가중치"| S
    X3["입력 3"] -->|"× 가중치"| S
    S --> F["활성화 함수 · ReLU"]
    F --> Y["출력 숫자 하나"]

꺾는 단계가 있어야 겹을 쌓은 보람이 생깁니다. 곱하고 더하기만 하는 계산은 몇 겹을 이어도 곱하고 더하는 계산 한 번으로 줄어듭니다. 지어낸 숫자로 따라가 봅니다.

첫 겹은 입력에 2 를 곱하고 1 을 더합니다. 둘째 겹은 그 결과에 3 을 곱하고 4 를 더합니다. 두 겹을 묶어 풀면 입력에 6 을 곱하고 7 을 더하는 계산이 됩니다. 입력 5 로 확인해 봅니다.

Python
x = 5
(x * 2 + 1) * 3 + 4   # 37
x * 6 + 7             # 37

두 줄의 값이 같습니다. 두 겹이 한 겹으로 줄어든 것입니다. 그러면 아무리 깊게 쌓아도 한 겹짜리와 같은 일밖에 못 합니다. 겹 사이에 활성화 함수를 끼우면 이렇게 하나로 합쳐지지 않습니다.

뉴런 여럿을 나란히 묶은 것이 레이어입니다. 지금까지 「겹」이라 부른 것이 이 레이어입니다. 한 레이어가 내놓은 숫자들은 다음 레이어의 입력이 됩니다.

맨 앞에서 입력을 받는 레이어를 입력 레이어, 맨 끝에서 답을 내는 레이어를 출력 레이어라고 합니다. 둘 사이에 낀 레이어는 은닉 레이어라고 부릅니다. 밖에서는 이 레이어가 낸 값이 안 보여서 붙은 이름입니다.

은닉 레이어를 여러 장 쌓은 신경망을 깊다고 합니다. 몇 장부터 깊은지 정해 둔 경계는 없습니다. 큰 모델은 레이어가 백 장을 넘기도 합니다.

은닉 레이어가 두 장인 작은 신경망을 그리면 이렇습니다. 맨 위 입력 레이어에서 출력 레이어까지 숫자가 아래로 흐릅니다. 붙은 두 레이어 사이에서는 앞 레이어의 뉴런 하나하나가 다음 레이어의 뉴런 모두에 숫자를 건넵니다.

flowchart TD
    subgraph IN["입력 레이어"]
        I1["뉴런"]
        I2["뉴런"]
        I3["뉴런"]
    end
    subgraph HA["은닉 레이어 1"]
        A1["뉴런"]
        A2["뉴런"]
        A3["뉴런"]
    end
    subgraph HB["은닉 레이어 2"]
        B1["뉴런"]
        B2["뉴런"]
        B3["뉴런"]
    end
    subgraph OUT["출력 레이어"]
        O1["뉴런"]
    end
    I1 & I2 & I3 --> A1 & A2 & A3
    A1 & A2 & A3 --> B1 & B2 & B3
    B1 & B2 & B3 --> O1

행렬은 숫자를 가로세로로 늘어놓은 표입니다. 한 레이어의 가중치는 이런 표 하나에 담깁니다. 그러면 레이어 하나의 계산을 행렬 곱셈 한 번으로 적을 수 있습니다.

행렬 곱셈 안의 곱셈들은 서로를 기다리지 않고 따로 할 수 있습니다. 그래서 곱셈 여럿을 한꺼번에 처리하는 데 강한 GPU(Graphics Processing Unit, 그래픽 처리 장치)로 딥러닝을 돌립니다. GPU 는 원래 화면의 수많은 점을 동시에 칠하려고 만든 장치입니다.

겹마다 쌓이는 특성

깊게 쌓으면 무엇을 얻는지는 사진을 알아보는 모델에서 잘 보입니다. 학습을 마친 모델의 레이어들을 들여다보면 겹마다 반응하는 모양이 다릅니다.

앞쪽 레이어의 뉴런은 밝기가 바뀌는 경계나 짧은 선 같은 단순한 무늬에 반응합니다. 가운데 레이어는 선들이 모인 눈이나 귀 같은 부분에 반응합니다. 뒤쪽 레이어는 부분들이 모인 얼굴 전체에 반응합니다.

flowchart TD
    A["입력 · 픽셀의 색깔 숫자"] --> B["앞쪽 레이어 · 경계와 짧은 선"]
    B --> C1["가운데 레이어 · 눈"]
    B --> C2["가운데 레이어 · 귀"]
    C1 --> D["뒤쪽 레이어 · 얼굴 전체"]
    C2 --> D
    D --> E["답 · 고양이"]

아무도 레이어마다 맡을 일을 정해 주지 않았습니다. 정답에 맞추도록 학습하다 보니 이렇게 나뉜 것입니다. 데이터에서 특성을 이렇게 스스로 배우는 일을 표현 학습이라고 합니다.

깊이가 주는 이점은 다시 쓰기에 있습니다. 앞 레이어가 찾은 선 하나는 눈을 만들 때도 귀를 만들 때도 재료가 됩니다. 그림에서 선이 눈과 귀 양쪽으로 갈라지는 것이 이것입니다.

한 레이어에 든 뉴런 수를 그 레이어의 넓이라고 합니다. 같은 문제를 맞히는 데는 레이어 한 장을 넓히는 것보다 여러 장 쌓는 쪽이 뉴런이 덜 드는 경우가 많습니다. 한 번 찾은 특성을 뒤에서 여러 번 엮어 쓰기 때문입니다.

모든 겹을 함께 고치는 학습

이 소절은 그 많은 가중치를 어떻게 정하는지 봅니다. 사람이 정하지 않습니다. 예시를 보며 조금씩 고쳐 갑니다.

학습에 쓰는 예시 모음이 훈련 데이터입니다. 처음에는 가중치를 작은 무작위 숫자로 채웁니다. 이 상태로 예시를 넣으면 모델은 아무 답이나 냅니다.

답이 정답에서 얼마나 벗어났는지는 손실 함수가 잽니다. 손실 함수는 틀린 정도를 숫자 하나로 바꾸는 함수입니다. 이 숫자를 손실이라고 합니다. 틀린 정도가 숫자로 나와야 줄이는 방향을 정할 수 있습니다.

가중치 하나를 조금 키웠을 때 손실이 얼마나 늘거나 주는지가 그 가중치의 기울기입니다. 기울기가 양수면 그 가중치를 키울수록 손실이 늘어난다는 뜻입니다.

그러니 기울기의 반대쪽으로 가중치를 조금 옮기면 손실이 줄어듭니다. 이렇게 조금씩 옮기기를 되풀이해 손실을 줄여 가는 방법을 경사 하강법이라고 합니다.

가중치가 수백만 개면 기울기를 하나씩 재는 것은 너무 느립니다. 역전파는 모든 가중치의 기울기를 한 번의 계산으로 구합니다. 맨 끝 레이어에서 잰 손실에서 출발해 입력 쪽으로 한 레이어씩 거꾸로 되짚어 갑니다.

되짚을 때는 연쇄 법칙을 씁니다. 연쇄 법칙은 여러 단계로 이어진 계산에 쓰는 규칙입니다. 앞 단계 숫자가 끝 결과를 움직이는 정도는 단계마다의 변화 비율을 곱해 얻습니다. 변화 비율은 앞 값이 1 늘 때 뒤 값이 얼마나 느는지입니다.

단계 둘짜리로 보면 이렇습니다. x 가 1 늘 때 y 는 2 늡니다. y 가 1 늘 때 끝 결과는 3 늡니다. 그러면 x 가 1 늘 때 끝 결과는 2 × 3 = 6 늡니다.

신경망에서는 끝 결과가 손실입니다. 단계는 레이어입니다. 그래서 어느 가중치의 기울기는 그 가중치에서 손실까지 지나는 레이어마다의 변화 비율을 곱한 값입니다. 입력 쪽에 가까운 레이어일수록 곱하는 비율의 개수가 늘어납니다.

지금까지의 학습을 한 바퀴로 이으면 이렇습니다. 가중치를 옮긴 뒤에는 다시 예시를 넣어 같은 일을 되풀이합니다.

flowchart TD
    S["가중치를 무작위 숫자로 채운다"] --> P["예시를 넣어 답을 낸다"]
    P --> L["손실 함수로 틀린 정도를 잰다"]
    L --> G["역전파로 기울기를 구한다"]
    G --> U["경사 하강법으로 가중치를 조금 옮긴다"]
    U --> P

이 학습에서 특성을 만드는 앞쪽 레이어와 답을 내는 뒤쪽 레이어는 따로 배우지 않습니다. 손실 하나를 줄이도록 모든 레이어가 함께 고쳐집니다. 날것의 입력에서 답까지 한 번에 배우는 이 방식이 종단간 학습입니다.

깊어서 생기는 어려움

겹을 깊게 쌓으면 얕을 때 없던 문제가 생깁니다. 이 소절은 대표적인 둘을 봅니다. 하나는 앞쪽 레이어가 잘 안 배우는 문제입니다. 다른 하나는 훈련 데이터를 외워 버리는 문제입니다.

역전파는 레이어마다의 변화 비율을 곱해 갑니다. 그 비율이 1 보다 작으면 곱할수록 0 에 가까워집니다. 레이어 하나를 거슬러 갈 때마다 0.5 를 곱한다고 해 봅니다.

flowchart TD
    L0["손실 쪽 · 1"] -->|"× 0.5"| L1["출력 쪽에서 1장째 · 0.5"]
    L1 -->|"× 0.5"| L2["2장째 · 0.25"]
    L2 -->|"× 0.5"| L3["3장째 · 0.125"]
    L3 -->|"× 0.5 를 7번 더"| L4["10장째 · 0.001 아래"]

세 장만 거슬러 가도 기울기가 8분의 1 로 줄어듭니다. 열 장이면 천분의 1 아래로 떨어집니다. 입력 쪽 레이어는 기울기가 거의 0 이라 가중치가 거의 안 바뀝니다. 특성을 만들어야 할 앞쪽 레이어가 배우지 못하는 이 현상이 기울기 소실입니다.

깊은 신경망을 학습할 수 있게 된 데에는 이 문제를 덜어 낸 기법들이 컸습니다. 대표적인 셋은 무엇을 바꿨는지로 가를 수 있습니다.

기법 바꾼 것
ReLU 양수 쪽에서는 변화 비율이 늘 1 이라 곱해도 줄지 않는다
잔차 연결 레이어 몇 장을 건너뛰는 지름길을 둔다. 기울기가 그 길로 바로 전해진다
배치 정규화 레이어에 들어가는 값의 범위를 고르게 맞춰 학습을 안정시킨다

둘째 어려움은 외우기입니다. 신경망이 학습으로 고치는 숫자를 통틀어 파라미터라고 합니다. 앞에서 본 가중치가 그 대부분입니다.

깊은 신경망은 파라미터가 많습니다. 숫자가 많으면 판정 기준을 세우는 대신 훈련 데이터를 외워 버릴 수 있습니다. 외운 모델은 본 예시는 잘 맞히고 처음 보는 데이터는 틀립니다. 이 현상이 과적합입니다.

처음 보는 데이터의 성적은 학습 도중에도 잴 수 있습니다. 예시 일부를 학습에 쓰지 않고 떼어 두었다가 그것으로 잽니다. 학습을 거듭할수록 두 성적이 어떻게 갈리는지 그려 보면 이렇습니다.

xychart-beta
    x-axis "학습 횟수" [1, 2, 3, 4, 5, 6, 7, 8]
    y-axis "손실" 0 --> 2.5
    line [2.0, 1.4, 1.0, 0.7, 0.5, 0.35, 0.25, 0.18]
    line [2.1, 1.5, 1.15, 0.95, 0.9, 0.95, 1.1, 1.3]

세로축은 손실이라 낮을수록 잘 맞힌 것입니다. 끝까지 내려가는 선이 훈련 데이터의 손실입니다. 다섯째 즈음부터 다시 오르는 선이 떼어 둔 데이터의 손실입니다. 값은 모양을 보이려고 지어낸 숫자입니다.

예시를 더 모으는 것이 첫째 처방입니다. 학습 중에 뉴런 일부를 무작위로 꺼 두는 드롭아웃도 흔히 씁니다. 매번 다른 뉴런이 빠지니 몇몇 뉴런에 기대어 외우기가 어려워집니다.

처음 보는 데이터에서 성적이 나빠지기 시작하면 학습을 멈추는 조기 종료도 씁니다. 위 그림에서는 떼어 둔 데이터의 손실이 다시 오르기 시작하는 다섯째 즈음이 멈출 때입니다.

입력에 맞춘 구조

지금까지 본 모양은 한 레이어의 뉴런이 다음 레이어의 뉴런 모두와 이어진 것입니다. 앞의 레이어 그림이 그 모양입니다. 입력의 생김새에 맞춰 잇는 방식을 바꾼 구조도 있습니다. 많은 딥러닝 모델이 아래 셋 가운데 하나를 뼈대로 씁니다.

구조 주로 받는 입력 바꾼 것
합성곱 신경망 사진 작은 창을 옮겨 가며 이웃한 점끼리만 계산한다
순환 신경망 말소리처럼 차례가 있는 데이터 앞 차례에서 낸 값을 다음 차례 계산에 다시 넣는다
트랜스포머 글 낱말마다 다른 낱말과 얼마나 관련 있는지 재서 그만큼 섞는다

합성곱 신경망은 같은 창을 사진 곳곳에 옮겨 댑니다. 그래서 귀가 사진 왼쪽에 있든 오른쪽에 있든 같은 특성으로 잡습니다. 순환 신경망은 앞서 들은 소리를 기억해 다음 소리를 해석합니다. 트랜스포머는 문장 안의 먼 낱말끼리도 한 번에 견줍니다.

글을 이어 쓰도록 트랜스포머를 아주 크게 키워 학습한 모델이 대규모 언어 모델입니다. 사람의 질문에 글로 답하는 챗봇이 이 모델 위에서 돌아갑니다.

딥러닝을 쓰는 일과 안 쓰는 일

딥러닝이 맞는지는 두 물음으로 가를 수 있습니다. 첫째는 데이터가 사진·소리·글처럼 특성을 골라 적기 어려운 모양인가입니다. 둘째는 예시를 아주 많이 모을 수 있는가입니다.

flowchart TD
    Q1{"특성을 골라 적기 어려운 데이터인가"}
    Q1 -->|"아니다"| N1["다른 방법을 먼저 써 본다"]
    Q1 -->|"그렇다"| Q2{"예시를 아주 많이 모을 수 있나"}
    Q2 -->|"아니다"| N2["과적합이 나기 쉽다"]
    Q2 -->|"그렇다"| Y["딥러닝을 쓴다"]

두 물음을 차례로 물으면 위처럼 갈립니다. 아래 표는 그 갈림에 실제 일을 대 본 것입니다. 셋째 줄의 결정 트리는 「가입한 지 1년이 넘었나」 같은 예·아니오 물음을 차례로 따라가 답에 이르는 모델입니다. 따라간 물음이 그대로 남아서 왜 그 답이 나왔는지 사람이 읽을 수 있습니다.

일 딥러닝 까닭
사진 속 물체 알아보기 쓴다 특성을 사람이 골라 적기 어렵다
말소리를 글로 받아 적기 쓴다 같은 낱말도 사람마다 소리가 다르다
회원 정보 표로 탈퇴할 회원 고르기 다른 방법을 먼저 써 보기도 한다 열마다 이미 뜻이 붙은 특성이라 결정 트리 계열이 적은 계산으로 잘 맞는 경우가 많다
주문 금액에 할인 적용하기 안 쓴다 규칙이 이미 정해져 있다

맞는 일에 쓰더라도 치르는 대가가 있습니다. 첫째는 예시입니다. 정답이 붙은 예시를 아주 많이 모아야 합니다. 예시가 적으면 앞에서 본 과적합이 납니다.

둘째는 계산량입니다. 학습은 수많은 파라미터를 수없이 고치는 일이라 GPU 를 오래 씁니다. 그래서 큰 데이터로 남이 학습해 둔 모델을 받아 내 데이터로 조금 더 학습시키는 방법을 흔히 씁니다. 이 방법이 전이 학습입니다.

셋째는 답을 낼 때의 비용입니다. 학습을 마친 모델에 새 입력을 넣어 답을 받는 일을 추론이라고 합니다. 추론은 학습보다 훨씬 가볍습니다. 그래도 요청 하나마다 모든 파라미터를 곱하고 더해야 합니다. 서버에서 돌리면 요청 하나가 무거운 계산이 됩니다.

넷째는 이유를 대기 어렵다는 것입니다. 학습을 마친 모델에 남는 것은 숫자 더미입니다. 어느 가중치가 왜 그 값인지 사람이 읽을 뜻이 없습니다. 대출 심사처럼 이유를 대야 하는 일에서는 결정 트리처럼 판정 경로를 보여 주는 방법을 고르기도 합니다.

관련 항목

딥러닝이 속하는 상위 분류

인공지능 · 머신러닝 · 신경망 · 표현 학습 · 지도학습 · 비지도학습

딥러닝 모델을 이루는 구성 요소

뉴런 · 가중치 · 편향 · 파라미터 · 레이어 · 은닉 레이어 · 활성화 함수 · ReLU · 시그모이드 · 소프트맥스

딥러닝 학습이 거치는 처리 단계와 설정값

훈련 데이터 · 순전파 · 손실 함수 · 기울기 · 역전파 · 연쇄 법칙 · 경사 하강법 · 확률적 경사 하강법 · 학습률 · 미니배치 · 에포크 · 하이퍼파라미터 · 종단간 학습

딥러닝이 뼈대로 쓰는 신경망 구조

다층 퍼셉트론 · 합성곱 신경망 · 순환 신경망 · LSTM · 트랜스포머 · 어텐션 · 오토인코더 · 생성적 적대 신경망 · 확산 모델

깊은 신경망 학습에서 터지는 문제와 처방

기울기 소실 · 기울기 폭주 · 과적합 · 과소적합 · 잔차 연결 · 배치 정규화 · 드롭아웃 · 조기 종료 · 가중치 초기화

딥러닝으로 만든 모델과 그 쓰임

대규모 언어 모델 · 언어 모델 · 임베딩 · 임베딩 모델 · 이미지 분류 · 객체 탐지 · 음성 인식 · 기계 번역 · 추론 · 전이 학습 · 파인 튜닝 · 사전 학습

딥러닝 계산을 받치는 하드웨어와 도구

GPU · TPU · 행렬 곱셈 · 텐서 · 계산 그래프 · PyTorch · TensorFlow · JAX · 양자화

딥러닝과 맞세워지는 다른 학습 방법

특성 공학 · 결정 트리 · 랜덤 포레스트 · 그레이디언트 부스팅 · 서포트 벡터 머신 · 선형 회귀 · 로지스틱 회귀

다른 이름: deep learning · 심층 학습