본문 바로가기

DataScience/머신러닝28

머신러닝 :: 이진 논리회귀(Logistic Regression)_캐글(Kaggle) 타이타닉 생존자 예측 머신러닝 이진 논리회귀_캐글(Kaggle) 타이타닉 생존자 예측 1. 이진 논리회귀(Binary Logistic Regression) ※ 타이타닉 생존자 예측하기 1) 데이터 다운로드 · 캐글(Kagge) 사용자 API 정보 입력 import os os.environ['KAGGLE_USERNAME'] = 'username' # username os.environ['KAGGLE_KEY'] = 'key' # key · 데이터 다운로드 !kaggle datasets download -d heptapod/titanic !unzip titanic.zip 2) 필요한 패키지 임포트 from tensorflow.keras.models import Sequential from tensorflow.keras.layers.. 2022. 10. 12.
머신러닝 :: 전처리(Preprocessing)의 개념 및 종류 머신러닝 전처리(Preprocessing)의 개념 및 종류 1. 전처리(Preprocessing) · 넓은 범위의 데이터 정제작업을 뜻한다. 필요없는 데이터를 지우고 필요한 데이터만 남기거나, 비어있는 값(null)이 있는 행을 삭제하는 것, 정규화(Normalization), 표준화(Standardization)등의 많은 작업을 포함하고 있다. 1) 정규화(Normalization) : 데이터가 0과 1사이의 범위 내에 속하도록 만든다. 같은 특성의 대이터 중 가장 작은 값을 0으로, 가장 큰 값을 1으로 지정하고 이 기준에 따라 나머지 데이터들을 변환한다. 2) 표준화(Standardization) : 표준화는 데이터 분포를 정규분포로 변환해준다. 즉 데이터의 평균을 0으로 잡고, 표준편차가 1이 되.. 2022. 10. 12.
머신러닝 :: 머신러닝 모델(SVM, KNN, 의사결정 나무, 랜덤 포레스트) 머신러닝 모델(SVM, KNN, 의사결정나무, 랜덤 포레스트) 1. SVM(Support Vector Machine) · 아래 그림의 오른쪽 그래프처럼 각 서포트 벡터를 구분할 수 있는 축을 그리고 margin을 계산한다. SVM에서는 margin이 최대가 되도록 모델을 학습시킨다. · 위의 그림에서는 x1, x2 두가지의 특징으로 구분했을 경우이지만, 두개의 특징으로도 구분이 되지않는 경우가 생길 수 있다. 이 때에는 x3, x4, ...의 특징을 추가하여 feature(특성)를 3차원 이상으로 만들어줄 수 있다. Feature가 늘어날 수록 classifier의 성능은 높아진다. 2. KNN(k-Nearest Neighbors) · 가까운 거리 내의 개체를 보고 비슷한 특성을 가진 개체끼리 군집화하는.. 2022. 10. 12.
머신러닝 :: 논리 회귀(Logistic Regression) 개념 머신러닝 논리 회귀(Logistic Regression) 1. 논리 회귀(Logistic Regression) 1) Logistic Function(=Sigmoid Function) · 로지스틱 함수는 어떤 입력값(x)에도 출력결과(y)가 항상 0에서 1사이의 값이 된다. 다시 말하면, x값이 음수방향으로 갈수록 출력값이 0에 수렴하고, 양수방향으로 커질 수록 출력값이 1에 수렴하는 함수이다. 아래 그림의 경우 초록색 선을 임계치(Threshold)로 사용하여 0.5를 통과하면 Pass, 통과하지 않으면 Fail 등과 같이 판단기준으로 사용할 수 있다. 경우에 따라서 임계치는 높이거나 낮추도록 조정할 수 있다. 2) 논리회귀에서의 식 · 시그모이드 함수에 선형회귀식을 대입하여 사용한다. · 이 때 손실함.. 2022. 10. 11.
머신러닝 :: 캐글(kaggle) 데이터셋을 활용한 선형회귀 실습(2) 캐글(Kaggle) 선형회귀 분석 : Single-variable linear regression, optimizer(Adam, SGD) 1. 캐글(Kaggle) 데이터셋 준비하기 1) Salary 데이터셋을 활용한 선형회귀 예측 · 먼저 아래 사이트에서 csv 데이터를 받아와서 분석코드를 짰다. · 데이터 모습은 간단히 아래와 같았다. · 데이터를 받아오기 위해 환경설정을 하고 아래와 같이 자료를 받아 압축을 풀고 셋팅하였다. import os os.environ['KAGGLE_USERNAME'] = 'username' # username os.environ['KAGGLE_KEY'] = 'key' # key !kaggle datasets download -d rsadiq/salary """ Downlo.. 2022. 10. 11.
머신러닝 :: 캐글(kaggle) 데이터셋을 활용한 선형회귀 실습 캐글(Kaggle) 선형회귀 분석 : Single/Multi-variable linear regression 1. 캐글(Kaggle) 데이터셋 준비하기 1) Kaggle 데이터셋 가져올 준비하기 ① 캐글(Kaggle) 회원가입 → Account(계정) ② API - Create New API Token 클릭하여 kaggle.json 다운로드 ③ 브라우저에서 json 파일을 열어 username 및 key 복사 ④ 아래 코드에 자신의 username 및 key를 붙여넣어 환경변수 설정 실행 import os os.environ['KAGGLE_USERNAME'] = '' # 본인의 username os.environ['KAGGLE_KEY'] = '' # 본인의 key 2) 광고 데이터셋 다운로드 ① 원하는 .. 2022. 10. 11.
머신러닝 :: 선형회귀(Linear Regression) 분석 실습(Tensorflow, Keras) 머신러닝 선형회귀 분석(tensorflow, keras) 1. 텐서플로(Tensorflow)를 활용한 선형회귀 분석 · · 먼저 텐서플로우를 아래와 같이 임포트 한다. Alias는 관례적으로 tf로 지정한다. import tensorflow as tf · 텐서플로는 v1버전을 사용하기 위해 아래와 같이 호출하여 사용한다. # tf.compat.v1. tf.compat.v1.disable_eager_execution() · 사용하려는 데이터셋을 정의한다. 아래에서 입력은 x_data, 출력은 y_data이다. x_data = [[1, 1], [2, 2], [3, 3]] y_data = [[10], [20], [30]] · X, Y를 넣어줄 공간(placeholder)을 정의해준다. 괄호 안에는 데이터 형식.. 2022. 10. 11.
Web 개발 :: 파이썬 django 인스타그램 클론 코딩 완료, 머신러닝_TIL#27 ■ JITHub 개발일지 27일차 □ TIL(Today I Learned) :: Django 인스타그램 클론 코딩, 머신러닝 선형회귀, 경사하강법, 데이터셋 분할 등 1. 머신러닝 기초 이론 - 알고리즘이란? : 수학과 컴퓨터 과학, 언어학 또는 관련 분야에서 어떠한 문제를 해결하기 위해 정해진 일련의 절차나 방법을 공식화한 형태로 표현한 것, 계산을 실행하기 위한 단계적 절차 - 위키피디아 - 회귀와 분류 1) 회귀(Regression) : 입력값에 따른 출력값을 연속적인 실수값으로 예측 2) 분류(Classification) : 입력값이 따른 출력값을 계층으로 분류하여 결과값을 정리하는 방식. 이진분류(Binary classification)와 다중분류(Multi-class classification.. 2022. 10. 10.
반응형