일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 크롤링
- cross join
- 프롬프트 엔지니어링
- 군집화
- data analyst
- lambda
- 시각화
- streamlit
- 프로젝트
- 데이터분석
- 태블로
- Chat GPT
- GA4
- 클러스터링
- pandas
- 서브쿼리
- 전처리
- jd
- 기초통계
- SQL
- 기초프로젝트
- 머신러닝
- SQLD
- If
- 데이터 분석
- 히트맵
- Python
- da
- 팀프로젝트
- 최종 프로젝트
- Today
- Total
세조목
이커머스 머신러닝 강의 복습(Ch.1 - Linear Regression) 본문
1. 컬럼 제거
drop(제거할 열, axis=1, inplace=True)
* inplace=True → '컬럼 제거하고 저장하겠다.'
numpy array datatype은 연산 속도가 빠르기 때문에 대규모 데이터를 처리할 때에는 이 datatype을 사용해줘야 함
2. 행 인덱싱
index명으로 인덱싱할때는 loc
순서로 인덱싱할때는 iloc
3. 컬럼 인덱싱(순서로)
컬럼을 순서로 인덱싱하고싶다면
행 인덱싱 적어준 후 콤마 찍고 인덱싱하고싶은 컬럼의 순서에 해당하는 숫자를 적어주면 됨
df.iloc[1:4, 0:3]
4. Linear Regression(statsmodel 활용)
- train, test data 나누기
- 라이브러리 import
- import statsmodels.api as sm
- 변수에 모델 넣고 학습시키기
- model = sm.OLS(y_train, X_train)
- model.fit()
- statsmodels의 장점 → 측정지표들을 summary해줌
- 예측하기
- pred = model.predict(X_test)
- MSE & RMSE 구하기
- from sklearn.metrics import mean_squared_error
- mean_squared_error(y_test, pred)
- y_test는 실제값임
- np.sqrt(mean_squared_error(y_test,pred)) ← RMSE
- MSE를 계산할때 값을 제곱하는데 이렇게 제곱하게되면 에러값이 너무 커지기때문에 Root를 씌워줌
- 단순히 MSE가 작다고해서 좋은 것이아니라 MSE는 상대적이기때문에 다른 모델의 MSE와 비교해서 봐야함
5. Gradient Descent
기울기의 방향성과 강도를 알아서 조정해서 최적의 라인을 찾아주는 알고리즘
이 Gradient Descent가 이용되어서 최적의 라인(Minimum RSS)를 찾을 수 있다.
6. 핵심 측정지표
1. R-squared
1과 0 사이의 숫자이며 수치가 높을수록 좋음
독립변수의 개수를 많으면 수치가 높게 나타날수밖에 없음
SSE : 실제값 - 예측값
SSR : 예측값 - 평균값
R-squared = SST = SSE/SSR
→ (실제값-평균값)에서 얼만큼 개선을 시켰는지를 %로 나타내줌
2. Adj.R-squared
변수가 몇 개 들어갔는지까지 고려해서
가중치를 가지고서 수치를 계산해줌
따라서 불필요한 변수가 들어있다면 이 수치는 높지 않을꺼임
3. coef
직선의 기울기(강도와 방향)를 나타냄
기울기가 클수록 민감하기때문에 해당 변수는 중요한 변수라고 볼수도 있는데
컬럼간 data scale을 맞춰주지 않으면 coef만 가지고서 컬럼의 중요도를 판단할 수 없음
4. P > |t|
p-value를 의미하며
일반적으로 0.05 이하면 양호하다, 다시말해 '이 정보를 신뢰할 수 있다'로 이해할 수 있다.
(내용 보충 예정)
'데이터 분석 공부 > 머신러닝' 카테고리의 다른 글
이커머스 머신러닝 강의 복습(Ch.3 - KNN) (2) | 2024.02.28 |
---|---|
이커머스 머신러닝 강의 복습(Ch.2 - Logistic Regression) (0) | 2024.02.27 |
머신러닝 - 의사결정나무, 랜덤포레스트, KNN, 부스팅 알고리즘(24.02.02) (1) | 2024.02.02 |
머신러닝 - 전처리(인코딩, 스케일링)에서부터 로지스틱 회귀를 적용한 예측 모델 생성까지(feat. 선형회귀와 로지스틱 회귀의 차이, 스케일링의 정규화와 표준화는 각각 언제 사용하는지)(24.02.. (0) | 2024.02.02 |
머신러닝 - 데이터 분리(feat. 과적합)(24.02.01) (0) | 2024.02.01 |