본문 바로가기

전체 글

(66)
log를 이용한 정규분포 변환(python) import pandas as pd import seaborn as sns import matplotlib.pyplot as plt df = pd.DataFrame(np.array([1, 2, 3, 4, 7, 11, 12, 103, 104, 1005, 1006, 1007]),columns=['col']) # 또는 CSV 임포트 #df = pd.read_csv('test.csv') # 원본값의 distplot그래프 sns.distplot(df["col"],label="col") plt.title('col') #각 선에 라벨링 표기 plt.legend() plt.show() #log를 이용해 변환 df["Log_col"] = np.log1p(df["col"]) # log값의 distplot그래프 sns.di..
스피어만 상관계수(python) 조건 : 변수가 모두 연속형 변수이고 정규성을 따르지 않는 경우에 사용 import pandas as pd import scipy.stats as stats df = pd.DataFrame(np.array([[1, 2], [3, 3], [4, 4], [5, 6]]),columns=['col1','col2']) # 또는 CSV 임포트 #df = pd.read_csv('test.csv') # 스피어만 상관계수 검정 corr = stats.spearmanr(df.col1, df.col2) corr pvalue 필수적이지는 않지만, 일반적으로 0.05이상은 귀무가설, 0.05미만은 대립가설을 채택 일반적으로 해석되는 경향 귀무가설 : 차이가 없다. 효과가 없다. 변수간 영향이 없다. 대립가설 : 차이가 있다. ..
distplot를 이용한 정규분포 확인(python) import pandas as pd import seaborn as sns df = pd.DataFrame(np.array([1, 2, 3, 3, 4, 4, 5, 6]),columns=['col']) # 또는 CSV 임포트 #df = pd.read_csv('test.csv') sns.distplot(df["col"]) plt.title('col') plt.show()
python에서 axis(축) 배열과 axis(축) 1차원 배열 X축만 존재 axis = 0만 존재. 각 값을 의미 대괄호가 1개로 시작 ex) [1,2,3,4,5] import numpy as np x = np.array([1,2,3,4,5]) x.shape # (5,) 5개의 요소 2차원 배열 X축과 Y축이 존재 axis = 0, 1이 존재 0은 X축인 행, 1은 Y축인 열을 의미 depth는 1 대괄호가 2개로 시작 ex) [[ 1, 2 ] ,[ 3, 4 ] ,[ 5, 6 ]] import numpy as np x = np.array([[ 1, 2 ] ,[ 3, 4 ] ,[ 5, 6 ]]) ''' [ [ 1, 2 ] ,[ 3, 4 ] ,[ 5, 6 ] ] ''' x.shape #(3, 2) 1차원인 2개의 요소를 3개의 배열로 ..
ML lab 07-1: training/test dataset, learning rate, normalization 해당 자료는 "모두를 위한 머신러닝/딥러닝 강의"를 보고 개인적으로 정리한 내용입니다. http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io 본 실습의 tensorflow는 1.x 버전입니다. Non-normalized 값에 의해 예측값을 제대로 연산하지 못하는 경우 import tensorflow.compat.v1 as tf tf.disable_v2_behavior() #tensorflow v1호환 import numpy as np # 마지막 열 값이 Y # X변수 중간에 큰 값이 중간에 섞여있음(Non-normalized) xy = np.array([[828.659973, 833.450012, 908100, 828.349976, 831.65..
lec 07-2: Training/Testing 데이타 셋 해당 자료는 "모두를 위한 머신러닝/딥러닝 강의"를 보고 개인적으로 정리한 내용입니다. http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io Evaluation을 잘 하는 방법 전체 데이터셋 중 70% 정도만 학습에 사용 나머지 30%는 테스트 셋으로 구성하여 품질 평가 Validation set training set으로 학습한 모델에서 조금 더 정교하게 튜닝하기 위한 data set cost 함수 등에서 사용되는 상수(람다, learning rate 등)을 튜닝 Online learning training set이 큰 경우 한번에 학습할 경우 메모리 등 리소스가 많이 필요 training set을 여러개로 분리하여 학습 한번 학습한 결과는 ..
lec 07-1: 학습 rate, Overfitting, 그리고 일반화 (Regularization) 해당 자료는 "모두를 위한 머신러닝/딥러닝 강의"를 보고 개인적으로 정리한 내용입니다. http://hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io learning rate cost function 의 그래프 gradient descent 알고리즘에 의해 learning rate 만큼 이동 learning rate를 큰 값을 주는 경우 cost가 가장 작은 곳으로 이동하지 못하고 결국 더 큰 cost 값으로 발산 overshooting learning rate를 작은 값을 주는 경우 cost가 가장 작은 곳으로 이동하지 못하고 중단 보통 cost 값이 변경되지 않는 것처럼 보임 적절한 learning rate를 산정하는 방법 없음 보통 0.01 정도로..
python에서 with문 사용목적 파일 입출력 후 close를 항상 해주어야 하지만, with 사용시에 close를 하지 않아도 되는 이점이 있다. 파일 입출력 f = open('test.txt', 'r') print(f.readline()) f.close() with을 사용해 파일 입출력 f = open('test.txt', 'r') with f as in_file: print(in_file.readlines()) 또는 with open('test.txt', 'r') as in_file: print(in_file.readlines())