Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

코딩로그

Lec 01 - 머신러닝의 기본적인 용어와 개념 본문

코딩로그/모두를 위한 딥러닝

Lec 01 - 머신러닝의 기본적인 용어와 개념

hyeonnny 2020. 1. 4. 13:29

<머신러닝이란 무엇일까?>

 - 보통의 프로그램들은 특정한 입력에 대해 특정한 출력을 내도록 엔지니어가 코드를 작성한다. 이를 explicit programming이라고 한다. 그러나 여기에는 몇가지 문제점들이 있다.

  • spam filter : 스팸을 걸러내는 경우 rule이 너무 많아서 일정한 rogic으로 해결하기가 힘들다.
  • 자율주행 : 이또한 rule이 너무 많다

 - 이를 해결하기 위해 나온 것이 '머신러닝'이다

 - 머신러닝 : explicit programming 없이 데이터를 보고 직접 학습할 능력을 갖는 프로그램

 

<supervised/unsupervised learning>

# superviesd learning : 정해진, 이미 레이블된 데이터(training set)를 갖고 학습하는 것이다.

ex) 고양이인지 강아지인지 알아보는 것들

사람들이 cat이란 레이블이 달려있는 것을 주고 이게 고양이야, 학습해봐 하는 것

# unsupervised learning : 레이블되지 않은 데이터를 갖고 학습하는 것이다.

ex) google news grouping 자동적으로 유사한 뉴스들을 그룹화한다. - 레이블화하기 어려움

ex) 비슷한 단어를 모으는 것

 

<supervised learning으로 해결할 수 있는 문제들>

  • 강아지인지 고양이인지 같이, 이미지를 레이블링 하는 문제

  • 스팸메일인지 아닌지를 판단하는 문제

  • 시험성적을 예측하는 문제

<Training data set>

 - 먼저 오른쪽과 같이 머신러닝 모델이 있다고 하자. 그 때 이 모델을 학습시키려면

 왼쪽의 표와 같은 training data set이 필요하다.

 - training data set 은 x라는 feature와 y라는 결과값으로 이루어져 있다.

 - 열심히 training data set을 통해 학습을 했다고 하자. 그럼 모델은 어떻게 활용하면 될까?

 - 만약 외부에서 특성 x = [9,3,6] 를 입력하면 모델은 학습을 바탕으로 y라는 결과값을 예측한다. 이렇게 활용하는것이다!

 

 - training set : 기전 바둑의 기보

 - 이세돌 선수의 돌 특성 X

 - 알파고가 놓기로 결정한 돌 결과 Y

 

<supervised learning의 종류>

 -  regression : 0~100까지의 수치로 나타내는 것

 -  binary classification : 시험에서 passnon-pass냐 하는 것

 -  multi-label classification : ABCDEF 중에서 골라 학점을 매기는 것.