반응형

파이썬(Python)/머신러닝(Machine Learning) 9

[Python] 머신러닝 Keras MNIST, CIFAR10 데이터셋이란? 실습

목차 파이썬 Tensorflow의 MNIST 이란? 앞서 포스트에서 데이터셋(Dataset)에 대해 알아보았습니다. MNIST는 텐서플로우(Tensorflow) 라이브러리에서 제공하는 데이터셋 입니다. 위와 같은 손으로 쓴 듯한 숫자 정보를 MNIST에서 가지고 있습니다. 그래서 해당 데이터를 이용해서 머신러닝(Machine Learning) 사용자들은 학습을 통해 해당 숫자를 구분하는 연습을 할 수 있습니다. 그리고 MNIST는 Modified National Institute of Standards and Technology 의 약자로 해당 기관에서 이미지 프로세싱(Image Processing) 학습을 위해 데이터를 제공 합니다. 위 그림과 같은 흑백의 경우 하나의 픽셀이 0~255의 값을 가지고 ..

[머신러닝]데이터 세트(Dataset)란? sklearn iris 예제로 알아보기

목차 Machine Learning 데이터 세트(Dataset)란? 기계학습의 핵심은 데이터를 통해 학습을 하기 때문에 데이터란 기계학습의 근간이라고 할 수 있습니다. 머신러닝을 사용하는 사용자들 간에 데이터의 통일을 위해 암묵적인 합의에 대해 얘기할까 합니다. 데이터 셋은 아래의 2가지 요소로 크게 분류 할 수 있습니다. 행(Row) : Example 열(Column) : Features 아래의 간단한 예제를 통해 쉽게 이해할 수 있습니다. 녹색에 해당하는 행 부분이 예제(Example)이고 열로 표현되는 노란색 부분이 특징(Feature)을 의미합니다. 일반적인 데이터 셋이 그림1과 같이 구성됩니다. 그렇지 않은 경우도 가끔 있으니 데이터셋을 사용하실때 항상 데이터를 확인하셔야 합니다. 그림으로 표현..

머신러닝이란? 분류하기와 간단한 정리글(Machine Learning, Supervised/Unsupervised/Reinforcement Learning)

목차 Machine Learning이란? 분류 하기 위키피디아에서는 위 그림과 같이 AI > ML > Deep Learning 으로 관계를 정의합니다. 머신 러닝이라 함은 1959년에 Samuel에 의해 아래와 같이 정의합니다. Machine Learning: field of study that gives computers the ability to learn without being explicitly programmed 즉, 프로그램된 동작이 아닌 스스로 학습해서 행동하는 것을 머신 러닝이라고 합니다. 그 뒤에 Tom Mitchell 이라는 분이 1988년에 3가지 요소로 머신러닝을 다시 정의하였습니다. Learn from Experience With respect to some class of Ta..

[Python] sklearn 정규 분포 만들기(StandardScaler), 그래프 비교

목차 파이썬 sklearn StandardScaler란? 빅데이터를 처리할때 일반적인 분포 데이터를 정규 분포의 데이터로 정규화(Normalization)하는 일들이 필요 합니다. 정규 분포란 평균(mean)이 0이고 분산(Variance)가 1인 데이터를 의미합니다. 분산에 대한 수식은 아래 링크를 참조하시길 바랍니다. https://scribblinganything.tistory.com/265 평균 제곱, 분산,자유도 (Mean Square, Variance,DOF) 이란? (의미, 계산법) 평균 제곱 (Mean Square) 이란? 평균제곱이란 아래와 같은 수식으로 전개 된다. mean-square 란 신호의 평균 힘(Strength) 또는 파워(Power)를 측정 한 값이다. 그림1은 자동차 진동..

[Python] sklearn 파이프라인(Pipeline) + ColumnTransformers

