Skip to content

Glanceyes/RECJOON

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

191 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๋‚˜๋ฅผ ์œ„ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ์™€ ๋ผ์ด๋ฒŒ ์ถ”์ฒœ, RECJOON

RECJOON Logo

Baekjoon Online Judge ๋ฌธ์ œ ์ถ”์ฒœ๊ณผ solved.ac ๋ผ์ด๋ฒŒ ์ถ”์ฒœ ์„œ๋น„์Šค

๋”ฅ ๋Ÿฌ๋‹๊ณผ ๋จธ์‹  ๋Ÿฌ๋‹์„ ์‚ฌ์šฉํ•˜์—ฌ BOJ(Baekjoon Online Judge)์™€ solved.ac ์œ ์ €์˜ ๊ฐœ์ธ๋ณ„ ๋ฌธ์ œ ํ’€์ด ์ด๋ ฅ์„ ๋ฐ”ํƒ•์œผ๋กœ ๋ณธ์ธ์˜ ์ˆ˜์ค€์— ๋งž๋Š” ๋ฌธ์ œ์™€ ๋ผ์ด๋ฒŒ์„ ์ถ”์ฒœํ•˜๋Š” AI ๋ชจ๋ธ ๊ธฐ๋ฐ˜ ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

RECJOON Computers

๐Ÿ–ฅ ์›น ์‚ฌ์ดํŠธ ๋ณด๋Ÿฌ ๊ฐ€๊ธฐ

โ€ป ๋ณธ ์›น ์„œ๋น„์Šค๋Š” 2022๋…„ 9์›”๊นŒ์ง€ ์šด์˜๋  ๊ณ„ํš์ด๋ฉฐ, ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ”ํƒ•์œผ๋กœ ์šด์˜ ๊ธฐ๊ฐ„๋™์•ˆ ์ง€์†ํ•˜์—ฌ ๊ฐœ์„ ์ด ์ด๋ฃจ์–ด์งˆ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

ย ย ย ย ย ย 




Background

ํ”„๋กœ์ ํŠธ ๋™๊ธฐ

BOJ๋Š” ๊ตญ๋‚ด ๋Œ€ํ‘œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฌธ์ œ ํ’€์ด ์‚ฌ์ดํŠธ์ด๋ฉฐ, ์•ฝ 36๋งŒ ๋ช…์˜ ์‚ฌ์šฉ์ž์™€ 2๋งŒ์—ฌ ๊ฐœ์˜ ๋ฌธ์ œ๋ฅผ ๋ณด์œ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.1 ํŠนํžˆ ์—ฌ๋Ÿฌ IT ๊ธฐ์—…์—์„œ ์ง„ํ–‰ํ•˜๋Š” ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ๋ฅผ ๊ณต๋ถ€ํ•˜๊ณ ์ž ๋งŽ์€ ์ทจ์—…์ค€๋น„์ƒ๊ณผ ํ•™์ƒ๋“ค์ด ์ด์šฉํ•˜๋Š” ์‚ฌ์ดํŠธ์ด๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค. ์ตœ๊ทผ์—๋Š” solved.ac์™€ ์—ฐ๊ณ„๋˜์–ด ์‚ฌ์šฉ์ž๋“ค์ด ๋ฌธ์ œ๋ณ„๋กœ ์ง์ ‘ ์„ธ๋ถ„ํ™”๋œ ํƒœ๊ทธ์™€ ๋‚œ์ด๋„๋ฅผ ๋งค๊ธธ ์ˆ˜ ์žˆ๊ณ , ๋ณธ์ธ์ด ํ‘ผ ๋ฌธ์ œ ์ด๋ ฅ์„ ๋ฐ”ํƒ•์œผ๋กœ ์ ์ˆ˜๋ฅผ ์‚ฐ์ถœํ•˜์—ฌ ์ž์‹ ์˜ ์‹ค๋ ฅ์ด ์–ด๋А ์ •๋„์ธ์ง€๋ฅผ ๊ฐ€๋Š ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์‹ค๋ ฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ณธ์ธ์˜ ์‹ค๋ ฅ์— ๋งž๋Š” ์ ์ ˆํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์œ ํ˜•๊ณผ ๋‚œ๋„์˜ ๋ฌธ์ œ๋ฅผ ์„ ํƒํ•ด ํ‘ธ๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜์ง€๋งŒ, ๋งŽ์€ ๋ฌธ์ œ ์ˆ˜๋กœ ์ธํ•ด ์‚ฌ์šฉ์ž๊ฐ€ ์ž์‹ ์˜ ์‹ค๋ ฅ์— ๋งž๋Š” ๋ฌธ์ œ๋ฅผ ๊ณ ๋ฅด๋Š” ๋ฐ ์–ด๋ ค์›€์„ ๊ฒช๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.2 ๋˜ํ•œ solved.ac์—์„œ๋Š” ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž ์ค‘์—์„œ ์ž์‹ ์ด ์›ํ•˜๋Š” ์‚ฌ๋žŒ์„ ๋ผ์ด๋ฒŒ๋กœ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์ง€๋งŒ, ์ •์ž‘ ๋ผ์ด๋ฒŒ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋Š” ์œ ์ € ๋น„์œจ์€ 13%์— ๋ถˆ๊ณผํ•ฉ๋‹ˆ๋‹ค.3


