Study/class note (247) 썸네일형 리스트형 머신러닝 / 신경망 이론 ㅇ머신러닝 종류 3가지 1. 지도학습 : 분류 : knn, naivebayes, decision tree, oneR, riper, 신경망 수치예측 : 단순회귀, 다중회귀, 회귀트리, 모델트리, 신경망 2. 비지도학습 3. 강화학습 > 신경망은 분류과 수치예측 둘 다 가능 65 신경망 이론 ㅇ인공신경망을 만들어서 분류작업 수행 인공신경망을 만들면서부터 육체노동을 대신했던 기계(컴퓨터)에 지능을 부여하기 시작함. > 인공지능 신경망의 시초가 된 것은 '퍼셉트론' > 뇌의 뉴런세포 한 개를 컴퓨터로 구현한 것이 '퍼셉트론' 퍼셉트론 1958년에 로젠플래트에 의해 제안된 알고리즘. 사람의 뇌 ---------> 컴퓨터를 이용한 지능처리 2014년에 구글이 딥마인드라는 회사를 4000억에 인수하면서 인공신경만이 .. 머신러닝 / 파이썬으로 회귀트리 구현하기 64 파이썬으로 회귀트리 구현하기 수치예측을 하는 의사결정트리를 사용하면 됨. #1. 데이터 로드 #2. 결측치 확인 #3. 종속변수가 정규분포 보이는지 확인 #4. 훈련데이터 테스트데이터 분리 #5. 모델생성 #6. 모델훈련 #7. 모델예측 #8. 모델평가 #9. 모델성능개선 #python #1. 데이터 로드 import pandas as pd wine = pd.read_csv("c:\\data\\whitewines.csv") wine.head() #2. 결측치 확인 wine.isnull().sum() #3. 종속변수가 정규분포 보이는지 확인 wine.quality.plot(kind = 'hist') #4. 훈련데이터 테스트데이터 분리 from sklearn.model_selection import t.. 머신러닝 / R 로 회귀트리 구현하기, R 로 모델트리 구현하기 ㅇ회귀트리 수치 반응변수의 예측 선형 회귀 기법을 사용하지 않음 x를 고려하지 않고 y를 예측 > 표본평균 이용 > "x가 주어졌을 때의 y의 조건부 기댓값을 추정" = x에 따른 y의 표본평균을 이용해 기댓값으로 분류함. > 의사결정트리에서는 정보획득량을 기준으로 했는데, 회귀트리는 표준편차축소를 기준으로 함. > 표준편차축소값이 가장 큰 것을 먼저 기준으로 삼음. >독립변수가 모두 명목형, 범주형일때 종속변수가 수치일때 회귀트리를 사용함. ㅇ p.292페이지에 나온 내용을 파이썬으로 구현하기 의사결정트리의 경우에는 정보획득량으로 가장 중요한 독립변수를 선택했는데 회귀트리의 경우 표준편차축소값으로 가장 중요한 독립변수를 선택함. 파이썬으로 회귀트리의 가장 중요한 독립변수를 선택하는 것을 실습해보겠음. .. 머신러닝 / 회귀트리 60 회귀트리 이론 수치를 예측하는 트리(Tree) 여기서 트리(tree)란 의사결정트리에서의 트리를 말하는 것 그런데 5장에서 의사결정트리 배울대는 의사결정트리로 분류를 했었고, 수치예측을 하지는 않음. 회귀트리 회귀분석 목표가 수치예측이고 컬럼갯수(독립변수)가 많으면 ? -> 회귀트리 또는 모델트리 [의사결정트리 그림] [회귀트리 그림] 회귀트리에서 사용하는 수학식 => SDR(표준편차축소) 예제1. 책 292페이지의 중간에 나오는 그림인 원본 데이터를 A속성으로 나누는게 나은지 B속성으로 나누는게 더 나은지 SDR을 구해서 알아내시오.( 어떤게 더 균일하게 나눈 것인지 확인하라는 것) #1. 원본데이터 생성 #2. 원본데이터 A속성으로 나누었을 때의 데이터 #3. 원본데이터 B속성으로 나누었을 때의.. 머신러닝 / 다중공선성 실험하기(R 과 파이썬), 다중회귀분석 모델을 파이썬을 구현 #1. R을 이용해서 스마트폰 만족도에 영향을 미치는 요소가 무엇인지 기울기와 절편 출력하기 # R reg 상관관계 데이터 분석에서는 아이큐와 시험점수가 강한 양의 상관관계를 보여서 아이큐가 시험점수에 영향이 있을거라 예측했는데 다중회귀분석 결과에서는 아이큐가 시험점수에 영향이 없다라는 결과를 도출하고 있어서 다중공성선문제를 의심해봐야함. #4. 다중공선성 확인을 위해 팽창계수 확인 from statsmodels.stats.outliers_influence import variance_inflation_factor model.exog_names # 모델에서 보이는 컬럼명과 순서를 확인 ['Intercept', '아이큐', '공부시간', '등급평균'] print(variance_inflation_facto.. 머신러닝 / 다중회귀분석 모델을 R 로 구현 ㅇ머신러닝을 사용한 데이터 분석 (R과 파이썬) > 기계에게 데이터를 학습시키는 것 (목적 : 기계가 데이터에서 패턴을 스스로 발견해 데이터를 분류하거나 수치예측 하는 것) 1. 지도학습 : 정답이 있는 데이터로 기계를 학습 시키는 것 - 분류 : knn(학습데이터가 전부 숫자), naivebayes(전부 문자), desicion tree(문자+숫자), oneR, Riper - 수치예측 : 회귀분석 - 단순회귀분석 - 다중회귀분석 - 로지스틱 회귀분석 단순회귀분석 -> 상관관계분석 -> 다중회귀 ㄴ 독립변수들기리 다중공선성 문제가 있는지 확인 cf. 상관관계분석은 두 변수 사이에 어떤게 원인이고 어떤게 결과인지 모를 때 사용함 = 두 변수 사이의 연관성을 분석 반면, 회귀분석은 여러개의 변수 중 종속변수.. 머신러닝 / 다중 회귀분석 이론 56 다중 회귀분석 이론 다중 선형회귀란? 단순 선형 회귀 분석의 목적이 하나의 독립변수만을 가지고 종속변수를 예측하기 위한 회귀모형을 만들기 위한 것이었다면 다중회귀분석의 목적은 여러개의 독립변수들을 가지고 종속변수를 예측하기 위한 회귀모형을 만드는 것 ex. 집값에 영향을 미치는 요소가 단순히 평수 하나만 있는게 아님. (종속변수)집값 집값에 영향을 미치는 요소가 위의 여러가지 독립변수들 중에서 어떤 것인가? Q2 > 집값을 예측하기 위한 다중 회귀식은 어떻게 되는가? y = 집값(종속변수) , α = 기울기, b = 절편 위 식의 기울기를 알아내려면 행렬로 연산해서 알아내야 함. 그럴려면 아래 4가지 개념을 알아야함. ㅇ다중회귀 수학식을 이해하기 위한 예제 - p264 예제1. 아래의 4가지 용어를.. 머신러닝 / 다중 공선성, 상관관계 분석, 단순회귀분석 모델 구현(R, 파이썬) 의사결정트리의 정확도는 94.4%였는데 랜덤포레스트의 정확도는 100% 단순회귀분석 ----> 상관관계 ----> 다중회귀분석 ㅇ 다중 공선성(variance inflation factor) 회귀분석에서 사용된 모형의 일부 설명변수(독립변수)가 다른 독립변수와의 상관정도가 높아서 데이터 분석시 부정적인 영향을 미치는 현상을 말함. 두 독립변수들끼리 서로에게 영향을 주고 있다면 둘 중 하나의 영향력을 검증할 때 다른 하나의 영향력을 완전히 통제할 수 없게 됨. - 회귀분석의 유형 1. 단순회귀 : 독립변수 1개, 종속변수와의 관계 직선 2. 다중회귀 : 독립변수 n개, 종속변수와의 관계 선형(1차함수) 3. 다항회귀 : 독립변수가 종속변수와의 관계가 1차함수 이상의 관계 4. 곡선회귀 : 독립변수 1개, .. 머신러닝 / 회귀분석(수치예측) 회귀분석은 하나의 변수가 나머지 다른 변수들과의 선형관계를 갖는가의 여부를 분석하는 방법으로 하나의 종속변수(예측하고자 하는 값)와 독립변수 사이의 관계를 명시하는 것을 말함. ex. 집값에 가장 영향을 주는 요소가 무엇인가? - 독립변수 : 종속변수에 영향을 주는 변수(평수, 역세권, 학군...) - 종속변수 : 서로 관계를 가지고 잇는 변수등 중에서 다른 변수에 영향을 받는 변수(집값) 53 단순회귀분석 이론 ex.공부한 시간에 따른 시험 성적 x = [1,2,3] # 공부시간 y = [3,5,7] # 시험성적 x = 4일때, y값은? > y = 2x + 1 데이터가 3개밖에 없어서 금방 y값을 추정하는 방정식을 사람이 손으로 구할 수 있었는데 만약에 데이터가 많고 식이 더 복잡해진다면, 사람이 알아.. 머신러닝 / 규칙기반 알고리즘(oneR, Riper) 파이썬 구현 52 규칙기반 알고리즘(oneR, Riper) 을 파이썬으로 구현 oneR알고리즘 관련 패키지는 R에만 있고 파이썬에는 없음. R에서의 Riper 패키지는 이진분류, 다중분류 둘 다 분류가 가능한 패키지 그런데 파이썬의 Riper 패키지는 이진분류만 가능함. 구현을 위해 먼저 아나콘다 프롬프터창에 아래의 패키지를 설치해야함. pip install wittgenstein #1. 데이터 로드 #2. 결측치 확인 #3. 학습데이터와 라벨설정 #4. 훈련데이터와 테스트 데이터 분리 #5. 모델 생성 #6. 모델 훈련 #7. 모델 예측 #8. 모델 평가 #1. 데이터 로드 import pandas as pd mush = pd.read_csv("c:\\data\\mushrooms.csv") mush.shape #(.. 이전 1 ··· 8 9 10 11 12 13 14 ··· 25 다음