위지원의 데이터 일기 🐈
Home
  • 분류 전체보기 (563)
    • ✎ 2025년 (4)
    • 2024년 (16)
    • 2023년 (6)
    • 2022년 (35)
      • Developement (22)
      • Error (9)
    • 2021년 (68)
      • ERROR (9)
      • 알고리즘 (11)
      • 개발공부 (21)
      • Data (15)
      • 21.下 (12)
    • 2020년 (164)
      • 코테 (84)
      • Development (29)
      • 정처기 (41)
    • 2019년 (27)
    • 2018년 (89)
      • English Speaking (8)
      • Error (12)
      • C, Java, FileSystem (13)
      • DataBase (15)
      • Java (2)
      • 지식 (16)
      • Go (3)
      • spark (9)
      • 영어 (5)
      • 알고리즘 (6)
    • 2017년 (143)
      • Error (17)
      • machine learning (16)
      • Spark (20)
      • Database (19)
      • Python (17)
      • Spring (9)
      • etc. (10)
      • 백준 (5)
      • Google Platform (12)
      • web Development (7)
      • Docker (3)
      • Linux (8)
Home
  • 분류 전체보기 (563)
    • ✎ 2025년 (4)
    • 2024년 (16)
    • 2023년 (6)
    • 2022년 (35)
      • Developement (22)
      • Error (9)
    • 2021년 (68)
      • ERROR (9)
      • 알고리즘 (11)
      • 개발공부 (21)
      • Data (15)
      • 21.下 (12)
    • 2020년 (164)
      • 코테 (84)
      • Development (29)
      • 정처기 (41)
    • 2019년 (27)
    • 2018년 (89)
      • English Speaking (8)
      • Error (12)
      • C, Java, FileSystem (13)
      • DataBase (15)
      • Java (2)
      • 지식 (16)
      • Go (3)
      • spark (9)
      • 영어 (5)
      • 알고리즘 (6)
    • 2017년 (143)
      • Error (17)
      • machine learning (16)
      • Spark (20)
      • Database (19)
      • Python (17)
      • Spring (9)
      • etc. (10)
      • 백준 (5)
      • Google Platform (12)
      • web Development (7)
      • Docker (3)
      • Linux (8)
블로그 내 검색
포트폴리오

위지원의 데이터 일기 🐈