๊ธฐ๋Œ€ ํšจ๊ณผ

RECJOON ์›น ์„œ๋น„์Šค๋ฅผ ํ†ตํ•ด ๊ฐœ์ธ์˜ ์‹ค๋ ฅ์— ๋งž๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋ฅผ ์ถ”์ฒœํ•˜์—ฌ ์‚ฌ์šฉ์ž์˜ ๋ฌธ์ œ ํƒ์ƒ‰ ์‹œ๊ฐ„์„ ์ค„์ด๊ณ  ํ•™์Šต์˜ ํšจ์œจ์„ฑ์„ ๋†’์—ฌ๋“œ๋ฆฌ๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ๊ฐœ์ธ์˜ ์ˆ˜์ค€๊ณผ ํ’€์ด ์ด๋ ฅ์ด ๋น„์Šทํ•œ ๋ผ์ด๋ฒŒ์„ ์ถ”์ฒœํ•ด์คŒ์œผ๋กœ์จ ๊ฒฝ์Ÿ ์‹ฌ๋ฆฌ๋ฅผ ์ž๊ทนํ•˜์—ฌ ๋ฌธ์ œ ํ’€์ด ๋™๊ธฐ๋ฅผ ๋ถ€์—ฌํ•˜๊ณ  ํ•™์Šต ํšจ์œจ์„ ์ฆ๋Œ€์‹œํ‚ฌ ์ˆ˜ ์žˆ๋Š” ํšจ๊ณผ๋ฅผ ๊ธฐ๋Œ€ํ•ด๋ด…๋‹ˆ๋‹ค.




Features

์‚ฌ์šฉ์ž ๊ฒ€์ƒ‰

์›ํ•˜๋Š” ์ถ”์ฒœ ๊ฒฐ๊ณผ๋Š” ํ•ธ๋“ค ๊ฒ€์ƒ‰์œผ๋กœ ๊ฐ„๋‹จํ•˜๊ฒŒ.

Handle Search

๋ณ„๋„์˜ ํšŒ์›๊ฐ€์ž… ์—†์ด ๋ฐ”๋กœ ๊ฒ€์ƒ‰์ฐฝ์— BOJ ํ•ธ๋“ค๋งŒ ์ž…๋ ฅํ•˜์„ธ์š”. ์‚ฌ์šฉ์ž ๊ฒ€์ƒ‰ ์ž๋™์™„์„ฑ์œผ๋กœ ๋ณธ์ธ์˜ ํ•ธ๋“ค์ด ๊ฒ€์ƒ‰๋˜๋Š”์ง€๋„ ํ•œ๋ˆˆ์— ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.



