C.W.K.
Stream
Lesson 02 of 08 · published

MLP, CNN, Transformer, Foundation Model 고르기

~18 min · choice, architecture

Level 0Curious
0 XP0/73 lessons0/11 achievements
0/120 XP to next level120 XP to go0% complete

Architecture 를 data shape 에 매치

  • MLP — tabular numeric feature, fixed-size embedding, flat vector 의 단순 regression/classification. 진짜 tabular data 에 gradient boosting 에 자주 짐, learned backbone 위 head 로 유용.
  • CNN — image, 2-D spatial signal (spectrogram), video frame, low-dimensional structured grid. Locality 와 translation 의 강한 inductive bias. 거의 모든 거에 pretrained backbone 사용 가능.
  • RNN / LSTM / GRU — constant per-token cost requirement 의 streaming sequence, RL policy, transformer attention 의 quadratic cost 가 아픈 embedded system. 일반 use 에 transformer 로 largely 대체.
  • Transformer — text, code, global dependency 의 long sequence, multi-modal. 2026 년 거의 모든 sequence-shaped 의 default.
  • State-Space Model (Mamba, Mamba-2, RWKV) — transformer 의 O(n²) attention 이 너무 비싼 매우 long sequence. Sequence length 에 linear. 여전히 emerging.
  • Foundation model (CLIP, DINOv2, SAM, GPT-class LLM) — black-box embedding 또는 fine-tunable base 로 사용. 'foundation model 그냥 써' 답이 진짜 application 의 surprising fraction 을 cover.
팁: Architecture 의 inductive bias 를 data 의 structure 에 매치. 100-feature tabular dataset 에 attention 적용 안 하기, text 에 CNN 적용 안 하기. Mismatched architecture 도 'work' 하지만 parameter 낭비, 더 나쁜 generalization.

'Foundation model first' shortcut

대부분 application work 에 올바른 수: 관련 foundation model (vision-language 에 CLIP, general vision 에 DINOv2, text 에 Llama / Qwen / GPT-class LLM) 골라, data embed, tiny head train. Architecture 결정의 90% 건너뜀.

원칙: 2026 년 architecture 결정이 대부분 'custom CNN 의 shape 가 뭐?' 가 아니라 '어떤 foundation model 부터 시작?'. 받아들여 — leverage 가 backbone 이 아니라 data 와 head 에 있어.

Code

Five architectures, one task type each·python
# Tabular: classical wins
import lightgbm as lgb
clf = lgb.LGBMClassifier(n_estimators=500).fit(X_train, y_train)

# Vision: foundation model + head
import torch.nn as nn
import torchvision.models as tvm
vit = tvm.vit_b_16(weights="IMAGENET1K_V1"); vit.heads = nn.Linear(768, n_cls)

# Text classification: pretrained transformer
from transformers import AutoTokenizer, AutoModelForSequenceClassification
model = AutoModelForSequenceClassification.from_pretrained(
    "distilbert-base-uncased", num_labels=n_cls)

# Long-sequence text generation: causal LLM
from transformers import AutoModelForCausalLM
gen = AutoModelForCausalLM.from_pretrained("Qwen/Qwen2.5-7B-Instruct",
                                            device_map="auto")

# Time-series forecasting: foundation forecaster
# from chronos import ChronosPipeline
# forecaster = ChronosPipeline.from_pretrained("amazon/chronos-t5-large")

External links

Exercise

마지막 3 project 에 어떤 architecture class 썼는지와 오늘 어떤 거 쓸지 list. 둘 사이 gap 이 지난 18 개월의 본인 학습.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.