머신러닝, 딥러닝

[딥러닝] DL 용어정리(아키텍처, 파이프라인 등)

powderblue0 2026. 2. 24. 17:31

지난 글:

https://powderblue0.tistory.com/21

 

[딥러닝] ANN 모델링의 주요 개념

지난 글:https://powderblue0.tistory.com/20 [딥러닝] ANN(인공신경망)의 원리이번 글에서는 딥러닝의 기본이 되는 ANN(Artificial Nerual Network, 인공신경망)의 원리에 대해 설명합니다. 사실 직관적으로 이해하

powderblue0.tistory.com

이번 글에서는 딥러닝에서 많이 나오는 용어들에 대해 정리해두려고 합니다.

개인적으로 이것저것 공부하면서 자주 보이는 용어들은 많은데 정작 그 의미에 대해 잘 모르거나, 모르는 채로 사용하는 용어들이 많다고 느껴서(일단나부터^^) 공부하는 김에 정리해둠..

 

일단 글이 매우 길고 말이 매우 많으니 주의하세요 ^^7


목차

0. 신경망이란 무엇인가?

1. 아키텍쳐란 무엇인가?

2. 파이프라인이란 무엇인가?

3. 모델 학습 구조 관련

    3.1. Multi-modal이란 무엇인가?

    3.2. Multi-task란 무엇인가?

    3.3. End-to-End 모델이란?

 

 

0. 신경망이란 무엇인가?

보통 딥러닝을 배우기 시작할 때, 초반에는 ANN, DNN, CNN, RNN 같이 ONN(뭐시기 뭐시기 NN)으로 끝나는 개념들을 차례대로 접하게 됩니다. 

 

여기서 말하는 NN은 Neural Network의 약자로, 번역하면 '신경망'입니다. 

 

그리고 여기서 말하는 신경망(Neural Network)는 기본적으로 인간 뇌 구조의 모방입니다. 인간의 뇌 구조를 모방한 모든 모델을 신경망 모델이라고 부른다고 봐도 될 것 같습니다. 그러니까 CNN, RNN 같이 NN으로 끝나는 애들은 다 신경망의 종류에 해당합니다. 하나하나 설명해보자면

 

1) ANN

ANN은 Artificial Neural Network의 약자로, 직역하면 ‘인공신경망’입니다. ANN이라고 해서 신경망이랑 뭐가 다른 게 아니라, 요즘에는 사실상 Neural Network와 같은 의미로 쓰입니다. 특정한 모델을 일컫는 용어가 아니라, 신경망을 사용한 기계학습 그 자체를 의미하는 단어로 사용됩니다.

 

2) DNN

DNN은 Deep Neural Network의 약자로, 직역하면 ‘깊은 인공신경망’입니다. ANN이 중간층이 1~2개인 신경망을 뜻한다면, DNN은 중간층이 그보다 많은 모든 모델을 일컫는 단어입니다. (그러니까, 그냥 '깊어진' 인공신경망)

요즘 대부분의 모델은 복잡한 학습을 위해 중간층을 많이많이 넣습니다. 그러니까 대부분의 모델이 DNN이라고 봐도 무방합니다.

 

3) CNN

CNN은 Convolutional Neural Network의 약자입니다. 직역하면 ‘합성곱 신경망’입니다. (CNN 및 컨볼루션 관련 내용은 기회가 된다면 나중에 자세히 정리해두려고 해요...)

기존의 Fully Connected Layer(FC Layer)와는 아예 다른 방식(합성곱 연산)으로 데이터를 인식하는 방식을 사용합니다. 이미지 인식에서 자주 쓰이고, 가장 큰 특징은 특징 추출(특징 인식)이라고 볼 수 있습니다. 

 

4) RNN

RNN은 Recurrent Neural Network의 약자로, 직역하면 ‘순환 신경망’ 정도가 되겠습니다. 말 그대로 순환적 학습을 하고, 시계열 데이터 같은 순차적 데이터 처리에 적합합니다. 핵심은 ‘이전 출력과 다음 입력 간의 연결’ 정도로 말할 수 있을 것 같네요.

 

자세한 설명은 위키독스 참고하면 좋을 것 같습니다. 위키독스 최고에용.

https://wikidocs.net/240098

 

2-3-2 신경망의 종류와 구조

### **2.3.2 신경망의 종류와 구조** 딥러닝은 다양한 신경망 구조를 통해 복잡한 문제를 해결합니다. 각 신경망은 특정한 유형의 데이터와 문제에 적합하도록 설계되어 있습…

wikidocs.net

 

1. 아키텍처(Architecture)란 무엇인가?

아키텍쳐(Architecture)라는 말을 영어로 직역하면 '건축 양식' 쯤 되겠지만, 딥러닝에서 쓰이는 아키텍처라는 말은 '설계도'에 가깝습니다. 즉, 모델의 전체적인 구조를 나타내는 정보를 아키텍처라 합니다. '자동차의 설계도 같은 거' 라고  생각하면 편할 것 같습니다. 

 

