본문 바로가기

데이터분석/머신러닝13

머신러닝 데이터 분류모델 훈련 시키기 from sklearn.linear_model import LogisticRegression from sklearn.neighbors import KNeighborsClassifier from sklearn.tree import DecisionTreeClassifier from sklearn.neural_network import MLPClassifier from sklearn.ensemble import VotingClassifier from xgboost import XGBClassifier from sklearn.semi_supervised import SelfTrainingClassifier from modeling.model_evaluation import evaluation from jobli.. 2023. 4. 8.
[sklearn] train_test_split 사용하는 방법 및 유의사항 좋은 데이터 예측 모델을 만들 때, 중요한 것은 1) 데이터 분석 목적에 맞춘 데이터 만들기 2) 데이터 전처리 잘하기 3) 훈련데이터와 테스트 데이터 잘 나누기 4) 분석 파라미터 잘 설정하기 5) 데이터 특성에 맞는 평가 지표로 평가하기 이 중에서 '3) 훈련 데이터와 테스트 데이터 잘 나누기'를 자세히 알아보자 why? 훈련데이터와 테스트 데이터를 잘 나눠야 하는 이유는? 훈련데이터에서만 우수한 예측 성능을 보이는 과대적합된 모델을 만들 수 있기 때문이다. 만약 새로운 데이터, 즉, 테스트 데이터가 들어온다면 예측 성능이 매우 낮게 될 수 있다. What? 무슨 데이터를 나눌 수 있을까? 지도학습인 대표적인 분류 모델, 회귀 모델의 모델 등의 데이터 셋에서 훈련 데이터와 테스트 데이터를 나눌 수 있.. 2021. 5. 9.
[회귀분석] 회귀분석 모델 한 번에 돌려서 가장 좋은 성능 모델 값 뽑기 사이킷런 패키지를 바탕으로 회귀모델 한 번에 돌리기 보스턴 데이터셋 예제로 진행 1. 데이터 로드 2. 데이터 확인 3. 전처리(na 값 처리, 스케일링) 4. 회귀 모델 돌리기 5. 최종 모델 from sklearn.datasets import load_boston import pandas as pd import matplotlib.pyplot as plt import seaborn as sns # 데이터 로딩 load_data = load_boston() print(type(load_data)) print(load_data.keys()) print(load_data.DESCR) # np에서 pd로 변환하기 data = load_data['data'] df_X = pd.DataFrame(columns=.. 2020. 2. 24.
머신러닝/딥러닝 데이터셋 얻을 수 있는 링크 모음 * UC 얼바인 머신러닝 저장소 : 데이터셋 http://archive.ics.uci.edu/ml/index.php UCI Machine Learning Repository Welcome to the UC Irvine Machine Learning Repository! We currently maintain 471 data sets as a service to the machine learning community. You may view all data sets through our searchable interface. For a general overview of the Repository, please visit ou archive.ics.uci.edu * 캐글 데이터 셋 : 데이터 셋 및 각종 .. 2019. 5. 7.
[모델 선택하기] 머신러닝(지도학습,비지도학습,강화학습)/딥러닝 데이터 분석을 할 때, 가장 먼저 생각해야 하는 것이 분석의 목적과 목표, 그리고 그를 위한 변수와 모델을 설정하는 것이다. 여기서 모델을 정한다는 것은 목표를 도출하기 위해 머신러닝을 할지 딥러닝을 적용할지 그리고 머신러닝을 한다면 지도학습/비지도학습/강화학습 중 어떤 방식 선택할 것인지를 고민해 봐야 한다. 목표가 같다고 해도 적용하는 방법에 따라 결과들이 다르게 나올 수 있기 때문이다. 1. 머신러닝 데이터의 양이 적고 주로 정형데이터이며, 분석 목적과 목표 도출을 위해 파생변수를 도출해야 하며다양한 파라미터를 조정하여 성능평가를 할 수 있다. 1) 지도학습 조건) 지도학습은 입력데이터(이하 'x'데이터)와 출력데이터(y, 이하 라벨)가 있다. 목표) 라벨이 없는 신규 'x'데이터에 대하여 라벨값을.. 2018. 7. 19.
[기초개념] 데이터 분석 관점에서 한줄로 정리한 '머신러닝 딥러닝 데이터 분석을 하기 위해 꼭 알아야할 기본 개념' * 데이터 웨어하우스 : 각 데이터베이스의 자료들을 시계열로 축적한 데이터 창고로 데이터 웨어하우스의 데이터 분석을 통해 의사결정에 활용함상세설명 링크 : https://blog.naver.com/vae3085/220686438394 * 데이터 마트 : 데이터 웨어하우스에서 특정 목적에 따라서 데이터를 추출한 데이터 셋상세설명 링크 : https://terms.naver.com/entry.nhn?docId=819906&cid=42344&categoryId=42344 * 메타데이터 : 데이터를 설명해주기 위해 만들어진 데이터 예를 들면 영화는 기본 이미지와 소리가 축적된 데이터이고 영화줄거리,감독정보등은 영화를 설명해주는 메타데이터상세설명 링크 : https://blog.naver.com/daae0609/.. 2018. 5. 28.
[데이터 분석] 의미있는 피처(컬럼) 선택 데이터의 피처(컬럼)이 많다고 해서 예측이 잘 되는 것은 아니다. y = ax + b 일 때, x값으로 y를 예측한다고 가정하면 a라는 가중치를 찾아내어 향후 X의 값이 들어오면 y를 예측할 수 있다. 하지만 y = aX1 + bX2 + cX3 + dX4 ..... + z 라고 할 때, x변수가 많다고 해서 y를 잘 예측하는 것도 아니다. 따라서 y를 예측하는데 필요한 x를 뽑는 것도 중요하다. 예를 들면 여름에 아이스크림 판매량(y)를 예측하는데 여름의 기온(x1), 아이스크림의 가격(x2), 겨울의 기온(x3)이 있다면, x3이 y를 예측하는데 영향력이 적을 것이다. 하지만 X3를 y값을 예측하기 위한 데이터에 포함하거나 비포함할 때의 차이는 클 수 있다. * 과대적합(overfitting)을 줄이고.. 2018. 5. 17.
[데이터 분석-전처리] 범주형 데이터_원핫인코딩 쉽게하기 범주형 데이터는 숫자의 차이가 의미가 없기 때문에 원핫인코딩/더미화 하여 데이터 처리를 해줘야 한다. 즉, 색상이 1. 빨강2. 노랑3. 파랑 인 경우를 본다면, 1,2,3의 순서나 크기가 데이터 분석에 영향을 줄 수 있기 때문이다. 따라서 빨강인이 아닌지에 대한 여부로 변수를 변경해야 한다. 이렇게 되면 색상 컬럼/변수 하나가 3개의 컬럼으로 증가하여 빨강인지 아닌지, 노랑인지 아닌지, 파랑인지 아닌지로 변경하게 된다. 이런 데이터 변경을 쉽게 해주는 코드들은 아래와 같다. 1. 기본 데이터 셋 만들기 import pandas as pddf = pd.DataFrame([['green', 'M', '10.1', 'class1'], ['red', 'L', '13.5', 'class2'], ['blue', .. 2018. 5. 17.
[데이터 분석-전처리] 범주형 데이터 범주형 데이터는 명목형, 순위형으로 나뉨- 명목형: 어떤 순서도 의미하지 않음 (예: 빨강, 노랑, 파랑)- 순위형: 순위를 매길 수 있음, (예: XL > L > M ) 예제: ''''''''' 범주형 데이터 다루기 '''''''''# 데이터 만들기import pandas as pddf = pd.DataFrame([['green', 'M', '10.1', 'class1'], ['red', 'L', '13.5', 'class2'], ['blue', 'XL', '15.3', 'class1']])df.columns = ['color', 'size', 'price', 'classlabel']print(df) color size price classlabel0 green M 10.1 class11 red L 1.. 2018. 4. 24.
[데이터 분석-전처리] 결측치 처리하는 방법 데이터를 분석하면 가장 많은 시간을 데이터 전처리에 쏟게 된다 오늘은 결측치를 다루는 방법 예제:import pandas as pdfrom io import StringIO csv_data = '''A,B,C,D,1.,2.,3.,4.,5.,6.,,8.,0.0,11.0,12.0'''df = pd.read_csv(StringIO(csv_data), encoding='UTF-8') #StringIO 은 데이터 프레임에 넣어주기 위해 사용 print(df) # 데이터 넣을 떄 ' '공란 주의하고, Unnamed: 4가 생긴 이유는 '/n' 때문에 생김 A B C D Unnamed: 4 0 1.0 2.0 3.0 4.0 NaN1 5.0 6.0 NaN 8.0 NaN2 0.0 11.0 12.0 NaN NaN df = .. 2018. 4. 24.
[이론] 머신러닝 알고리즘 기초 (인공뉴런-퍼셉트론, 에이다라인) Comment: 비정공자의 경우 인공지능/머신러닝을 배울 떄 퍼센트론만 생각할 수 있는데, 에이다라인과 비교하여 알면 좋다 퍼셉트론 관련 내용 참조 : http://yamalab.tistory.com/36 에이다라인 학습- 로지스틱 회귀 모델이나 서포트 벡터 머신과 같은 분류모델에 관한 고급 머신러닝 알고리즘을 이해하기 위한 기초- 페셉트론과의 차이점: 비용함수를 정의하고 최소화하함=> 실수 분류 레이블임. 참고자료 http://coolingoff.tistory.com/8 2018. 4. 24.
머신러닝 관련 알아두면 좋은 내용 [머신러닝] 당신이 당장 알아야 하는 8개의 알고리즘 http://acornedu.blog.me/220972011210 [빅데이터] 하둡과 아파치 스파크 파헤치기 https://acornedu.blog.me/220972011210 2018. 4. 19.
파이썬_머신러닝_딥러닝_ 많이 쓰는 라이브러리 모음_링크 * 파이썬 - python.3(영어) : https://docs.python.org/3/ * 빅데이터 관련 - 크롤링_BeautifulSoup(영어) : https://www.crummy.com/software/BeautifulSoup/bs4/doc/#- 크롤링_BeautifulSoup(한글) : https://cryptosan.github.io/pythondocuments/documents/beautifulsoup4/- 크롤링_selenium (영어) : http://selenium-python.readthedocs.io/- 데이터프레임_pandas (영어) : https://pandas.pydata.org/pandas-docs/stable/- 다차원데이터_numpy +scipy (영어) : https.. 2018. 4. 5.
반응형