Please enable JavaScript.
Coggle requires JavaScript to display documents.
인공지능과 학습 (1414 양서연) - Coggle Diagram
인공지능과 학습 (1414 양서연)
기계학습과 데이터
기계학습과 문제해결
전통 프로그래밍과 기계학습
자동화 능력을 구현하기 위해 규칙을 프로그래머가 직접 만들고 규칙을 표현한 알고리즘에 대이터를 압력하면 컴뷰팅 시스템이 알고리즘에 따라 처리한 결과를 출력한다. 반며 우리는 컴퓨터가 데이터를 통해 스스로 학습하고, 기계학습 모델을 만들도록 프로그래밍해 문제를 해결할 수 있다. 입력된 데이터 속성들간의 규칙을 학습해 모델을 생성한 후 새로운 입력데이터의 결과를 차단하거나 예측한다.
-
-
기계학습을 통한 문제 해결 과정
인공지능은 입력받은 훈력데이터를 바탕으로 학습하고 규칙을 발견해 기계학습 모델을 만든다. 문제해결을 위해 사용할 데이터를 적용하면 결괏값이 출력된다. 문제 해결을 위해서는 현재상태와 목표상태가 무엇인지, 핵심요소는 무엇이니, 정확히 분석하는 정의 단계는 매우 중요하다. 해결할 가능성이 높은 문제와 낮은 문제를 구분할 수 있다.
-
-
-
문제 해결을 위한 데이터
양이 너무 적거나, 양이 충분하더라도 체형을 분석하기에적합한 데이터가 부족하거나, 한쪽으로만 치우친 편향을 띈 데이터만 사용한다면 성공적으로 정확한 모델을 생성하기 어렵고, 기계학습으로 해결할 가능성이 낮아진다.
데이터 선정 및 수집하기
데이터 수집하기
기업이나 공공 기관에서는 데이터셋을 파 일 또는 API(Application Programming Interface)* 형태로 만들어 공공 데이터로 제공하기도 한다. 이렇듯 제공된 데이터를 활용할 때, 원 저작권을 침해하지 않도록 유의해야 한다.
데이터 포털 등 인터넷에서 원하는 내용을 수집하기 어렵다면, 직접 데이터를 수 집할 수도 있다. 인터넷 검색 및 웹크롤링(web crawling)'. 설문 조사, 인터뷰 결과 정리 등 다양한 방식을 통해 데이터를 정리할 수 있으며, 피지컬 컴퓨팅 도구와 컴퓨 팅 시스템, 웨어러블 기기 등을 이용해 여러 센서를 통해 값을 수집할 수도 있다.
데이터 선정하기
-
수집 가능성
수집할 방법이 없거나 수집하기 어려운 데이 터는 피하고, 수집할 수 있는 데이터를 선정 한다.
-
-
-
데이터 전처리와 핵심 속성 추출
핵심속성 추출하기
핵심 속성 이해하기
데이터의 모든 속성은 기계학습에 어떤 영향을 미치는지 확인해야 한다. 문제 해 결에 필요한 속성만 선택하여 사용해야 기계학습의 성능을 높일 수 있다. 이때 문제 해결에 필요한 속성을 핵심 속성이라고 한다. 만약 핵심 속성이 부족하다면, 추가 자 료를 수집해야 한다.
히트맵으로 핵심 속성 추출하기
히트맵(heatmap)은 상관관계를 시각화한 그래프로 색을 이용해 배열을 나타낸다. 속성 간의 상관관계를 분석한 후 그 값을 히트맵으로 나타내면 해결하고자 하는 문 제와 관련 깊은 핵심 속성들을 상관계수(r)로 찾아내기가 쉬워진다. 세계 행복 보고 서 데이터에서 행복한 나라의 조건을 예측하기 위해, 필요한 핵심 속성을 히트맵으 로 시각화하여 찾을 수 있다
데이터 전처리 하기
이상치 처리하기
이상치란 평균적인 데이터 범위보다 지나치게 높거나 낮은 수치의 값을 말한다. 이상치가 데이터에 존재하면 분석 결과가 왜곡될 수 있으므로, 이를 적절하게 처리해야 한다.
-
결측치 처리하기
결측치란 데이터의 값이 비어 있거나 누락된 상태를 뜻한다. 결측치가 있으면 데 이터를 분석하는 과정에서 에러가 발생하거나 잘못된 결과가 산출되어 기계학습 모 델 성능에 부정적인 영향을 미칠 수 있다.
결측치를 처리하는 방법에는 결측치가 있는 행이나 열 을 삭제하는 방법과 평균, 중앙값, 최빈값 등의 대푯값으로 결측치를 대체하는 방법 이 있다.
기계학습의 유형과 알고리즘
기계학습의 유형
-
-
강화학습
강화학습은 판단할 때마다 외부 환경에서 보상을 제공하고, 이 보상의 값을 최대 화하기 위한 방향으로 학습을 진행한다.
강화학습은 사전 에 환경에 대한 명확한 정답이 없는 상황에서 학습하고 적응하는 과정을 따르기 때 문에 지능 에이전트의 학습 과정에 유용하게 활용된다. 또한 소비 패턴 분석을 통한 마케팅 전략 수립 등의 최적화 문제에 주로 활용되고 있다.
기계학습 알고리즘 이해
회귀(=예측)
회귀는 어떤 현상에 영향을 미칠 수 있는 여러 요인과 특정 결과 사이의 관 계를 함수로 표현해 연속적인 수치를 예측하는 기계학습 방법이다. 즉, 훈련 데이터로 학습한 모델을 사용하여 새로운 입력값에 대한 수치 결과를 예측하 는 것이다. 회귀 모델을 만들 때 사용하는 대표적인 알고리즘으로는 선형 회귀(linear re-gression) 알고리즘이 있다.
분류
분류는 미리 정의된 여러 범주로 데이터를 구분하기 위한 경계를 학습하여 새로운 입력이 들어오면 여러 범주 중 하나를 선택하는 과정으로, 지도학습의 한 형태다. 즉 데이터가 어떤 클래스(class)에 속하는지를 찾는 것이다. 분류 모델을 만들 때 주로 사용하는 대표적인 알고리즘으로는 로지스틱 회귀,
k-최근접 이웃(k-NN: k-Nearest Neighbor) 알고리즘이 있다
군집
군집은 비지도학습 알고리즘의 일종으로, 데이터가 어떻게 그룹화되어야 하는지 미리 정의하지 않고 컴퓨터가 데이터 패턴을 스스로 찾아내는 방식이다.
군집은 학습 데이터가 정답 데이터를 가지고 있지 않은 경우이므로 입력된 데이터 의 특성을 분석하여 서로 유사한 특성을 가진 데이터끼리 그룹화한다. 군집 모델을 만들 때 사용하는 대표적인 군집 알고리즘에는 k-평균(k-means) 알고리즘이 있다.
딥러닝 이해와 활용
인공지능과 딥러닝
인공신경망과 퍼셉트론
인공신경망(ANN: Artificial Neural Network)은 인간의 신경망 구조를 모방하여 컴퓨터로 처리할 수 있도록 구현한 것이다. 퍼셉트론(perceptron)은 이러한 인공신 경망을 실제로 구현한 연산 장치로서, 여러 개의 입력값을 처리하여 하나의 결값 인 0 또는 1을 출력하는 인공신경망의 가장 작은 단위이다. 특히, 입력층 1개와 출 력층 1개로 이루어진 구조를 단층 퍼셉트론이라고 한다.
딥러닝의 개념
. 딥러닝(deep learning)은 여러 개의 은닉층을 포함하여 만든 심층 신경망(DNN: Deep Neural Network)을 통해 학습이 이루어지는 기계학습의 한 방법이다. 층이 ’깊다(deep)‘는 의미의 심층 신경망은 다수의 은닉층을 통해 복잡하고 많은 데이터를 정교하게 처리할 수 있다
딥러닝의 학습원리
딥러닝은 입력받은 데이터를 학습하기 위해 어떠한 원리로 동작할까? 딥러닝에서
'학습한다'라는 것은 가중치와 편향을 찾아가는 과정을 의미하며, 학습의 최종 목표 는 최적의 가중치와 편향을 찾는 것이
딥러닝 활용분야
컵퓨터 비전
컴퓨터 비전은 사람이 눈으로 사물을 보고 인식하는 것처럼 컴퓨터의 활용을 통해 정지 영상이나 동영상을 분석하여 의미 있는 정보를 추출하는 기술이다. 컴퓨터 비전 분야의 대표적인 딥러닝 알고리즘으 로는 합성곱 신경망(CNN: Convolutional Neural Network)이 있다. 합성곱 신경망 은 동물의 시각 인지 과정을 모방한 인공신경망 모형 중 하나로, 사물의 탐지 등 이 미지 처리에 높은 성능을 보여 준다.
음성인식과 자연어 처리
음성 인식과 자연어 처리는 사람이 사용하는 언어를 컴퓨터가 처리하기 위한 기술 을 연구하는 분야다. 음성은 인간과 인공지능과의 상호 작용에 있어 가장 보편적이 고 편리한 정보 전달 수단이기 때문에 음성 인식 기술은 매우 중요한 분야로 연구가 활발히 이루어지고 있다. 자연어 처리 기술, 음성 인식을 위한 잡음 제거 및 소리 보정 기술, 음성을 텍스트로 변환하는 기술(STT: Speech-To-Text) 등이 포함된다.
손실함수란 훈련 데이터를 잘 학습했는지 파악하는 함수로, 예측값과 실젯값(정 답)과의 차이를 구하는 함수다. 예측값과 실젯값이 일치할수록 손실함수의 값은 작 아지므로, 손실함수의 값이 작을수록 학습이 잘된 좋은 모델이라 할 수 있다
최적화(optimization)란 손실함수의 값이 최소가 되도록 가중치와 편향을 갱신하 는 과정을 의미하며, 오차 역전파(back-propagation)"를 통해 이루어진다. 가장 대 표적인 최적화 방법으로는 경사 하강법(gradient descent)이 있다.
경사 하강법은 무작위로 설정된 초기 가중치의 값을 수정하며 아래 방향으로 일정 거리인 학습률(learning rate)* 만큼씩 이동한다. 기울기가 0이 될 때까지 학습을 거 듭하여 가중치와 편향을 수정하는 것이다. 그런데 경사 하강법은 학습할 때마다 전 체 데이터의 기울기를 구하여 속도가 느리고 계산량이 많다는 단점이 있다.