데이터를 사랑하고 궁금해하는 기록쟁이입니다! 😉 Super Data Girl이 되는 그날까지🏃‍♀️ 화이팅!

  • 🖥 깃블로그
  • 🌍 위키원
  • 📑 내맘대로 스크랩
  • 💌 메일
  • 2021년/21.下

    Build a Steam Game Recomend Model (3/?) - 원핫인코딩

    2021. 12. 27. 09:01

    by. 위지원

    1. 1. 원핫 인코딩을 통해 게임 간 거리 계산하기

    1. 원핫 인코딩을 통해 게임 간 거리 계산하기

    게임별로 장르를 가지고 있다.

    이 값을 이용하여 간단한 게임간의 거리계산을 통해 비슷한 게임을 추천받고자 한다.

    시작하기에 앞서서 게임별로 각 장르의 원핫 인코딩을 진행했다.  결과는 아래와 같다.

     

    가장 마지막에 있던 게임과 다른 게임간의 거리를 계산했다. TOP5를 뽑은 결과는 아래와 같다.

    액션/어드벤처/인디 정도가 공통으로 들어있었고, 전략을 제외하고는 7Days to Die가 거의 같은 장르의 게임이었다.(포함관계..ㄷㄷ)

    위에 결과로 나온 게임들을 각각 사이트에 가서 확인해봤다.

    ㅋㅋㅋㅋㅋㅋ 으앗ㅋㅋㅋㅋ

    ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 너무 다른 형태의 게임인 것 같은데...

    아하핫..! 장르는 크게 도움이 되지 못하나보다.... 이런 어처구니 없는 결과가 나와도 재밌다 참ㅋㅋ

     

     

    그래서 이번에는 좀 더 세분화되어있는 카테고리를 이용했다.

     

     

    아까보다는 뭔가 추천 퀄리티가 좋아진 것 같기도하고..(그렇게 믿고싶은걸지도)

    그래도 첫번 째 게임이 target data와 비슷한 류의 게임이라는 느낌은 든다. 처음 결과보단 ㅠ.ㅠ 

    나는 위처3를 사놓고 40분도 채 플레이 하지 못했다. 오픈월드는 쥐약이다. 뭘해야할지 모름.;;

     

     

    더보기

    에러 해결 

     

    아래와 같은 에러는 tweepy를 버전을 명시해서 설치해주면 된다.

    module 'tweepy' has no attribute 'StreamListener'
    pip install tweepy==3.10.0

     

    아래와 같은 에러는 JPYPE를 다운로드 받고 pip로 설치하면 된다(파이썬 버전이랑 주의깊게 보도록.. 파이썬 버전 안맞는거 받아서 한참 뭐지? 했다)

    JVMNotFoundException: No JVM shared library file (jvm.dll) found. Try setting up the JAVA_HOME environment variable properly.

    https://www.lfd.uci.edu/~gohlke/pythonlibs/#jpype

     

     아래와 같은 에러는 jpype1을 설치해주면 된다 

    NameError: name 'jpype' is not define 
    pip install JPype1

     

     

     

    더보기

    FastText 잠깐 써보기 .. 나중에 유용할 수도 있으니,,, 그리구 재밌다 ^0^!

     

    페이스북에서 개발한 Word2Vec의 일종이다. FastText는 Word2Vec과 달리 하나의 '단어' 안 에 '단어'가 또 있을 것이다(SubWord). 라는 전재로 진행된다.

    빈도 수가 적은 단어에 대해서도 오타를 포함해 학습하거나, 다른 단어의 n-gram을 고려해 학습하는 부분 또한 word2vec보다 훨씬 강한 이점이다.(word2vec은 근데 그만큼 너무 오래됐..)

     

     

    아래 사이트에 pretraining된 모델이 있으며 한국어 모델도 존재한다. 학습데이터는 아래에서 얻었다고 한다.

    We distribute pre-trained word vectors for 157 languages, trained on Common Crawl and Wikipedia using fastText.
     

    fastText

    Library for efficient text classification and representation learning

    fasttext.cc

     

    아래처럼 gensim을 통해 진행할 수 있다.

    from gensim import models
    ko_model = models.fasttext.load_facebook_model('get_data/cc.ko.300.bin.gz')
    for w, sim in ko_model.wv.most_similar('블라블라'):
    print(f'{w}: {sim}')

     

    ㅋㅋㅋ 너무그런가.. 무명인과 유명인의 차이..? 하하^^;; 그래도 학습이 잘되어있다는 것을 알 수 있다 ㅎㅎ..

     

     

     

     

    REFERENCES

    https://jpype.readthedocs.io/en/latest/install.html

    https://velog.io/@junyoung9696/Konlpy-%EC%98%A4%EB%A5%98%EC%8B%9C-%EC%B0%B8%EA%B3%A0

    https://rural-mouse.tistory.com/5

    https://wonhwa.tistory.com/entry/Pythonkonlpy-Jupyter-notebook-konlpy-%EC%84%A4%EC%B9%98-%EC%8B%9C-%EC%98%A4%EB%A5%98%ED%95%B4%EA%B2%B0tweepy

    https://wikidocs.net/22883

    profile
    위지원

    데이터 엔지니어로 근무 중에 있으며 데이터와 관련된 일을 모두 좋아합니다!. 특히 ETL 부분에 관심이 가장 크며 데이터를 빛이나게 가공하는 일을 좋아한답니다 ✨

    저작자표시 (새창열림)

    '2021년 > 21.下' 카테고리의 다른 글

    Build a Steam Game Recomend Model (2/?) - 단순 랭킹으로 추천하기  (0) 2021.12.14
    Build a Steam Game Recomend Model (1/?) - 데이터 수집 경로 결정하기  (5) 2021.12.08
    airflow 설치 기록용...  (0) 2021.11.05
    airflow log가 제대로 안나올 때  (1) 2021.11.05
    windows 10에서 ubutu 사용하기  (0) 2021.11.04

    잠깐만요~! 읽으신김에 이런 글들은 어떠세요? 👀

    • Build a Steam Game Recomend Model (2/?) - 단순 랭킹으로 추천하기 2021.12.14
    • Build a Steam Game Recomend Model (1/?) - 데이터 수집 경로 결정하기 2021.12.08
    • airflow 설치 기록용... 2021.11.05
    • airflow log가 제대로 안나올 때 2021.11.05
    맨 위로
전체 글 보기
Tistory 로그인
Tistory 로그아웃
로그아웃 글쓰기 관리

열정! 열정! 열정! 🔥

Designed by Nana
블로그 이미지
위지원
데이터 엔지니어로 근무 중에 있으며 데이터와 관련된 일을 모두 좋아합니다!. 특히 ETL 부분에 관심이 가장 크며 데이터를 빛이나게 가공하는 일을 좋아한답니다 ✨

티스토리툴바

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.