์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ์ถ”์ฒœ

๋‚ด ์‹ค๋ ฅ์— ๋งž๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋Š” ๋ฌด์—‡์ผ๊นŒ?

Algorithm Recommender

์œ ์ € ๊ฐœ๊ฐœ์ธ์˜ solved.ac ํ‹ฐ์–ด์™€ ๋ฌธ์ œ ํ’€์ด ์ด๋ ฅ์„ ๋ฐ”ํƒ•์œผ๋กœ ์ž์‹ ์˜ ์‹ค๋ ฅ์— ๋งž๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋ฅผ ์ถ”์ฒœํ•ด๋“œ๋ฆฝ๋‹ˆ๋‹ค.



๋ผ์ด๋ฒŒ ์ถ”์ฒœ

๋‚˜์™€ ์‹ค๋ ฅ์ด ๋น„์Šทํ•œ ๋ผ์ด๋ฒŒ์€ ๋ˆ„๊ตฌ์ง€?

Rival Recommender

์œ ์ €์˜ ๋ ˆ๋ฒจ๋ณ„ ๋ฌธ์ œ ํ’€์ด ์ด๋ ฅ๊ณผ ํ‹ฐ์–ด, ํด๋ž˜์Šค, ๋ ˆ์ดํŒ…์„ ์ข…ํ•ฉ์ ์œผ๋กœ ๊ณ ๋ คํ•˜์—ฌ ํ•ด๋‹น ์œ ์ €์˜ ์‹ค๋ ฅ๊ณผ ์œ ์‚ฌํ•œ ๋‹ค๋ฅธ ์œ ์ €๋“ค์„ 6๋ช…4 ์ถ”์ฒœํ•ด๋“œ๋ฆฝ๋‹ˆ๋‹ค.



๋ผ์ด๋ฒŒ ๊ธฐ๋ฐ˜ ๋ฌธ์ œ ์ถ”์ฒœ

๋‚˜์˜ ๋ผ์ด๋ฒŒ์ด ํ‘ผ ๋ฌธ์ œ๋Š” ๋ฌด์—‡์ผ๊นŒ?

Rival's Problem Recommender

์œ ์ €์˜ ํ’€์ด ์ด๋ ฅ์„ ๋ฐ”ํƒ•์œผ๋กœ ๋ผ์ด๋ฒŒ์€ ํ’€์—ˆ์ง€๋งŒ ์œ ์ € ์ž์‹ ์€ ํ’€์ง€ ์•Š์€ ๋ฌธ์ œ๋„ ๊ฐ™์ด ์ถ”์ฒœํ•ด๋“œ๋ ค์š”.




Data Resource



โ€ป Baekjoon Online Judge์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์›น ์Šคํฌ๋ ˆ์ดํ•‘ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.



Data Analysis

RECJOON_EDA

๐Ÿ“Š EDA ๋ณด๋Ÿฌ ๊ฐ€๊ธฐ

โ€ป ๋ฐ์ดํ„ฐ ๋ถ„์„ ๊ฒฐ๊ณผ์— ๊ด€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ EDA ํŒŒ์ผ์„ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”.



DL & ML Model

RECJOON์—์„œ๋Š” ์ •ํ•ด์ง„ ์ฃผ๊ธฐ์— ๋”ฐ๋ผ batch serving์œผ๋กœ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘๊ณผ ํ•จ๊ป˜ ๋ชจ๋ธ ํ•™์Šต๊ณผ ์˜ˆ์ธก์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ์ถ”์ฒœ ์„œ๋น„์Šค๋Š” ๋ชจ๋ธ ํ•™์Šต ํ›„ ๊ฒ€์ฆ ๊ณผ์ •์—์„œ ์‚ฌ์ „์— ์ •์˜๋œ ์ง€ํ‘œ๋ฅผ ์ธก์ •ํ•˜๊ณ , ์ฃผ๊ธฐ๋ณ„๋กœ ๊ฐ€์žฅ ์ข‹์€ ๊ฒฐ๊ณผ๋กค ๋ณด์ธ ๋ชจ๋ธ์„ ์˜ˆ์ธก ๋ชจ๋ธ๋กœ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.


