본문 바로가기

Python/MachineLearning17

Logistic Regression - 개념 Linear Regression 에서는각종 데이터들 사이에서어떤 값이 나올지 예측 하는거였다면  Logistic Regression은 조금 다르다로지스틱리그레션은은 답이 0과 1 뿐이며 0일지 1일지 확률을 따지는것 뿐이다    평균값에 가까워지기 위해 변형된것인데기존의 리니어 리그레션 에서 조금 달라지는 모습이 필요하다    비슷한 함수의 이름은 sigmoid function이 시그모이드를 대입하여 일차방정식으로 만드는 것이다 그리하여    0 과 1뿐인 선택지의 확률을 알 수 있게 된다( p 는 확률)     물론 0.5를 기준으로 나뉘어 지게 되지만 0.1, 0.8 같은 값은 충분히 납득이 갈 수치다   from sklearn.linear_model import LogisticRegressioncl.. 2024. 4. 15.
Regression 4) 인공지능 저장 및 사용 2024.04.13 - [MachineLearning] - Regression 3) New 데이터의 예측값은?   앞서 만든 것들을 실제로 사용하려면 2개의 파일이 필요하다바로regressor, ct 인데하나는 예측하는 것이었고하나는 데이터를 입력할때 문자열(지역)을 변환시켜주는 것이었다 그래서 활용을 하려면 저장을 하여 실 서버에 올려야 한다      import joblib 저장을 하기위해선 미리 임포트를 해야 한다   joblib.dump( regressor, 'regressor.pkl' ) ['regressor.pkl'] joblib.dump( ct,'ct.pkl' ).. 2024. 4. 13.
Regression 3) New 데이터의 예측값은? 2024.04.13 - [MachineLearning] - Regression 2) Error, MSE, RMSE   새로운 데이터가 들어왔을때의 예측값 데이터의 내용은 다르지만앞부분은 넘어가고 본편으로 넘어가겠다  「 운영비는 15만 달러, 마케팅비용 40만 달러, 연구개발비 13만 달러 ,회사위치는 florida 에 있다면 예상 수익은?」 이 데이터의 콜럼 순서는연구개발비, 운영비, 마케팅비용, 회사위치였지만 원 핫 인코딩으로 인해 회사지역 맨 앞으로 오게되며회사지역 또한 ['California', 'Florida', 'New York'] 로 0, 1 , 0 이 되고 그렇기에 이렇게 입력이 되게 된다    new_data = np.array([.. 2024. 4. 13.
Regression 2) Error, MSE, RMSE 2024.04.13 - [MachineLearning] - Regression 1) .coef_ , .intercept_ , .predict( )  그리고 이제 오차를 구해보자실제값 - 예측값을 해보면 오차가 나올것이고 오차가 작을수록 똑똑한 인공지능인 것이다     error = y_test - y_prederror15 -4011.7194298 8653.7507896 6259.74728526 1296.3611583 -860.27023311 -7601.235196Name: Salary, dtype: float64  오차가 8천도 있고 -860도 있어오.. 2024. 4. 13.
Regression 1) .coef_ , .intercept_ , .predict( ) 앞서 데이터프로세싱이 완료 됐다면Regression은 이제 시작이다     from sklearn.linear_model import LinearRegression regressor = LinearRegression()        regressor.fit(X_train, y_train) fit은 인공 지능을 학습 시키는것이다 X와 Y의 훈련용 데이터를 입력하여 학습을 시킬 수 있다   regressor.coef_ array([9504.98248109])  regressor.intercept_.. 2024. 4. 13.
Regression - Data Preprocessing (3) - StandardScaler(), MinMaxScaler(), train_test_split() 4. 데이터 표준화 - 피쳐스케일링 앞의 데이터를 무시하고도 나이의 최소값~최대값은 아무리 좋게 봐줘도 0~150을 넘길수가 없는 반면 연봉의 최소값~최대값의 크기는 데이터의 수치로만해도 40k~90k 인데 값을 어느정도 표준화,정규화 시켜줄 필요가 있다 그래야 정확히 학습이 되기 때문 피쳐스케일링 할때에는 X용과 Y용으로 따로 따로 준비한다 하지만 이 경우에서의 Y는 0과 1이 전부이기때문에 따로 할 필요는 없다 4 - 1. 표준화 X_scaler = StandardScaler() X_scaler.fit_transform(X) array([[ 1. , -0.57735027, -0.57735027, 0.69985807, 0.58989097], [-1. , -0.57735027, 1.73205081, -1.. 2024. 4. 13.