목차 파이썬 sklearn 파이프라인(Pipeline) 이란? ColumnTransformers는 강력한 기능이지만 Column(열)을 단계별 스텝(Multiple step)으로 처리해야하는 경우 충분하지 않습니다. 파이프라인(Pipeline) 기능은 여러개의 transformer를 체인 형식으로 연결해서 복잡한 프로세스를 단계별로 처리하게 도와 줍니다. 앞서 배운 ConlumnTransformer 함수도 파이프 라인의 체인에 넣을 수 있습니다. 이번 포스트에서 사용할 예제는 아래와 같은 구조로 사용합니다. 그림과 같이 3x5의 행렬에 Non 값을 랜덤하게 넣습니다. 해당 데이터를 원하는 형식으로 가공하는데 ColumnTransformer를 사용해서 가공 합니다. 이때 사용자가 원하는 열부분만을 선택해서..

[Python] sklearn ColumnTransformer이란? 예제 실습(SimpleImputer, fit_transform)

목차 파이썬 ColumnTransformer 란? 파이썬의 머신러닝(Machine Learning)과 데이터 사이언스(Data Science) 파이프라인(Pipeline)에서 데이터 프로세싱(Data Processing)은 가장 시간과 노력이 많이 들어가는 일입니다. 일반적으로 현장에서 가져온 데이터들은 정형화 되지 않고 Machine learning 모델에 적용하기 힘든 형태 입니다. 일부 빠진 값들 표준화 되지 않은 값들 포맷에 맞지 않은 형태의 값들 중복되는 값들 위와 같은 형태들이 모델 적용이 어려운 raw data 들입니다. Sklearn의 ColumnTransformer는 위와 같이 처리가 어려운 값들을 파이프라인(Pipeline) 과정으로 사용자가 머신러닝(Machine Learning)에 ..

[Python] sklearn 경사하강법(Gradient Descent)란? 사용방법 및 예제 실습(SGD)

목차 파이썬 Gradient Descent란? 선형 회기(Linear Regression)는 데이터 셋(Data set)을 대표하는 하나의 선을 구하는 작업이었습니다. 즉, Y = a x X + b에서 기울기 값 a와 절편 값 b를 구하였습니다. 이때 사용된 방식은 RSS(Residual Sum of Squares)이었습니다. 잔차 제곱 방식라고 불리는 예측되는 선형회기 선과 실제 데이터 셋의 제곱 합이 최소가 되게 만드는 선형회기 선을 만드는 작업입니다. 그림에서 파란색선의 제곱의 합을 RSS(Residual Sum of Squares)라고 하고 RSS(Residual Sum of Squares)가 가장 작은 지점의 기울기와 절편을 구하는 알고리즘은 OLS(Ordinary Least Sqaures)라고..

[Python] sklearn train_test_split 사용법, Syntax, 예제

목차 파이썬 sklearn train_test_split 란? Sklearn train_test_split 함수는 데이터(Dataset)를 트레이닝 데이터와 테스트 데이터로 아래와 같이 분류 해줍니다. Training data Test data 머신 러닝(Machine Learning) 알고리즘은 데이터를 분석해서 Performance를 높이는 방식입니다. 머신러닝 모델을 만들었다고 가정을 하면 이 모델이 정상적인 Performance를 보이는지 확인하는 작업이 필요 합니다. 사용자가 가지고 있는 데이터를 Training 과 Test 데이터로 분리 합니다. 그리고 Training 데이터를 사용해서 머신러닝 모델을 만듭니다. 그리고 해당 모델을 Test 데이터로 검증해봅니다. 이때 Sklearn train..

[Python] sklearn 설치 및 기본 회귀 모델 예제 실습(Linear Regression)

목차 sklearn 설치 하기 저는 Visual Studio에서 파이썬 실습을 하고 있기 때문에 Visual Studio에서 sklearn을 설치하도록 하겠습니다. PS D:\Python\test05> pip install sklearn Requirement already satisfied: sklearn in c:\users\forgo\appdata\local\programs\python\python38\lib\site-packages (0.0.post1) [notice] A new release of pip available: 22.2.2 -> 22.3.1 [notice] To update, run: c:\users\forgo\appdata\local\programs\python\python38\py..

반응형