일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 주피터노트북
- 모두를 위한 딥러닝
- Python
- Linear Regression
- overfitting
- random forest
- 한빛미디어
- Udacity
- 주피터 노트북 테마
- GitHub
- 나는리뷰어다2021
- regression
- pandas
- feature scaling
- 데이터분석
- deeplearning
- 경사하강법
- 회귀분석
- Git
- 주피터노트북 커널 제거
- 주피터테마
- jupytertheme
- ubuntu
- deep learning
- MySQL
- Machine Learning
- 딥러닝
- 주피터노트북 커널 목록
- lol api
- 주피터노트북 커널 추가
- Today
- Total
유승훈
lec01 - 기본적인 Machine Learning의 용어와 개념설명 본문
본 글은 모두를 위한 딥러닝 강의를 듣고 작성한 글입니다.
우리가 쓰는 많은 App, 서비스들은 Explicit Programming인 경우가 많습니다. 즉, 상황에 따른 입력, 출력, 데이터 처리 등이 다 프로그래밍 되어 있는 것입니다. 하지만 사회가 계속해서 발전하면서 그에 따른 문제도 다양하고 복잡하게 발전하고 있습니다. 모든 Task를 명시적으로 프로그래밍 할 수가 없게 된 것입니다. 경우의 수가 너무 많은 경우도 있고, 규칙이 너무 많아서 프로그래밍 할 수가 없는 경우도 있습니다.
이에 1959년, Arthur Samuel이라는 교수님이 일일히 프로그래밍하지 않고, 자료나 현상에서 컴퓨터가 직접 배우게 하면 어떨까?한 것이 머신러닝의 시작입니다.
이 배우는 것, "학습"을 위해서는 어떤 데이터가 주어져야 하는데, 방법에 따라서 크게 두 가지로 나뉩니다.
-
Supervised Learning
: Label이 정해져 있는 데이터를 가지고 학습함.
Ex) 이미지가 강아지일까 고양이일까? - 고양이, 강아지들의 사진을 주고, 학습시키는 것. 그러면 나중 에 새로운 사진이 들어왔을 때, 컴퓨터가 강아지인지 고양이인지 맞춘다.
-
Unsupervised Learning
: 일일히 Label을 줄 수 없는 경우도 있다.
Ex) 구글 뉴스 - 자동적으로 유사한 뉴스를 Grouping
Word Clustering - 비슷한 단어끼리 Grouping
이러한 Task들은 Label이 정해진것이 아니라, 데이터를 보고 컴퓨터가 스스로 학습하는 것이다.
이 중 본 강의에서 주로 다룰 것은 Supervised Learning입니다.
Training Dataset에 대해서 알고 넘어갈 필요가 있습니다.
우리가 이미 가지고 있는 데이터를 머신러닝 알고리즘에 학습시킵니다. 여기서 X는 변수, Feature라고 하고, Y는 앞서 얘기했던 Label입니다. 데이터를 학습시킨 뒤, 새로운 데이터를 머신러닝 알고리즘에게 물어보면, 학습한 데이터를 기반으로 그에 맞는 Label을 Return 해 주는 것입니다. 여기서 머신러닝에 학습시키는 데이터를 Train Dataset이라고 하고, 알려지지 않은, 머신러닝에게 물어서 답을 구할 데이터를 Train Dataset이라고 합니다.
알파고도 비슷한 방식으로 만들어졌습니다.
이미 사람들이 바둑을 둔 기보를 Train Dataset으로 학습시키고, 이세돌 선수와의 대국에서 그가 둔 수를 입력하면, 알파고가 다음 수를 Return 해 주는 것입니다. 바둑돌은 사람이 뒀지만, 이 수를 어디에 둘지 결정하는 것은 엄청나게 많은 기보들을 학습한 알파고였습니다.
이 Supervised Learning도 결과에 따라서 나누어집니다.
-
Regression
0~100점 사이의 연속형 변수에 대한 예측
학생들의 공부시간(X)과 점수(Y)를 학습시키고, 새로운 학생의 공부시간을 입력하면, 그 학생이 몇점의 점수를 맞을지 기존의 데이터를 기반으로 예측한다.
-
Binary Classification
이걸 0~100점 사이의 점수가 아니라, Pass/Fail로 본다면?
학생들의 공부시간(X)과 통과 여부(Y - Pass/Fail)를 학습시키고, 새로운 학생의 공부시간을 입력하면, 그 학생이 시험에서 통과할 수 있을지 없을지를 예측한다.
-
Multi-Label Classification
이번에는 학생들에게 (A,B,C,E,F) 중 학점을 부여해야 한다.
학생들의 공부시간(X)과 받은 학점(A,B,C,E,F)을 학습시키고, 새로운 학생의 공부시간을 입력하면, 그 학생이 받을 학점을 예측한다.(예시에서는 Train Dataset에 C학점은 없기 때문에, X를 입력했을 때 A,B,D,F 중 하나를 Return)
'강의정리 > 모두를 위한 딥러닝 시즌 2' 카테고리의 다른 글
lec06 - Softmax Regression, Classifer의 Cost function (0) | 2021.02.15 |
---|---|
lec05 - Logistic Regression (0) | 2021.02.11 |
lec04 - Multi variable linear regression (0) | 2021.02.10 |
lec03 - Liner Regression and How to minimize cost(Gradient Descent) (0) | 2021.02.08 |
lec02 - Simple Linear Regression (0) | 2021.02.07 |