๋ฌธ์ œ ์ถ”์ฒœ ๋ชจ๋ธ

๋ชจ๋ธ๋ช… ์ฐธ์กฐ
RecVAE(Variational AutoEncoder) Ilya Shenbin, Anton Alekseev, Elena Tutubalina, Valentin Malykh, and Sergy I. Nikolenko. 2019. RecVAE: A New Variational Autoencoder for Top-N Recommendations with Implicit Feedback. ACM
Multi-VAE Dawen Liang, Rahul G. Krishnan, Matthew D. Hoffman, Tony Jebara. 2018. Variational Autoencoders for Collaborative Filtering', WWW '18: Proceedings of the 2018 World Wide Web Conference
Multi-DAE(Denoising AutoEncoder) Dawen Liang, Rahul G. Krishnan, Matthew D. Hoffman, Tony Jebara. 2018. Variational Autoencoders for Collaborative Filtering', WWW '18: Proceedings of the 2018 World Wide Web Conference

model_pipeline


์œ ์ €๊ฐ€ ํ‘ผ ๋ฌธ์ œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ Autoencoder ๊ธฐ๋ฐ˜5์˜ ๋”ฅ ๋Ÿฌ๋‹ ๋ชจ๋ธ์„ ํ•™์Šต์‹œํ‚ค๊ณ , ๊ฒ€์ฆ ๊ฒฐ๊ณผ์— ๋”ฐ๋ผ ๋ฏธ๋ฆฌ ์ •์˜๋œ ํ‰๊ฐ€ ์ง€ํ‘œ6 ๊ฐ’์ด ๊ฐ€์žฅ ๊ฒฐ๊ณผ๊ฐ€ ์ž˜ ๋‚˜์˜จ ๋ชจ๋ธ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ์ดํ›„ ์„ ํƒ๋œ ๋ชจ๋ธ์„ ๋ฐ”ํƒ•์œผ๋กœ ๋ฌธ์ œ ํ›„๋ณด๋ฅผ ์„ ์ •ํ•˜๊ณ  ํ•„ํ„ฐ๋ง์„ ํ†ตํ•ด ์ตœ์ข… ๋ฌธ์ œ ์ถ”์ฒœ ๊ฒฐ๊ณผ๊ฐ€ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

ํŠนํžˆ Multi-VAE์™€ Multi-DAE์—์„œ๋Š” ๋ฌธ์ œ์˜ ํƒœ๊ทธ์— ๊ด€ํ•œ ์ž„๋ฒ ๋”ฉ์„ encoder์˜ ์ž…๋ ฅ์œผ๋กœ ๊ฐ™์ด ๋„ฃ์–ด์„œ ๋ฌธ์ œ์— ๊ด€ํ•œ side information๋„ ๊ฐ™์ด ํ•™์Šตํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜์—ฌ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๊ณ ์ž ํ–ˆ์Šต๋‹ˆ๋‹ค.7



๋ผ์ด๋ฒŒ ์ถ”์ฒœ ๋ชจ๋ธ

๋ชจ๋ธ๋ช… ์ฐธ์กฐ
Collective MF(Matrix Factorization) David Cortes. 2020. Cold-start recommendations in Collective Matrix Factorization
K-nearest neighbors Altman, and Naomi S. 1992. An introduction to kernel and nearest-neighbor nonparametric regression

