dev.jaieve 공부기록

[머신러닝/ML] 인공지능, 머신러닝, 딥러닝, 신경망 개념 정리 본문

Bigdata/머신러닝(ML) 알고리즘

[머신러닝/ML] 인공지능, 머신러닝, 딥러닝, 신경망 개념 정리

제이브 2021. 7. 18. 15:50

인공지능

지능적인 기계, 특히 지능적인 컴퓨터 프로그램을 만드는 과학기술
1956년 스탠퍼드대학교 컴퓨터 과학자 "존 매카시"

동적 컴퓨팅 환경에 내장되어 있는 알고리즘을 생성하고 적용하여 인간의 지능을 모방하는 기초 지능이다.

간단히 말해서 AI는 인간처럼 사고하고 행동하는 컴퓨터 기술

인공지능을 완성하기 위해서는 3가지의 핵심 요소가 필요하다

  • 계산 시스템
  • 데이터와 데이터 관리
  • 고급 AI알고리즘(코드)

인공지능이 중요한 이유

오늘날 인간과 기계에 의해 생성되는 데이터의 양은 방대하다.(빅데이터) 이를 해석해서 의사결정을 내리는 것은 인간의 뇌로 할 수 있는 활동이 아니다. 컴퓨터는 모든 경우의수를 계산하여 최상의 결정을 내리는데에 매우 효율적일 것이다.

인공지능과 머신러닝, 딥러닝은 앞으로 비즈니스 의사결정의 기반이 될 기술이다.

인공지능이 적용된 실제 사례

사기 탐지

금융 서비스 업계에서는 두 가지 방법으로 인공 지능을 사용합니다. 신용 대출 신청의 초기 점수를 산정할 때 AI를 사용하여 신용도를 파악합니다. 보다 발전된 AI 엔진은 사기성 결제 카드 거래를 실시간으로 모니터링하고 탐지하는 데 사용

가상 고객 지원

콜 센터에서는 VCA를 사용하여 인간과 상호 작용하지 않고 고객의 문의를 예측하고 이에 응답

음성 인식은 시뮬레이션된 인간 대화와 함께 고객 서비스 문의의 첫 번째 상호 작용 지점으로 사용

상위 수준 문의는 직원에게 전달

머신러닝

머신러닝은 인공지능(AI)의 하위 집합이다. 머신러닝안에는 딥러닝, 신경망이 구성요소로 자리잡고 있다.

AI가 의사결정과 예측을 수행하기 위해 데이터를 처리할 때, 머신러닝 알고리즘은 데이터를 처리하고, 추가 프로그램이 없이 데이터를 학습하는 역할을 한다고 이해할 수 있다. 

머신러닝은 여러 머신러닝 모델로 구성되어 있다. 여러 모델들은 데이터의 특성과 원하는 결과에 따라 지도, 비지도, 준지도, 강화 등 네 가지 학습모델 중 하나를 적용할 수 있다.

각 모델내에 포함된 여러 알고리즘은 분석하는 사람이 가진 데이터세트와 원하는 결과에 따라 하나만 사용될 수도 있고, 정확도의 극대화를 위해 여러 알고리즘을 결합할 수도 있다.

지도학습(Supervisored Learning)

지도 학습은 말 그대로 정답이 있는 데이터 를 활용해 데이터를 학습시키는 것입니다. 입력 값(X data)이 주어지면 입력값에 대한 Label(Y data)를 주어 학습시키며 대표적으로 분류, 회귀 문제가 있다.

비지도학습(Unsupervisored Learning)

지도 학습과는 달리 정답 라벨이 없는 데이터를 비슷한 특징끼리 군집화 하여 새로운 데이터에 대한 결과를 예측하는 방법을 비지도학습 이라고 한다.

라벨링이 되어 있지 않은 데이터로부터 패턴이나 형태를 찾아야 하기 때문에 지도학습보다는 조금 더 난이도가 있는 학습모델이다.

실제로 지도 학습에서 적절한 피처를 찾아내기 위한 전처리 방법으로 비지도학습을 이용하기도 한다.

대표적으로 클러스터링(Clustering, 군집)이 있고, Dimentionality Reduction, Hidden Markov Model 등이 있다. 최근 각광받고 있는 GAN(generative Adversarial Network)모델도 비지도 학습에 해당한다.

추후 포스팅에서 GAN에 대해 정리할 예정이다.

준지도 학습(semi-supervised Learning)

