image
image
image

image

setting working directory which has data set (look at the yellow circle)

image

data preprocessing 작업을 보여준다.

위의 작업을 하는 동안 error 가 발생했다. 아래와 같이 해결한다.

ModuleNotFoundError: No module named ‘sklearn.cross_validation’

May be it’s due to the deprecation of sklearn.cross_validation. Please replace sklearn.cross_validation with sklearn.model_selection

https://stackoverflow.com/a/53104241/3151712

LEARNING 과정

image

linear regression obj를 만들고 fit method를 통해 training matrix와 실제 결과값을 넣어준다. 이과정이 learning하는 과정이다. 

예상값 구하기 

image

linear regression obj의 predict method를 이용해서 test feature에 대한 예상값을 구한다. 이미 linear regresion obj에는 전단계에서 learning한 theta값들이 저장되어 있다.

그래프로 결과 나타내기

scatter는 점을 흩어 그리는 method이다. x, y 값을 넣어주고 색을 지정한다. plot은 선그래프를 그린다. x,y, 색을 지정해준다. 제목과 각축의 레이블을 붙여주고 show()를 이용 출력한다.

python anaconda 

https://www.anaconda.com/distribution/#download-section

r language

https://cran.cnr.berkeley.edu/

r studio ( r language ide )

https://www.rstudio.com/products/rstudio/download/#download

R, PYTHON에서 작업하기 이전에 데이터셑이 있는 폴더를 working directory로 지정하고 작업을 해야한다.

image

python 에서 기본적으로 필요한 라이브러리 numpy는 mathmatics 기능을 도와준다.

matplotlib은 plot 그리는데 필요한 도구. pandas는 dataset을 가져오는데 사용한다.

image

python에서 dataset.iloc[:, :-1].values 의 의미는 모든 행을 이용하고 칼럼은 뒤에서 하나를 빼고 값들을 가져온다.

dataset.iloc[:, 3].values 의 의미는 모든 행을 이용하고 칼럼은 앞으로 부터 4번째만 값을 가져온다.

참고자료 https://stackoverflow.com/a/46692001/3151712

image

R에서 데이터 가져오는 방법

MISSING DATA

image

missing data가 있는 경우 그 데이터를 삭제하기 보다 중간값이나 자주등장하는 값 등으로 교체해서 처리하는 방법이 있다.

X[:, 1:3] 에서 2번째 , 3번째 칼럼을 말한다. ( lower bound는 포함, upper bound는 포함하지 않는다. ) 

command + i  단축키를 통해 class 의 notation를 확인가능하다.

code 선택후 command + enter 를 통해 부분 실행이 가능하다.

CATEGORICAL DATA

이 강의 예시에서 국적 칼럼의 경우 그 값이 문자열로 되어있고 딱 세개로 되어있고 그 값에 특별한 우열이 없는 경우 정리가 필요하다. 우선 문자열을 수치 계산이 가능한 숫자로 바꾼다. 또 우열이 없으므로 각각 동등한 값을 가지도록 각 국적별 칼럼을 만들고 값이 1이 되게 한다. 

image

그 정리 결과가 위와 같게 한다.

image

참고 자료) label encoder와 one hot encoder의 역할 설명

https://medium.com/@contactsunny/label-encoder-vs-one-hot-encoder-in-machine-learning-3fc273365621

SPLITTING DATASET INTO TRAINING SET AND TEST SET

training set과 test set으로 구분하는 작업

image

결과 예시는 위와 같이 된다. training features and results , test features and results

image

train_test_split에서 random_state 는 숫자가 커질수록 무작위의 데이터가 순서에 상관없이 training set과 test set으로 나뉘어 들어가게 된다. test_size는 전체에서 차지하는 percent이다. 

FEATURE SCAILING 

각각 feature값의 범위차가 너무 큰경우 특정 feature가 미치는 영향이 너무 커지므로 어느정도 범위를 맞추어 주어야 한다. 보통 두가지 방법이 있다.

image
image

standardisation를 이용한 예시를 보여주고 있다. 우측 데이터들을 보면 비슷한 범위의 값들로 정리된것을 볼수 있다. feature scailing 의 장점의 하나로 계산속도의 향상을 들수 있다. 낮은 수준의 값으로 정리되기 때문이다.

DATA PREPROCESSING TEMPLATE

매 작업마다 기본적으로 수행되는 부분을 template으로 따로 화일을 만들어서 반복 coding하는 번거로움을 줄이는 작업이다. 기본적으로 라이브러리 import 작업, features matrix만드는 작업, 결과 vector만드는 작업. training set 과 test set 구분하는 작업이 들어간다.

image

python anaconda 

https://www.anaconda.com/distribution/#download-section

