728x90
반응형
인공 지능
- 1950년대 초기 컴퓨터 과학 분야의 일부 선각자들이 "컴퓨터가 '생각'할 수 있는가?"라는 질문을 하면서 시작되었다.
- 보통의 사람이 수행하는 지능적인 작업을 자동화하기 위한 연구 활동
심볼릭 AI(symbolic AI)
- 프로그래머들이 명시적인 규칙을 충분하게 많이 만들어 지식을 다루면 인간 수준의 인공 지능을 만들 수 있다고 믿었던 접근 방법
- 1950년대부터 1980년대까지 AI분야의 지배적인 패러다임
- 1980년대 전문가 시스템(expert system)의 호황으로 인기가 절정에 달함
- 체스 게임처럼 잘 정의된 논리적 문제를 푸는 데 적합하다는 것은 증명되었지만, 이미지 분류, 음성 인식, 언어 번역 같은 복잡하고 불문명한 문제를 해결하기 위한 명확한 규칙을 찾는 것은 매우 어려운 일 -> 머신 러닝
머신 러닝
- "우리가 어떤 것을 작동시키기 위해 '어떻게 명령할지 알고 있는 것'이상을 컴퓨터가 처리하는 것이 가능한가? ~" 이런 질문에서 머신 러닝은 시작된다.
- 머신 러닝 시스템은 명시적으로 프로그램되는 것이 아니라 훈련(training)된다.
- 1990년대 들어서 각광을 받고, 고성능 하드웨어와 대량의 데이터셋이 가능해지면서 AI에서 가장 인기 있고 성공적인 분야가 되었다.
- 머신 러닝은 수리 통계와 밀접한 관련이 있지만 통계와 다른 점이 몇 가지 있다.
- 머신 러닝은 통계와 달리 보통 대량의 데이터셋(예를 들어 몇 만개의 픽셀로 구성된 이미지가 수백만 개가 있는 데이터셋)을 다루기 때문에 베이지안 분석(Bayesian analysis)같은 전통적인 통계 분석 방법은 현실적으로 적용하기 힘들다.
데이터에서 표현을 학습하기
- 머신 러닝을 하기 위한 세 가지
- 입력 데이터 포인트 : 예를 들어 문제가 음성 인식이라면, 이 데이터 포인트는 사람의 대화가 녹음된 사운드 파일이다. 만약 이미지 태깅에 관한 작업이라면 데이터 포인트는 사진이 된다.
- 기대 출력 : 음성 인식 작업에서는 사람이 사운드 파일을 듣고 옮긴 글이다. 이미지 작업에서 기대하는 출력은 '강아지', '고양이'등과 같은 태그다.
- 알고리즘의 성능을 측정하는 방법 : 알고리즘의 현재 출력과 기대 출력 간의 차이를 결정하기 위해 필요하다. 측정값은 알고리즘의 작동 방식을 교정하기 위한 신호로 다시 피드백된다. 이런 수정 단계를 학습(learning)이라고 말한다.
- 머신 러닝 모델은 입력 데이터를 의미 있는 출력으로 변환한다.
- 머신 러닝과 딥러닝의 핵심 문제는 의미 있는 데이터로의 변환이다.
- 입력 데이터를 기반으로 기대 출력에 가깝게 만드는 유용한 표현을 학습하는 것
- 기술적으로 머신 러닝은 가능성 있는 공간을 사전에 정의하고 피드백 신호의 도움을 받아 입력 데이터에 대한 유용한 변환을 찾는 것이다.
딥러닝에서 '딥'이란 무엇인가?
- 딥러닝은 머신 러닝의 특정한 한 분야로서 연속된 층(layer)에서 점진적으로 의미 있는 표현을 배우는 데 강점이 있으며, 데이터로부터 표현을 학습하는 새로운 방식이다.
- 딥러닝의 딥(deep)이란 그냥 연속된 층으로 표현을 학습한다는 개념을 나타낸다.
- 데이터로부터 모델을 만드는 데 얼마나 많은 층을 사용했는지가 그 모델의 깊이가 된다.
- 이 분야에 대한 적절한 다른 이름은 층 기반 표현 학습(layered representations learning) 또는 계층적 표현 학습(hierarchical representations learning)이 될 수 있다.
- 최근의 딥러닝 모델은 표현 학습을 위해 수십, 수백 개의 연속된 층을 가지고 있다.
- 다른 머신 러닝 접근 방법은 1~2개의 데이터 표현 층을 학습하는 경향이 있다. 이런 방식을 얕은 학습(shallow learning)이라 부르기도 한다.
- 딥러닝에서는 기본 층을 겹겹이 쌓아 올려 구성한 신경망(neural network)이라는 모델을 사용해 표현 층을 학습한다.
- 신경망이란 단어는 신경 생물학의 용어다.
- 딥러닝 일부 핵심 개념이 뇌 구조를 이해하는 것에서부터 영감을 얻어 개발된 부분이 있지만, 뇌를 모델링 한 것은 아니다.
- 딥러닝은 그냥 데이터로부터 표현을 학습하는 수학 모델일 뿐이다.
그림 3개로 딥러닝의 작동 원리 이해하기
- 머신 러닝이 많은 입력과 타깃(target)의 샘플을 관찰하면서 입력(예: 이미지)을 타깃(예: '고양이'레이블)에 매핑(mapping)하는 것임을 알았다.
- 심층 신경망은 이런 입력-타깃 매핑을 간단한 데이터 변환기(층)을 많이 연결해 수행하는 것임도 알았다.
- 층에서 입력 데이터가 처리되는 상세 내용은 일련의 숫자로 이루어진 층의 가중치(weight)에 저장되어 있다.
- 기술적으로 어떤 층에서 일어나는 변환은 그 층의 가중치를 파라미터(parameter)로 가지는 함수로 표현된다.
- 학습은 주어진 입력을 정확한 타깃에 매핑하기 위해 신경망의 모든 층에 있는 가중치 값을 찾는 것을 의미한다.
입력 x가 데이터 변환의 과정을 거쳐 예측 Y'으로 나오는 과정
신경망의 손실 함수(loss function) 또는 목적 함수(objective function)는 신경망의 출력을 제어하기 위해 출력이 기대하는 것보다 얼마나 벗어났는지를 담당한다.
신경망이 얼마나 잘 예측했는지 측정하기 이해 손실 함수가 신경망의 예측과 진짜 타깃(신경망의 출력으로 기대하는 값)이 차이를 점수로 계산한다.
예측과 진짜 타깃의 차이가 손실 점수로 표현되고, 그 과정에서 손실 함수가 들어간다.
- 기본적인 딥러닝 방식은 손실 점수를 피드백 신호로 사용해 현재 샘플의 손실 점수가 감소되는 방향으로 가중치 값을 조금씩 수정하는 것이다.
- 이런 수정 과정은 딥러닝의 핵심 알고리즘인 역전파(backpropagation) 알고리즘을 구현한 옵티마이저(optimizer)가 담당한다.
손실 점수를 피드백 신호로 사용해 옵티마이저가 가중치 업데이트
훈련 반복(training loop)
- 초기에는 가중치 랜덤 값으로 할당해서 손실 점수가 매우 높겠지만, 모든 샘플을 처리하면서 가중치가 조금씩 올바른 방향으로 조정되고 손실 점수가 감소한다. 이를 훈련 반복
일반적으로 수천 개의 샘플에서 수십 번 반복하면 손실 함수를 최소화하는 가중치 값을 산출한다.
지금까지 딥러닝의 성과
- 역사가 오래되지는 않았지만 음성 인식, 이미지 인식, 분류, 웹 엔진 성능 향상, 바둑 두기 등등 많은 발전을 이루어냈다.
- 지각과 자연어 인식 외에 *형식 추론(formal reasoning)과 같은 다양한 문제를 적용하기 시작했다.
단기간의 과대 선전을 믿지 말자
- 단기간에 많이 성장할 것이라고 큰 기대를 하는 것은 위험하다.
- 사람 수준의 일반 지능(general intelligence)에 관한 이야기는 너무 심각하게 다루지 않는 것이 좋다.
- 과거에도 AI 장밋빛 전망 뒤에 이어진 실망과 회의의 사이클이 두 번이나 있었다.
- 첫 번째 심볼릭 AI 1960~1970년대
- 두 번째 1980년대 전문가 시스템(expert system)
AI에 대한 전망
- 단기간의 기대는 비현실적일지도 모르지만, 장기적인 전망은 매우 밝다.
- 의료 진단부터 디지털 비서까지 이전과는 다른 여러 중요한 문제에 딥러닝을 적용하기 시작했다.
*****************
매핑
- 입력과 타깃의 관계로 입력을 representation로 변환, 연관시키는 것을 의미합니다.
형식 추론
- 논리학에서 추론 규칙에 따라 새로운 논리식이나 규칙을 검사하는 방법
출처 :
www.yes24.com/Product/Goods/65050162?OzSrank=1
728x90
반응형
최근댓글