머신러닝 기초

김기범·2022년 10월 3일
0

Deep Learning

목록 보기
1/3

Machine Learning

Data

데이터: 현실에서 단순히 관찰을 하거나 측정하여 수집한 사실이나 값으로 자료라고도 한다
정형 데이터: 고정된 필드에 저장된 데이터 (엑셀, 스프레드시트 등)
반정형 데이터: 메타데이터 및 스키마를 포함하는 데이터 (XML, HTML)

  • 메타 데이터: 데이터의 데이터로 사진 촬영 시 함계 저장되는 노출, 해상도 값 등의 데이터
  • 스카마: 데이터베이스의 구조와 제약조건에 관해 전반적인 명세를 기술한 것
    비정형 데이터: 고정된 필드에 저장되어 있지않은 데이터 (영상, 이미지, 음원, 텍스트, 문서)

정보처리: 데이터를 상황에 맞게 분석하거나 해석하여 데이터 간의 의미 관계를 파악하는 것

Big Data

빅데이터: 대량의 정형, 반정형, 비정형 데이터들의 집합이며, 이 데이터로부터 가치를 추출하고 결과를 분석하는 기술

  • 데이터 생성량과 생성 주기가 짧음
  • 수집 저장 분석 등이 어려움

Framework

프레임워크 Framework: 특정 프로그램을 개발하기 위한 여러요소들과 매뉴얼인 규칙을 제공하는 프로그램 (tensorflow, pytorch, keras)

Machine Learing

머신러닝: 시스템을 학습하는 동안의 감독 형태나 정보량에 따라 분류할 수 있음

  • 지도학습: 개발자가 개입하여 컴퓨터에게 어떤 것이 정답인지 알려주는 학습법
    데이터를 넣어줄 때, 입력과 정답을 나누어 넣어준다.
  • 비지도학습: 개발자의 개입이 없이, 오로지 데이터의 입력만으로 진행하는 학습법
    데이터의 숨겨진 특징이나 구조를 발견하는데 주로 사용된다.
  • 강화학습: 제어나 게임플레이 등 상호작용을 통해서 최적의 동작을 학습해야 할 떄 많이 사용된다.
    에이전트가 보상을 최대화 하도록 하면서 학습이 진행된다.

Glossary

용어 및 개념

  • 가중치: 신경망 내 뉴런(혹은 노드) 사이의 연결강도. 신경망이 훈련을 하는 동안 업데이트되어 가중치가 변경된다. Learnable Parameter
  • 편향(Bias): 뉴런(혹은 노드)이 얼마나 쉽게 활성화되는가를 조정하는 매개변수
  • 손실함수(loss Function): 컴퓨터가 출력한 예측값이 우리가 의도한 정답과 얼마나 틀렸는지 채점하는 함수 손실(오차)를 최소화하는 것을 목표로 한다.
  • 학습률: 한 번 학습할 때 얼만큼의 변화를 주는지에 대한 상수
  • 활성화 함수: 주어진 입력값들을 받은 뉴런의 출력값을 돌려주는 함수 현재 뉴런의 활성화에 따라 출력값을 결정한다.
  • 최적화: 손실함수의 결과값을 최소화하는 하이퍼파라미터의 값을 찾는 것이다
  • 하이퍼파라미터: 사용자가 직접 정의할 수 있는 파라미터

Machine Learning workflow

  1. 데이터 수집
  2. 데이터 탐색: 데이터의 관계, 필요없는 데이터는 무엇인지 등
  3. 데이터 전처리: 학습에 악영행을 끼칠만한 데이터를 제거, 기여할 만한 특성을 부각시키는 과정
  4. 데이터학습
  5. 모델 검증

머신러닝의 학습
신경망: 딥러닝은 기본 층들을 쌓아서 구성한 신경망이라는 모델을 사용하여 학습을 진행한다

  • 입력층
  • 출력층
  • 은닉층

신경망 학습: 가중치의 정확한 값을 찾는 것이다.
1. 데이터를 입력 받음
2. 층에 도달할 떄마다 해당층의 가중치를 사용하여 출력값을 계산
3. 모든 층에서 반복. 마지막으로 예측값 도출
4. 예측값은 실제값과 비교하는 손실함수롤 통해 점수 계산
5. 해당 점수를 피드백 삼아 손실 점수가 감소되는 방향으로 가중치를 수정(최적화 과정)

ANN

인공신경망(Artificial Neural Network : ANN): 인간의 뉴런이 연결된 형태를 수학적으로 모방한 모델

  • 여러 입력값을 받아서 일정 수준이 넘어서면 활서오하되어 출력값을 내보낸다
  • 두 개의 층 이상으로 구성되는 것이 특징이다
  • 퍼셉트론

DNN

심층 신경망(Deep Neural Network : DNN): ANN 이후 모델 내 은닉층을 많이 늘려서 학습의 결과를 향상시킨 모델

  • ANN에 비해 더 적은 수의 유닛들만으로도 복잡한 데이터를 모델링 할 수 있게 해준다
  • 컴퓨터 스스로 분류 레이블을 만들어 내고 공간을 왜곡하고 데이터를 구분 짓는 과정을 반복하여 최적의 구분선을 도출
  • 많은 데이터와 반복학습, 사전학습과 오류역전파 기법으로 널리 사용

CNN

합성곱 신경망(Convonlution Neural Network : CNN): 기존의 방식은 데이터에서 지식을 추출해 학습이 이루어졌지만, CNN은 데이터의 특징을 추출하여 특징들의 패턴을 파악하는 모델

  • CNN 알고리즘은 Convolution과정과 Pooling과정을 진행된다

RNN

순환 신경망(Recurrent Neural Network : RNN): RNN 알고리즘은 반복적이도 순차적인 데이터 학습에 특화된 인공신경망의 한 종류로써 내부의 순환구조가 들어있따는 특징을 가지고 있다.

  • 순환구조를 이용하여 과거의 학습을 Weight를 통해 현재 학습에 반영한다
  • 기존의 지속적이고 반복적이며 순차적인 데이터학습의 한계를 해결하는 알고리즘
  • 음성 파형을 파악하거나, 텍스트의 앞 뒤 성분을 파악할 때 주로 사용

GAN

생산적 적대 신경망(Generative Adversarial Network : GAN): Generative은 '이미지를 생성한다', Adversarial은 '서로 경쟁하면서 좋게 만든다'라는 의미로 서로 경쟁하면서 가짜 이미지를 진짜 이미지와 최대한 비슷하게 만들어내는 네트워크를 말하게 되는 것이다.

참고 자료:
https://youtu.be/r7gWQicV-Yw

profile
대학생

0개의 댓글

관련 채용 정보