모델의 아키텍처는 보통 다음과 같은 정보를 포함합니다. 

  • 몇 개의 레이어로 구성되어 있는지
  • 그 사이의 연결은 어떻게 되어 있는지
  • 어디서 어떤 활성화 함수들이 사용되는지

단순히 모델의 설계도를 뜻하는 용어이기 때문에, 동일한 아키텍쳐('설계도'에 해당)로 다양한 모델(설계도를 보고 완성한 '완성품'에 해당)들이 있을 수 있습니다. 자세한 내용은 아래 링크에 잘 정리되어 있습니다. (진짜 잘 정리되어 있음) 

https://velog.io/@jolabokaflod/%EC%95%84%ED%82%A4%ED%85%8D%EC%B2%98%EB%9E%80%EB%94%A5%EB%9F%AC%EB%8B%9D

 

아키텍처란?

딥러닝에서 아키텍처는 기본적으로 뉴럴 네트워크의 구조나 디자인을 의미합니다. 아키텍처는 어떻게 레이어가 배열되는지, 뉴런들이 어떻게 연결되는지, 어떤 활성화 함수를 사용하는지 등을

velog.io

 

작게는 위에서 설명한 CNN, RNN 등도 딥러닝 아키텍처로 보기도 하고, 여기서 발전한 유명한 아키텍처들도 많습니다. 예를 들어 CNN에서 ResNet, VGG 등의 아키텍처가, RNN에서 LSTM이나 GRU 등의 아키텍처가 발전해왔어요.

 

예를 들어 Transformer의 아키텍처는 다음과 같이 생겼습니다.  

여기서 Transformer라는 건 Attention is All You Need (놀랍게도 이게 논문 제목입니다...간지) 에서 제시된 모델로 RNN 없이 Attention이라는 기법(Mechanism)을 이용해 시퀀스를 처리하는 그런 모델인데,

사실 Transformer가 뭔지는 중요한 게 아니고, 핵심은 Transformer 같은 복잡한 모델들조차 각자의 아키텍처를 가진다는 점입니다. (마치 설계도가 없는 자동차가 존재하지 않듯이 말이죠)

 

그렇기에 특정 모델의 구조 등을 설득하기 위해서는 아키텍처의 시각화가 필수입니다. 

 

추가적으로, 아키텍처 내에서 반복되는 구조가 있을 경우 그 단위를 블록(Block)이라고 부릅니다. 

 

 

2. 파이프라인(Pipeline)이란 무엇인가?

아키텍처가 모델의 정적인 구조에 집중한다면,

파이프라인(Pipeline)이라는 건 모델의 동적인 흐름의 구조를 설명할 때 쓰이는 용어입니다. 

사진은 Hidden Techinical Debt in Machine Learning Systems 라는 논문에 나오는 사진으로, 기계학습 과정에서 거쳐야 하는 여러 과정들의 중요성을 설명합니다 어쩌구

기본적으로 기계학습(머신러닝)은 

데이터 구축 → 전처리 → 모델 학습 → 결과 도출 의 과정을 거치는데, 이 과정이 논리적으로 진행되었으며 성능이 좋다고 설득하기 위해서는 이러한 과정들이 어떻게 진행되었는지를 보여줄(시각화) 필요성이 존재합니다. 

 

이러한 과정 설명을 위해 정리해야 하는 것이 파이프라인입니다. (ML의 Pipeline 혹은 워크플로우, Workflow라고도 합니다.)

https://www.ibm.com/kr-ko/think/topics/machine-learning-pipeline

 

머신 러닝 파이프라인이란 무엇인가요? | IBM

머신 러닝(ML) 파이프라인은 ML 모델 작업 프로세스를 간소화하기 위해 상호 연결된 일련의 데이터 처리 및 모델링 단계입니다.

www.ibm.com

 

그러니까 작은 프로젝트를 진행할 때도 그냥 내 맘대로 막 진행할 것이 아니라, 파이프라인을 정리해서 내가 무엇을 어떻게 처리하였는지를 보여줘야, 설득이 가능하다는 것입니다. 

 

이러한 파이프라인을 관리하는(기업 등에서 이를 영구적으로 관리하기 위함, 매 업데이트마다 파이프라인을 다시 짤 수는 없으니까요.) 시스템인 MLOps라는 것도 있습니다. 

https://aws.amazon.com/ko/what-is/mlops/

 

MLOps란?- 기계 학습 운영 설명 - AWS

MLOps란 무엇이며 기업에서 기계 학습을 운영하는 방법과 이유, AWS에서 MLOps를 사용하는 방법에 대해 알아봅니다.

aws.amazon.com

 

 

3. 모델 학습 구조 관련

3.1. Multi-modal이란 무엇인가?

Multi-modal 이란 모델이 받는 Input 형태와 관련된 용어로, 말 그대로