목표값이 표시된 데이터와 표시되지 않은 데이터를 모두 훈련에 사용하는 것을 말한다.

대개의 경우 이러한 방법에 사용되는 훈련 데이터는 목표값이 표시된 데이터가 적고 표시되지 않은 데이터를 많이 갖고 있다.

강화 학습(Reinforcment Learning, RL)

지도학습이 배움을 통해 실력을 키우는 것이라면, 강화학습은 일단 해보면서 경험을 통해서 실력을 키워가는 것 으로 비유할 수 있다. 게임으로 비유하면 다음과 같이 용어를 전환해볼 수 있다.

  • 게임 →  환경(environment)
  • 게이머  → 에이전트(agent)
  • 게임화면  → 상태(state)
  • 게이머의 조작  → 행동(action)
  • 상과 벌  → 보상(reward)
  • 게이머의 판단력 →  정책(policy)

강화학습에서는 더 많은 보상을 받을 수 있는 정책을 만드는 것이 핵심이다.

강화학습은 이전부터 존재했던 학습법이지만, 실생활에 적용할만큼 좋은 결과를 내지는 못했다.

하지만 뒤에서 언급할 딥러닝의 등장으로 강화학습에 신경망을 적용하면서 바둑으로 사람을 이긴 알파고나 자동차의 자율주행과 같은 복잡한 문제에 적용하여 소프트웨어를 만들 수 있게 되었다.

강화학습에 딥러닝을 성공적으로 적용한 대표적 알고리즘으로는 DQNA3C가 있다.

딥러닝(Deep Learning)

딥러닝(Deep Learning)이란 여러 층을 가진 인공신경망(Artificial Neural Network, ANN)을 사용하여 머신러닝 학습을 수행하는 것을 뜻하기 때문에 머신러닝의 한 종류로 볼 수 있다.

기존의 머신러닝을 학습시키기 위해서는 사람이 직접 데이터의 여러 특징 중 어떤 것을 추출할지 분석하고 판단해야 했다. 하지만 딥러닝에서는 기계가 자동으로 학습하려는 데이터에서 특징을 추출하여 학습한다. 기계의 자가 학습 여부가 바로 딥러닝과 머신러닝의 가장 큰 차이점이다.

따라서 딥러닝이란 기계가 자동으로 대규모 데이터에서 중요한 패턴 및 규칙을 학습하고, 이를 토대로 의사결정이나 예측 등을 수행하는 기술로 정의내릴 수 있다.

딥러닝의 기본 개념, 인공신경망(Artificial Neural Network, ANN)

신경망이란 인간의 뇌가 가지는 생물학적 특성 중 뉴런의 연결 구조를 부르는 단어로, 이런 신경망을 본떠 만든 네트워크 구조를 인공신경망(Artificial Neural Network, ANN)이라 부른다.

인간의 뇌에는 약 1,000억 개의 수많은 뉴런(신경세포)가 존재하며, 하나의 뉴런의 역할은 다른 뉴런에게 신호를 전달하는 것이다. 인간의 뇌는 이런 수많은 뉴런이 모여 만든 신호의 흐름을 기반으로 다양한 사고를 하고, 이것을 컴퓨터를 구현하도록 노력하여 만든 것이 인공신경망이다.

인공지능 분야에서 신경망이란 보통 인공신경망을 지칭하며, 따라서 인공신경망을 따로 구분하지 않고 신경망이라고 부르기도 합니다.

인공신경망은 여러 뉴런이 서로 연결되어 있는 구조의 네트워크이며, 입력층(input layer)를 통해 학습하고자 하는 데이터를 입력받게 된다.

이렇게 입력된 데이터들은 여러 단계의 은닉층(hidden layer)을 지나면서 처리가 이루어져 출력층(output layer)을 통해 최종 결과가 출력된다.

이러한 3개 이상 중첩한 구조의 신경망을 깊은 신경망(Deep Neural Network, DNN)이라고 부르며, 이를 활용한 머신러닝 학습을 특별히 딥러닝이라고 부른다.


Reference

  1. https://ko.wikipedia.org/wiki/지도_학습
  2. https://ko.wikipedia.org/wiki/준_지도_학습
  3. https://www.sap.com/korea/insights/what-is-machine-learning.html
  4. https://ebbnflow.tistory.com/165
  5. https://opentutorials.org/course/4548/28949
  6. http://www.tcpschool.com/deep2018/deep2018_deeplearning_intro
반응형