인공지능에 대해서 개괄적인 개념이나 관련 용어 정리하는 글
목차
인공지능
인공지능(Aritficial Intelligence)
인간의 학습능력, 추론능력, 지각능력을 인공적으로 구현한 컴퓨터 프로그램 또는 이를 포함한 컴퓨터 시스
◆ 강한 인공지능/약한 인공지능
1. 보편적인 지능을 구현하는 것
2. 특정상황, 전문적인 영역에서 문제를 해결하는 능력
◆ 튜링 검사(Turing Test)
인간의 것과 동등하거나 구별할 수 없는 지능적인 행동을 보여주는 기계의 능력에 대한 테스트
1. 컴퓨터는 인간 판별자와 자연어로 대화하고 의사 소통에 지장이 없어야 한다.
2. 주어지는 새로운 상황에 대응할 수 있도록 지식을 표현하거나 질문에 답하고 결론을 도출하기 위한 자동추론을 수행하여야 한다.
3. 물체를 인식하기 위한 컴퓨터 시각 능력과 물체를 조작하고 이동하기 위한 로봇 공학 능력을 보유하여야 한다.
◆ 인공지능, 기계학습, 딥러닝의 관계
인공지능 : 사람이 구분할 수 없을 정도의 수준
머신러닝 : 머신러닝은 인공지능(AI)의 하위 집합입니다. 학습과 개선을 위해 명시적으로 컴퓨터를 프로그래밍하는 대신, 컴퓨터가 데이터를 통해 학습하고 경험을 통해 개선하도록 훈련하는 데 중점
딥러닝 : 컴퓨터가 인간처럼 판단하고 학습할 수 있도록 하고 이를 통해 사물이나 데이터를 군집화하거나 분류하는 데 사용하는 기술
◆ 인공 신경망
Hidden층이 주가되면서 인공신경망이 구성되는 방향.
머신러닝의 기초 개념
◆ 머신러닝
데이터로부터 사람 수준의 간단한 지능을 구현하는 방법
→ 데이터에 사람이 생각하는 정답을 매겨서 계산하고 사람의 생각과 차이가 나는 오류를 줄여가는 방법으로 수정하고, 이러한 과정을 반복함으로써 사람의 생각과 유사하게 만드는 방법
즉 input 데이터와 output 데이터를 집어넣고 논리를 빼오는 과정.
장점
- 사전 지식이나 지식을 표현할 필요가 없다.
- 알고리즘만 적합하다면 사람보다 뛰어남
- 고도의 수학적 지식이나 프로그래밍 능력을 요구하지 않는다.
단점
- 충분한 학습데이터가 확보되지 않은 경우 확보하는데 많은 시간과 비용이 든다.
- 학습데이터의 범위를 벗어나는 패턴에 대해서는 올바른 규칙을 도출해내지 못한다. (overfitting)
- 결과로 규칙을 제공하기 때문에 규칙을 도출하기 까지의 과정을 제시하지 않는다.
◆ 손실함수
실제 값과 예측 값의 차이를 수치화해주는 함수
이 함수 값을 최소화하는 과정이 머신러닝이라고 이해
- 회귀 모델 : 평균제곱오차(MSE)
- 분류 모델 : 크로스 엔트로피
◆ 학습 데이터
머신러닝 모델이 학습할 데이터
- 훈련 데이터 세트(Training Data Set) : 모델을 적합하기 위해서 사용하는 데이터 샘플
- 검증 데이터 세트(Validation Data Set) : 모델의 하이퍼 파라메터를 미세 조정할 때 사용 (간접적인 영향)
- 시험 데이터 세트(Test Data Set) : 최종 모델에 대해 바이어스가 없는 평가를 제공
◆ 머신러닝의 종류
- 지도 학습
- 정답을 알려주면서 학습 시키는 것으로 분류(classification)와 회귀(regression)가 있음
- 비지도 학습
- 정답을 따로 알려주지 않고(label 없음) 비슷한 데이터들을 군집화하는 것
- 강화학습
- 분류나 정답이 따로 없고 자신이 한 행동에 대한 보상(reward)을 받으며 학습하는 것
ⓐ. 지도 학습의 특징
- 명시적인 정답이 주어진 상황에서 기계를 학습 시키기 위해 데이터와 레이블을 사용
- 사람이 목표 값에 개입하므로 정확도가 높으나 시간이 오래 걸리고 필요 데이터 량이 많음
지도학습 알고리즘
구 분 | 알고리즘 | 설 명 |
인공신경망
기반 |
CNN |
– 이미지 기반 특징 추출, 차원 축소를 통한 인식, 예측
– Convolution / Pooling Layer, Feature Map, Sub Sampling |
RNN |
– 현재와 과거 데이터 고려 순차 데이터 처리 순환 신경망
– Input / Output / Hidden Layer, Time Unfolding, BPTT, LSTM |
|
벡터 기반
|
SVM |
– 데이터를 두 클래스 분류 위해 Margin 최대 결정직선 탐색
– Support Vector, Margin, 초평면, 결정 직선, 커널 함수 |
Regression |
– 변수 집합에서 독립/종속변수 간 상관관계를 함수로 표현
– 독립/종속 변수, 회귀 계수, 최소 자승법, 회귀 방정식 |
ⓑ. 비지도 학습의 특징
- 비 정제 데이터를 입력하여 훈련데이터 없이 데이터의 특징 요약과 군집 (Clustering) 수행
- 목표 값을 정해주지 않아도 되고 사전 학습이 필요 없으므로 속도가 빠름
비지도학습 알고리즘
구 분 | 알고리즘 | 설 명 |
군집화
|
거리기반 군집화 |
– 중심 값과의 최소거리 기반 군집 형성
– 군집 수 선정 → 좌표 계산 → 중심 값 이동(반복) |
밀도기반 군집화 |
– 군집을 이루는 벡터 밀도 기반 군집 형성
– 군집 벡터 수 선정 → 반경 내 군집 → 중심벡터 변경(반복) |
|
패턴인식
|
전처리/ 특징추출 |
– 표본화, 정규화, 노이즈 제거
– 주성분 분석, 데이터 마이닝 |
모델선택/ 인식 |
– Bagging/Boosting, 앙상블 학습
– 혼동 행렬, ROC Curve, AUC, FP Rate |
ⓒ. 강화 학습
- 어떤 환경 안에서 정의된 에이전트가 현재의 상태를 인식하여, 선택 가능한 행동들 중 보상을 최대화하는 행동 혹은 행동 순서를 선택하는 방법
- 환경과의 상호 작용의 결과로서 학습을 하거나 경우의 수가 너무 많아 옳고 그름에 대해 사전에 명확하게 기술하기 어려운 환경에 적합한 학습방법
ⓒ-1. 강화 학습의 특징
- 학습 데이터 대신 보상(reward) 함수를 활용
- 학습데이터로부터 보상 받는 게 아니라 환경으로부터 스스로 지식을 습득
ⓒ-2 강화 학습 중요성
- 비지도 및 지도 머신러닝과 다르게 강화학습은 정적 데이터셋에 의존하는 것이 아니라 역동적인 환경에서 동작하며 수집된 경험으로부터 학습
- 데이터 점 또는 경험은 훈련하는 동안 환경과 소프트웨어 에이전트 간의 시행착오 상호작용을 통해 수집
- 강화학습의 이런 점은 지도 및 비지도 머신러닝에서는 필요한 훈련 전 데이터 수집, 전처리 및 레이블 지정에 대한 필요성을 해소하기 때문에 중요
- 실질적으로 적절한 인센티브가 주어지면 강화학습 모델은 인간의 개입 없이 학습 행동을 자체적으로 시작할 수 있다는 것을 의미
활용 분야 사례
- 고급제어
- 자율주행
- 로봇공학
- 스케줄링
- 보정
◆ 기타 학습 방법
ⓐ. 준지도 학습
- 목표 값(Label)이 표시된 데이터와 표시되지 않은 데이터를 모두 훈련에 사용하는 학습 방법
특징
- 대개의 경우 훈련 데이터는 목표 값이 포함된 데이터는 적고 포함되지 않은 데이터는 많음.
- 준 지도 학습은 목표 값이 충분히 표시된 훈련 데이터를 사용하는 지도학습과 목표 값이 표시되지 않은 훈련 데이터를 사용하는 자율학습 사이에 위치
ⓑ. 자기 지도 학습
- 데이터 자체에서 스스로 레이블을 생성하여 학습에 이용하는 방법, 다량의 Label이 없는 Raw Data로부터 데이터 부분들의 관계를 통해 Label을 자동으로 생성하여 지도학습에 이용하는 비지도 학습 기법
ⓒ. 다중 인스턴스 학습
- 개별적 인스턴스를 학습 단위로 삼지 않고 다수의 인스턴스로 구성된 바지를 학습 단위로 설정하는 방법
- 학습시 인 스턴스 집합에서 “도움이 되는” 인스턴스만을 찾아 학습 을 수행하므로 관련 없는 또는 잘못 태깅된 인스턴스들 로부터의 성능 하락을 최소화할 수 있다.
ⓓ. 전이 학습
- 특정 분야에서 학습된 신경망의 일부 능력을 유사하거나 전혀 새로운 분야에서 사용되는 신경망의 학습에 이용
특징
- 학습 데이터의 수가 적을때 도 효과적이며, 학습 속도도 빠름.
- 전이학습 없이 학습하는 것보다 훨씬 높은 정확도를 제공
ⓔ. 앙상블 학습
- 앙상블이란 단어는 조화를 의미
→ 머신러닝에서 여러 개의 모델을 조화롭게 학습시켜 하나의 더 나은 모델을 만드는 방법
→ 여러 개의 결정 트리(Decision Tree)를 결합하여 하나의 결정 트리보다 더 좋은 성능을 내는 기계 학습 기법
Bagging : 하나의 모델을 사용하지만 학습 데이터셋을 랜덤하게 추출하여 모델을 각기 다르게 학습시키는 방법
- 목적
- 모델의 안정성과 정확성을 향상시키기 위함
- 하나의 모델만 봤을 때는 샘플링된 적은 데이터에 대해 예측력이 높아짐
- 여러 모델을 보면 각 모델 별 샘플링 데이터가 다르므로 예측값의 차이가 큼.
Boosting : 성능이 약한 학습기(Weak learner)를 여러 개 연결하여 강한 학습기(Strong learner)를 만드는 방법이며, 이전에 학습된 모델을 보완해가면서 더 나은 모델로 만드는 과정
- 이전 모델 오차의 크기에 비례해서 가중치를 부여
→ 오차를 잘 보완하는 방향으로 모델이 학
데이터 관련 용어 정리
◆ 정형 데이터
- 테이블과 같이 고정된 컬럼에 저장되는 데이터와 파일, 그리고 행과 열에 의해 데이터의 속성이 구별되는 스프레드시트 형태의 데이터
종류
- 이산형 변수 (Discrete Variable)
- 명목형 (범주형, Categorical): 여러 Class들 중 하나의 이름에 데이터를 분류할 수 있을 때 사용
- 예를 들어 사과, 배, 바나나 구분
- 순서형: 데이터가 속하는 Class들에 순서가 있는 경우 순서형 (ordinal) 데이터라고 한다.
- 예를 들어 상, 중, 하 구분
- 명목형 (범주형, Categorical): 여러 Class들 중 하나의 이름에 데이터를 분류할 수 있을 때 사용
- 연속형 변수 (Continuous Variable)
- 실수 형태의 연속적인 값을 가지고 있는 변수를 연속형 변수라 한다.
- 예를 들어 키나 몸무게와 같은 변수
- 실수 형태의 연속적인 값을 가지고 있는 변수를 연속형 변수라 한다.
◆ 비정형 데이터
- 데이터 변수가 사전에 구조적으로 정의된 의미를 갖지 않는 데이터
- 예를 들어 이미지는 각각의 픽셀값들이 모여서 만든 사물 형태로 구분이 된다.
방법론적인 기초 개념
◆ 휴리스틱이란?
정의
- 불충분한 시간이나 정보로 인하여 합리적인 판단을 할 수 없거나, 체계적이면서 합리적인 판단이 굳이 필요하지 않은 상황에서 사람들이 빠르게 사용할 수 있게 보다 용이하게 구성된 간편추론의 방법
활용법
- 복잡한 문제의 경우 초기에는 휴리스틱을 이용하여 과제를 단순화시킨 후 후기에 규범적(normative)인 의사결정 규칙을 사용하고, 단순한 과업 상황에서는 처음부터 최종 의사결정에 이르기까지 규범적 규칙을 이용하여 해결
유형
- 기준점과 조정 휴리스틱
- 비자가 자신이 알고 있는 수치로 임의의 기준선을 설정한 후, 적절하다고 생각하는 것에 맞게 의사결정을 내리는 방식
- 가용성 휴리스틱
- 사건의 가능성을 기억의 가용성에 근거해 추정하는 방법 즉, 기억에서 잘 떠오르는 대상에 대하여 상대적으로 높은 평가를 내리는 현상
- 대표성 휴리스틱
- 어떤 집합에 속하는 임의의 한 특징이 그 집합의 특성을 대표한다고 간주해 빈도와 확률을 판단하는 방법
- 감정 휴리스틱
- 어떤 사건이나 상황에 대해 판단을 할 경우 경험으로 형성된 감정에 따라 평가를 다르게 하는 것
◆ 메타 휴리스틱
정의
- 특정 휴리스틱 구축을 위한 일반적인 구조와 전략을 안내하는 범용 알고리즘 프레임워크(framework)
특징
- 근사해법으로 전역 최적해나 어떤 수준 이상의 근사 최적 해의 탐색을 보장하지 못하지만 메타 휴리스틱이 여러 분야에서 복잡하고 어려운 문제를 해결하는 데 성공적인 결과
적용 분야
- 조합최적화, 연속최적화, 신경망 학습, 패턴인식, 데이터 마이닝, 인공지능, 화상처리, 공학 구조 최적화 등의 공학 분야 뿐만 아니라, 자연과학과 사회과학 등이 포함
◆ 전문가 시스템
정의
- 생성시스템의 하나로서, 인공지능 기술의 응용분야 중에서 가장 활발하게 응용되고 있는 분야이다. 즉 인간이 특정분야에 대하여 가지고 있는 전문적인 지식을 정리하고 표현하여 컴퓨터에 기억시킴으로써, 일반인도 전문지식을 이용할 수 있도록 하는 시스템
특징
- 영구적 시스템 : 인간 전문가는 유한하지만, 전문가 시스템은 무한함
- 추론 시스템 : 기존의 지식 사실을 통해 새로운 사실을 추론 가능
구성요소
구성요소 | 내 용 | 비 고 |
설명모듈 | 전문가시스템이 내는 결론에 대해 설명 |
기존 시스템과의 핵심 차별점
|
추론엔진 | 지식기반으로 정보를 추론하여 전달 |
정방향 추론, 역방향 추론
|
지식획득 시스템 |
전문가와의 인터뷰나 문헌자료 등을 수집하고, 정 리 |
자동지식습득으로 변화
|
지식베이스 | 도메인과 관련된 문제, 절차 및 고유 데이터를 해 결하기 위한 규칙으로 구성 |
if-then-else 규칙 |
사용자 인터페이스 |
전문가가 아닌 사용자가 사용하기 위한 I/F |
시스템과 상호 작용하여 해결책 모색
가능 |
장점
- 자연스런 지식 표현
- 통일된 구조
- 지식과 과정의 분리
- 불완전하고 불확실한 지식 다루기
단점
- 규칙간의 불분명한 관계
- 비효율적인 탐색 전략 (추론 엔진의 규칙 탐색)
- 학습할 수 없다.(경험을 통한 학습 불가)
◆ 사례 기반 추론 (Case Based Reasoning - CBR)
- 과거에 있었던 사례(케이스)들의 결과를 바탕으로 새로운 사례의 결과를 예측하는 기법
추론 방법
- 사례 표현
- 도메인에 맞는 사례를 표현하는 단계.
- 즉 Case를 어떠한 attribute로 표현하냐에 따라서 시스템의 성능이 좌우
- 사례 검색
- 현재 Case와 사례 DB에 저장되어 있는 history Case와의 유사도 함수에 따른 비교를 통해 유사한 사례를 검색하는 단계
- 사례 적합화
- 과거에 일어난 문제와 완전히 동일한 문제가 아닌 이상 문제를 해결하는 데에는 정답의 변화가 필요. CBR 시스템에서는 도메인에 따라 시스템에서 정의한 에 따라 최적화가 필요
- 사례 평가
- CBR 시스템이 제공한 정답의 평가를 하는 단계
- 사례 저장
- 평가 결과에 따라 새로운 Case로의 저장을 하는 단계. 저장을 통해 진화가 가능
장점
- 인간의 문제 해결 방식과 유사하기 때문에 그 결과를 이해하기 쉬움
- 새로운 사례를 단순히 저장하는 것만으로도 추가적인 작업 없이 학습 진행
- 사례기반추론 모델은 구조가 단단하고 이해가 용이
- 수치형 번수와 범주형 변수가 모두 사용 가능
- 복잡한 문제를 비교적 적은 정보로 의사결정, 문제 해결 가능
단점
- 전통적인 사례기반추론의 경우, 타 인공지능 기법또는 데이터 마이닝 기법에 비해 정확도가 상대적으로 크게 떨어짐
- 사례를 저장하기 위한 공간이 많이 필요
- 일반화를 위한 학습과정과 해결이 동시에 일어나기때문에 많은 시간이 소요
- 사례를 설명하고 있는 속성이 적절하지 못한 경우 성능이 크게 저하
이미지 분류, 음성 인식
◆ 이미지 분류
정의
- 이미지가 주어졌을 때 해당 이미지가 속하는 클래스를 찾아주는 것
위와 같이 구성되어 있는 이미지 데이터를 인공신경망 기반으로 분류해나가는 과정.
◆ 음성 인식
정의
- 사람이 말하는 음성 언어를 컴퓨터가 해석해 그 내용을 문자 데이터로 전환하는 처리하는 방법, Speech to Text
절차
- 전처리 : 변환 및 특징 추출 청각 시스템에서와 같이 음성 신호로부터 시간 및 주파수 영역의 특징을 추출해 내는 과정
- 패턴 인식 : 특징으로부터 결과값 산출 음성 신호의 전처리를 통해 얻어낸 특징을 바탕으로, 문장을 구성하는데 필요한 원소인 음소, 음절, 단어를 인식해내는 역할
- 후처리 : 언어처리(문장복원) 패턴 인식후 결과인 음소, 음절, 단어를 재구성해서 문장을 복원
알고리즘
- STT의 성능은 DB 크기와 품질에 비례하여 향상. 상용 서비스에 적용되는 음향 모델의 대부분 확률 통계 방식인 HMM(Hidden Markov Model) 기반으로 이루어졌으며, 2010년대 들어서면서 딥러닝을 결합한 HMM/DNN 방식으로 단어 인식 오류를 개선하여 20%의 성능 향상
자연어 처리, 컴퓨터 비전
◆ 자연어 처리
정의
- 사람들이 사용하는 자연어로 구성된 텍스트로부터 컴퓨터가 의미를 이해하고 텍스트에 포함된 정보를 추출 및 분류하는 것
- 더 나아가 직접 텍스트를 자연어 형태로 생성하는 기술을 포함
종류
- 워드 클라우드
- 텍스트를 분석하여 사람들의 관심사, 키워드, 개념 등을 파악할 수 있도록 빈도수를 단순히 카운트하여 시각화
- 토픽 모델링
- 단어 또는 말뭉치(corpus)로부터 숨겨진 주제를 찾고 키워드 별로 주제를 묶어 주는 비지도 학습 및 확률 알고리즘
임베이딩
정의
- 자연어 처리를 위해서는 텍스트를 컴퓨터가 이해할 수 있도록 단어를 0과 1의 수치로 표현.
- 벡터화(vectorization) 또는 임베딩(embedding)
통계적 기반
- TDM(Term-Document Matrix)
- 단어-문서행렬이라고 부르며 문서에서 등장하는 단어들의 빈도를 행렬로 표현
- TF-IDF(Term Frequency-Inverse Document Frequency)
- 특정 단어가 얼마나 중요한 역할을 하는 것인지를 나타내는 통계적 수치
- One-hot Encoding
- 문자를 숫자로 표현하는 가장 기본적인 방법으로 해당 단어의 컬럼 위치에만 ‘1’로 구분
◆ 컴퓨터 비전
정의
- 컴퓨터를 이용하여 정지된 영상 또는 동영상으로 부터 의미 있는 정보를 추출하는 기술
기술환경
- Open CV
- Open Source Computer Vision library의 약자로 컴퓨터 비전을 지원하는 라이브러리
- 기계학습을 비롯한 약 2,500여 개의 알고리즘, 수학 연산 비디오 캡처, 이미지 처리를 수행
- Auto Labeling
- 영상 학습 데이터를 구축할 때 자동화, 관리 기능을 지원하는 도구
마무리
마무리
토픽
댓글