1. 딥러닝의 개념정의
1) 딥러닝이란?
딥러닝은 기계 학습의 한 분야이며, 인공 신경망을 여러 층으로 쌓아 올려 학습하는 방식
- 인공 신경망을 사용하여 데이터로부터 특징을 학습하고 패턴을 파악하여 문제를 해결
- 데이터로부터 자동으로 학습, 특히 대량의 데이터에 대한 연산 피룡
- 대개 이미지, 음성, 텍스트 등의 비정형 데이터를 처리하고 해석하는 데 강점
- 컴퓨터 비전, 음성 인식, 자연어 처리 등의 분야에서 혁신적인 성과가 나타나고 있음.
[학습수준]
∎ 머신러닝
- 데이터에서 패턴을 학습하여 예측이나 의사 결정을 내리는데 중점
- 전통적인 머신러닝 알고리즘에는 의사결정나무, 서포트 벡터 머신, 랜덤 포레스트 등
∎ 딥러닝
- 머신러닝의 한 범주로, 다양한 층에서 구성된 신경망을 사용하여 복잡한 표현을 학습
- 이미지, 음성, 텍스트 등과 같은 복잡한 데이터에서 특징을 추출하고 이해하는데 강점
[딥러닝이 중요한 이유]
① 복잡한 문제 해결
인간이 감지하는 것보다 더 어려운 패턴을 학습 가능
- 이미지 분류, 음성 인식, 자연어 처리와 같은 문제 해결 가능
② 데이터 효율성
머신러닝은 데이터의 특징을 직접 추출하는 방법이므로 처음에 특징이 잘못 추출되면 모델의 성능이 떨어짐
- 하지만, 딥러닝은 이미지가 가진 패턴을 직접 학습하므로 모델의 성능이 크게 저하되지 않음.
③ 자동화
인간의 개입 없이 데이터를 스스로 학습하여, 새로운 데이터에 대한 예측을 수행.
- 자동화 시스템 구축 가능
2) 딥러닝의 역사
- 딥러닝의 기원은 1940년대
- 초기에는 연산 능력이 부족하여 발전이 느렸음.
- 2000년대 이후, GPU의 발전과 대용량 데이터셋의 이용이 딥 러닝의 부흥기를 도래
∎ 1943년대
- 월터 피츠(Walter Pitts)와 워런 맥컬록(Warren McCulloch)이 두 개의 노드가 연결된 간단한 구조로, 인간의 뇌처럼 복잡한 패턴을 학습할 수 있게 함.
∎ 1950년대
- 퍼셉트론(Perceptron) 개발
- 피츠-맥컬록 구조를 확장한 것으로 입력 데이터의 패턴을 학습할 수 있는 능력이 있으나, 훈련이 어려워 사용화되지 못함.
∎ 1980년대
- 신경망 연구를 다시 활발하게 진행하기 시작
- 제프리 힌턴(Geoffrey Hinton), 데이비드 루멜하트(David Rumelhart), 로날드 윌리엄스(Ronald Williams) 등이 역전파 알고리즘 개발
∎ 2000년대 이후:
컴퓨터의 성능 향상과 대규모 데이터의 증가는 딥 러닝의 발전을 가속화 시킴.
3) 딥러닝의 발전
딥러닝은 지금도 계속해서 발전하고 있다. 주로 하드웨어의 발전, 더 효과적인 알고리즘의 개발, 대규모 데이터셋의 이용이 발전의 원인이다. 딥러닝은 이미지 인식, 음성 인식, 자연어 처리, 게임 플레이 등 다양한 분야에서 높은 성과를 거두고 있다.
컴퓨팅 파워의 증가 | 그래픽 처리 장치(GPU)의 발전과 클라우드 컴퓨팅 기술의 도입으로 대규모 신경망의 효율적 학습 |
데이터의 증가 | 대규모 데이터셋의 수집과 활용이 가능해지면서 모델의 성능 향상 |
신경망 구조의 발전 | CNN(Convolutional Neural Network), RNN(Recurrent Neural Network) → 더 깊은 층으로 구성된 신경망 아키텍처의 개발이 이루어져 성능 향상 |
전이 학습(Transfer Learning) | 미리 학습된 모델을 다른 작업에 재사용하는 전이 학습의 개념이 도입, 효율적인 학습 가능 |
2. 신경망의 개념
1) 신경망이란?
▪ 생물학적 뇌의 작동 원리에서 영감을 받은 기계 학습 모델
▪ 신경망은 인공 신경망(ANN)으로 불린다.
▪ 생물학적 신경망에서 영감을 받아 만들어진 구조란?
- 뇌의 동작 원리를 모방하여 정보 처리 및 패턴 인식을 수행에 사용
- 입력능, 은닉층, 출력층 등으로 구성
▪ 신경망의 기본 요소
① 뉴런: 신경망의 기본 단위
② 층: 뉴런을 여러개 연결하여 만든 구조
③ 연결: 뉴런과 뉴런을 연결하는
2) 신경망의 구조
▪ 신경망은 여러 개의 뉴런으로 구성된 층(layer)들로 구성
▪ 각 뉴런은 가중치와 활성화 함수를 통해 입력을 처리 한다.
▪ 여러 층이 결합되어 복잡한 패턴을 학습한다.
3) 신경망의 학습
신경망은 학습 데이터를 사용해 가중치를 조절하여 입력과 원하는 출력 간의 관계를 학습한다.
주로 역전파(backpropagation)알고리즘이 사용된다.
이를 통해 모델이 예측 오차를 최소화하도록 최적화한다.
3. 머신러닝에 대한 통찰
1) 머신러닝의 강점과 한계 예시
머신러닝의 강점 | 머신러닝의 한계 |
복잡한 패턴 학습 가능 | 데이터의 질에 민감 |
데이터 효율성 | 모델의 해석이 어려움(∵ 은닉층) |
자동화 구현 | 편향의 위험 |
2) 머신러닝 vs 전통 프로그래밍 비지도 학습 예시
이 둘을 구분하는 이유는 문제를 해결하는 접근 방법에서 차이가 있기 때문이다.
(1) 머신러닝과 전통적인 프로그래밍 방식의 차이
∎ 전통적인 프로그래밍
▪ 문제 해결 알고리즘 개발 - 코드로 구현
ex) 이미지를 분류하기 위해, 이미지를 구별하는 알고리즘을 개발하고, 이 알고리즘으로 이미지를 분류하는 코드를 작성
∎ 머신러닝
▪ 데이터를 학습해서 문제를 해결하는 방법을 자동으로 구현
ex) 이미지를 분류하기 위해, 이미지 데이터를 학습해서 이미지 속의 물체를 식별하는 방법을 자동으로 도출
'AI & 딥러닝' 카테고리의 다른 글
[6강] 군집화: 유사한 데이터 그룹화하기 (2) | 2024.11.26 |
---|---|
[5강] 회귀 분석: 데이터 예측을 위한 기본 원리 (0) | 2024.11.26 |
[4강] 분류모델: 무엇인지와 어떻게 동작하는지 (0) | 2024.11.26 |
[2강] 기계 학습의 종류: 지도 학습, 비지도 학습, 강화 학습 (2) | 2024.11.25 |
[1강] 인공지능과 기계 학습 소개 (0) | 2024.11.25 |