다수(Multi, 그러니까 두 개 이상)의 데이터 형태(Modal)를 입력값으로 받는 모델을 뜻합니다.

  • 텍스트 데이터
  • 이미지 데이터
  • 비디오 데이터
  • 음성 데이터

등등...의 데이터 형태 중 두 개 이상을 입력으로 받으면 Multi-modal 모델이라고 부를 수 있습니다. 

 

그렇다면 서로 다른 형태의 입력이 들어오면 모델은 어떻게 이를 합쳐서 처리하느냐? 에 대해서는,

이걸 모두 벡터(Embedding Vector, 혹은 그냥 Embedding이라고도 부릅니다. ) 형태로 바꿔주는 일련의 과정이 필요합니다. 이러한 역할을 Encoder가 주로 하는데, 각 데이터 형태 별로 독립적인 Encoder가 필요합니다. (왜냐하면, 데이터 형태가 다르면 이를 벡터로 바꿔주는 과정 또한 달라지기에)

 

위의 사진을 보면 이미지 데이터는 Image Encoder가, 오디오 데이터는 Audio Encoder가, 비디오 데이터는 Video Encoder가 각각 처리한다는 것을 알 수 있습니다. 

 

이렇게 처리된 벡터들은 하나의 공간(Embedding 차원)으로 옮겨져, 학습하게 됩니다.

 

자세한 내용은 여기

https://medium.com/@mouneshpatil001/exploring-multimodal-large-language-models-a-step-forward-in-ai-4a96bbc245a3

 

Exploring Multimodal Large Language Models: A Step Forward in AI

In the dynamic realm of artificial intelligence, the advent of Multimodal Large Language Models (MLLMs) is revolutionizing how we interact…

medium.com

 

3.2. Multi-task란 무엇인가?

위에서는 Multi-modal을 설명했는데 Multi-task라는 것도 있습니다. 이거는 Multi-modal보다도 쉽습니다. 그냥 Task를 여러 개 수행하는 모델이라는 뜻입니다.

 

사실상 내가 원하는 대로 Task를 무한으로 늘릴 수도 있습니다. (뭐 물론 구현만 잘 된다면..) 이미지와 그에 맞는 음성을 같이 출력하면서, 설명도 같이 출력하는 모델이라던지, 하는 형태로요.

 

Multi-modal이 각 데이터 형태에 맞는 Encoder를 필요로 했다면,

Multi-task의 경우 각 Task마다의 Loss Function을 다르게 설정을 해줘야 합니다.

 

예를 들어, 아래와 같이 state 예측(분류)과 power 예측(회귀)를 둘 다 하는 Multi-task의 경우 분류와 회귀에 맞는 손실함수를 각각 정의해야 합니다.

# 손실함수 및 optimizer 정의
optimizer = torch.optim.Adam(model.parameters(), lr=1e-3)
criterion_state = nn.CrossEntropyLoss()      # 분류의 경우
criterion_power = nn.MSELoss()               # 회귀의 경우

num_epochs = 50       

total_losses = []     
state_losses = []
power_losses = []

 

3.3. End-to-End 모델이란?

Multi-modal이나 Multi-task 모델의 경우 예전부터 있던 개념인데,

요즘 뜨는 개념 중에 End-to-End(E2E) 라는 게 있습니다. 간단히 소개만 할 겸 가져왔습니다.

 

End-to-End란 말그대로 처음부터 끝까지를 한 번에 학습하는 모델을 만들겠다는 것이 핵심입니다. 한국어로는 '종단 간 학습 모델'이라고 번역하는데, 용어가 영 멋이 없는 것 같긴 합니다.

 

즉, 중간 단계를 하나하나 학습시키는 게 아닌, 입력부터 출력까지를 하나의 연결된 과정으로 보고, 그 전체를 학습시키겠다는 뜻입니다. 

https://hyunhp.tistory.com/674

 

[딥러닝] End to End model (E2E model) 해설, 정리, 요약

안녕하세요, HELLO End to End model은 수동 피처 엔지니어링 (manual feature engineering)이나 중간 처리 단계 없이 입력 데이터에서 출력 데이터로 직접 작업을 수행하는 방법을 학습하는 일종의 머신러닝

hyunhp.tistory.com

 

그래서 이게 요즘 왜 뜨냐? 면

처음부터 끝까지를 한꺼번에 학습시키면 조금 더 복잡한 과제를 풀 수 있기 때문입니다. E2E는 보통 Speech Recognition(음성 인식)이나 대표적으로는 Autonomous Driving(자율주행)에 자주 쓰이곤 합니다. 

https://medium.com/data-science/e2e-the-every-purpose-ml-method-5d4f20dafee4

 

End-to-end learning, the (almost) every purpose ML method

Can E2E be used to solve every Machine Learning problems?

medium.com

이거 영어긴 한데 진짜 좋은 글이니 추천

 

 

 

이상입니다.

시간 되면 CNN도 쭉 정리하는 글을 써보겠습니다.....근데 곧 개강이라 못할듯.