(UPDATED) Python์ ์ด์ฉํ ๊ฐ์ธํ ์ถ์ฒ์์คํ | ์ถ์ฒ์๊ณ ๋ฆฌ์ฆ | ์ถ์ฒ์ธ๊ณต์ง๋ฅ
๋ค์ํ ์ถ์ฒ ์๊ณ ๋ฆฌ์ฆ ๋์ ์๋ฆฌ๋ฅผ ์ดํดํจ์ผ๋ก์จ ์ฌ๋ฌ๋ถ๋ง์ ๊ฐ์ธํ ์ถ์ฒ ์๊ณ ๋ฆฌ์ฆ์ ๋ง๋ค์ด๋ณด์ธ์!
์๊ฐ์ 1,070๋ช
๋์ด๋ ์ด๊ธ
์๊ฐ๊ธฐํ ๋ฌด์ ํ

- ๋ฏธํด๊ฒฐ
๊ฐ์ ์๋ฃ ์ด๊ฒ ๋ง๋์?
๊ธํฉ๋๋ค. ์๊ฐ ์ฑ๋ฆฐ์ง๋ก ๊ฒฐ์ ๋ฅผ ํ๋๋ฐ, ๊ฐ์ ์๋ฃ์ ์์ค ์ฝ๋ ๋ชจ๋ ๋น ํ์ผ์ด ๋ค์ด๋ฐ์ ์ง๋๊ฒ ๋ง๋์? ์์ถ์ ํ์ด๋ ๊ทธ๋ ๋ค์ (์ ํํ๊ฒ๋ ๊ฐ์ ์๋ฃ๋ OT pdf ํ์ผ ํ๋ ๋ฟ์ ๋๋ค)<p style="text
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ w j
ใป
2๋ฌ ์
0
57
3
- ๋ฏธํด๊ฒฐ
6์ฅ Keras๋ก MF ๊ตฌํํ๊ธฐ ํ์ต ๊ฒฐ๊ณผ
- ํ์ต ๊ด๋ จ ์ง๋ฌธ์ ๋จ๊ฒจ์ฃผ์ธ์. ์์ธํ ์์ฑํ๋ฉด ๋ ์ข์์! - ๋จผ์ ์ ์ฌํ ์ง๋ฌธ์ด ์์๋์ง ๊ฒ์ํด๋ณด์ธ์. - ์๋ก ์์๋ฅผ ์งํค๋ฉฐ ์กด์คํ๋ ๋ฌธํ๋ฅผ ๋ง๋ค์ด๊ฐ์. - ์ ๊น! ์ธํ๋ฐ ์๋น์ค ์ด์ ๊ด๋ จ
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ part-spt
ใป
9๋ฌ ์
0
152
2
- ํด๊ฒฐ
์ด์ฌ์์ ์ง๋ฌธ
์ฃ์กํฉ๋๋ค. ์ ๊ฐ ์ด์ ๊ณต๋ถ๋ฅผ ์์ํ๋ ์ฌ๋์ด๋ผ ๋ฐ๋ณด ๊ฐ์ ์ง๋ฌธ์ด์ด๋ ์ดํด ๋ถํ๋๋ฆฝ๋๋ค. ์ฝ๋๋ PDF๋
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ daniel.na
ใป
์ผ ๋ ์
0
108
1
- ํด๊ฒฐ
์ฝ๋ ๊ณต์ ํด๋๊ฐ ๋น์ด ์์ต๋๋ค.
์ฝ๋ ๊ณต์ ๋ฅผ ํ์ จ๋ค๊ณ ํ์ฌ ๋ค์ด๋ฐ์๋ ๋น zipํ์ผ์ด๋ผ๊ณ ๋จ๋ค์. ํ์ธ ๋ถํ๋๋ฆฝ๋๋ค.
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ ์์ฑ์ ์์
ใป
0
174
1
- ํด๊ฒฐ
์ฝ๋ ๊ณต์ ๊ด๋ จ ๋ถํ๋๋ฆฝ๋๋ค.
์๋ ํ์ธ์. ์ข์ ๊ฐ์ ๊ฐ์ฌํฉ๋๋ค.์ง์ ํ์ดํ ํด๋ณด๋ผ๋ ์๋ฏธ์์ ์ฝ๋ ๊ณต์ ๊ฐ ์ด๋ ต๋ค๊ณ ํ์ จ๋๋ฐ์. ์๋ ๊ธ๋ค์ ๋ณด๋ ๋ง์ ๋ถ๋ค์ด ์ฝ๋ ๊ณต์ ๋ฅผ ์์ฒญํ์ จ์ต๋๋ค. ์๊ฐ ๋ถ์กฑ์ผ๋ก ๋์ผ๋ก๋ง ํ์ตํ๊ฒ ๋๋๋ฐ,์ง์ ์ฝ๋ฉ์์ ํด
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ Sonny
ใป
1
251
2
- ํด๊ฒฐ
section 4 ๋ค๋ฒ์งธ ๊ฐ์์์ pd.merge(x_train, users) ์๋ฌ ๋ฐ์
merged_ratings = pd.merge(x_train, users) ๋ฌธ์ฅ์ ์คํํ๋ฉด ์๋์ ๊ฐ์ Error๊ฐ ์ถ๋ ฅ๋ฉ๋๋ค. "No common columns to perform merge on. "pandas
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ kalenert
ใป
0
279
1
- ํด๊ฒฐ
section 2 ๋ค๋ฒ์งธ ๊ฐ์ score(cf_gender) ์คํํ๋ฉด Error ๋ฐ์ํฉ๋๋ค.
File "", line 1, in File "C:/Users/jungsuk.hahn/PycharmProjects/recommendation_system/01_lecture.py", line 15
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ kalenert
ใป
0
196
1
- ํด๊ฒฐ
MF์๊ณ ๋ฆฌ์ฆ์์ ์ง๋ฌธ์ด์์ต๋๋ค.
์๋ ํ์ธ์! ๊ฐ์๋ฅผ ๋ฃ๋ค ์์ฉํด๋ณด๋ ๊ณผ์ ์์ ์ง๋ฌธ์ด์์ต๋๋ค. ํ๋ฒ ํ์ต์ํจ ๋ชจ๋ธ์์ ์ฌ์ฉ์์ ๋ฐ์ดํฐ๋ฅผ ๋ ์ถ๊ฐํด์ ๋์ ์ผ๋ก ๋ชจ๋ธ์ ์ ๋ฐ์ดํธ ์ํค๊ณ ์ถ์ต๋๋ค. ๊ทธ๋์ ์จ๋ผ์ธํ์ต์ ์งํํ๋ ค๊ณ ํ๋๋ฐ, sgd๋ฉ์๋์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ์ฌ ์ ๋ฐ์ดํธ๋ฅผ ์งํํ๋ ๋ฐฉ
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ he
ใป
0
360
1
- ํด๊ฒฐ
ean_rating = np.dot(sim_scores,movie_ratings) / sim_scores.sum() ๋ถ๋ถ์์ ์ง๋ฌธ์ด์์ต๋๋ค.
ean_rating = np.dot(sim_scores,movie_ratings) / sim_scores.sum()
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ he
ใป
0
304
1
- ํด๊ฒฐ
score๋ฅผ ์คํํ๋ฉด ํญ์ nan์ด ์ถ๋ ฅ๋ฉ๋๋ค
์๋ ํ์ธ์! score๋ฅผ ์คํํ ๋๋ง๋ค nan์ด ์ถ๋ ฅ์ด๋์ ์๋ชป์ด ๋ถ๋ถ์ด ์๋ ์ฌ๋ฌ๋ฒ ์ฒดํฌํด๋ดค๋๋ฐ ๋์ ํ ๋ชจ๋ฅด๊ฒ ์ด์ ์ง๋ฌธ๋จ๊ฒจ๋ด ๋๋ค..import pandas as pdimport osimport numpy as np
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ he
ใป
0
318
1
- ํด๊ฒฐ
user_id๊ฐ ์ธ๋ฑ์ค๋ฒ์๋ฅผ ๋ฒ์ด๋ ๊ฐ์ผ๋ก ๋ค์ด์ต๋๋ค
# Gender ๊ธฐ์ค ์ถ์ฒ def cf_gender(user_id,movie_id): if movie_id in rating_matrix.columns: # print(use
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ he
ใป
0
248
1
- ํด๊ฒฐ
์ธ๋ฑ์ค ์นผ๋ผ์ ์ด๋ป๊ฒ ์ ๊ทผํด์ผํ๋์
# ๋ฐ์ดํฐ train, test set ๋ถ๋ฆฌ from sklearn.model_selection import train_test_split x = ratings.copy() y = ratin
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ he
ใป
0
221
1
- ํด๊ฒฐ
์ ๊ณตํด์ฃผ์ ๋ฐ์ดํฐ๋งํฌ์ ๋ค์ด๊ฐ๋ฉด 404๊ฐ ๋จ๋๋ฐ์?
์ ๊ณตํด์ฃผ์ ๋ฐ์ดํฐ๋งํฌ์ ๋ค์ด๊ฐ๋ฉด 404๊ฐ ๋น๋๋ค. ํ์ธ๋ถํ๋๋ฆฝ๋๋ค
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ he
ใป
0
358
1
- ํด๊ฒฐ
์ฝ๋ ์๋์์ฑ ์๋๊ฐ ์๋นํ ๋๋ฆฐ๋ฐ ๊ฐ์ ํ ๋ฐฉ๋ฒ์ด ์์๊น์?
๊ฐ๋ น item_similarity๋ผ๋ ๋ณ์๋ฅผ ์น ๋ item๊น์ง๋ง ์น๋ฉด item์ผ๋ก ์์ํ๋ ๋ณ์๋ค์ ์ถ์ฒ๋ชฉ๋ก์ ๋ณด์ฌ์ฃผ๋๋ฐ ์ด ๋ชฉ๋ก์ด ๋์์ง๋ ์๋๊ฐ ์ฝ 4์ด ์ ๋ ๊ฑธ๋ฆฝ๋๋ค. ๊ฐ์์์์์ ๋ณด๋ฉด ํ์ดํ์ ํ์๋ง์ ๋ฐ๋ก๋ฐ๋ก ๋จ๋ ๊ฒ์ ํ์ธํ ์ ์์๋๋ฐ
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ sj8504123
ใป
0
294
1
- ํด๊ฒฐ
ValueError: setting an array element with a sequence
์๋ ๋ถ๋ถ์์ ๋ถ๊ท ์ผํ ๋ฐ์ดํฐ์์ ๋ํ๋ด๋ ์๋ฌ๊ฐ ๋ฐ์ํ๋๋ฐ ์ด์ ๋ฅผ ๋ชป์ฐพ๊ฒ ์ต๋๋ค.<img src="https://cdn.inflearn.com/public/files/posts/f74e0f7c-ba99-49d1-964e-c494a743a81c/imag
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ sj8504123
ใป
0
464
1
- ํด๊ฒฐ
users์ ๋ํ ์ธ๋ฑ์ค ์ค์ ๊ธฐ์ค
์๋ ์ฝ๋์ ๊ฐ์ด users์ ๋ํด user_id ์นผ๋ผ์ ์ธ๋ฑ์ค๋ฅผ ์ค์ ํ ๋์ ํ์ง ์์ ๋ ๊ฐ๊ฐ ๋ค๋ฅธ ๋ถ๋ถ์์ ์๋ฌ๊ฐ ๋ฉ๋๋ค. ๋์ ๋ฐ๋ผ ์ธ๋ฑ์ค๋ก ์ก์์ผํ ๋๋ ์๊ณ ์ก์ง ์์์ผ ํ ๋๋ ์๋ ๊ฑฐ๋ผ๋ฉด ๊ทธ ๊ธฐ์ค์ด ๋ฌด์์ผ์ง ๊ถ๊ธํฉ๋๋ค.<code cla
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ sj8504123
ใป
0
283
1
- ํด๊ฒฐ
ppt ์๋ฃ
ppt ์๋ฃ๊ฐ ์๋์ ๊ฐ์ ํ๋ฉด์ด ๋จ๋ฉด์ ์ด๋ฆฌ์ง๊ฐ ์๋๋ฐ ๋ญ๊ฐ ๋ฌธ์ ์ธ ๊ฑธ๊น์..?<img src="https://cdn.inflearn.com/public/files/posts/58302468-833a-44e6-b909-232331d070c2/imag
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ 954qew
ใป
0
283
1
- ํด๊ฒฐ
train_test_split์ ๊ดํ ์ง๋ฌธ์ ๋๋ค.
์๋ ํ์ธ์, ์์ ์ ๋ค์ผ๋ฉด์ ๊ถ๊ธํ ์ ์ด ์๊ฒจ ์ฌ์ญค๋ด ๋๋ค. train_test_split() ๋ฉ์๋๋ฅผ ์ฐ์ค ๋, x ๊ฐ์ผ๋ก ratings ์ ์ฌ์ฉํ๊ณ , y๊ฐ์ผ๋ก user_id ๋ฅผ ์ฌ์ฉํ๋๋ฐ, ์ด ๋ถ๋ถ์ด ์ ์ง๊ด๊ณผ ๋ค๋ฅธ๊ฒ ๊ฐ์ต๋๋ค. x, y ๊ฐ์ ์ค์ ํ
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ ๋ฐ๋ณํ
ใป
0
325
1
- ํด๊ฒฐ
Timestamp ์ ๊ฑฐ ์ด์
์๋ ํ์ธ์! ๊ฐ์ ์ ๋ฃ๊ตฌ์์ต๋๋ค ํน์ timestamp๋ฅผ ์ ๊ฑฐํ๋ ์ด์ ๊ฐ ์ด๋ค๊ฒ์ธ์ง ์์ธํ ์ ์ ์์๊น์? ์ํ์ถ์ฒ ๋ฐ์ดํฐ์์ ๋ ์ง๊ฐ ๋ณ์๋ก ํ์ํ ๊ฒฝ์ฐ๋ ์๋์?? ๋ ์๋ฅผ๋ค์ด 5๋ ์น์ ๊ณ ๊ฐ ๊ตฌ๋งค ๋ฐ์ดํฐ๋ฅผ ํ์ตํ๋ค๊ณ ํ ๋ ์ฐ๋๋ณ๋ก ๊ณ ๊ฐ ๋์ด๊ฐ ๋ฌ๋ผ์ง๋๋ฐ
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ jieunn.lee
ใป
0
389
1
- ํด๊ฒฐ
์ฌ์ฉ์ ์ง๋จ๋ณ ์ถ์ฒ ๊ฐ์ 11:56 ๋ถ๋ถ์ ์ฑ๋ณ์ ๋ฐ๋ฅธ ์์ธก๊ฐ ๊ณ์ฐ์์ MergeError๊ฐ ๋ฐ์ํฉ๋๋ค.
# ์ฑ๋ณ์ ๋ฐ๋ฅธ ์์ธก๊ฐ ๊ณ์ฐ merged_ratings = pd.merge(x_train,users) users = users.set_index('user_id') g_mean = merged_ratings[['movie_
๋ฅ๋ฌ๋์ถ์ฒ-์์คํ ์ดํธ๋ฆ
ใป
0
433
1






