Neural Collaborative Filtering์ ์ง๊ธ์ผ๋ก๋ถํฐ ์ฝ 4๋ ์ 2017๋ ์ ๋ฐ์ ๋ ๋ ผ๋ฌธ์ผ๋ก, ๊ฐํํ์ต, ๊ทธ๋ํ ๋ฑ ๋ค์ํ ๋ฅ๋ฌ๋ ์ ๊ทผ๋ฒ๋ค์ด ์ถ์ฒ์์คํ ๊ณผ ์ตํฉ๋๊ณ ์๋ ํ์ฌ์ ๋น๊ตํด๋ณด๋ฉด ๊ฝค ์ค๋๋ ๋ ผ๋ฌธ ๋ฐ ์ฐ๊ตฌ๋ผ๊ณ ํ ์ ์์ต๋๋ค. ๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ ํด๋น ๋ ผ๋ฌธ์ ๋ฆฌ๋ทฐํ๊ฒ ๋ ์ด์ ๋ ์ถ์ฒ ์์คํ ์ ์ธ๊ณต์ ๊ฒฝ๋ง, Neural Network๊ฐ ์ฑ๊ณต์ ์ผ๋ก ์ ์ฉ๋ ์ด๊ธฐ ์ฌ๋ก๋ผ๊ณ ์๊ฐ๋๊ธฐ ๋๋ฌธ์ ๋๋ค.
Neural Collaborative Filtering์ ๋ฆฌ๋ทฐํจ์ผ๋ก์จ, ์ถ์ฒ์์คํ ์ ๋ฅ๋ฌ๋์ด ์ฒ์ ์ ์ฉ๋๊ณ ํ์ฉ๋๋ ๊ณผ์ ์ ๋ํด์ ์ดํดํ ์ ์๋ค๊ณ ์๊ฐํ์ต๋๋ค. ๋ํ NCF๋ ๋ชจ๋ธ ๊ตฌ์กฐ๊ฐ ๋ณต์กํ๊ธฐ ๋ณด๋ค๋ ๋จ์ํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ์ด๋์ด๋ด๊ธฐ ์ํ ๋ฐ์ดํฐ์ ๊ณผ์ ์ด ๋น๊ต์ ๋จ์ํ๊ธฐ ๋๋ฌธ์ ๋ฆฌ๋ทฐ ๋ฐ ์ค์ต์ ์งํํ๊ฒ ๋๋ฉด ์ถ์ฒ ๊ฒฐ๊ณผ๋ฅผ ์ด๋์ด ๋ด๋ ๊ณผ์ ์ ์ดํดํ๊ธฐ ์์ํฉ๋๋ค. ๋ํ Neural Collaborative Filtering์ ์ดํ์ ๋ฑ์ฅํ ๋ง์ ๋ชจ๋ธ์์ ํด๋น ๊ตฌ์กฐ๊ฐ ์ฐจ์ฉ๋๋ ๊ฒฝ์ฐ๊ฐ ๊ต์ฅํ ๋ง๊ธฐ ๋๋ฌธ์ ์์ธํ๊ฒ ์ดํดํ๋ค๋ฉด ์ถํ ๋ค๋ฅธ ๋ชจ๋ธ์ ์ดํดํ ๋์๋ ๋์์ด ๋ง์ด ๋ ๊ฒ์ ๋๋ค.
๋ ผ๋ฌธ์ด ๋ฐ์ ๋ 2017๋ ์๋ ๋ฅ๋ฌ๋์ด ์์ฑ ์ธ์, ์ปดํจํฐ ๋น์ ๊ทธ๋ฆฌ๊ณ ์์ฐ์ด ์ฒ๋ฆฌ์ ๊ฐ์ ๋ถ์ผ์์ ๋ค์ํ ์ฑ๊ณต์ ์ธ ๊ฒฐ๊ณผ๋ฅผ ๋ณ์์ง๋ง, ์ถ์ฒ ์์คํ ์์์ ๋ฅ๋ฌ๋ ๊ธฐ์ ์ ์๋์ ์ผ๋ก ์ ์ ์ ์ฉ ์ฌ๋ก๋ฅผ ๋ณด์ฌ์์ต๋๋ค.
์ด๋ฒ ๋ ผ๋ฌธ์์๋, implicit feedback์ ๊ธฐ๋ฐํ collaborative filtering์ด๋ผ๋ ์ถ์ฒ ์๊ณ ๋ฆฌ์ฆ์ ๋ฅ๋ฌ๋์ ์ ์ฉํ์ฌ ๋ค๋ค๋ณด๋๋ก ํ์์ต๋๋ค.
์ถ์ฒ ์์คํ ์ ๋ฅ๋ฌ๋์ ํ์ฉํ ์ต๊ทผ(2017๋ ) ์ฐ๊ตฌ๋ค์ ๋ณด๊ฒ ๋๋ฉด, ๋๋ถ๋ถ ์์ดํ ์ ์ค๋ช ํ ์คํธ, ๋ ธ๋์ ์ํฅ ์ ๋ณด์ ๊ฐ์ ๋ถ๊ฐ ์ ๋ณด(auxiliary information)๋ฅผ ํ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์์ต๋๋ค.
collaborative filtering์ key factor์ ๋ชจ๋ธ๋งํ๊ธฐ ์ํด์๋ ์ ์ ์ ์์ดํ ๊ฐ์ interaction์ด ์๊ตฌ๋๋ฉฐ, ์ฌ์ ํ matrix factorization ๊ธฐ๋ฒ์ ์์กดํ๊ณ ์ ์ ์ ์์ดํ ์ latent features์ ๋ด์ ๊ณผ์ ์ ๊ฑฐ์น๊ฒ ๋ฉ๋๋ค.
๋ด์ ๊ณผ์ ์ ๋น์ ํ์ ๊ด๊ณ๋ฅผ ํ์ตํ ์ ์๋ ์ธ๊ณต์ ๊ฒฝ๋ง ๊ตฌ์กฐ๋ก ๋์ฒดํ๋ค๋ฉด, Neural Network-based Collaborative Filtering, NCF ๋ผ๋ ๋ชจ๋ธ์ ์ ์ํ ์ ์์ต๋๋ค.
๋น์ ํ์ ์ธ ํน์ง์ ๋ชจ๋ธ์์ ํ์ตํ๊ธฐ ์ํด, ์ ์ ์ ์์ดํ ๊ฐ์ interaction์ ํ์ตํ ์ ์๋ MLP๋ฅผ ์ ์ฉํ ์ ์์ต๋๋ค.
์ด๋ฒ ๋ ผ๋ฌธ์์ ์ ์ํ NCF ๋ชจ๋ธ์ ์ค์ ๋ฐ์ดํฐ ์ ์์ ๋ค๋ฅธ ์ต์ ๋ชจ๋ธ๋ค๊ณผ ๋น๊ตํด์ ๋ณด๋ค ์ข์ ์ฑ๋ฅ์ ๋ณด์ด๊ธฐ๋ ํ์ต๋๋ค.
๋ฅ๋ฌ๋์ ํ์ฉํ ์ถ์ฒ ์์คํ ์ด ๋ณด๋ค ์ฐ์ํ ์ถ์ฒ ์ฑ๋ฅ์ ๋ณด์ด๋ ๊ฒ์ ์ด๋ฒ ํ๋ก์ ํธ๋ฅผ ํตํด ๊นจ๋ฌ์ ์ ์์์ต๋๋ค.
์ ๋ณด ํญ๋ฐ ์๋์์, ์ถ์ฒ ์์คํ ์ e-์ปค๋จธ์ค, ์จ๋ผ์ธ ๋ด์ค, sns ๋ฑ๊ณผ ๊ฐ์ ์จ๋ผ์ธ ์๋น์ค์์ ์ ๋ณด ๊ณผ๋ค๋ฅผ ์ํํ๋ ์ค์ํ ์ญํ ์ ํ๊ณ ์์ต๋๋ค.
๊ฐ์ธํ๋ ์ถ์ฒ ์์คํ ์ ๋ฐฉ๋ฒ์ ์์ดํ ์ ๋ํ ์ ์ ์ ์ ํธ๋์ ๊ณผ๊ฑฐ interaction ์ ๋ณด๋ฅผ ํ์ฉํ๋ collaborative filtering๊ฐ ์์ต๋๋ค.
Netfix prize๊ฐ ์ ๋ช ํด์ง๋ฉด์, MF๋ ์ ์ฌ ์์ธ ์ถ์ฒ ์๊ณ ๋ฆฌ์ฆ์ de facto(๊ธฐ๋ณธ์ ์ธ) ์๊ณ ๋ฆฌ์ฆ์ด ๋์์ต๋๋ค.
๋ง์ ์ฐ๊ตฌ๋ค์ด MF ์๊ณ ๋ฆฌ์ฆ์ ๊ฐ์ ํ๊ธฐ ์ํด์, neighbor-based models์ ์ ์ฉํด๋ณด๊ฑฐ๋, ์์ดํ ๋ฐ์ดํฐ์ ํ ํฝ ๋ชจ๋ธ๋ง์ ๊ฒฐํฉํ๊ฑฐ๋, ์ฌ๋ฌ feature๋ฅผ ํฌ๊ด์ ์ผ๋ก ์ฌ์ฉํ๊ธฐ ์ํด factorization machine ๋ชจ๋ธ๋ก ํ์ฅํ๊ธฐ๋ ํ์ต๋๋ค.
collaborative filtering์์ MF๊ฐ ํจ๊ณผ์ ์์๋ ๋ถ๊ตฌํ๊ณ , ๋ด์ ์ ํตํ interaction์ ํ์ตํ๋ ๊ฒ์ ์ฑ๋ฅ ํฅ์์ ๋ฐฉํดํ๋ ๊ฒ์ผ๋ก ์ ์๋ ค์ ธ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, explicit feedback์ ํตํ ํ์ ์์ธก ๊ณผ์ ์์, ์ ์ ์ ์์ดํ ์ bias ํญ์ ์ถ๊ฐํจ์ผ๋ก์จ ์ฑ๋ฅ์ ํฅ์ํ ์ ์๋ค๋ ๊ฒฐ๊ณผ๊ฐ ์์ต๋๋ค.
์ฆ, ํญ์ ์ถ๊ฐํ๋ ๊ฒ๊ณผ ๊ฐ์ ์๋๋ ๋ด์ ๊ณผ์ ์ ์์ด ์์ฃผ ์ฌ์ํ ๋ณ๊ฒฝ ํน์ ์๋์ ๋ถ๊ณผํ์ง๋ง, ์ ์ ์ ์์ดํ ๊ฐ์ latent feature interaction์ ํ์ตํ๋ ๊ฒ์ ์์ด์๋ ๋งค์ฐ ๊ธ์ ์ ์ธ ํจ๊ณผ์ ๊ฒฐ๊ณผ๋ฅผ ์ด๋์ด ๋ผ ์ ์์์ต๋๋ค.
latent features์ ์ ํ์ ์ผ๋ก ๊ณฑํ์ฌ ๊ฒฐํฉํ๋ ๋ด์ ๊ณผ์ ์ ์ ์ interaction ๋ฐ์ดํฐ์์ ๋ณต์กํ ๊ด๊ณ๋ฅผ ํ์ตํจ์ ์์ด ์ถฉ๋ถ์น ๋ชปํ๋ค๊ณ ํด์ํ ์ ์์ต๋๋ค.
์ด ๋ ผ๋ฌธ์์๋ handcraft๊ฐ ์ฃผ๋ก ์ด๋ค์ก๋ ๋ง์ ์ด์ ์ฐ๊ตฌ์๋ ๋ฌ๋ฆฌ, ๋ฅ๋ฌ๋์ ํ์ฉํจ์ผ๋ก์จ ๋ฐ์ดํฐ๋ก๋ถํฐ interaction์ ํ์ตํ๋ ๊ณผ์ ์ ๋ํด ์ฐ๊ตฌํ๊ณ ์์ต๋๋ค.
์ธ๊ณต์ ๊ฒฝ๋ง์ continuous function(์ฐ์ ํจ์)๋ฅผ ๊ทผ์ฌํจ์ด ๊ฐ๋ฅํ๋ค๋ ๊ฒ์ด ๊พธ์คํ ๋ฐํ์ง๊ณ ์์ผ๋ฉฐ, ์ต๊ทผ์๋ ๋ฅ๋ฌ๋์ด ๋ณด๋ค ๋ค์ํ ๋ถ์ผ์์ ํ์ฉ๋ ์ ์์์ด ์ฆ๋ช ๋๊ณ ์์ต๋๋ค.
๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ , MF์ ๋ฐฉ๋ํ ์ฐ๊ตฌ์๋ฃ์ ๋์กฐ์ ์ผ๋ก ์ถ์ฒ ์์คํ ์ ๋ฅ๋ฌ๋์ด ํ์ฉ๋ ์ฐ๊ตฌ ์ฌ๋ก๊ฐ ์๋์ ์ผ๋ก ๊ต์ฅํ ์ ์์ต๋๋ค.
์ด๋ฒ ๋ ผ๋ฌธ์์๋ collaborative filtering์ ๊ด์ ์์ ์ธ๊ณต์ ๊ฒฝ๋ง ์ ๊ทผ๋ฒ์ ๊ตฌ์ฒดํํจ์ผ๋ก์จ ์์ ์ฐ๊ตฌ ์๋ฃ๋ค์ ๋ฌธ์ ์ ์ ์ ์ํฉ๋๋ค.
์ด ๊ณผ์ ์์๋, ๋น๋์ค๋ฅผ ๋ณด๊ฑฐ๋, ๋ฌผํ์ ๊ตฌ๋งคํ๊ฑฐ๋, ์์ดํ ์ ํด๋ฆญํ๋ ํ๋์ ๋ํ ์ ์ ์ ์ ํธ๋๋ฅผ ๊ฐ์ ์ ์ผ๋ก ๋ฐ์ํ implicit feedback์ ๋ณด๋ค ์ด์ ์ ๋ง์ถ์์ต๋๋ค.
๋ฆฌ๋ทฐ๋ ํ์ ๊ณผ ๊ฐ์ explicit feedback๊ณผ ๋น๊ตํ์ ๋, implicit feedback์ ์๋์ ์ผ๋ก ํน์ ๋ ์ฝ๊ฒ ์ถ์ ํ๊ณ ์์งํ ์ ์์ต๋๋ค.
์ด๋ฒ ๋ ผ๋ฌธ์์๋, ๋ฅ๋ฌ๋์ ํ์ฉํ์ฌ noisy implicit feedback์ ๋ชจ๋ธ๋งํ๋ ๊ฒ์ ์ฃผ๋ก ๋ค๋ค๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.
๋ ผ๋ฌธ์ ์ฃผ์ ๋ด์ฉ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ ์ ์ ์์ดํ ์ latent feature๋ฅผ ๋ชจ๋ธ๋งํ๋ ์ธ๊ณต์ ๊ฒฝ๋ง ๊ตฌ์กฐ๋ฅผ ์ ์ํ๊ณ ๊ตฌ์ฒดํํ์ฌ, ์ธ๊ณต์ ๊ฒฝ๋ง ๊ธฐ๋ฐ collaborative filtering ๋ชจ๋ธ์ธ NCF๋ฅผ ์ค๊ณํ์์ต๋๋ค.
*MF ์๊ณ ๋ฆฌ์ฆ์ ๊ธฐ๋ณธ์ ์ผ๋ก ๋ฐ๋ฅด๋ NCF๋ MLP๋ฅผ ํตํด ๊ณ ์ฐจ์์ ๋น์ ํ์ ์ธ ํน์ง์ ํ์ตํ ์ ์์ต๋๋ค.
2๊ฐ์ง ํ์ค ๋ฐ์ดํฐ์ NCF๋ฅผ ์ ์ฉํด๋ด์ผ๋ก์จ, ๋ฅ๋ฌ๋์ ํ์ฉํ collaborative filtering์ ์ฑ๋ฅ ํฅ์๊ณผ ํจ๊ณผ์ฑ์ ๋ํด ๋ณด์ฌ์ค๋๋ค.
์ ์ ์ ์์ดํ ์ ์๋ฅผ M๊ณผ N์ผ๋ก ํ๋ R ํ๋ ฌ์ ์ ์ํ ๋, feedback์ ๋ฐ์ ์ฌ๋ถ๋ฅผ ๊ธฐ์ค์ผ๋ก 1 / 0 ์ผ๋ก ํ๋ ฌ์ ์ ์ํ ์ ์์ต๋๋ค.
์ด ๋, implicit feedback์ด๋ ์ ์ ์ ์์ดํ ์ interaction์ ์๋ฏธํ ์๋ ์์ผ๋, ๋ฐ์ ์ฌ๋ถ๋ฅผ ์ ์ ๊ฐ ์์ดํ ์ ์ ํธํ๋ค๊ณ ์ ์ํ ์๋ ์์ต๋๋ค.
๋ฐ๋๋ก, interaction์ด ๋ฐ์ํ์ง ์์๋ค๊ณ ํ๋๋ผ๋, ์ ์ ๊ฐ ์์ดํ ์ ์ซ์ดํ๋ค๊ณ ์๊ฐํ๊ธฐ ๋ณด๋ค๋ ์ธ์งํ์ง ๋ชปํ๋ ๊ฒฝ์ฐ์๋ interaction์ด ๋ฐ์ํ์ง ์๊ธฐ ๋๋ฌธ์ 0์ด ๋ถ์ฌ๋ ์ ์์ต๋๋ค.
์ด๋ฌํ ๊ฒฝ์ฐ๊ฐ ์ ์ ์ ์ ํธ๋์ ๋ํ noise ์ ํธ๋ฅผ ์๋ฏธํ๋ implicit data๋ก๋ถํฐ ๋ฐ์ํ๋ ํ์ต์ ์ด๋ ค์์ด๋ผ๊ณ ํ ์ ์์ต๋๋ค.
๋ํ, ์ ์ ์ ์์ดํ ๊ฐ์ interaction์ด ๋ฐ์ํ์ง ์๋ ๊ฒฝ์ฐ์๋, ์ด๋ฅผ missing data๋ก ์ฒ๋ฆฌํด์ผ ํ๋ฉฐ ๋ถ์ ์ ์ธ feedback์ ๋ํ interaction์ ํ์ ํ๊ธฐ ์ด๋ ต์ต๋๋ค.
implicit feedback์ ์ถ์ฒ ๊ณผ์ ์์ ๋ฐ์ํ๋ ๋ฌธ์ ๋ก๋, ์์ดํ ์ ๋ญํนํํ๊ธฐ ์ํ unobserved enteries(=interaction์ด ์กด์ฌํ์ง ์๋ ์์ดํ set)์ score๋ฅผ ์์ธกํ๋ ๋ค์ ๊ณผ์ ์์ ๋ฐ์ํฉ๋๋ค.
์ ์์์ ๋ํด ์กฐ๊ธ ์ค๋ช ํ์๋ฉด, ๋ ์ ์ ์ ์์ดํ ์ด ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ก์ ๋, score๋ฅผ returnํ๋ interaction function์ด๋ฉฐ, ๋ ํด๋น function์ parameter๋ผ๊ณ ์๊ฐํ๋ฉด ๋ ๊ฒ ๊ฐ์ต๋๋ค.
์ด ๋, ํด๋น function์ parameter๋ฅผ ์ต์ ํํ ์ ์๋ ๋ชฉ์ ํจ์, objective function์ ๋ ๊ฐ์ง๊ฐ ์์ต๋๋ค.
pointwise loss์ ๊ฒฝ์ฐ์๋ ์ค์ ๊ฐ๊ณผ ์์ธก๊ฐ์ ์ฐจ์ด๋ฅผ ์ต์ํ(minimize) ํ๋ ๋ชฉ์ ํจ์๋ก ๋ณดํต ํ๊ท ๋ฌธ์ ์์ ์ฌ์ฉ๋๊ณค ํฉ๋๋ค.
pairwise loss์ ๊ฒฝ์ฐ์๋ ๊ด์ธก๋ ๋ฐ์ดํฐ(interaction์ด ๋ฐ์ํ)๊ฐ ๊ทธ๋ ์ง ์์ ๋ฐ์ดํฐ์ ๋นํด ๋งํน์ด ๋์์ผ ํ๋ค๋ ์์ด๋์ด์ ๊ธฐ๋ฐํ์ฌ, ๊ด์ธก๋ ๋ฐ์ดํฐ์ ๊ด์ธก๋์ง ์์ ๋ฐ์ดํฐ์ ๋ญํน ์ฐจ๋ฅผ ์ต๋ํ(maximize)ํ๋ ๋ชฉ์ ํจ์์ ๋๋ค.
๋ค์ ๋์๊ฐ์, ๋ ผ๋ฌธ์์ ์ ์ํ๋ NCF ๋ชจ๋ธ ๊ตฌ์กฐ๋ ์ธ๊ณต์ ๊ฒฝ๋ง์ ์ฌ์ฉํจ์ผ๋ก์จ ์ ๋ ๋ชฉ์ ํจ์๋ฅผ ๋ชจ๋ ๋ง์กฑํ๋ ๊ฒฐ๊ณผ๋ฅผ ์ป์ ์ ์๋ค๊ณ ํฉ๋๋ค.
MF, Matrix Factorization์ ์ ์ , ์ ์์ดํ , ์ latent features์ธ ์ ๋ฐ๋ณต์ ์ธ ๋ด์ ์ ํตํด interaction์ธ ๋ฅผ ์ถ์ ํ๊ฒ ๋ฉ๋๋ค.
์์ ๊ฐ์ด ์ ์ -์์ดํ ํ๋ ฌ์ด ์กด์ฌํ๊ฒ ๋๋ค๋ฉด, ๋ ์ ์ ๊ฐ ์ ์ฌ๋๋ ๋ด์ ํน์ ์ฝ์ฌ์ธ ์ ์ฌ๋, ์์นด๋ ์ ์ฌ๋๋ฅผ ํตํด ๊ตฌํด๋ณผ ์ ์์ต๋๋ค.
์ฌ๊ธฐ์, ์ ์ ์ ์ ์ ์ฌ๋๋ฅผ ๋ก ํํํ ๋, ์ ์ฌ๋ ์์ผ๋ก ์ ๋ ฌํ๊ฒ ๋๋ฉด ์ ์ (2,3), ์ ์ (1,2), ์ ์ (1,3) ์์ผ๋ก ๋์ ์ ์ฌ๋๋ฅผ ๋ณด์ด๋ฉฐ ์ ์ฌ๋ ๊ด๊ณ๋ฅผ ๋ฒกํฐ ๊ณต๊ฐ์์ ํํํ๊ฒ ๋๋ฉด ์ฐ์ธก ๊ทธ๋ฆผ๊ณผ ๊ฐ์ต๋๋ค.
์ ๋ฆฌํ์๋ฉด, Matrix Factorization์ ๋จ์ํ๊ณ ๊ณ ์ ๋ ๋ด์ ๊ณผ์ ์ ์ ์ฐจ์ latent space์์ ๋ณต์กํ ์ ์ ์ ์์ดํ ์ ๊ด๊ณ๋ฅผ ์ถ์ ํ๋ ๊ฒ์ ํ๊ณ์ ์ ๊ฐ์ง๋ค๊ณ ํ ์ ์์ต๋๋ค.
์ด๋ฌํ ๋ฌธ์ ์ ์ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ ์ค ํ๋๋ ๋งค์ฐ ํฐ K์ฐจ์์ latent factor๋ฅผ ์ง์ ํ๋ ๊ฒ์ด์ง๋ง, ์ด ๋ฐฉ๋ฒ ๋ํ ๋ชจ๋ธ์ generalization ๊ด์ ์ ์์ด ๋ถ์ ์ ์ธ ๊ฒฐ๊ณผ๋ฅผ ๋ณ์ ์ ์์ต๋๋ค.
์ธ๊ณต์ ๊ฒฝ๋ง์ CF์ ์ ์ฉํ๊ธฐ ์ํด์, ์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ํ ์ธต์ ๊ฒฐ๊ณผ๊ฐ ๋ค๋ฅธ ์ธต์ ์ ๋ ฅ์ผ๋ก ์ด๋ฃจ์ด์ ธ interaction์ ์ถ์ ํ๋ MLP ๊ตฌ์กฐ๋ฅผ ์ ์ฉํด ๋ณผ ์ ์์ต๋๋ค.
์ ๋ ฅ์ธต์ ๋ ๋ฒกํฐ๋ ๊ฐ๊ฐ ์ ์ ์ ์์ดํ ์ ๋ฒกํฐ๋ฅผ ์๋ฏธํ๋ฉฐ, ๋ค์ํ ๋ฐฉ๋ฒ์ผ๋ก ์๋ฒ ๋ฉ๋ ์ ์์ต๋๋ค.
์ด ๊ตฌ์กฐ์์๋ ๊ธฐ๋ณธ์ ์ธ CF ํ๊ฒฝ์ ๊ตฌ์ฑํ๊ธฐ ์ํด์ ์ค์ง ์ ์ ์ ์์ดํ ์ idx๋ฅผ ํ์ฉํ์ฌ input feature๋ฅผ ๊ตฌ์ฑํ์์ผ๋ฉฐ, ์ํซ ์ธ์ฝ๋ฉ ํํ๋ก ์ ๋ ฅ๋ ์ ์์ต๋๋ค.
Embedding layer์์๋ Fully-connected layer๋ฅผ ํตํด ์ ๋ ฅ์ธต์ ๋ฒกํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก dense vector๋ฅผ ์ป์ ์ ์์ต๋๋ค.
์ด ๋ ์ป์ dense vector๋ฅผ ํํ ๋งํ๋ ์ ์ ์ ์์ดํ ์ latent vector๋ผ๊ณ ํ ์ ์์ผ๋ฉฐ, latent vecotr๋ฅผ neural collaborative filtering layers๋ผ๊ณ ํ ์ ์๋ MLP ๊ตฌ์กฐ์ ์ ๋ ฅํ๊ฒ ๋๋ฉด์ score๋ฅผ ์์ธกํ๋ ๊ณผ์ ์ ๊ฐ์ง๊ฒ ๋ฉ๋๋ค.
Fully-connected layer๋ฅผ ํตํด dense vector๋ฅผ ์ป๋ ๊ณผ์ ์ hidden layer์ weight(๊ฐ์ค์น)๊ฐ ์ ๋ฐ์ดํธ๋๋ ๊ฒฐ๊ณผ๋ฌผ์ด๋ผ๊ณ ์๊ฐํ๋ฉด ๋ ๊ฒ ๊ฐ์ต๋๋ค.
MLP ๊ตฌ์กฐ๋ ์ต์ข ์ ์ผ๋ก ํน์ ์ ์ ์ ํน์ ์์ดํ ์ score ๋ฅผ ์ค์ ๊ฐ๊ณผ์ ์ฐจ์ด๋ฅผ ์ต์ํํ๋ pointwise loss๋ฅผ ์ ์ฉํ์ฌ ์ถ์ ํ๊ฒ ๋ฉ๋๋ค.(ํด๋น ๋ ผ๋ฌธ์์๋ ์ธ๊ณต์ ๊ฒฝ๋ง ๋ชจ๋ธ๋ง์ ์ง์คํ๊ธฐ ์ํด์ Bayesian Personalized Ranking์ด๋ margin-based loss์ ๊ฐ์ pairwise loss์ ๋ํ ๊ณผ์ ์ ๊ณ ๋ คํ์ง ์์๋ค๊ณ ํฉ๋๋ค.)
3.1.1 Learning NCF
์ค์ฐจ๋ฅผ ํ์ฉํ๋ pointwise loss์์๋ ์ ๋ถํฌ์ ๊ทผ๊ฑฐํ์ฌ ๊ด์ธก์น๋ฅผ ์ค๋ช ํ๊ธฐ ๋๋ฌธ์ interaction์ ๋ฐ์ ์ฌ๋ถ 1 / 0 ์ผ๋ก ์ด๋ฃจ์ด์ ธ ์๋ implicit data์ ์ ์ฉํ๊ธฐ ์ ํฉํ์ง ์๋ค๊ณ ํฉ๋๋ค.
๊ทธ๋ ๊ธฐ ๋๋ฌธ์ implicit data์ binaryํ ํน์ง์ ๊ณ ๋ คํ์ฌ logistic ํน์ probit function์ธ probabilistic function์ ์ฌ์ฉํ๊ณ ์ถ์ ํ๊ณ ์ ํ๋ ๊ฐ [0, 1]์ ๋ฒ์๊ฐ์ ๊ฐ์ง๋๋ก ์ค์ ํ ์ ์์ต๋๋ค.
๊ฒฐ๊ตญ Objective Function์ ๋ค์๊ณผ ๊ฐ์ด ์ค์ ํ ์ ์๋๋ฐ, binary cross-entropy loss์ ๊ฐ๋ค๊ณ ์ดํดํ ์ ์์ต๋๋ค.
ํด๋น ์น์ ์์๋ ์ ์ํ NCF ๋ชจ๋ธ ๊ตฌ์กฐ์์ ์ด๋ค์ง๋ Matrix Factorization์ ๋ํด ๋ค๋ฃจ๊ฒ ๋ฉ๋๋ค.
GMF๋ ๋ณธ๋์ Matrix Factorization๊ณผ ํฌ๊ฒ ๋ค๋ฅธ ์ ์ ์์ง๋ง ๋ด์ ์ธ ์๋ element-wise product๊ฐ ์ด๋ค์ง๊ณ , edge weights์ activation function์ ์ฌ์ฉํ๋ค๋ ์ ์์ ์ฝ๊ฐ์ ์ฐจ์ด๋ฅผ ์ฐพ์๋ณผ ์ ์์์ต๋๋ค.
์ด๋ ๊ฒ ๊ธฐ์กด MF์ ์ฝ๊ฐ์ ๋ค๋ฅธ ๊ตฌ์กฐ๋ฅผ ๋ณด์ด๋ GMF๊ฐ ๊ฐ์ง๋ ์ฅ์ ์ผ๋ก๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๊ฐ์ค์น์ non-uniform ํน์ง์ผ๋ก ํ์ตํ๊ฒ ๋๋ฉด allows varing importance of latent dimension ํ ์ ์๋ค๊ณ ํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ non-linear function์ ์ ์ฉํ๊ฒ ๋๋ฉด linearํ MF ๋ชจ๋ธ ๋ณด๋ค ํ๋ถํ ํํ๋ ฅ์ ๊ฐ์ง ์ ์์ต๋๋ค.
NCF ๋ชจ๋ธ์์๋ ์ ์ ์ ์์ดํ ์ด๋ผ๋ 2๊ฐ์ง ๋ฒกํฐ๋ฅผ ์ ๋ ฅ์ผ๋ก ๋ฐ๊ธฐ ๋๋ฌธ์ ๋ ๋ฒกํฐ๋ฅผ ์ฐ๊ฒฐ(concat)ํ๋ ๊ฒ์ผ๋ก MLP์ ๋ํ ์ ๋ ฅ ๋ฒกํฐ๋ฅผ ๊ตฌ์ฑํ ์ ์์ต๋๋ค.
๋ํ ์ ์ ์ ์์ดํ ๊ฐ์ ๋ณต์กํ interaction ๊ด๊ณ๋ฅผ ํ์ตํ๊ธฐ ์ํด์ hidden layer๋ฅผ ์ฌ๋ฌ ๊ฐ ์ถ๊ฐํจ์ผ๋ก์จ flexibilityํ๊ณ non-linearityํ ๋ฅ๋ฌ๋์ ์ฅ์ ์ ๋ชจ๋ธ์ ์ ์ฉํ ์ ์์ต๋๋ค.
concat๋ ์ ๋ ฅ ๋ฒกํฐ๊ฐ layer๋ฅผ ํต๊ณผํ๋ฉด, ์ ํ ๊ณ์ฐ๊ณผ ๋น์ ํ ๊ณ์ฐ์ ๋ฐ๋ณต์ด ์ด๋ค์ง๊ฒ ๋๊ณ output layer์์ sigmoid function์ ์ ์ฉํจ์ผ๋ก์จ ํน์ ์ ์ ์ ํน์ ์์ดํ ๊ฐ์ interaction ๋ฐ์ ์ฌ๋ถ์ ๋ํ ํ๋ฅ ๊ฐ์ ์ถ์ ํ ์ ์๊ฒ ๋ฉ๋๋ค.
๊ฐ์ฅ ๋จ์ํ ๋ฐฉ๋ฒ์ผ๋ก๋ GMF์ MLP ๋ชจ๋ ๊ฐ์ embedding layer๋ฅผ ๊ณต์ ํ๋ ๊ฒ์ด๋ฉฐ, ๊ฐ ๋ชจ๋ธ์ ๊ฒฐ๊ณผ๊ฐ์ ๊ฒฐํฉํ์ฌ ํ๋ฅ ๊ฐ์ ์ถ์ ํ๋ ๊ฒ์ ๋๋ค.(๊ฐ์ embedding layer๋ฅผ ๊ณต์ ํ๋ค๋ ๊ฒ์ ๊ฐ์ embedding vector๋ฅผ ์ฌ์ฉํ๋ค๋ ๊ฒ์ผ๋ก ์ดํดํ๋ฉด ๋ ๊ฒ ๊ฐ์ต๋๋ค.)
ํ์ด๋ธ๋ฆฌ๋(fused) ๋ชจ๋ธ์ ์ ์ฐ์ฑ์ ๋ถ์ฌํ๊ธฐ ์ํด์, GMF์ MLP์ ๋ค๋ฅธ embedding layer๋ฅผ ์ฌ์ฉํจ์ผ๋ก์จ ๋ค๋ฅธ embbedding vector๋ฅผ ์ฌ์ฉํ๊ณ ๊ฐ ๋ชจ๋ธ์ ๊ฒฐ๊ณผ๊ฐ์ ์ฐ๊ฒฐ(concat)ํ์ฌ ํ๋ฅ ๊ฐ์ ์ถ์ ํ ์ ์์ต๋๋ค.
RQ1 ์ ์ํ NCF ๊ธฐ๋ฒ์ด implicit CF ๊ธฐ๋ฒ์์ ๋์ ์ฑ๋ฅ์ ๋ณด์ด๋๊ฐ?
RQ2 ์ ์ํ ์ต์ ๊ตฌ์กฐ๊ฐ ์ถ์ฒ ๊ณผ์ ์ ์์ด ์ด๋ป๊ฒ ์๋ํ๋๊ฐ?
RQ3 DNN ๊ตฌ์กฐ๊ฐ ์ ์ ์์ดํ ์ interation์ ํ์ตํจ์ ์์ด ํจ๊ณผ์ ์ธ๊ฐ?
์ฑ๋ฅ ํ๊ฐ๋ฅผ ์ํ HR@10๊ณผ NDCH@10์ ๋ํ ๊ฐ ๋ชจ๋ธ ๋ณ ์ฑ๋ฅ ํ๊ฐํ์ ๋๋ค.
์๋จ ์ฑ๋ฅ ํ๊ฐํ์ x์ถ์ธ Factors๋ ๋ง์ง๋ง hidden layer์ ์ฐจ์์ ์๋ฏธํ๋ฉฐ, ์ฌ๊ธฐ์๋ model capability ๊ทธ๋ฆฌ๊ณ predictive factors๋ผ๊ณ ํฉ๋๋ค.
ํ๋จ ์ฑ๋ฅ ํ๊ฐํ๋ ๊ฐ ์ฑ๋ฅ ์งํ์ Top-K๋ฅผ ์๋ฏธํ๋ฉฐ, ์ด ๋์๋ NeuMF๊ฐ ๊ฐ์ฅ ์ข์ ์ฑ๋ฅ์ ๋ณด์ ๋๋ค.
Iteration์ ๋ฐ๋ฅธ ๊ฐ history์ negative sampling ratio์ ๋ํ ์ฑ๋ฅ ํ๊ฐํ์ ๋๋ค.
์๋จ history ํ๋ฅผ ํตํด 'The above findins provide empirical evidence for the rationality and effectiveness of optimizing the log loss for learning from implicit data'. ๋ผ๊ณ ํ๋๋ฐ, ์ ํํ ์ด์ ๋ฅผ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ์๋ง, ํ์ต์ด ์งํ๋จ์ ๋ฐ๋ผ loss๊ฐ ์ค์ด๋ค๊ณ ์ฑ๋ฅ์ด ํฅ์๋จ์ผ๋ก์จ ์ ์ํ NeuMF๊ฐ implicit data์ ์ ํฉํ๋ค๋ ๊ฒ์ ์๋ฏธํ๋ ๊ฒ ๊ฐ์ต๋๋ค.(๊ทธ๋ ์ง ์๋ค๋ฉด loss๊ฐ ์ค์ด๋ค์ง๋, ์ฑ๋ฅ์ด ์ข์์ง์ง๋ ์์ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค.)
pairwise objective function์ positive์ negative๊ฐ 1๋1์ ์์ด ์ด๋ค์ ธ์ผํ๋ ๋ฐ๋ฉด์ pointwise loss์ ํตํด ์ํ๋ง ๋น์จ์ ์กฐ์ ํ ์ ์์๊ณ , negative sampling์ ๋น์จ์ ๋ค๋ฅด๊ฒ ํจ์ผ๋ก์จ ์ฑ๋ฅ์ ๋น๊ตํ ์ ์์์ต๋๋ค.
์ ์ ์ ์์ดํ ์ ๊ด๊ณ๋ฅผ ํ์ตํจ์ ์์ด DNN์ ์ ์ฉํด๋ณธ ๊ฐ๋จํ ์ฐ๊ตฌ์์ง๋ง, ์ถ์ฒ ๊ณผ์ ์ ์์ด DNN ๊ตฌ์กฐ๊ฐ ๊ต์ฅํ ์ ํฉํ ์ ์์์ ์ ์ ์์๋ค๊ณ ํฉ๋๋ค.
ํด๋น ์ฑ๋ฅ ํ๊ฐํ๋ ๋ง์ง๋ง hidden layer์ capacity์ธ factor์ layer-depth์ ๋ฐ๋ฅธ ๊ฐ ์ฑ๋ฅ ์งํ๋ฅผ ๋ณด์ฌ์ฃผ๋ฉฐ, layer๊ฐ ๊น์ด์ง์๋ก ๋์ ์ฑ๋ฅ์ ๋ณด์ด๊ณ ์์์ ์ ์ ์์ต๋๋ค.