๋ผ์ด๋ฒŒ ์ถ”์ฒœ์—์„œ๋Š” ๋‹ค์–‘ํ•œ ๋”ฅ ๋Ÿฌ๋‹ ๋˜๋Š” ๋จธ์‹  ๋Ÿฌ๋‹ ๋ชจ๋ธ8์„ ํ•™์Šต์‹œํ‚ค๊ณ  ์‚ฌ์ „์— ์ •์˜ํ•œ ์˜จโ€ข์˜คํ”„๋ผ์ธ ์ง€ํ‘œ9 ์ค‘ ๊ฐ€์žฅ ๊ฒฐ๊ณผ๊ฐ€ ์ž˜ ๋‚˜์˜จ ๋ชจ๋ธ์„ ์˜ˆ์ธก ๋ชจ๋ธ๋กœ ์„ ์ •ํ•ฉ๋‹ˆ๋‹ค.



๋ผ์ด๋ฒŒ ๊ธฐ๋ฐ˜ ๋ฌธ์ œ ์ถ”์ฒœ ๋ชจ๋ธ

๋ชจ๋ธ๋ช… ์ฐธ์กฐ
BPR(Bayesian Personalized Ranking) Steffen Rendle, Christoph Freudenthaler, Zeno Gantner, and Lars Schmidt-Thieme. 2009. BPR: Bayesian Personalized Ranking from Implicit Feedback
ALS(Alternating Least Squares) MF Yifan Hu, Yehuda Koren, and Chris Volinsky. 2008. Collaborative Filtering for Implicit Feedback Datasets
Item-based CF(Collaborative Filtering) Badrul Sarwar, George Karypis, Joseph Konstan, and John Riedl. 2001. Item-based Collaborative Filtering Recommendation Algorithms

๋ผ์ด๋ฒŒ ๊ธฐ๋ฐ˜ ๋ฌธ์ œ ์ถ”์ฒœ์—์„œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์—ฌ๋Ÿฌ ๋ชจ๋ธ10์„ ํ†ตํ•ด ์„ฑ๋Šฅ ์ง€ํ‘œ11๋ฅผ ์ตœ์†Œํ™” ํ•˜๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ์œ ์ €์˜ ๋ฌธ์ œ ํ’€์ด ํŒจํ„ด์„ ํ•™์Šตํ•˜๊ณ , ์˜ˆ์ธกํ•œ ๊ฒฐ๊ณผ์—์„œ ์‹ค์ œ๋กœ ์ž์‹ ์ด ํ’€์—ˆ๋˜ ๋ฌธ์ œ๋Š” ์ œ์™ธํ•˜์—ฌ ํ•„ํ„ฐ๋งํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.




Service

Service Architecture

Architecture_0626

โ€ป 2022๋…„ 6์›” 15์ผ ์ „ํ›„๋กœ AI Stages Server์—์„œ GCP(Google Cloud Platform) VM Instance๋กœ ์ „ํ™˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค.



UML Sequence Diagram

UML Sequence Diagram

โ€ป ์œ ์ €๋กœ๋ถ€ํ„ฐ Explicit Feedback์„ ๋ฐ›๋Š” API๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. (2022.06.11)



Airflow DAG Workflow

airflow dag




Team Members

๊น€์€์„  ๋ฐ•์ •๊ทœ ์ด์„œํฌ ์ด์„ ํ˜ธ ์ง„์™„ํ˜
๋ผ์ด๋ฒŒ ์ถ”์ฒœ ๋ชจ๋ธ๋ง
๋ผ์ด๋ฒŒ ๋ฌธ์ œ ์ถ”์ฒœ ๋ชจ๋ธ๋ง
ํƒœ์Šคํฌ ์ž๋™ํ™”
๋ชจ๋ธ ์‹คํ–‰ ์ฝ”๋“œ ๋ชจ๋“ˆํ™”
๋ฐ์ดํ„ฐ EDA
Front-end ๊ฐœ๋ฐœ
GCP๋กœ Airflow ์ด์ „
๋ผ์ด๋ฒŒ ์ถ”์ฒœ ๋ชจ๋ธ๋ง
๋ผ์ด๋ฒŒ ๋ฌธ์ œ์ถ”์ฒœ ๋ชจ๋ธ๋ง
์˜จโ€ข์˜คํ”„๋ผ์ธ ์ง€ํ‘œ ๊ฐœ๋ฐœ
๋ผ์ด๋ฒŒ ์ถ”์ฒœ ๊ณ ๋„ํ™”
Back-end ๊ฐœ๋ฐœ
Front-end ๋””์ž์ธ
CI & CD ์ž๋™ํ™”
๋ฌธ์ œ ์ถ”์ฒœ ๋ชจ๋ธ ์ „์ฒ˜๋ฆฌ
๋ฐ์ดํ„ฐ ์ˆ˜์ง‘๊ณผ EDA
๋ฌธ์ œ ์ถ”์ฒœ ๋ชจ๋ธ๋ง
ํ‹ฐ์–ด ํ•„ํ„ฐ๋ง



