sirin05137 / CSE364_Project

2 stars 0 forks source link

Fix bugs when the number of movies rated based on user data entered input #28

Closed sirin05137 closed 3 years ago

sirin05137 commented 3 years ago

화상회의에서 결정한 사용자 데이터를 기반으로한 평가된 영화의 수가 적을 때 어떻게 영화를 추천할 것인지를 구현함. 우선 장르를 입력받지 않고 사용자 데이터만 입력 받았을 때 평가된 영화의 수가 100보다 작다면 '입력받은 사용자 데이터'와 '입력받은 데이터에서 나이만 공백으로 처리한 데이터'를 유사도가 높다고 판단해 '입력받은 데이터에서 나이만 공백으로 처리한 데이터'를 valid user list로 추가함. 장르를 입력받을 경우는 영화의 수가 50보다 작다면 위와 같이 작동+반복하도록 구현함(50으로 설정한 이유는 장르가 인풋 값으로 들어가게 된다면 영화의 개수가 대폭 줄기 때문)

추가적으로 해당하는 영화의 개수에 따라 percentile의 비율을 달리하여 조금 더 영화를 추천해주는 데 있어서 타당성을 더함. 영화의 개수에 따라 percentile의 비율은 다음과 같은 함수에 의해 구해진다.

static double set_p(int size){
        if(size<100){
            return 0.5;
        }
        else if(size<200){
            return 0.6;
        }
        else if(size<500){
            return 0.7;
        }
        else{
            return 0.8;
        }
    }