개발 창고/AI

AI 입문 가이드: 개념부터 이미지 분류 실습까지

Royzero 2025. 8. 10. 22:26
반응형

1차시 – 인공지능(AI) 기초부터 이해하기: 개념·역사·활용 사례


1. 인공지능(AI)이란 무엇인가?

인공지능(Artificial Intelligence, AI)은 사람의 지능적 활동을 컴퓨터가 흉내 내도록 만드는 기술입니다.
쉽게 말해, “사람처럼 생각하고, 배우고, 판단할 수 있는 컴퓨터”를 만드는 것이 목표입니다.

  • 일상적인 예시

    • 네이버·구글에서 검색어를 입력했을 때 자동으로 추천 키워드가 나오는 기능
    • 카메라가 자동으로 사람 얼굴을 인식하고 초점을 맞추는 기능
    • 스마트 스피커(예: Google Home, 네이버 Clova)가 음성 명령을 이해하고 대답하는 기능

AI를 이해할 때는 약인공지능(Narrow AI)강인공지능(AGI) 의 차이를 먼저 알아두면 좋습니다.

구분 특징 예시
약인공지능 특정 분야에만 특화된 AI 번역기, 추천 시스템, 얼굴 인식
강인공지능 인간 수준의 모든 지적 활동 가능 영화 속 ‘아이언맨의 자비스’

현재 우리가 사용하는 대부분의 AI는 약인공지능입니다.


2. AI의 발전 역사

AI는 하루아침에 만들어진 기술이 아니라, 수십 년간의 연구와 실패를 거쳐 발전해왔습니다.

1950년대 – 태동기

  • 앨런 튜링이 “기계가 생각할 수 있는가?”라는 질문을 던짐
  • 튜링 테스트 제안 – 컴퓨터가 사람처럼 대화할 수 있는지를 판단하는 기준

1980~1990년대 – 전문가 시스템 시대

  • 규칙(If-Then) 기반의 ‘전문가 시스템’이 등장
  • 의료 진단, 산업 공정 자동화 등 제한된 분야에서 사용

2000년대 – 머신러닝의 부상

  • 데이터와 컴퓨팅 파워 증가
  • 통계·수학 기반의 머신러닝 기법 확산

2010년대 – 딥러닝 혁명

  • 이미지넷 대회에서 딥러닝(CNN) 모델이 압도적 성능을 보임
  • 음성 인식, 이미지 분석, 번역 기술 급속 발전

2020년대 – 생성형 AI 시대

  • ChatGPT, Stable Diffusion, Midjourney 등 대규모 AI 모델 등장
  • 텍스트, 이미지, 음악, 영상 생성 가능

3. AI의 주요 분야

  1. 머신러닝(Machine Learning)
    데이터를 학습해 스스로 규칙을 찾고 예측하는 기술
    예) 스팸 메일 필터, 판매량 예측

  2. 딥러닝(Deep Learning)
    인공신경망을 활용한 고도화된 머신러닝
    예) 이미지 분류, 자율주행 자동차의 객체 인식

  3. 자연어 처리(NLP)
    인간의 언어를 이해하고 생성하는 기술
    예) 챗봇, 번역기, 감정 분석

  4. 컴퓨터 비전(Computer Vision)
    이미지·영상을 인식하고 분석하는 기술
    예) CCTV 이상행동 감지, 얼굴 인식 결제

  5. 생성형 AI(Generative AI)
    새로운 콘텐츠(텍스트, 이미지, 오디오 등)를 만들어내는 기술
    예) ChatGPT, Stable Diffusion, Suno AI


4. AI 활용 사례

  • 제조업: 불량품 자동 검출, 예지 정비 시스템
  • 의료: 암 진단 보조, 유전자 분석, 신약 후보 물질 발굴
  • 금융: 부정 거래 탐지, 자동 투자 알고리즘
  • 유통·마케팅: 맞춤형 추천, 재고 예측
  • 콘텐츠 제작: 소설·시·기사 작성, 이미지·영상 합성

5. 실습 – 사전 학습된 AI 모델로 이미지 분류하기

AI를 처음 배울 때 가장 직관적인 예시가 이미지 분류(Image Classification) 입니다.
아래 코드는 Python과 TensorFlow를 이용해, 인터넷에서 불러온 강아지 사진을 어떤 품종인지 예측합니다.

코드 예제 (검증 완료)

# 라이브러리 설치
# pip install tensorflow pillow requests

import tensorflow as tf
from tensorflow.keras.applications import MobileNetV2
from tensorflow.keras.applications.mobilenet_v2 import decode_predictions, preprocess_input
from tensorflow.keras.preprocessing import image
import numpy as np
import requests
from PIL import Image
from io import BytesIO

# 1. 사전 학습된 모델 로드 (ImageNet 데이터셋 기반)
model = MobileNetV2(weights="imagenet")

# 2. 예제 이미지 다운로드 (퍼그 사진)
url = "https://upload.wikimedia.org/wikipedia/commons/9/9a/Pug_600.jpg"
img_data = requests.get(url).content
img = Image.open(BytesIO(img_data)).convert("RGB").resize((224, 224))

# 3. 이미지 전처리
x = image.img_to_array(img)  # 이미지 → NumPy 배열
x = np.expand_dims(x, axis=0)  # 배치 차원 추가
x = preprocess_input(x)  # 모델 입력 형식에 맞게 전처리

# 4. 예측
preds = model.predict(x)
decoded = decode_predictions(preds, top=3)[0]

# 5. 결과 출력
print("=== 예측 결과 ===")
for rank, (class_id, name, score) in enumerate(decoded, start=1):
    print(f"{rank}. {name} ({score*100:.2f}%)")

실행 결과 예시

=== 예측 결과 ===
1. pug (98.64%)
2. bull_mastiff (0.65%)
3. Labrador_retriever (0.42%)

검증 완료: 해당 코드는 TensorFlow 2.15 환경에서 정상 작동하며, 결과는 실행 시점·환경에 따라 약간 달라질 수 있습니다.


6. 오늘의 요약

  • 인공지능은 데이터를 학습해 문제를 해결하는 기술로, 이미 우리의 일상 속에 깊이 들어와 있음
  • AI는 규칙 기반 시스템 → 머신러닝 → 딥러닝 → 생성형 AI 순으로 발전
  • 다양한 산업에서 AI는 효율과 정확성을 높이는 핵심 기술로 자리 잡음
  • 오늘 실습에서는 사전 학습 모델을 활용해 이미지 분류를 체험

7. 다음 시간 예고

다음 2차시에서는 머신러닝 기본 개념을 배웁니다.
지도학습·비지도학습·강화학습의 차이와 각 알고리즘의 특징을 예제로 살펴봅니다.

반응형