딥러닝/[ 이론 ]

로지스틱회귀 데이터 만들기

씩씩한 IT블로그 2020. 10. 28. 12:12
반응형

로지스틱회귀를 위한 범주형 데이터를 만드는 방법

import numpy as np

x_dict={'mean':1, 'std':1, 'n_sample':300, 'noise_factor':0.3,'cutoff':1, 'direction':1}

def dataset_generator(x_dict):
    x_data=np.random.normal(x_dict['mean'], x_dict['std'], x_dict['n_sample']) #np.random.normal(평균,표준편차,갯수) : 평균과 표준편차에 맞는 데이터를 갯수만큼 랜덤으로 만든다
    x_data_noise=x_data+x_dict['noise_factor']*np.random.normal(0,1,x_dict['n_sample'])


    # 반목문 필요없이 아래의 식으로 y값을 만들 수 있다.
    if x_dict['direction']>0:
        y_data=(x_data_noise>x_dict['cutoff']).astype(np.int)
    else:
        y_data=(x_data_noise<x_dict['cutoff']).astype(np.int)


    data=np.zeros(shape=(x_dict['n_sample'],1))
    data=np.hstack((data,x_data.reshape(-1,1),y_data.reshape(-1,1)))
    return data

x_dict={'mean':1, 'std':1, 'n_sample':300, 'noise_factor':0.3, 'cutoff':1, 'direction':1}

data=dataset_generator(x_dict)
print(data)

 

*데이터의 형태변환. (np.hstack()을 이용해서 데이터를 붙인다.)

 

 

반응형