인공신경망 학습의 문제점
신경망 학습이 가진 구조적 어려움을 해결하기 위한 새로운 학습 방법들이 등장했습니다.
- 설계 불확실성: 어떤 신경망 구조가 좋은 성능을 낼지 예측이 어렵다.
- → 하이퍼파라미터(층 수, 노드 수, 학습률 등)가 너무 많음
- 데이터 부족 문제: 대량의 학습 데이터가 필요하나, 항상 확보하기 어려움
- 학습 시간 문제: 복잡한 모델은 학습에 매우 긴 시간이 소요됨
- 불투명성 문제: 결과가 왜 그렇게 나왔는지 이해하기 어려움 -> 이로 인해 설명 가능한 인공지능(XAI) 필요성 대두
이 문제들을 해결하려는 접근이 아래와 같습니다.
Transfer Learning (전이 학습)
- 정의: 기존에 잘 학습된 모델을 다른 유사한 작업에 재사용하는 방식
- 예시: 폐렴 vs 정상 이미지 판별
- 사전 학습(Pre-training)된 모델을 가져와 일부 레이어만 Fine-tuning 함으로써 빠르게 적은 데이터로 학습 가능
- 대규모 데이터셋으로 미리 학습된 모델(예: ImageNet, BERT 등)의 가중치를 가져옴
- 그리고 기존 모델의 하위 층(보통 feature extractor 역할)을 그대로 사용
- 출력층(분류기) 만 새 데이터에 맞게 바꿔서 학습함
→ 새로운 작업에 데이터가 적을 때
→ 기존 모델이 학습한 저수준/중간 수준의 특징은 그대로 쓸 수 있음
파인 튜닝
전이학습된 모델의 일부 또는 전체 가중치를 새 데이터에 맞게 다시 학습시키는 것
- 전이학습 후, 모델의 상위 층 일부 또는 전체를 다시 학습시킴
- 보통 출력층뿐만 아니라 중간층까지 gradient를 흘려서 가중치를 조정함
- 모델이 새로운 도메인에 더 잘 맞게 조정됨
주로 사용하는 상황:
→ 새 데이터와 원래 학습 데이터 간에 차이가 클 때
→ 더 정밀한 성능 향상이 필요할 때
기존 모델이 학습하지 않았던 새로운 환경, 주제, 말투 등에 적응할 수 있도록 모델 내부의 파라미터를 미세 조정(Fine-Tune) 한다는 뜻이에요.

