์ฌํํ๋ก์ ํธ : ํ๊ท๋ถ์์ ํ์ฉํ ์๋งํธ ์ฃผ๊ฐ ํ๋งค๋ ์์ธก

๐ฏ ๋ชจ๋ธ๋ง ํ๊ฐ ์งํ ์ค์

๋ชจ๋ธ๋ง ์งํ๋ก ์ฌ์ฉํ ๊ฒ์ (1) R-squared, (2) RMSE ๊ทธ๋ฆฌ๊ณ ๋ง์ง๋ง์ผ๋ก (3) WMAE๋ฅผ ์ค์ ํ๋ค. WMAE๋ Kaggle์ ๋์์๋ ํ๊ฐ์งํ์ธ WMAE๋ฅผ ์ฐธ๊ณ ํ ์งํ๋ก, Holiday๋ฅผ ๋์ฑ ์ ํํ๊ฒ ์์ธกํ๊ธฐ ์ํด ํด๋น ์งํ๋ฅผ ์ฌ์ฉํ๋ค. Holiday ์ฃผ๊ฐ์ธ ๊ฒฝ์ฐ ๊ฐ์ค์น(w)๋ฅผ 5๋ก, ์๋ ๊ฒฝ์ฐ ๊ฐ์ค์น๋ฅผ 1๋ก ํ์ฌ ๊ณ์ฐ์ ์งํํ๋ค.
๐ค ๋จธ์ ๋ฌ๋
์ด๊ธฐ ๋ชจ๋ธ๋ง
์์ ์ ํ๋ ๋ณ์๋ค์ ๋ฐํ์ผ๋ก ์ ํํ๊ท๋ชจํ(Linear Regressior)๊ณผ ์ธ๊ฐ์ง ์์๋ธ ๊ธฐ๋ฒ (Gradient Boosting Regressor, ๋๋คํฌ๋ ์คํธ, Xgboost)์ ํ์ฉํด ํผํ ๋ฐ ํ๊ฐ๋ฅผ ์งํํ๋ค.

๋ชจ๋ธ๋ง ๊ฒฐ๊ณผ ๋ณ์๋ฅผ ์์ ๊ฐ์ด ์ ํํ์ ๋, ๋๋คํฌ๋ ์คํธ ๋ชจ๋ธ์ ์ฑ๋ฅ์ด ๊ฐ์ฅ ์ข์๋ค.
โ ๋๋คํฌ๋ ์คํธ์ Gradient boosting ๋ชจ๋ธ์ ๊ฒฝ์ฐ ๋ชจ๋ธ์ ํ์ต๊ณผ ํผํ ์ ์๊ฐ์ด ๋ง์ด ์์๋์์ง๋ง, ์ ํํ๊ท์ Xgboost์ ๊ฒฝ์ฐ ์๋๊ฐ ๊ต์ฅํ ๋นจ๋๋ค.
๋ณ์ ์ ์
์ดํ๋ก ๋ค์๊ณผ ๊ฐ์ ๊ฐ์ค๋ค์ ์ธ์ ์ต์ ์ ๋ณ์๋ค์ ์ ์ ํด๋๊ฐ๋ค.
1 -1. ๋ ์ง ๋ณ์ ์ ํ : Day vs. Week
๐ก Week๊ฐ Day๋ณด๋ค ๋ฐ์ดํฐ์ ์๊ฐ์ฑ์ ์ ๋ฐ์ํ ๊ฒ์ด๋ค.
๊ทผ๊ฑฐ : ์ฉ์ดํ ๋ถ์์ ์ํด YYYY-MM-DD ํ์์ผ๋ก ๋์ด์๋ Date ์ปฌ๋ผ์ year, month, day๋ก ์ชผ๊ฐ์ ๋ชจ๋ธ๋ง์ ์งํํ๋๋ฐ ์ค์ ๋ก YYYY-MM-DD์ Weekly Sales๋ ๋ง ๊ทธ๋๋ก ํด๋น ์ผ๋ก๋ถํฐ 6์ผ์ ๋ถํฐ ํด๋น์ผ๊น์ง ์ด ์ผ์ฃผ์ผ๊ฐ ์ง๊ณํ ๋งค์ถ์ก์ด๋ค. ๋ฐ๋ผ์ ์๊ณ์ด์ ํน์ฑ์ ์ ๋ฐ์ํ๋ Week๋ณ์(์ผ๋ ์ค ๋ช๋ฒ ์งธ ์ฃผ๊ฐ์ธ์ง)๋ฅผ ํ์ฉํด ๋ชจ๋ธ๋ง์ ํ๋ฉด ์ฑ๋ฅ์ด ๊ฐ์ ๋ ๊ฒ์ด๋ค.
์๋์ ๊ฐ์ด ๋ชจ๋ธ๋ง์ ์งํํ ๊ฒฐ๊ณผ ๋๋คํฌ๋ ์คํธ ๋ชจ๋ธ๊ณผ ์ ํํ๊ท ๋ชจํ์ ์ ์ธํ๊ณ ๋ชจ๋ ๋ชจ๋ธ์์ ์ฑ๋ฅ์ ๊ฐ์ ์ด ์์๋ค. ๋๋คํฌ๋ ์คํธ์์ ์ฑ๋ฅ์ด ๋จ์ด์ง๋๋ผ๋, ์ฃผ์ฐจ๋ฅผ ๋ํํ๋ ๋งค์ถ์ก์ด๋ผ๋ ์ ์์ Week ๋ณ์๊ฐ ์ ํฉํ๋ค๊ณ ํ๋จ, Month์ Day ์ปฌ๋ผ ๋์ Week๋ฅผ ๋ณ์๋ก ์ฌ์ฉํ์๋ค.

