달력

4

« 2024/4 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
2008. 2. 18. 10:53

협력적 여과의 쉬운 설명. netflix prize/기타2008. 2. 18. 10:53

쉽게 비유를 들어 설명했습니다.
http://foaf.tistory.com/5


아마존의 추천 시스템.
http://foaf.tistory.com/4

선구적인 연구.. (연구내용)
http://foaf.tistory.com/6
:
Posted by Kwang-sung Jun

분산 환경에서의 협력적 여과를 위한 멀티 에이전트 프레임워크

Ae-Ttie Ji, Cheol Yeon, Heung-Nam Kim, and Geun-Sik Jo, "분산 환경에서의 협력적 여과를 위한 멀티 에이전트 프레임워크", 한국지능정보시스템학회, Journal of Intelligent Information Systems, Vol. 13, pp. 119-140, Sep. 2007

+ title : 분산 환경에서의 협력적 여과를 위한 멀티 에이전트 프레임워크 (A Multi-Agent Framework for Distributed Collaborative Filtering)
+ author : 지애띠, 연철, 김흥남, 조근식 (Ae-Ttie Ji, Cheol Yeon, Heung-Nam Kim, and Geun-Sik Jo)
+ journal : 한국지능정보시스템학회 논문지 (domestic)

abstract.
추천 시스템은 정보의 홍수 속에서 사용자로 하여금 자신에게 더욱 가치 있고 흥미로운 정보를 선별할 수 있도록 돕는 자동화된 정보 여과 시스템이다. 최근 분산 컴퓨팅 환경에 대한 연구가 활발히 진행되면서, 지금까지의 중앙 서버에서 모든 정보를 관리하는 중앙 집중 방식의 추천 시스템에서 P2P 환경의 접근 방식으로 선회하고 있다. 협력적 여과는 상업적인 추천 시스템에서 가장 많이 사용하는 정보 여과 기법이지만, 그 성공에도 불구하고 확장성(scalability)과 데이터의 희박성(sparsity), 악의적인 사용자의 공격(shilling attack)에 대한 방어 등에 관련된 여러 제약을 갖는다. 중앙 집중 방식에서 분산된 방식으로의 변화는 추천의 신뢰성과 개인 정보의 남용 가능성에 관련한 문제점을 일부 해결할 수 있으나, 조작된 사용자 프로파일을 사용하여 추천을 조작하려는 의도를 갖는 악의적인 사용자의 공격에는 중앙 집중 방식과 마찬가지로 취약할 수 있다.
본 논문에서는 개인 정보의 오남용과 악의적인 사용자의 공격에 관련된 문제점을 해결하고, 분산된 환경에서 효과적인 협력적 여과를 수행하여 추천의 성능과 정확성을 높이기 위한 멀티 에이전트 기반의 추천 프레임워크를 제안한다. 추천의 신뢰성을 높이기 위해 사용자 간의 신뢰 정보를 사용하며, 각 사용자의 개인 에이전트와 이동 에이전트 간의 정보교환을 통해 효과적으로 신뢰 정보를 전파하고 분산된 유사도 계산의 효율성을 높였다.
:
Posted by Kwang-sung Jun
2008. 2. 17. 22:32

day 27~31 netflix prize/일지2008. 2. 17. 22:32

netflix prize research day 27~31

이번 한주동안 한일은 다음과같다. (매우 많은데 이렇게 보니 또 별거 없어보인다.)

  • NonNegativeQuadraticOpt알고리즘 최종적으로 정리(Robust!!)
  • =>유효한건 stepSize가 nan이거나 0일때 강제로 0.001을 넣어준 것이었다.
  • => BellKor가 제안한 구현조차 먹히지 않았기에 노가다를 통해 직접 깨닳았다.
  • probe_rmse작성 통해 값을 내 보니 약 1.2정도 된다.
  • UserRating구조체는 bitfield를 사용하여 1바이트 압축. MovieRating역시 1바이트. (날짜 데이터를 제외시켰다.)

  • moviedata_set을 저장할때 userScaled를 키값으로 정렬되도록 하였다.

TODO

global effect구현
볼츠만 머신 구현
SVD로 구현

문제해결법에 대한 IDEA

*. 영화제목으로부터 연관관계를 끌어낼 수 있을까(시리즈물, 어두운 분위기, 공포 등)

 - WWE
 - soldier
 - Dark
 - dragon ball
 - national geographic
 - 영화제목에 위의 단어가 들어있다면. 이용자가 시리즈물을 보고 평가한 결고를 반영할 수 있다.
 - (user base + item base)
 - 자주 검색되는 단어를 이용해도 된다.
 
*. 시간적으로 '최근' 취향이 비슷할 수록 가중치가 높아진다.
 - user간에 얼마나 '많은' 영화의 평점이 얼마나 '많이'같은지, 그 각각의 영화가 얼마나 시기적으로 '가까운'지에
대하여 유사도를 계산한다..

=> 뭐 이딴것들은 다 논문에 나와있더라.. user-based approach와 item-based approach는 이미 다 나와있고... 상대적으로 item-based approach가 더 좋은 속도와 결과를 내지만,
나중에 데이터 짬뽕시키는게 적중률을 향상시키기에 시도는 했다 하더라.
:
Posted by Kwang-sung Jun
2008. 2. 14. 22:08

gnu plot netflix prize/시각화2008. 2. 14. 22:08

gnuplot -> 그래프..
:
Posted by Kwang-sung Jun
2008. 2. 13. 14:52

개발속도 단축 netflix prize/기타2008. 2. 13. 14:52

주어진 셋을 축소시켜서

