편집 기록

편집 기록
  • 프로필 nowp님의 편집
    날짜2020.04.08

    질문내용이 삭제된 질문 / 함수 정의 문제


    게시판 목적과 맞지 않았던 것 같아 별도로 찾아보겠습니다 감사합니다.

  • 프로필 알 수 없는 사용자님의 편집
    날짜2020.04.08

    함수 정의 문제


    게시판 목적과 맞지 않았던 것 같아 별도로 찾아보겠습니다 감사합니다.

  • 프로필 편집요청빌런님의 편집
    날짜2020.04.08

    함수 정의 문제


    두 개 함수를 이용해서 코드를 짰는데 predict_preference()가 자꾸 에러가 나네요

    for문을 돌린 게 잘못 된 걸까요? 검토 부탁 드립니다.

    def get_closeness(title_to_users, title1, title2):
    # title_to_users를 이용해 title1를 시청한 사용자의 집합을 저장합니다.
        title1_users = set(title_to_users[title1])
    # title_to_users를 이용해 title2를 시청한 사용자의 집합을 저장합니다.
        title2_users = set(title_to_users[title2])
    
    # 두 작품을 모두 본 사용자를 구합니다.
        both = len(title1_users & title2_users)
    # 두 작품 중 하나라도 본 사용자를 구합니다.
        either = len(title1_users | title2_users)
    
        return both/either
    

    predict_preference() - 작품1과 사용자A가 주어졌을 때, 예상 선호도를 계산합니다. 작품1에 대한 사용자A의 예상 선호도는 사용자A가 시청한 모든 작품과 작품1 유사도의 평균값입니다. 예로, 사용자A가 시청한 3개의 작품과 작품1의 유사도가 0.6, 0.4, 0.5일 때, 선호도 점수는 0.5입니다.

    def predict_preference(title_to_users, user_to_titles, user, title):
    # user_to_titles를 이용해 user가 시청한 영화를 저장합니다.
        titles = user_to_titles['user']
    # get_closeness() 함수를 이용해 유사도를 계산합니다.
        close = []
        for i in titles:
            a = get_closeness(title_to_users, i , title)
            closeness = close.append(a)
        return sum(closeness) / len(closeness)
    
  • 프로필 알 수 없는 사용자님의 편집
    날짜2020.04.08

    함수 정의 문제


    두 개 함수를 이용해서 코드를 짰는데 predict_preference()가 자꾸 에러가 나네요

    for문을 돌린 게 잘못 된 걸까요? 검토 부탁 드립니다.

    def get_closeness(title_to_users, title1, title2):
    # title_to_users를 이용해 title1를 시청한 사용자의 집합을 저장합니다.
        title1_users = set(title_to_users[title1])
    # title_to_users를 이용해 title2를 시청한 사용자의 집합을 저장합니다.
        title2_users = set(title_to_users[title2])
    
    # 두 작품을 모두 본 사용자를 구합니다.
        both = len(title1_users & title2_users)
    # 두 작품 중 하나라도 본 사용자를 구합니다.
        either = len(title1_users | title2_users)
    
        return both/either
    

    predict_preference() - 작품1과 사용자A가 주어졌을 때, 예상 선호도를 계산합니다. 작품1에 대한 사용자A의 예상 선호도는 사용자A가 시청한 모든 작품과 작품1 유사도의 평균값입니다. 예로, 사용자A가 시청한 3개의 작품과 작품1의 유사도가 0.6, 0.4, 0.5일 때, 선호도 점수는 0.5입니다.

    def predict_preference(title_to_users, user_to_titles, user, title):
    # user_to_titles를 이용해 user가 시청한 영화를 저장합니다.
        titles = user_to_titles['user']
    # get_closeness() 함수를 이용해 유사도를 계산합니다.
        close = []
        for i in titles:
            a = get_closeness(title_to_users, i , title)
            closeness = close.append(a)
        return sum(closeness) / len(closeness)