1-2. ๊ฒฝ์ ์งํ ์ ํ : CPI vs. Fuel Price vs. Unemployment
๐ก ๊ฒฝ์ ์งํ๋ฅผ ๋ํํ๋ CPI๋ง ์ฌ์ฉํ๋ฉด ๋ชจ๋ธ์ ์ฑ๋ฅ์ด ๊ฐ์ ๋ ๊ฒ์ด๋ค.CPI, Fuel_Price, Unemployment ์ธ ๋ณ์๋ผ๋ฆฌ์ ์๊ด๊ด๊ณ๋ ๋ค๋ฅธ ๋ณ์๋ค๊ณผ์ ์๊ด๊ด๊ณ์ ๋น๊ตํ์ ๋ ๋งค์ฐ ๋์ ํธ์ด๋ค. ๋ฐ๋ผ์ ํผ์ฒ๋ฅผ ์ต์ํ์ผ๋ก ๋ง๋ค๊ธฐ ์ํด ์ธ๊ฐ์ง ๊ฒฝ์ ์งํ ์ค ํ๋์ ๊ฒฝ์ ์งํ๋ฅผ ์ ํํ๊ธฐ๋ก ํ์๋ค.

ver1์์ ์ฑ๋ฅ์ด ๊ฐ์ฅ ์ข์๋ ๋๋คํฌ๋ ์คํธ ๋ชจ๋ธ์ ๋ณ์ ์ค์๋๋ฅผ ํ์ธํ์ ๋, ์ธ ๊ฒฝ์ ์งํ ์ค CPI์ ์ค์๋๊ฐ ๊ฐ์ฅ ๋์๋ค. ๋ฐ๋ผ์ CPI๋ง ๋ณ์๋ก ๋๊ณ ๋ชจ๋ธ๋ง์ ์งํํด๋ณด์๋ค.

1-3. ๊ฐ์ค 1 + ๊ฐ์ค2
1-1๊ณผ 1-2์ ๊ฐ์ค์ด ๋ชจ๋ ์ฐธ์ด๋ฏ๋ก ๋๊ฐ์ง ๊ฐ์ค์ ๊ฒฐํฉํด ๋ชจ๋ธ๋งํด๋ณด์๋ค.