프로그램을 짠다.(왜냐면, 기본 데이터는 너무나도 양이 커서, 테스트에 지나치게 많은 시간이 소모되기 때문이다.)

예를 들면 한 영화에 대한 사용자 레이팅은 100건 까지만 인식한다든가...
(그렇게 하면 rating한 유저의 명수는 줄어들겠지만..)

알고리즘의 성능은 떨어지겠지만, 개발 과정에서는 크게 상관없으므로...!

:
Posted by Kwang-sung Jun
2008. 2. 13. 14:32

논문 아이디어 netflix prize/기타2008. 2. 13. 14:32

k-NN
factorization
RBM(Restricted BoltzMann Machines)
asymmetric factor models

네 가지의 blending(ensemble)을 이용한 실용적인 추천시스템 고안
네 가지의 주요 알고리즘의 성능 분석(비교대조)

:
Posted by Kwang-sung Jun
2008. 2. 13. 11:36

황규백 교수님 면담 (1) netflix prize/논문 미팅2008. 2. 13. 11:36

1. Ax = b 원래의 복잡한 연산을 매트릭스로 압축시켜놓은 것일 뿐.

2. 공부내용 정리 및 문서화는 어떻게? -> 답없음

3. machine learning 교재 추천. MACHINE LEARNING, McGraw Hill, TOM. M. MITCHELL

4. 교수님께서 논문쓰실때 구현은 - 언제나 C, 행렬처리는 MATLAB을 쓰는것이 더 빠르다.
JAVA 기계학습 라이브러리 - WEKA
S, S+
R (통계 패키지)

5. 논문 -> 정보과학회에 낼 수 있을 것 같다.(2007년에는 4월 17일경에 제출 마감이 있었다.)
학회는 international학회라해서 항상 규모가 있는 것은 아니다. 일단 국내 학회에 낸 후, 국외에 내도 늦지 않다.

다음은 <포스터 발표>

사용자 삽입 이미지

다음은 <구두 발표>
사용자 삽입 이미지

구두 발표


6. 논문 검색 -> 그냥 구글을 이용하는 것이 편하다.
* review article ->새로운 것을 제안하는 것이 아니라 기존에 있는 것들을 collect하여 쓰인 논문들. 학습하기에 좋다.
* communication paper
* 논문 검색 사이트 : DBLP, cite seer 가 CS에서는 가장 큰 사이트

7. 시각화 : pajek - 5000이상의 데이터가 넘어가면 버벅대더라.
* collaborative filtering은 이수원 교수님 랩 쪽이 더 잘 알고 있을 것이다.

:
Posted by Kwang-sung Jun
2008. 2. 12. 11:01

force-directed placement netflix prize/시각화2008. 2. 12. 11:01

Re: A question about your visualization of Netflix movie data set.

The movies can be thought of as nodes in a graph, and the similarities can be thought of as weighted edges.  Then a force directed layout is used to layout the graph.  Take a look at:
 
 
Todd


On 2/10/08, 전광성 <deltakam@naver.com> wrote:

How are you?


I'm korean students who is interested in developing recommender system.(not commecially, just for my study and learning)


I have a question about your visualization of netflix movie data set.


I understand that you used movie similarity extracted from the article you mentioned in your web site.

However, how did you use it? I mean, we need 2 coordinate, x and y axis... 1 axis (x) can be drawn from the similarity, but, how about y axis? did you use different form of similarity indicator for another axis?


I got a plan on exhibiting my recommender system at IT festival in South Korea held by SAMSUNG SDS, and I DO need to visualize my system, but struggling with how to show the principle of the algorithm....


plz help me

:
Posted by Kwang-sung Jun

메뉴 에서 선택

1. 서버에서 어떤 데이터 베이스에 어떤 테이블, 어떤 칼럼에정보가 들어있는지 그 정보를 읽도록 한다.

2. 그 데이터를 기반으로 바이너리 데이터를 생성해 메모리에 올린다.

3. 메모리에 올린 데이터로 preprocessing data를 생성한다. (유사도 + 행렬 A)
-> 이 와중에 시각화를 시키는 것이 가능하다 - 유사도를 이용하여 영화의 군집화를 보여주는 것이다.

<이상의 작업은 하루에 한번 이용량이 적은 시간대에 행해질 것이다. UI버전 + CUI버전 동시에 제공. UI버전은 실행과 동시에 작업이 진행된다.)
... 시간 소요 ...
 
4. 이제 그 바이너리 데이터를 기반으로 항시 "추천"이 가능하다.
4-1. 추천의 방법은 예를 들면, 최신 영화 100개를 대상으로 맞춤평점순 정렬을 시킨다든지, 특정 장르, 특정 검색어를 통해 "검색"과 동시에 맞춤평점을 평가하는 방식이 가능하다.
4-2. 또는 랜덤하게 추출한 100개의 영화중 맞춤평점이 높은 영화를 추천해 줄 수 있다.


* 프로토 타입만 생성가능 => 전시회이지 공모전이 아니기 때문이다...
* 실험데이터를 자주 참조하자.


궁금증 ** 왜 weight의 합은 1이 아닐까??????????????

:
Posted by Kwang-sung Jun
2008. 2. 10. 22:32

시각화의 한 방법 netflix prize2008. 2. 10. 22:32

생각조각..

아마도 아래와 같은 그림은
두 가지 다른 "유사도"측정 방식을 이용했을 것이다.
예를 들어, x축을 위해서는 support밸류가 유효한 유사도, y축을 위해서는 support밸류가 유효하지 않은 것. 또는 Beta값이 다른 유사도 ...

netflixprize.com

사용자 삽입 이미지
:
Posted by Kwang-sung Jun