[Machine Learning-Andrew ng ] 1주차 - Lecture 1 introduction 강의 노트

2022. 1. 23. 02:00인공지능/machine learning - andrew ng

What is Machine Learning?

Arthur Samuel-"the field of study that gives computers the ability to learn without being explicitly programmed."

즉 컴퓨터가 스스로 학습할 수 있는 능력을 가지는 것!

좀더 현대적으로 접근해보면

Tom Mitchell - "A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E."

예시- playing checkers
E= the experience of playing many games of checkers
T= the task of playing checkers
P= the probability that the program will win the next game

일반적으로 머신러닝 학습 기법은 지도학습과 비지도 학습으로 나뉜다.

Supervised Learning

우선 지도학습은 정답 데이터를 기반으로 예측한다.

 즉 특정 input에 대해"정답 (label)" output이 있는 데이터 셋이 주어지는 경우

지도학습은 regression과 classification으로 나눌 수 있다.

Regression

Regression: 연속적인 값(continuous valued output)을 예측하려고 함.

ex) 집 크기에 따른 집 가격 예측

 

Classification

Classification: 불연속적인(discrete) 결과값을 예측

ex) 종양크기에 따라 악성인지 아닌지 분류하는 것

사진에서는 0과 1로 분류했지만, 분류개수는 수많이 많을 수 있고, 학습 기반이 되는 특성 개수도 수많이 많아질 수 있다!

그렇다면 무한한 긴 특성(=feature, attribute)의 목록이 있다면 어떻게 다루어야할까?

-> 이후 살펴볼 SVM(Support Vector Machine)이라는 알고리즘에서 수학적 방법을 사용하면 컴퓨터가 무한한 개수의 특성을 다룰 수 있게 된다고 한다!

 

Question

You’re running a company, and you want to develop learning algorithms to address each of two problems. Problem 1:You have a large inventory of identical items. You want to predict how many of these items will sell over the next 3 months.

3개월뒤에 얼마나 많은 물건이 팔리느냐는 연속적인 결과값(실수)을 예측해야하니까 regression이 답이 될 것임
Problem 2: You’d like software to examine individual customer accounts, and for each account decide if it has been hacked/compromised. Should you treat these as classification or as regression problems?
컴퓨터의 상태를 hacked/compromised 둘로 분류하는 문제이기 때문에 classification이 답이 될 것이다!
0- not hacked
1- hacked
로 이산적인 값으로 예측할 것임!

 

Unsupervised Learning

google news: 연관성 있는 기사들 끼리 알아서 분류하는 비지도학습을 사용

 

비지도학습 중 하나인 clustering에 대해 살펴보자

clustering- 비슷한 집합끼리 묶어준다고 생각하자

예시:

1. organize computing clusters

2. Social network analysis

3. Market segmentation

4. Astronomical data analysis

 

cocktail party problem- 1부터 10까지 영어 또는 스페인어로 말하는 음성을 분류할 수 있다. 사진과 같은 한 줄의 코드로 가능하다고 함: Octave