๋ชจ๋ธ๋ง ๊ฒฐ๊ณผ, ์ ํํ๊ท๋ฅผ ์ ์ธํ ์ธ ๋ชจ๋ธ์ ์ฑ๋ฅ์ด ๋ชจ๋ ๊ฐ์ ๋์๋ค. ๋ฐ๋ผ์ 1,2๋ฒ ๊ฐ์ค์ ๊ฒฐํฉํด ์ฑํํ๊ธฐ๋ก ๊ฒฐ์ ํ์๋ค.
2์ฐจ ๋ณ์ ์ ์
๐ก ๋ ๊ฐ์ ๊ฒฝ์ ์งํ ์ค CPI๋ง ์ ํํ๋ ๊ฒ์ด ๊ณผ์ฐ ํฉ๋ฆฌ์ ์ธ๊ฐ?
๊ณผ์ฐ CPI๋ง ์ฌ์ฉํ๋ ๊ฒ์ด ๋ชจ๋ธ์ ์ฑ๋ฅ์ ๊ฐ์ฅ ์ต์ ์ผ๊น. ์ด๋ฅผ ๊ฒ์ฆํ๊ธฐ ์ํด CPI + ์ ๊ฐ, CPI + ์ค์ ๋ฅ ์ ๋ณ์๋ก ๋ฃ์ด ๋ชจ๋ธ๋งํด๋ณด์๋ค.


๋ ๊ฒฝ์ฐ ๋ชจ๋ ์ฑ๋ฅ์ด ๊ฐ์ ๋์ง ์์๋ค. ๋ฐ๋ผ์ ๊ฐ์ค์ ๊ธฐ๊ฐํ๊ณ CPI๋ง ๋ณ์๋ก ์ ํํ๋๊ฒ์ผ๋ก ๊ฒฐ์ ํ๋ค.
4. Year ๋ผ๋ฒจ์ธ์ฝ๋ฉ์ด ํ์์ ์ธ ๊ณผ์ ์ธ๊ฐ?
๋ชจ๋ธ๋ง์ ์ํ ์ ์ฒ๋ฆฌ์ ๊ณ์ฐ์ ํธ์ ๋ฐ ์ค์ฐจ๋ฅผ ์ค์ด๊ธฐ ์ํ ๋ชฉ์ ์ผ๋ก Year ๋ณ์๋ฅผ ๋ผ๋ฒจ์ธ์ฝ๋ฉ ํ Year_le ๋ณ์๋ฅผ ๋ชจ๋ธ๋ง์ ์ฌ์ฉํ์๋ค. ๊ทธ๋ฌ๋ ์ถํ ๋ฐ์ดํฐ๋ฅผ ์ ์ํด ํ ์คํธํ ๋ ๋ฒ์ฉ์ฑ์ ๋์ด๊ธฐ ์ํด์ ๋ผ๋ฒจ์ธ์ฝ๋ฉ์ด ๊ณผ์ฐ ํ์ํ ๊ณผ์ ์ธ์ง ๊ฒ์ฆํด๋ณด์๋ค.

Year ๋ณ์ ์ ์ธ ๋ชจ๋ ๋์ผ์กฐ๊ฑด ํ์ A/B Test๋ฅผ ์งํํ ๊ฒฐ๊ณผ ์ ํํ๊ท ๋ชจ๋ธ์ ์ ์ธํ๊ณ ๋ ์ฑ๋ฅ์ ๋ณํ๊ฐ ์์๋ค. ๋ฐ๋ผ์ ๋ฒ์ฉ์ฑ์ด ์ข์ Year ๋ณ์๋ฅผ ๋ชจ๋ธ๋ง์ ํ์ฉํ๊ธฐ๋ก ํ๋ค.
โ ์ต์ข ๋ณ์
์ ํ๋ ๋ณ์ | CPI_sd, Dept, IsHoliday_le, Size_sd, Store, Temperature_sd, Unemployment_sd, Week, Year
์ ๊ทํ | ์ผ๋ถ ๋ณ์(Store, Dept) ์ ์ธ Sklearn.preprocessing.Standard Scaler ํ์ฉ
์ธ์ฝ๋ฉ | IsHoliday ๋ผ๋ฒจ ์ธ์ฝ๋ฉ
โ ๊ฐ์ฅ ์ฑ๋ฅ์ด ์ข์ ๋ชจ๋ธ Random Forest
'๐ Data Analysis > ๐ฏ Project' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ฌํํ๋ก์ ํธ : ํ๊ท๋ถ์์ ํ์ฉํ ์๋งํธ ์ฃผ๊ฐ ํ๋งค๋ ์์ธก

