YahooLDA : 하둡상에서 LDA 처리가 가능하도록 돼어 있는 오픈 소스
설치
* git이 설치 돼 있어야 한다.( tar 볼로 임시 설치했으나 계속 사용할려면 rpm으로 설치 권장 )
tar -zxf git-1.7.2.2.tar.gz
cd git-1.7.2.2
make prefix=/usr/local all
sudo make prefix=/usr/local install
* Yahoo_LDA 설치
git clone https://github.com/shravanmn/Yahoo_LDA
make all
sh install
* . command
#!/bin/bash
HADOOP_DIR=/user/hadoop/jchern/LDA
CACHE_DIR=$HADOOP_DIR/cache
HDFS_CACHE_DIR="hdfs://xxxxx-yyy-zzzzzz1:9000"$CACHE_DIR
#./runLDA.sh 1 "" train default
$TRAIN_INPUT_DIR : hadoop상의 입력 디렉토리
$TRAIN_OUTPUT_DIR : hadoop상의 입력 디렉토리
$MEX_MEM : 메모리크기
$TOPIC_CNT : topic 개수
$ITERATION : interation수
$HDFS_CACHE_DIR/LDALibs.jar : hadoop상의 LDALibs.jar 파일 위치
$MACHINE_NUM : 서버 수
* h3. output
** lda.docToTop.txt : 문서별 토픽 분포
** lda.topToWor.txt : 토픽별 단어의 확률 분포
** lda.worToTop.txt : 문서별 단어의 토픽할당 정보
* h3. troubleshooting
** Yahoo_LDA를 설치하고 나서 runLDA.sh를 실행할때 error while loading shared libraries...관련 오류가 계속 발생했다.
주로 formatter과 관련된 에러였는데 아래와 같은 방법으로 해결하였다.( 정확히 formatter와 관련된 에러는 아닌것으로 보인다. )
위쪽에 command를 보면 CACHE_DIR과 HDFS_CACHE_DIR을 설정하는 부분이 있는데 LDALibs.jar를 저 위치에 올려놓고 실행하고서 문제가 해결됐다.
* h3. reference
** https://github.com/sudar/Yahoo_LDA/blob/master/runLDA.sh
** http://theglassicon.com/computing/machine-learning/install-yahoo-lda-in-ubuntu-11-04-server
'알고리즘' 카테고리의 다른 글
TRIE by triple array (0) | 2013.06.11 |
---|---|
희소행렬 (sparse matrix) - yale format (0) | 2013.05.09 |
LDA ( LATENT DIRICHLET ALLOCATION ) (0) | 2013.01.24 |
mapreduce and (in) search (0) | 2011.05.17 |
Animation of Lempel-Ziv Encoding Algorithm (0) | 2010.09.28 |