| 단계 | 설명 |
| 전이학습 | ImageNet으로 학습된 ResNet에서 마지막 분류기(1000개 클래스)를 "개구리/비개구리" 분류기로 교체하고, 그 부분만 학습 |
| 파인튜닝 | 위 전이학습 후, 중간 층부터 끝까지의 가중치를 다시 학습시켜, 개구리에 더 잘 맞도록 모델을 조정 |
Meta Learning (메타 학습)
- 정의: "학습하는 방법을 학습"하는 기법
- 목적: 다양한 상황에서도 빠르고 유연하게 적응할 수 있도록 함
- 활용:
- 신경망을 구성하는 최적의 파라미터를 찾는 방법을 스스로 학습
- 메타 최적화기(Meta-Optimizer), 메타 표현(Meta-Representation), 메타 목표(Meta-Objective) 등을 조합
- 다양한 AI 응용 (Few-shot, Continual, Active Learning 등)과 연관됨
Meta Learning 의 한가지 예시 Few-shot Learning / One-shot Learning
- Few-shot Learning:
- 학습 데이터가 매우 적은 경우에도 일반화 성능을 확보하는 기술
- 예시: 4개의 클래스 각각 하나의 샘플(1-shot, 4-way)만으로 학습
- 방식: 유사도 비교 → 기존 샘플과의 유사도(0 or 1)로 판단
- 적은 데이터로 학습하는 것이 아니라, 적은 데이터를 가지고도 잘 학습할 수 있는 능력 자체를 학습하기 때문에 메타러닝이다.
- Few-shot Learning
├── One-shot Learning (n = 1)
├── Two-shot Learning (n = 2)
├── Three-shot Learning (n = 3)
└── ...
- One-shot Learning:
- 단 하나의 예제로 클래스 구분을 가능하게 하는 학습
- 방식: 일반 분류기 → 입력 이미지가 어떤 클래스에 속하는지 판단
Siamese Network(유사도 판단 네트워크)
- 정의: 두 개의 입력 이미지(또는 문장 등)를 각각 같은 신경망에 통과시켜 특징 벡터를 추출하고, 이들의 거리를 계산하여 유사도를 판단
- 특징:
- 이미지 인식, 문장 유사도 판단 등 다양한 작업에 활용
- 학습 샘플이 매우 적은 경우에도 강력한 일반화 능력을 보임
- 출력: 두 샘플 간의 유사도 점수(예: 0.3, 0.9 등)
| 기술목적 | 역할 |
| Transfer Learning | 기존 지식을 재사용하여 빠른 적응 및 학습 |
| Meta Learning | 학습 전략 자체를 학습하여 다양한 상황에 대응 |
| Few-shot/One-shot | 적은 데이터로 학습 가능하도록 구조화된 학습 |
| Siamese Network | 두 입력 간 유사도를 비교하여 분류/판단하는 구조 |
XAI의 핵심 개념
- XAI(eXplainable AI): AI 모델의 판단과 결과에 대한 해석을 제공
- 도움이 되는 이유:
- 모델 성능 개선 방향 파악
- 결과 신뢰성 확보
- 실제 의사결정 활용 가능
XAI의 주요 접근 방법
① 모델의 결과(결정)를 설명하려는가?
│
├── No → Neural Representations (모델 내부 구조 분석): 단순 모델과 내부를 확인한다
│
└── Yes → ② 모델이 본래 해석 가능한 구조인가?
│
├── Yes → Interpretable Models (설명 가능한 모델 자체): 회귀, 디시젼 트리 등
│
└── No → ③ 모델 종류에 상관없이 설명할 방법이 필요한가?
│
├── Yes → Model Agnostic (모델 무관한 해석 기법)
│
└── No → Model Specific / Example Based (모델 기반 해석 또는 예제 기반 해석)
1) Interpretable Models (해석 가능한 모델)
- 구조 자체가 사람이 이해 가능한 모델. 예: 선형 회귀, 의사결정트리, KNN
- 수식, 분기 조건 등으로 직접 해석 가능
2) Model Agnostic (모델 독립적)
- 어떤 모델에도 적용 가능 (모델 종류에 무관함)
- 대표 방법: SHAP
- 각 feature가 예측에 미치는 영향력을 수치화해 시각화
- 예: 나이, 성별, 혈압 등 다양한 요소가 모델 출력값에 미치는 영향 분석
3) Model Specific (모델 기반 해석)
- 모델 내부 구조를 바탕으로 설명
- 대표 기법: Attention
- 예: 영어-프랑스어 번역 시 어떤 단어가 어떤 단어에 주목했는지를 시각화
4) Neural Representations (신경망 표현 시각화)
- 신경망 각 층이 어떤 feature를 학습했는지 시각적으로 표현
- 저수준 → 중간 → 고수준 feature로 이어지는 구조 파악 가능
- 모델의 학습된 표현 자체를 시각적으로 분석 / CNN 등에서 계층별로 무엇을 학습했는지 시각화
| 분류 기준 | 질문 | 특징 |
| Interpretable | 애초에 사람이 해석 가능한 모델인가? | 구조 자체가 단순하고 해석 가능 |
| Model Agnostic | 어떤 모델에도 적용 가능한 해석이 필요한가? | 입력-출력만 보고 해석 가능 |
| Model Specific | 모델 내부 구조를 해석할 수 있는가? | 모델의 gradient, attention 등 분석 |
| Neural Repr. | 학습된 표현의 시각적/구조적 해석을 원하는가? | 계층별 특징 시각화 |
| Example Based | 예시 데이터가 어떤 영향을 미쳤는지 알고 싶은가? | 구체적인 사례로 해석 (adversarial, influence) |
XAI의 효과
- 모델이 어떤 feature를 중요하게 여기는지 알 수 있음
- 각 feature가 예측 결과에 미치는 영향력을 파악
- 일반적인 feature의 효과도 분석 가능
XAI가 필요한 상황
- 디버깅: 모델이 왜 오작동하는지 원인 분석
- 피처 엔지니어링: 유용한 피처 도출을 위한 인사이트 제공
- 데이터 수집 가이드: 불필요한 데이터 제외 가능
- 신뢰성 확보: 예측 결과 기반 의사결정 시 사용
신경망의 성능 개선 방법
- 모델 설계 접근법:
- Model driven: 모델의 구조나 학습 방법 자체를 개선
- Data driven: 데이터의 품질 또는 특성을 활용해 개선
Model driven 접근법 정리
- Weight Initialization
- 초기 가중치 설정이 학습 성능에 영향
- Xavier 초기화: tanh, sigmoid에서 효과적
- He 초기화: ReLU에서 적합
- Dropout
- 학습 중 일부 뉴런을 무작위로 제거 → 과적합 방지
- 출력 노드에 신호를 일정 확률로 전달하지 않음 → 일반화 성능 향상
- Batch Normalization
- 배치 단위로 평균을 0, 분산을 1로 정규화
- 학습 속도 향상
- regularization 효과 유발 (과적합 방지)
- 배치 단위로 평균을 0, 분산을 1로 정규화
- Early Stopping
- 검증 정확도가 떨어지기 시작하면 학습 중단
- 과적합을 방지하고 불필요한 연산 절약
- Transfer Learning
- 기존에 학습된 모델을 재활용하여 새로운 문제 해결
- 학습 시간 단축
- 적은 데이터로도 높은 성능
- 유사한 문제에서는 특히 효과적
- 기존에 학습된 모델을 재활용하여 새로운 문제 해결
- End to End vs Part 방식
- End-to-End: 입력에서 출력까지 모든 것을 하나의 모델이 처리
- Part 방식: 여러 단계로 나누어 처리
- ML vs DL 관점
- ML (기존 머신러닝): 규칙 기반, 통계 기반
- DL (딥러닝): 데이터 기반으로 feature도 자동 추출
| 구분 |
머신러닝 (ML) | 딥러닝 (DL) |
| 가중치 학습 | 기계가 학습함 예: 선형 회귀에서 기울기 w, 절편 b 를 데이터 기반으로 최적화 |
기계가 학습함 (수백만 개 파라미터를 백프로 자동 학습) |
| 특징 추출 (Feature) | 사람이 직접 의미 있는 피처(변수)를 만들어줘야 함 예: 고양이 사진이면, '귀 크기', '코 색상'을 사람이 선택 |
입력(예: 픽셀값)을 그대로 넣으면 모델이 알아서 의미를 학습함 |
| 모델 구조 | 비교적 단순 (선형회귀, SVM 등) | 복잡한 다층 신경망 구조 사용 |
- 선형 회귀, 로지스틱 회귀, SVM 등 머신러닝 모델도 "손실 함수를 줄이도록 파라미터(가중치)를 최적화"합니다.
- 하지만 머신러닝에서는 입력으로 어떤 feature를 쓸지는 사람이 도메인 지식을 활용해서 골라줘야 합니다.
- 딥러닝은 그 feature 선택조차 기계가 스스로 특징을 추출해서, 매우 복잡한 문제에 강합니다.
| 문제 상황 | 더 적합한 방식 | 이유 |
| 고객 이탈 예측 (고객 정보 + 결제 이력) | 머신러닝 | 해석이 중요하고 데이터가 구조화되어 있음 |
| 고양이 vs 개 사진 분류 | 딥러닝 (CNN) | 이미지 → 자동 특징 추출 필요 |
| 뉴스 기사에서 긍정/부정 감정 분류 | 딥러닝 (RNN, BERT 등) | 문맥 파악 및 시계열 관계 필요 |
| 대출 사기 여부 판단 | 머신러닝 | 규칙 기반, 피처 해석 중요함 (설명 가능해야 함) |
| 자율주행 차량 인식 | 딥러닝 | 복합적인 영상 데이터 처리 필요 |
Data Driven 접근법 정리
- Data Distribution
- 데이터가 정규분포 또는 로그정규분포 등 어떤 패턴을 따르는지 파악하고, 왜곡된 분포는 변환(log, Box-Cox 등)을 적용해 모델 학습을 돕습니다.
- 대부분의 ML/DL 모델은 정규분포에 가까운 데이터에서 성능이 좋음. 분포가 왜곡되면 모델이 특정 값에 과도하게 집중하거나 학습이 불안정해짐. (예: 로그변환으로 극단값 영향 완화)
- 예시: 소득 데이터가 대부분 200~400만 원에 몰려 있고 일부는 2000만 원처럼 극단적으로 큼 → 로그 변환을 하면 극단값 영향이 줄어들어 학습 안정화됨
- Data Scale
- 데이터의 단위나 범위가 다른 경우 StandardScaler나 MinMaxScaler를 사용해 정규화/표준화합니다.
- 스케일이 다르면 모델은 크기가 큰 feature에만 민감하게 반응함. 이는 잘못된 가중치 업데이트를 유발하여 학습 불균형을 초래함.
- 키(cm)는 160, 연봉(천만원)은 3200 → 둘을 같이 쓰면 연봉이 너무 커서 모델은 연봉에만 집중 → 표준화(StandardScaler)로 모두 평균 0, 분산 1로 맞춤 혹은 MinMaxScaler 로 모든 값을 0~1 사이로 압축, 값 범위가 너무 차이 나는 경우 추천
- 데이터 스케일은 공정한 출발선을 의미한다. 모든피쳐(변수) 가 비슷한 범위에서 다뤄지면 모델이 모든 피쳐를 고르게 학습하고 성능도 좋아진다.
- Domain Knowledge
- 단순 수치가 아닌 의미 있는 패턴을 만들기 위함. 사람이 알고 있는 전문적 맥락을 적용해 데이터에 의도와 목적성을 부여하면 모델도 더 빠르고 정확하게 학습함.
- 전문 지식을 바탕으로 binning, 그룹핑 등을 통해 더 의미 있는 데이터를 구성할 수 있습니다.
- 어떤 기준으로 나눌지 전문가 지식이 중요함 예: “혈압이 120 이상이면 고혈압이다” 같은 기준은 의학 지식 기반임
- Feature Engineering
- 원래 주어진 데이터는 모델이 학습하기 어려운 형태일 수 있음. 데이터를 변형해서 목표 변수(Target)와의 관계를 명확히 하면 모델이 더 잘 학습함. (즉, 학습 방향을 더 선명하게 만들어줌)
- 기존 피처를 변환, 생성하여 목표값과 더 관련성 높은 형태로 만듭니다. 예: 비율, count, encoding, 그룹화, 파생 변수 생성
- 날짜 데이터를 년/월/일로 나누거나, 요일로 변환, 또는 주말 여부로 바꿔서 고객 방문 패턴을 더 잘 예측할 수 있게 함
- Dimension Reduction
- 너무 많은 피처는 모델을 헷갈리게 하고 과적합의 원인이 됨. 정보가 풍부한 피처만 남기면 모델이 더 본질적인 구조를 학습할 수 있음. 특히 샘플 수가 적을수록 중요.
- 너무 많은 피처로 인해 학습이 어렵거나 overfitting이 발생할 수 있으므로, Feature Selection 또는 Feature Extraction(PCA 등)으로 차원을 줄입니다.
- 이미지에서 1024개의 픽셀값이 있지만, PCA를 통해 20개의 주요 축(feature)로 줄여도 분류 정확도 유지 + 연산도 빨라짐
- Train/Test/Real 불일치 해결
- 모델은 훈련한 분포에서 잘 작동하지만, 실제 데이터와 분포가 다르면 예측 정확도 급락. 현실에서 사용 가능한 모델이 되려면 데이터셋 간 차이를 최소화해야 함.
- 학습용 데이터(train), 검증용 데이터(test), 실제 데이터(real)의 차이를 고려하여 모델 일반화를 도모합니다. 데이터 불일치가 성능 저하 원인이 되기도 함
- 학습은 쇼핑몰 여름 시즌 리뷰 데이터만, 실제는 겨울 시즌 고객 리뷰 예측 → 단어 사용 방식이 달라져서 예측 정확도 낮아짐