๐ฏ ๋ชจ๋ธ๋ง ํ๊ฐ ์งํ ์ค์

๋ชจ๋ธ๋ง ์งํ๋ก ์ฌ์ฉํ ๊ฒ์ (1) R-squared, (2) RMSE ๊ทธ๋ฆฌ๊ณ ๋ง์ง๋ง์ผ๋ก (3) WMAE๋ฅผ ์ค์ ํ๋ค. WMAE๋ Kaggle์ ๋์์๋ ํ๊ฐ์งํ์ธ WMAE๋ฅผ ์ฐธ๊ณ ํ ์งํ๋ก, Holiday๋ฅผ ๋์ฑ ์ ํํ๊ฒ ์์ธกํ๊ธฐ ์ํด ํด๋น ์งํ๋ฅผ ์ฌ์ฉํ๋ค. Holiday ์ฃผ๊ฐ์ธ ๊ฒฝ์ฐ ๊ฐ์ค์น(w)๋ฅผ 5๋ก, ์๋ ๊ฒฝ์ฐ ๊ฐ์ค์น๋ฅผ 1๋ก ํ์ฌ ๊ณ์ฐ์ ์งํํ๋ค.
๐ค ๋จธ์ ๋ฌ๋
์ด๊ธฐ ๋ชจ๋ธ๋ง
์์ ์ ํ๋ ๋ณ์๋ค์ ๋ฐํ์ผ๋ก ์ ํํ๊ท๋ชจํ(Linear Regressior)๊ณผ ์ธ๊ฐ์ง ์์๋ธ ๊ธฐ๋ฒ (Gradient Boosting Regressor, ๋๋คํฌ๋ ์คํธ, Xgboost)์ ํ์ฉํด ํผํ ๋ฐ ํ๊ฐ๋ฅผ ์งํํ๋ค.

๋ชจ๋ธ๋ง ๊ฒฐ๊ณผ ๋ณ์๋ฅผ ์์ ๊ฐ์ด ์ ํํ์ ๋, ๋๋คํฌ๋ ์คํธ ๋ชจ๋ธ์ ์ฑ๋ฅ์ด ๊ฐ์ฅ ์ข์๋ค.
โ ๋๋คํฌ๋ ์คํธ์ Gradient boosting ๋ชจ๋ธ์ ๊ฒฝ์ฐ ๋ชจ๋ธ์ ํ์ต๊ณผ ํผํ ์ ์๊ฐ์ด ๋ง์ด ์์๋์์ง๋ง, ์ ํํ๊ท์ Xgboost์ ๊ฒฝ์ฐ ์๋๊ฐ ๊ต์ฅํ ๋นจ๋๋ค.
๋ณ์ ์ ์
์ดํ๋ก ๋ค์๊ณผ ๊ฐ์ ๊ฐ์ค๋ค์ ์ธ์ ์ต์ ์ ๋ณ์๋ค์ ์ ์ ํด๋๊ฐ๋ค.
1 -1. ๋ ์ง ๋ณ์ ์ ํ : Day vs. Week
๐ก Week๊ฐ Day๋ณด๋ค ๋ฐ์ดํฐ์ ์๊ฐ์ฑ์ ์ ๋ฐ์ํ ๊ฒ์ด๋ค.
๊ทผ๊ฑฐ : ์ฉ์ดํ ๋ถ์์ ์ํด YYYY-MM-DD ํ์์ผ๋ก ๋์ด์๋ Date ์ปฌ๋ผ์ year, month, day๋ก ์ชผ๊ฐ์ ๋ชจ๋ธ๋ง์ ์งํํ๋๋ฐ ์ค์ ๋ก YYYY-MM-DD์ Weekly Sales๋ ๋ง ๊ทธ๋๋ก ํด๋น ์ผ๋ก๋ถํฐ 6์ผ์ ๋ถํฐ ํด๋น์ผ๊น์ง ์ด ์ผ์ฃผ์ผ๊ฐ ์ง๊ณํ ๋งค์ถ์ก์ด๋ค. ๋ฐ๋ผ์ ์๊ณ์ด์ ํน์ฑ์ ์ ๋ฐ์ํ๋ Week๋ณ์(์ผ๋ ์ค ๋ช๋ฒ ์งธ ์ฃผ๊ฐ์ธ์ง)๋ฅผ ํ์ฉํด ๋ชจ๋ธ๋ง์ ํ๋ฉด ์ฑ๋ฅ์ด ๊ฐ์ ๋ ๊ฒ์ด๋ค.
์๋์ ๊ฐ์ด ๋ชจ๋ธ๋ง์ ์งํํ ๊ฒฐ๊ณผ ๋๋คํฌ๋ ์คํธ ๋ชจ๋ธ๊ณผ ์ ํํ๊ท ๋ชจํ์ ์ ์ธํ๊ณ ๋ชจ๋ ๋ชจ๋ธ์์ ์ฑ๋ฅ์ ๊ฐ์ ์ด ์์๋ค. ๋๋คํฌ๋ ์คํธ์์ ์ฑ๋ฅ์ด ๋จ์ด์ง๋๋ผ๋, ์ฃผ์ฐจ๋ฅผ ๋ํํ๋ ๋งค์ถ์ก์ด๋ผ๋ ์ ์์ Week ๋ณ์๊ฐ ์ ํฉํ๋ค๊ณ ํ๋จ, Month์ Day ์ปฌ๋ผ ๋์ Week๋ฅผ ๋ณ์๋ก ์ฌ์ฉํ์๋ค.

