HI there! :D
in1004kyu / news_recommend Goto Github PK
View Code? Open in Web Editor NEWKESL_PROJECT
KESL_PROJECT
카테고리를 하나로 했을 경우 score를 임의로 정한 threshold와 비교를 해서 recommend 유무를 판단해야하는데 threshold의 조정이 이슈가 됩니다.
카테고리를 둘로 하면 like pvl, unlike pvl에 대해 계산하여 값을 구분해 판단할 수 있습니다. 판단은 쉬워지지만 좋아하는거 외엔 전부 싫어하는게 되버려 recommend를 하기 위해선 상당히 많은 training 문서가 필요하게 됩니다.
또한 카테고리를 둘로 했을 경우 pvl을 like와 unlike로 구분하기 위해 like pvl, unlike pvl 두개를 관리하거나 vector 구조체에 flag 값을 추가해서 해당 단어가 like인지 unlike인지 구분을 해야합니다.
구현상에 큰 어려움은 없지만 간단함을 따지면 카테고리 1인게 간단하긴 합니다. 하지만 threshold를 어떻게 잡아야 할지 모르겠고, 이렇게 하는게 맞는지도 모르겠습니다ㅋ
일단 카테고리가 하나와 둘에 대한 버전을 만들어 놓겠습니다.
case : category 1일때
float nve(struct vector_list* dvl, struct vector_list* pdvl);
struct vector{
int id;
int count;
};
struct vector_list{
int length;
struct vector* vector;
};
case : category 2일때
여기선 리턴 값 자체가 추천을 결정하게 됩니다.
int nve(struct vector_list* dvl, struct vector_list* pdvl);
struct vector{
int id;
int count;
int preference; //like, unlike 카테고리 구별을 위한 flag
};
struct vector_list{
int length;
struct vector* vector;
};
extend NVE CUDA (nvemuldiv/) Module to include the implementation of CUDA Kernel so we can call it instead of Thrust based implementation ( nvemuldiv_cuda_thrust() )
Once #4 (NVE API Design) is done, with resulting documents and header files, start implementation of NVE module
https://github.com/in1004kyu/news_recommend/tree/master/runtime 를 참고하여
https://github.com/in1004kyu/news_recommend/tree/master/src/evald 에 Evaluation Daemon을 구현 하시요.
Prepare a Project Development Progress Update du May 1st 2013.
Preparation Plan Document File: https://github.com/in1004kyu/news_recommend/blob/master/Documents/ProgressUpdatePlan_20130501.md
Resulting Presentation File:
https://github.com/in1004kyu/news_recommend/blob/master/Documents/ProgressUpdate_20130501.pptx
To 인규,
Write NVE API Design Document
카테고리를 하나로 했을 경우 score를 임의로 정한 threshold와 비교를 해서 recommend 유무를 판단해야하는데 threshold의 조정이 이슈가 됩니다.
카테고리를 둘로 하면 like pvl, unlike pvl에 대해 계산하여 값을 구분해 판단할 수 있습니다. 판단은 쉬워지지만 좋아하는거 외엔 전부 싫어하는게 되버려 recommend를 하기 위해선 상당히 많은 training 문서가 필요하게 됩니다.
또한 카테고리를 둘로 했을 경우 pvl을 like와 unlike로 구분하기 위해 like pvl, unlike pvl 두개를 관리하거나 vector 구조체에 flag 값을 추가해서 해당 단어가 like인지 unlike인지 구분을 해야합니다.
구현상에 큰 어려움은 없지만 간단함을 따지면 카테고리 1인게 간단하긴 합니다. 하지만 threshold를 어떻게 잡아야 할지 모르겠고, 이렇게 하는게 맞는지도 모르겠습니다ㅋ
일단 카테고리가 하나와 둘에 대한 버전을 만들어 놓겠습니다.
case : category 1일때
float nve(struct vector_list* dvl, struct vector_list* pdvl);
struct vector{
int id;
int count;
};
struct vector_list{
int length;
struct vector* vector;
};
case : category 2일때
여기선 리턴 값 자체가 추천을 결정하게 됩니다.
int nve(struct vector_list* dvl, struct vector_list* pdvl);
struct vector{
int id;
int count;
int preference; //like, unlike 카테고리 구별을 위한 flag
};
struct vector_list{
int length;
struct vector* vector;
};
To 형준,
Write PDVL API Design Document
https://github.com/in1004kyu/news_recommend/tree/master/runtime 를 참고하여
https://github.com/in1004kyu/news_recommend/tree/master/src/traind 에 Trainer Daemon을 구현 하시요.
Support make command at the root of the source tree
$ make
Expected files are
(src)/Makefile
(src)/nve/Makefile
(src)/gtt/Makefile
(src)/pdvl/Makefile
(src)/d2v/Makefile
(src)/nvemuldiv/Makefile
src/Documents/GTT_API_Design.md
"API Design Document" 포맷에 따라서 작성할것
포맷 참조: https://github.com/in1004kyu/news_recommend/blob/master/Documents/D2V_API_Design.md
작성 후, 완료되었다는 사실을 이 이슈 티켓에 댓글다시요.
To 형준,
Write D2V API Design Document
냉무
Function Prototype:
float nvmuldiv( float numerators[], float denominators[], int len);
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.