[Data Science] MovieLens 100k Dataset(1)

김수민·2024년 5월 7일

DataScience

목록 보기
3/3

1. Readme

  • 1682개의 영화를 943명의 유저가 평가한 10만 개의 평점 데이터
  • 각 유저는 최소 20개의 영화에 대해 평가
  • 간단한 유저 정보 포함(나이, 성별, 직업, 우편 번호)
  • MovieLens 웹 사이트에서 1997년 9월 19일 ~ 1998년 4월 22일(7개월)동안 수집
  • 유저 정보가 데이터셋으로부터 사라졌거나, 20개 미만의 평점을 남긴 유저에 대한 데이터는 해당 데이터셋에서 제외되었음

2. Data 구성

  • ml.data.tar.gz : 압축된 tar 파일 u 데이터 파일을 rebuild하기 위해,
    gunzip ml-data.tar.gz
    tar xvf ml-data.tar
    mku.sh
    수행
  • u.data : 전체 u 데이터 셋. 1682개의 아이템(영화)에 943명의 유저가 평가한 10만개의 평점
    각 유저는 20개 이상의 영화에 대해 평가.
    유저와 아이템은 1부터 연속적으로 넘버링.
    데이터는 랜덤으로 정렬.
    user id | item id | rating | timestamp 형식으로 데이터 분리.
    timestamp는 unix time으로 설정되어 있음
    • unix time
      • 1970년 1월 1일 UTC 이후로부터 현재까지 누적된 초 값을 의미
  • u.info : u 데이터셋 내에 있는 유저/아이템/평점의 수
  • u.item : 아이템(영화)에 대한 정보.
    movie id | movie title | release date | video release date |
    IMDb URL | unknown | Action | Adventure | Animation |
    Children's | Comdey | Crime | Documentary | Drama | Fantasy |
    Film-Noir | Horror | Musical | Mystery | Romance | Sci-Fi |
    Thriller | War | Western | 형식으로 데이터 분리.
    마지막 19개의 필드는 장르이며, 1이 해당 장르의 영화임을 나타내며, 0은 해당 장르의 영화가 아님을 의미.
    영화는 한 번에 여러 개의 장르를 가질 수 있음.
    movie id는 u.data 데이터 셋 내에서 사용됨.
  • u.genre : 장르 리스트.
  • u.user : 유저의 정보.
    user id | age | gender | occupation | zip code 형식으로 데이터 분리.
    user id는 u.data 데이터셋 내에서 사용.
  • u.occupation : 직업 리스트.
  • u1.base / u1.test (~ u5.base / u5.test) : u data를 8:2로 훈련 데이터와 테스트 데이터로 분리한 데이터 셋.
    u1~u5 각각의 테스트 셋에서 다른 데이터를 가지고 있으며, 5 fold 교차 검증을 하는 경우 이 데이터 셋은 muk.sh.의 u.data으로부터 생성될 수 있음.
    • K-Fold Cross Validation
      • K개의 fold를 만들어 진행하는 교차 검증
      • 훈련 데이터를 K개의 Fold로 나눈 뒤, 또 한 개의 Fold에 있는 데이터를 K개로 나눔
      • K-1 개는 훈련데이터로, 마지막 한 개는 검증 데이터 셋으로 지정
      • 모델 생성 및 예측 후, 에러값 추출
      • 다음 Fold에서 검증 데이터셋을 다시 설정 후, 이미 검증으로 사용한 데이터셋은 훈련 데이터셋으로 지정
      • K번 반복
  • ua.base / ua.test (~ ub.base / ub.test) : u data를 훈련 데이터셋과 테스트 데이터셋의 사용자 당 정확히 10개의 평점을 가진 테스트 셋으로 나눈 데이터 셋.
    이 데이터셋은 muk.sh.의 u.data으로부터 생성될 수 있음.
  • allbut.pl : 훈련 데이터에서 n개를 제외한 모든 사용자 등급이 존재하는 훈련 및 테스트 데이터셋을 생성하는 스크립트.
  • mku.sh : u.data로부터모든 u 데이터셋을 생성하기 위한 shell script

0개의 댓글