시스템 관점에서의 인공지능 이해
- 기술적인 ML 알고리즘만이 아니라, 전체 시스템과 인프라를 포함한 큰 그림에서 AI를 이해해야 한다.
- 실제 ML 시스템에서 ML 코드(모델)는 작은 부분일 뿐.
- 대부분은 이를 지지하는 인프라와 운영 시스템:
- 데이터 수집, 구성 관리
- 피처 추출, 검증
- 자원 관리, 분석 도구, 프로세스 도구
- 배포 및 모니터링 시스템 등
- 요점: AI는 단순 모델이 아니라, 운영 가능한 시스템 전체로 봐야 한다.
Machine Learning Lifecycle: 머신러닝 프로젝트의 전체 생명주기 (4단계)
- 문제 정의
- ML로 해결 가능한 문제인가?
- 데이터 수집 가능 여부, 인력, 일정 등 검토
- 수집 & 전처리
- 데이터 수집, 정제, 라벨링, 시각화 등
- 학습
- 모델 설계, 학습, 성능 평가, 개선
- 배포
- 모델을 실 서비스에 적용, 모니터링 및 업데이트
실무에서는 "학습"만이 아니라 수집, 배포, 모니터링까지가 AI 프로젝트 전체임.
AI 프로젝트 구성원: AI 프로젝트는 다양한 역할이 협업해야 완성됨
- 기획자: 요구사항 정의 및 전체 전략 기획
- 데이터 관리자, 분석가: 데이터 수집, 전처리, 분석
- 어노테이션 관리자: 라벨링 품질 관리
- 도구 개발자: 데이터 분석 및 검증 자동화 도구 개발
- 모델러, 서비스 개발자: 모델 학습 및 실제 서비스화
협업 기반 프로젝트로서, 단순 모델 개발자가 전부가 아님을 강조.
Machine Learning Architecture 4단계 파이프라인
- Process Data 수집(Collect), 전처리(Preprocess), 피처 엔지니어링
- Develop Model 모델 학습, 튜닝, 평가 (Train, Tune, Evaluate)
- Deploy 실제 환경에 배포 (배치/실시간 추론)
- Monitor 성능 모니터링, 모델 드리프트 감지, 알람/스케줄링
데이터 및 아티팩트 저장소 (Artifact Registry), 피처 스토어, 모델 레지스트리 등 운영을 위한 체계 포함

'인공지능' 카테고리의 다른 글
| Post Transformer(feat. GPT, BERT) (2) | 2025.05.27 |
|---|---|
| RNN 기반 Sequence-to-Sequence 모델과 Attention (3) | 2025.05.27 |
| NLP(Natural Language Processing) (13) (2) | 2025.05.26 |
| Embedding(12) (1) | 2025.05.24 |
| Computer Vision Task & CNN (11) (2) | 2025.05.23 |