목록머신러닝 (5)
라떼는말이야
당첨 확률이 높은 숫자 10개는 다음과 같다. 17, 25, 13, 9, 14, 36, 22, 7, 20, 33 분석 방법 및 나의 생각 1회 ~ 976회의 데이터를 가지고 딥러닝 알고리즘(LSTM)으로 학습을 시켜 1 ~ 45의 숫자가 각각 다음 회차(977회)에 몇 %의 확률로 적중할 것인지 분석한 결과이다. 참고로 LSTM은 RNN 계열이고, 시계열 데이터에서 주로 사용하는 알고리즘이며 이전의 결과가 다음의 결과에 영향을 미치는 데이터를 학습시키는데 사용된다. 즉, 시간에 따라 변하는 집 값의 변화 추이, 주가의 변동, 자연어 처리 등을 학습할 때 주로 사용하는 알고리즘이다. 지금까지 당첨된 번호들이 다음 결과와 연관이 있다는 가정 하에 LSTM 알고리즘을 사용하게 된다. 결과를 보면 알겠지만 당연..
# 라이브러리 사용 import tensorflow as tf import pandas as pd # 학습할 데이터를 준비 파일경로 = 'https://raw.githubusercontent.com/blackdew/tensorflow1/master/csv/iris.csv' 아이리스 = pd.read_csv(파일경로) # 원핫 인코딩 아이리스 = pd.get_dummies(아이리스) # 독립변수, 종속변수 print(아이리스.columns) 독립 = 아이리스[['꽃잎길이', '꽃잎폭', '꽃받침길이', '꽃받침폭']] 종속 = 아이리스[['품종_setosa', '품종_versicolor', '품종_virginica']] print(독립.shape, 종속.shape) Index(['꽃잎길이', '꽃잎폭', ..
활성화 함수 (Activation function) 입력 신호의 총합이 임계값을 넘어 설 때 특정값을 출력하는 함수. 계단 함수, 시그모이드 함수, ReLU 함수 등 다양한 활성화 함수가 존재. 계단 함수 (Step function) import numpy as np import matplotlib.pyplot as plt def stepfunc(x): return np.where(x
머신러닝 프로세스 1) 데이터 수집 단계 모든 데이터는 ‘컴퓨터가 이해할 수 있는’ 형식을 갖추어야 한다. 데이터 수집은 다양한 채널을 통해 이루어질 수 있다. 하드웨어로 수집 한다거나 웹 서버의 정보를 크롤링하거나, 이미 운영 중인 솔루션 또는 운영체제 자체에서 자동으로 기록하는 로그 정보도 좋은 데이터가 될 수 있다. 데이터가 어느 정도로 필요한 지 미리 규정짓는 것은 의미가 없다. 가능한 많은 데이터 확보가 우선 시 된다. 2) 특징 공학(Feature Engineering) 특징 공학 : 모델의 성능을 좌우하는 핵심 요소로, 머신 러닝 프로세스에서 가장 중요한 역할을 담당한다. 특징 공학은 데이터의 의미를 이해하고, 조작하고, 특징을 추출하고, 변환하는 모든 과정을 포함한다. (1) 관찰과 전처리..
인공지능 두 가지 방식 - 데이터 중심 : 관찰과 가정을 바탕으로 한 경험을 통해 판단 - 알고리즘 중심 : 수학과 공학적인 방식으로 판단 예) 바둑의 경우 경우의 수가 매우 커서 알고리즘 만으론 부족하다. 알고리즘 기반으로 많은 게임 시뮬레이션을 통해 알고리즘을 보완해 나간다(데이터 기반 + 알고리즘 기반) 머신러닝 : 데이터에서 찾은 패턴을 토대로 미래를 예측하고, 상황을 판단하는 기술 머신러닝의 세 가지 영역 - 지도 학습 - 비 지도 학습 - 강화 학습 지도 학습 : 데이터와 정답지를 함께 사용해 하나의 함수를 유추하는 방법. 대표적으로 얼굴 인식, 주가 예측, 종양 판단 등 비지도 학습 : 정답지 없이 데이터만으로 데이터에 숨겨진 구조를 파악하여 함수를 찾아내는 방법. 아마존을 포함한 기업형 쇼..