1-2. ๊ฒฝ์ ์งํ ์ ํ : CPI vs. Fuel Price vs. Unemployment
๐ก ๊ฒฝ์ ์งํ๋ฅผ ๋ํํ๋ CPI๋ง ์ฌ์ฉํ๋ฉด ๋ชจ๋ธ์ ์ฑ๋ฅ์ด ๊ฐ์ ๋ ๊ฒ์ด๋ค.CPI, Fuel_Price, Unemployment ์ธ ๋ณ์๋ผ๋ฆฌ์ ์๊ด๊ด๊ณ๋ ๋ค๋ฅธ ๋ณ์๋ค๊ณผ์ ์๊ด๊ด๊ณ์ ๋น๊ตํ์ ๋ ๋งค์ฐ ๋์ ํธ์ด๋ค. ๋ฐ๋ผ์ ํผ์ฒ๋ฅผ ์ต์ํ์ผ๋ก ๋ง๋ค๊ธฐ ์ํด ์ธ๊ฐ์ง ๊ฒฝ์ ์งํ ์ค ํ๋์ ๊ฒฝ์ ์งํ๋ฅผ ์ ํํ๊ธฐ๋ก ํ์๋ค.

ver1์์ ์ฑ๋ฅ์ด ๊ฐ์ฅ ์ข์๋ ๋๋คํฌ๋ ์คํธ ๋ชจ๋ธ์ ๋ณ์ ์ค์๋๋ฅผ ํ์ธํ์ ๋, ์ธ ๊ฒฝ์ ์งํ ์ค CPI์ ์ค์๋๊ฐ ๊ฐ์ฅ ๋์๋ค. ๋ฐ๋ผ์ CPI๋ง ๋ณ์๋ก ๋๊ณ ๋ชจ๋ธ๋ง์ ์งํํด๋ณด์๋ค.

1-3. ๊ฐ์ค 1 + ๊ฐ์ค2
1-1๊ณผ 1-2์ ๊ฐ์ค์ด ๋ชจ๋ ์ฐธ์ด๋ฏ๋ก ๋๊ฐ์ง ๊ฐ์ค์ ๊ฒฐํฉํด ๋ชจ๋ธ๋งํด๋ณด์๋ค.