Further Information


๐Ÿ“น ๋ฐœํ‘œ ์˜์ƒ ๋ณด๋Ÿฌ ๊ฐ€๊ธฐ ๐Ÿ”– ๋ฐœํ‘œ ์ž๋ฃŒ ๋ณด๋Ÿฌ ๊ฐ€๊ธฐ

ํ”„๋กœ์ ํŠธ์— ๊ด€ํ•œ ์ „๋ฐ˜์ ์ธ ๋‚ด์šฉ ์†Œ๊ฐœ๋Š” ๋ฐœํ‘œ ์˜์ƒ ๋˜๋Š” ์ž๋ฃŒ๋ฅผ ํ™•์ธํ•ด์ฃผ์„ธ์š”.


๐Ÿ“ƒ Wrap-up Report ๋ณด๋Ÿฌ ๊ฐ€๊ธฐ

์ฃผ ์‚ฌ์šฉ ๋ชจ๋ธ ์‹คํ—˜โ€ข๋ถ„์„ ๊ฒฐ๊ณผ์™€ ํ”„๋กœ์ ํŠธ ์ง„ํ–‰์— ๊ด€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋ฐœํ‘œ ์ž๋ฃŒ์™€ Wrap-up Report๋ฅผ ์ฐธ๊ณ ํ•ด ์ฃผ์„ธ์š”.


๐Ÿ’ป RECJOON Server Git Repository

GitHub Action ๊ถŒํ•œ ๋ฌธ์ œ๋กœ ์ธํ•ด ์›น ์„œ๋ฒ„๋กœ์˜ ๋ฐฐํฌ๋Š” ํ˜„์žฌ Repository๋ฅผ ํ†ตํ•ด ์ด๋ฃจ์–ด์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์‹ค์ œ ์›น ์„œ๋ฒ„๋กœ ๋ฐฐํฌ๋œ ์ฝ”๋“œ๋Š” ์œ„์˜ Git Repository๋ฅผ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”.




Annotation

1. Baekjoon Online Judge ์‚ฌ์ดํŠธ ์œ ์ € ์ˆ˜์™€ ๊ณต๊ฐœ๋œ ๋ฌธ์ œ ์ˆ˜ (2022.04.21) โ†ฉ

2. Baekjoon Online Judge ๋ฌธ์ œ์™€ ๋ผ์ด๋ฒŒ ์ถ”์ฒœ ์„œ๋น„์Šค ์˜ˆ์ƒ ์„ ํ˜ธ๋„ ์กฐ์‚ฌ. 'BOJ ๋ฌธ์ œ๋ฅผ ์„ ํƒํ•˜๋Š” ๋ฐ ์žˆ์–ด์„œ ์–ด๋А ์ •๋„์˜ ์–ด๋ ค์›€์„ ๊ฒช๊ณ  ์žˆ์œผ์‹ ๊ฐ€์š”?'. ์•ฝ 51.1%์˜ ์‘๋‹ต์ž ๋ณดํ†ต ์ด์ƒ ์‘๋‹ต. (45๋ช… ์ฐธ์—ฌ, S ๋Œ€ํ•™๊ต ICPC Team Slack ์ฑ„๋„ ๋“ฑ)โ†ฉ