r language

https://cran.cnr.berkeley.edu/

r studio ( r language ide )

https://www.rstudio.com/products/rstudio/download/#download

R, PYTHON에서 작업하기 이전에 데이터셑이 있는 폴더를 working directory로 지정하고 작업을 해야한다.

image

python 에서 기본적으로 필요한 라이브러리 numpy는 mathmatics 기능을 도와준다.

matplotlib은 plot 그리는데 필요한 도구. pandas는 dataset을 가져오는데 사용한다.

image

python에서 dataset.iloc[:, :-1].values 의 의미는 모든 행을 이용하고 칼럼은 뒤에서 하나를 빼고 값들을 가져온다.

dataset.iloc[:, 3].values 의 의미는 모든 행을 이용하고 칼럼은 앞으로 부터 4번째만 값을 가져온다.

참고자료 https://stackoverflow.com/a/46692001/3151712

image

R에서 데이터 가져오는 방법

MISSING DATA

image

missing data가 있는 경우 그 데이터를 삭제하기 보다 중간값이나 자주등장하는 값 등으로 교체해서 처리하는 방법이 있다.

X[:, 1:3] 에서 2번째 , 3번째 칼럼을 말한다. ( lower bound는 포함, upper bound는 포함하지 않는다. ) 

command + i  단축키를 통해 class 의 notation를 확인가능하다.

code 선택후 command + enter 를 통해 부분 실행이 가능하다.

CATEGORICAL DATA

이 강의 예시에서 국적 칼럼의 경우 그 값이 문자열로 되어있고 딱 세개로 되어있고 그 값에 특별한 우열이 없는 경우 정리가 필요하다. 우선 문자열을 수치 계산이 가능한 숫자로 바꾼다. 또 우열이 없으므로 각각 동등한 값을 가지도록 각 국적별 칼럼을 만들고 값이 1이 되게 한다. 

image

그 정리 결과가 위와 같게 한다.

image

참고 자료) label encoder와 one hot encoder의 역할 설명

https://medium.com/@contactsunny/label-encoder-vs-one-hot-encoder-in-machine-learning-3fc273365621

SPLITTING DATASET INTO TRAINING SET AND TEST SET

training set과 test set으로 구분하는 작업

image

결과 예시는 위와 같이 된다. training features and results , test features and results

image

train_test_split에서 random_state 는 숫자가 커질수록 무작위의 데이터가 순서에 상관없이 training set과 test set으로 나뉘어 들어가게 된다. test_size는 전체에서 차지하는 percent이다. 

FEATURE SCAILING 

각각 feature값의 범위차가 너무 큰경우 특정 feature가 미치는 영향이 너무 커지므로 어느정도 범위를 맞추어 주어야 한다. 보통 두가지 방법이 있다.

image
image

standardisation를 이용한 예시를 보여주고 있다. 우측 데이터들을 보면 비슷한 범위의 값들로 정리된것을 볼수 있다. feature scailing 의 장점의 하나로 계산속도의 향상을 들수 있다. 낮은 수준의 값으로 정리되기 때문이다.

DATA PREPROCESSING TEMPLATE

매 작업마다 기본적으로 수행되는 부분을 template으로 따로 화일을 만들어서 반복 coding하는 번거로움을 줄이는 작업이다. 기본적으로 라이브러리 import 작업, features matrix만드는 작업, 결과 vector만드는 작업. training set 과 test set 구분하는 작업이 들어간다.

image

basic algorithms

Tour of Machine Learning Algorithms   – link

The Master Algorithm   – book

math

KhanAcademy:

Books

Audio (supplementary material)

deep learining

Resources

Languages & Frameworks

Resources

Checkpoint

45m/d ML

15m/d Math (KhanAcademy)

Audio

Shallow Algos 1

Resources

Consciousness

Resources

  • Philosophy of Mind: Brains, Consciousness, and Thinking Machines (Audible, TGC) audio:easy

Natural Language Processing 1

Resources

Deep NLP 1

Resources

Convolutional Neural Networks

Resources

Reinforcement Learning Intro

Resources

basic algorithms

Tour of Machine Learning Algorithms   – link

The Master Algorithm   – book

math

KhanAcademy:

Books

Audio (supplementary material)

deep learining

Resources

Languages & Frameworks

Resources

Checkpoint

45m/d ML

15m/d Math (KhanAcademy)

Audio

Shallow Algos 1

Resources

Consciousness

Resources

  • Philosophy of Mind: Brains, Consciousness, and Thinking Machines (Audible, TGC) audio:easy

Natural Language Processing 1

Resources

Deep NLP 1

Resources

Convolutional Neural Networks

Resources

Reinforcement Learning Intro

Resources