๋ชจ๋ธ๋ง ๊ฒฐ๊ณผ, ์ ํํ๊ท๋ฅผ ์ ์ธํ ์ธ ๋ชจ๋ธ์ ์ฑ๋ฅ์ด ๋ชจ๋ ๊ฐ์ ๋์๋ค. ๋ฐ๋ผ์ 1,2๋ฒ ๊ฐ์ค์ ๊ฒฐํฉํด ์ฑํํ๊ธฐ๋ก ๊ฒฐ์ ํ์๋ค.
2์ฐจ ๋ณ์ ์ ์
๐ก ๋ ๊ฐ์ ๊ฒฝ์ ์งํ ์ค CPI๋ง ์ ํํ๋ ๊ฒ์ด ๊ณผ์ฐ ํฉ๋ฆฌ์ ์ธ๊ฐ?
๊ณผ์ฐ CPI๋ง ์ฌ์ฉํ๋ ๊ฒ์ด ๋ชจ๋ธ์ ์ฑ๋ฅ์ ๊ฐ์ฅ ์ต์ ์ผ๊น. ์ด๋ฅผ ๊ฒ์ฆํ๊ธฐ ์ํด CPI + ์ ๊ฐ, CPI + ์ค์ ๋ฅ ์ ๋ณ์๋ก ๋ฃ์ด ๋ชจ๋ธ๋งํด๋ณด์๋ค.


๋ ๊ฒฝ์ฐ ๋ชจ๋ ์ฑ๋ฅ์ด ๊ฐ์ ๋์ง ์์๋ค. ๋ฐ๋ผ์ ๊ฐ์ค์ ๊ธฐ๊ฐํ๊ณ CPI๋ง ๋ณ์๋ก ์ ํํ๋๊ฒ์ผ๋ก ๊ฒฐ์ ํ๋ค.
4. Year ๋ผ๋ฒจ์ธ์ฝ๋ฉ์ด ํ์์ ์ธ ๊ณผ์ ์ธ๊ฐ?
๋ชจ๋ธ๋ง์ ์ํ ์ ์ฒ๋ฆฌ์ ๊ณ์ฐ์ ํธ์ ๋ฐ ์ค์ฐจ๋ฅผ ์ค์ด๊ธฐ ์ํ ๋ชฉ์ ์ผ๋ก Year ๋ณ์๋ฅผ ๋ผ๋ฒจ์ธ์ฝ๋ฉ ํ Year_le ๋ณ์๋ฅผ ๋ชจ๋ธ๋ง์ ์ฌ์ฉํ์๋ค. ๊ทธ๋ฌ๋ ์ถํ ๋ฐ์ดํฐ๋ฅผ ์ ์ํด ํ ์คํธํ ๋ ๋ฒ์ฉ์ฑ์ ๋์ด๊ธฐ ์ํด์ ๋ผ๋ฒจ์ธ์ฝ๋ฉ์ด ๊ณผ์ฐ ํ์ํ ๊ณผ์ ์ธ์ง ๊ฒ์ฆํด๋ณด์๋ค.

Year ๋ณ์ ์ ์ธ ๋ชจ๋ ๋์ผ์กฐ๊ฑด ํ์ A/B Test๋ฅผ ์งํํ ๊ฒฐ๊ณผ ์ ํํ๊ท ๋ชจ๋ธ์ ์ ์ธํ๊ณ ๋ ์ฑ๋ฅ์ ๋ณํ๊ฐ ์์๋ค. ๋ฐ๋ผ์ ๋ฒ์ฉ์ฑ์ด ์ข์ Year ๋ณ์๋ฅผ ๋ชจ๋ธ๋ง์ ํ์ฉํ๊ธฐ๋ก ํ๋ค.
โ ์ต์ข ๋ณ์
์ ํ๋ ๋ณ์ | CPI_sd, Dept, IsHoliday_le, Size_sd, Store, Temperature_sd, Unemployment_sd, Week, Year
์ ๊ทํ | ์ผ๋ถ ๋ณ์(Store, Dept) ์ ์ธ Sklearn.preprocessing.Standard Scaler ํ์ฉ
์ธ์ฝ๋ฉ | IsHoliday ๋ผ๋ฒจ ์ธ์ฝ๋ฉ
โ ๊ฐ์ฅ ์ฑ๋ฅ์ด ์ข์ ๋ชจ๋ธ Random Forest