인지지능 알고리즘 설계
📌 개요
- 인지지능 알고리즘 = 원시 센서 데이터 → 의미 있는 정보로 만드는 파이프라인 설계
- 고전 컴퓨터 비전과 딥러닝이 공존
- 로봇의 상수 제약: "탑재 컴퓨터에서 실시간으로 돌아가는가"
- 출제 포인트: 인지 파이프라인 4단계 · 분류·검출·세그멘테이션의 구분 · 학습 데이터 분할(학습/검증/시험)과 과적합 · 엣지 배포·경량화
📖 핵심 개념
인지 파이프라인 4단계 (시험 단골)
- 전처리(Preprocessing): 원시 데이터의 품질 개선 — 노이즈 제거(필터링), 왜곡 보정(캘리브레이션), 정규화, 관심영역(ROI) 추출로 연산량 축소
- 특징 추출(Feature Extraction): 판단에 유용한 정보로 압축 — 엣지·코너·색 히스토그램·특징점(고전), 또는 신경망이 스스로 학습한 특징(딥러닝)
- 인식(Recognition): 특징으로부터 판단 — 분류·검출·세그멘테이션
- 후처리(Postprocessing): 결과의 안정화 — 시간적 필터링(깜빡임 제거), 추적(Tracking — 프레임 간 동일 물체 연결), 중복 제거, 좌표계 변환(영상 좌표 → 로봇 좌표, → 좌표계)
인식 과제의 3형제 — 분류·검출·세그멘테이션 (구분 단골)
| 과제 | 답의 형태 | 예 |
|---|---|---|
| 분류(Classification) | 영상 전체가 "무엇" — 클래스 라벨 하나 | 이 사진은 컵이다 |
| 검출(Detection) | "무엇이 어디에" — 클래스 + 경계 상자(bounding box) 목록 | 컵이 (x,y)에, 사람이 저기에 |
| 세그멘테이션(Segmentation) | 픽셀 단위로 어느 영역인가 | 주행 가능 영역의 픽셀 지도 |
로봇 파지에는 검출 + 자세(포즈) 추정이, 주행 가능 영역 판단에는 세그멘테이션이 어울린다.
고전 기법 vs 딥러닝
- 고전 컴퓨터 비전: 사람이 특징을 설계(엣지, 템플릿 매칭, 색 기반 분할) — 데이터가 적어도 동작, 해석·예측 가능, 조명·변형에 취약
- 딥러닝(CNN 계열): 데이터로부터 특징을 학습 — 복잡한 대상에 강인, 대량의 라벨 데이터·연산 필요, 동작 근거 해석이 어려움
- 실무 원칙: 마커 인식·단순 색 검출처럼 통제된 문제는 고전 기법이 싸고 확실하며, 비정형 물체·사람 인식은 딥러닝 — 혼합 구성이 일반적. 안전 필수 판단을 딥러닝에만 맡기지 않는다 (→ 작업 시나리오별 소프트웨어 구현기술)
학습 기반 설계의 순환 — 데이터가 절반이다
- 데이터 수집: 실제 운용 환경에서, 조건(조명·각도·가림)을 다양하게 — 환경과 다른 데이터로 학습하면 현장에서 무너진다
- 라벨링(Labeling): 정답 표기 — 품질 관리(교차 검수)가 성능 상한을 정한다
- 데이터 증강(Augmentation): 회전·밝기 변화·노이즈 추가로 데이터를 인위적으로 불림 — 다양성 확보
- 학습/검증/시험 분할 (시험 단골): 학습(train) 데이터로 모델을 만들고, 검증(validation) 데이터로 튜닝·모델 선택을 하며, 시험(test) 데이터는 마지막 평가에만 사용 — 시험 데이터를 튜닝에 쓰면 성능이 부풀려진다
- 과적합(Overfitting): 학습 데이터에만 최적화되어 새 데이터에서 성능이 떨어지는 현상 — 징후는 "학습 성능 ≫ 검증 성능". 대책: 데이터 확충·증강, 모델 단순화, 정칙화, 조기 종료
- 운용 중 개선: 현장의 실패 사례를 수집해 재학습 — 인지 성능은 배포로 끝나지 않는다
임베디드 배포 — 로봇의 현실 제약
- 엣지(온보드) vs 클라우드: 온보드는 지연 짧고 통신 두절에 강함(안전 기능은 반드시 온보드), 클라우드는 연산 풍부하나 지연·연결 의존 — 안전·실시간은 엣지, 무거운 분석은 클라우드로 나누는 하이브리드가 일반적
- 경량화: 모델을 작고 빠르게 — 양자화(Quantization: 32비트 실수 → 8비트 정수 연산), 가지치기(Pruning: 기여도 낮은 연결 제거), 경량 구조 선택, 하드웨어 가속(GPU·NPU) 활용
- 성능–속도–자원의 3자 균형을 목표사양(fps·지연·정확도)에 맞춘다 (→ 로봇 시스템 최적화)
강인성을 위한 설계
- 센서 융합: 서로 다른 원리의 센서로 약점 상쇄 — 카메라(분류에 강함) + LiDAR(거리·조명 불변) (→ 로봇센싱 알고리즘 설계)
- 신뢰도 기반 거동: 낮은 신뢰도 → 재관측·감속·확인 요청 (→ 인지지능 소프트웨어 목표사양)
- 시간적 일관성: 단일 프레임이 아니라 연속 관측으로 판단 (추적·다수결)
📊 다이어그램 · 수식
인지 파이프라인
flowchart LR
S["센서 데이터
(영상·점군)"] --> P1["① 전처리
노이즈 제거·보정·ROI"] --> P2["② 특징 추출
수동 설계 or 학습"] --> P3["③ 인식
분류·검출·세그멘테이션"] --> P4["④ 후처리
추적·필터링·좌표 변환"] --> O["작업지능·세계 모델로"]데이터 분할과 과적합
flowchart TD
D["전체 데이터"] --> TR["학습(train)
모델 생성"] & VA["검증(validation)
튜닝·모델 선택"] & TE["시험(test)
최종 평가에만"]
OF["과적합 징후: 학습 성능 ≫ 검증 성능"] --> FIX["대책: 데이터 확충·증강,
모델 단순화, 정칙화, 조기 종료"]🎯 핵심 요약 · 암기 포인트
✏️ 예상문제
1. 인지 파이프라인의 단계를 순서대로 옳게 나열한 것은?
① 특징 추출 → 전처리 → 후처리 → 인식 ② 전처리 → 특징 추출 → 인식 → 후처리 ③ 인식 → 전처리 → 특징 추출 → 후처리 ④ 후처리 → 인식 → 특징 추출 → 전처리
정답 및 해설
정답: ② 데이터 품질을 다듬고(전처리), 유용한 정보로 압축하고(특징 추출), 판단하고(인식), 결과를 안정화·변환(후처리)하는 순서다. 후처리의 좌표 변환을 거쳐야 인지 결과가 로봇 좌표계의 행동으로 이어진다.
2. "주행 가능한 바닥 영역을 픽셀 단위로 구분"하는 인식 과제는?
① 분류(Classification) ② 검출(Detection) ③ 세그멘테이션(Segmentation) ④ 추적(Tracking)
정답 및 해설
정답: ③ 픽셀 단위의 영역 구분이 세그멘테이션이다. 분류는 영상 전체의 라벨 하나, 검출은 경계 상자 목록, 추적은 프레임 간 연결이다.
3. 학습·검증·시험 데이터 분할에 대한 설명으로 옳지 않은 것은?
① 학습 데이터로 모델의 파라미터를 만든다 ② 검증 데이터로 하이퍼파라미터 튜닝과 모델 선택을 한다 ③ 시험 데이터는 최종 성능 평가에만 사용한다 ④ 시험 데이터를 튜닝에 반복 사용하면 더 정확한 평가가 된다
정답 및 해설
정답: ④ 시험 데이터를 튜닝에 쓰면 모델이 시험 데이터에 간접적으로 맞춰져 성능이 부풀려진다 — "시험 문제를 미리 보고 공부한" 셈이다. 시험 데이터는 마지막에 단 한 번의 평가용으로 남겨야 한다.
4. 학습 데이터 성능은 99%인데 검증 데이터 성능이 80%로 크게 떨어졌다. 진단과 대책으로 가장 적절한 것은?
① 과적합 — 데이터 확충·증강, 모델 단순화, 정칙화로 대응한다 ② 과소적합 — 모델을 더 복잡하게 만든다 ③ 정상 상태 — 그대로 배포한다 ④ 센서 고장 — 하드웨어를 교체한다
정답 및 해설
정답: ① "학습 성능 ≫ 검증 성능"은 과적합의 전형적 징후다 — 모델이 학습 데이터의 우연한 특징까지 외워 버린 상태로, 새 데이터(현장)에서 무너진다. 데이터 다양성 확보와 모델 억제가 정석 대책이다.
5. 사람 감지 정지 기능의 인지 처리 위치에 대한 설계로 가장 적절한 것은?
① 클라우드 서버에서 처리하고 결과를 무선으로 받는다 ② 로봇 온보드(엣지)에서 처리해 통신 상태와 무관하게 동작하게 한다 ③ 처리 위치는 성능과 무관하다 ④ 야간에만 온보드로 전환한다
정답 및 해설
정답: ② 안전 기능이 클라우드에 의존하면 통신 지연·두절이 곧 안전 구멍이 된다. 안전·실시간 기능은 온보드에서, 무거운 비실시간 분석은 클라우드에서 처리하는 하이브리드 구성이 표준이다.
🔗 관련 노트
- 인지지능 소프트웨어 목표사양 — 알고리즘이 달성할 목표(정밀도·재현율·fps)
- 로봇센싱 알고리즘 설계 — 센서 융합·필터링의 상세
- 센서 종류 — 인지의 입력 센서
- 이동로봇 위치인식 — 인지가 뒷받침하는 위치인식
- 로봇 시스템 최적화 — 연산 자원과의 균형
- _MOC 지능소프트웨어