3. EDA ๋ถ„์„ ๊ฒฐ๊ณผ, '๋ผ์ด๋ฒŒ๊ณผ ์—ญ๋ผ์ด๋ฒŒ ์ˆ˜ ๋ถ„์„' (2022.04.21) โ†ฉ

4. ์„œ๋น„์Šค ๊ฐœ์‹œ์ผ ๊ธฐ์ค€ (2022.06.11), ์ถ”ํ›„ ๋ณ€๋™ ๊ฐ€๋Šฅ โ†ฉ

5. RecVAE(Variational AutoEncoder), Multi-VAE, Multi-DAE(Denoising AutoEncoder) (์„œ๋น„์Šค ๊ฐœ์‹œ์ผ ๊ธฐ์ค€, 2022.06.11) โ†ฉ

6. Recall@30(๋ชจ๋ธ์ด ํ•ด๋‹น ์œ ์ €๊ฐ€ ์ข‹์•„ํ•  ๊ฒƒ์ด๋ผ๊ณ  ์˜ˆ์ธกํ•œ ์ƒ์œ„ 30๊ฐœ ๋ฌธ์ œ๊ฐ€ ์‹ค์ œ๋กœ ์œ ์ €๊ฐ€ ์ข‹์•„ํ•˜๋Š” ๋ฌธ์ œ์— ์†ํ•˜๋Š” ๋น„์œจ) โ†ฉ

7. Yifan Chen, and Maarten de Rijke. 2017. A Collective Variational Autoencoder for Top-N Recommendation with Side Information. ACM โ†ฉ

8. Collaborative MF(Matrix Factorization), K-nearest neighbors (์„œ๋น„์Šค ๊ฐœ์‹œ์ผ ๊ธฐ์ค€, 2022.06.11) โ†ฉ

9. solved.ac ๋ ˆ์ดํŒ… ์‚ฐ์ถœ๋ฒ•์— ๊ธฐ๋ฐ˜ํ•œ ์•„๋ž˜ ์„ธ ๊ฐ€์ง€ ์ง€ํ‘œ ๊ฐ’์˜ ํ‰๊ท 

แ„…แ…กแ„‹แ…ตแ„‡แ…ฅแ†ฏแ„Žแ…ฎแ„Žแ…ฅแ†ซแ„Œแ…ตแ„‘แ…ญ1

แ„…แ…กแ„‹แ…ตแ„‡แ…ฅแ†ฏแ„Žแ…ฎแ„Žแ…ฅแ†ซแ„Œแ…ตแ„‘แ…ญ2

แ„…แ…กแ„‹แ…ตแ„‡แ…ฅแ†ฏแ„Žแ…ฎแ„Žแ…ฅแ†ซแ„Œแ…ตแ„‘แ…ญ3โ†ฉ

10. BPR(Bayesian Personalized Ranking), ALS(Alternating Least Squares) Matrix Factorization, item-based CF(Collaborative Filtering) (์„œ๋น„์Šค ๊ฐœ์‹œ์ผ ๊ธฐ์ค€, 2022.06.11) โ†ฉ

11. ์ถ”์ฒœ๋œ ๋ฌธ์ œ์™€ ํƒ€๊ฒŸ ์œ ์ €๊ฐ€ ํ‘ผ ๋ฌธ์ œ์˜ ๋‚œ์ด๋„ ์ฐจ์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌํ•œ ์ง€ํ‘œ

แ„…แ…กแ„‹แ…ตแ„‡แ…ฅแ†ฏ แ„†แ…ฎแ†ซแ„Œแ…ฆ แ„Žแ…ฎแ„Žแ…ฅแ†ซ แ„Œแ…ตแ„‘แ…ญโ†ฉ

About

AI-based service that recommends personalized problems and rivals for Baekjoon Online Judge and solved.ac users using deep and machine learning techniques

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Jupyter Notebook 71.3%
  • TypeScript 15.1%
  • Python 12.9%
  • CSS 0.4%
  • Shell 0.2%
  • HTML 0.1%