KH Coder


構築環境

  • khcd.example.com

Text file busy対応

ゲストOSを作成したらまずは再起動
# shutdown -r now

x window

参考
CentOS 6 - GNOMEデスクトップ環境 : Server World
CentOS 6 - 日本語環境にする : Server World
一括実行
# yum -y groupinstall "X Window System"; echo -e "//////////"; yum -y groupinstall "Desktop"; echo -e "//////////"; yum -y groupinstall "General Purpose Desktop"; echo -e "//////////"; yum -y groupinstall "Japanese Support"
$ vi ~/.bash_profile
# 最終行に追記
LANG=ja_JP.UTF-8
export LANG
$ source ~/.bash_profile 
Oracle VM VirtualBoxを起動 
右クリック→リセット 
右クリック→表示→コンソールログイン 
$ startx
システム→設定→キーボード→レイアウト→追加→日本→削除→英語
参考 CentOSのキーボード配列を日本語に変更(GUI)

端末→編集→プロファイルの設定→スクロール→無制限

JDK

# cd /usr/local/src

参考 CentOS 6 - JDK 8 - JAVA開発実行環境

# curl -LO -H "Cookie: oraclelicense=accept-securebackup-cookie" \ "http://download.oracle.com/otn-pub/java/jdk/8u111-b14/jdk-8u111-linux-x64.rpm"
# rpm -Uvh jdk-8u111-linux-x64.rpm
※Rのインストール前にはJavaが必要

R

参考 RStudio Serverの更新とロケール設定
# cd /usr/local/src
# yum install compat-gcc*  gcc-gfortran -y
# wget https://cran.ism.ac.jp/src/base/R-3/R-3.1.0.tar.gz
# tar xvfz R-3.1.0.tar.gz
# cd R-3.1.0
# ./configure --with-readline=no --with-x=no --enable-R-shlib
# make && make install
※文字コードがEUCだとmakeでエラーになる 
参考 cairoを使って簡単に日本語の画像認証を実装する
# yum install -y cairo.x86_64 cairo-devel.x86_64
# yum install -y libXt-devel
参考 R (3.0.2) 言語で新しいパッケージをインストールできないときの方法(今回はigraphをいれます)
# wget https://cran.r-project.org/src/contrib/Archive/igraph/igraph_0.7.0.tar.gz
# wget https://cran.r-project.org/src/contrib/Archive/slam/slam_0.1-32.tar.gz
# wget https://cran.r-project.org/src/contrib/Archive/wordcloud/wordcloud_2.2.tar.gz

# R
Japan (Tokyo) > install.packages('Cairo') > install.packages("amap") > install.packages("maptools") > install.packages("ggdendro") > install.packages('som') > install.packages("/usr/local/src/igraph_0.7.0.tar.gz", repos = NULL) > install.packages("/usr/local/src/slam_0.1-32.tar.gz", repos = NULL) > install.packages("/usr/local/src/wordcloud_2.2.tar.gz", repos = NULL) パッケージの一覧を確認 > library() R終了 > q()
参考 まとめてインストール!

Perl

※cpanでいろいろ入れないとkh_coderは起動できない
$ perl kh_coder.pl
Can't locate Jcode.pm in @INC
参考 CPANのインストールからモジュールのインストールするまでの簡単な流れ
参考 cpanインストールエラー時の対処法 - 開発めも2
# yum install perl-CPAN.x86_64  expat-devel -y
※expat-develを入れないとSpreadsheet::ParseXLSXが入らない
# cpan
Would you like me to configure as much as possible automatically? [yes] yes

cpan> o conf urllist push ftp://ftp.jaist.ac.jp/pub/CPAN/
cpan> o conf urllist push http://ftp.riken.jp/lang/CPAN/
cpan> o conf prerequisites_policy follow
cpan> o conf build_requires_install_policy yes
cpan> o conf commit
cpan> o conf urllist

cpan> install YAML        /usr/local/share/perl5/YAML.pm
失敗したら強制インストール
cpan> force install YAML

cpan> install Jcode       /usr/local/share/perl5/Jcode.pm
# yum install perl-Tk.x86_64 -y
cpan> install DBI        /usr/local/lib64/perl5/DBI.pm
cpan> install Text::CSV_XS   /usr/local/lib64/perl5/Text/CSV_XS.pm
# cd /usr/local/src
# wget http://pkgs.fedoraproject.org/repo/pkgs/perl-SQL-Statement/SQL-Statement-1.410.tar.gz/acf1a778f09858e0d258cccab31348b9/SQL-Statement-1.410.tar.gz
# tar xvzf SQL-Statement-1.410.tar.gz
# cd SQL-Statement-1.410
# perl Makefile.PL
# make && make install
# ls -l /usr/local/share/perl5/SQL/Statement.pm
# cd /usr/local/src
# wget http://pkgs.fedoraproject.org/repo/pkgs/perl-DBD-CSV/DBD-CSV-0.49.tgz/9c9016f8c4fa8efa4d957a02e0a2e056/DBD-CSV-0.49.tgz
# tar xvzf DBD-CSV-0.49.tgz
# cd DBD-CSV-0.49
# perl Makefile.PL
# make && make install
# ls -l /usr/local/share/perl5/DBD/CSV.pm
cpan> install Spreadsheet::WriteExcel        /usr/local/share/perl5/Spreadsheet/WriteExcel.pm
cpan> install Unicode::String                /usr/local/lib64/perl5/Unicode/String.pm
cpan> install Net::Telnet               /usr/local/share/perl5/Net/Telnet.pm
cpan> install Spreadsheet::ParseExcel   /usr/local/share/perl5/Spreadsheet/ParseExcel.pm
cpan> install Spreadsheet::ParseXLSX    /usr/local/share/perl5/Spreadsheet/ParseXLSX.pm
cpan> install Clipboard          /usr/local/share/perl5/Clipboard.pm
# yum install xclip -y
cpan> install Statistics::Lite      /usr/local/share/perl5/Statistics/Lite.pm
cpan> install Algorithm::NaiveBayes   /usr/local/share/perl5/Algorithm/NaiveBayes.pm
cpan> install Time::HiRes        /usr/local/lib64/perl5/Time/HiRes.pm

確認
$ find `perl -e 'print "@INC"'` -name "*.pm" -print | grep hoge

LibreOffice

参考 LibreOfficeアップデート – MARU's Blog

インストールで依存性エラーになるのでパッケージを入れる
エラー: 依存性の欠如:
        libfreetype.so.6 は libobasis5.2-core-5.2.3.3-3.i586 に必要とされています
        libXinerama.so.1 は libobasis5.2-core-5.2.3.3-3.i586 に必要とされています

# yum install freetype-2.3.11-17.el6.i686 libXinerama-1.1.3-2.1.el6.i686 -y
# wget http://download.documentfoundation.org/libreoffice/stable/5.2.3/rpm/x86_64/LibreOffice_5.2.3_Linux_x86-64_rpm.tar.gz # wget http://download.documentfoundation.org/libreoffice/stable/5.2.3/rpm/x86_64/LibreOffice_5.2.3_Linux_x86-64_rpm_langpack_ja.tar.gz # wget http://download.documentfoundation.org/libreoffice/stable/5.2.3/rpm/x86_64/LibreOffice_5.2.3_Linux_x86-64_rpm_helppack_ja.tar.gz # tar xvzf LibreOffice_5.2.3_Linux_x86-64_rpm.tar.gz # tar xvzf LibreOffice_5.2.3_Linux_x86-64_rpm_langpack_ja.tar.gz # tar xvzf LibreOffice_5.2.3_Linux_x86-64_rpm_helppack_ja.tar.gz # rpm -Uvh LibreOffice_5.2.3.3_Linux_x86-64_rpm/RPMS/*.rpm # rpm -Uvh LibreOffice_5.2.3.3_Linux_x86-64_rpm_langpack_ja/RPMS/*.rpm # rpm -Uvh LibreOffice_5.2.3.3_Linux_x86-64_rpm_helppack_ja/RPMS/libobasis5.2-ja-help-5.2.3.3-3.x86_64.rpm sofficeコマンドのパスを通す $ vi /etc/profile export PATH=$PATH:/opt/libreoffice5.2/program

mysql

参考 データベースサーバー構築(MySQL) のMySQL初期設定まで実施
# mysql -u root -p
Enter password:khcd
mysql> grant all privileges on *.* to khcd@localhost identified by 'khcd';
mysql> select user from mysql.user where user='khcd';
参考 mysqlの文字コードをEUC-JPにする - 揮発性のメモ

chasen

# yum install nkf -y
参考 chasen(茶筌)インストール手順(ver2.4.5) インストールのみ実施 インストール先:/home/vagrant/src/
終了したら、/usr/local/lib/chasen/dic/ipadicを/home/vagrantにコピー
$ cp -r /usr/local/lib/chasen/dic/ipadic ~
$ vi /home/vagrant/ipadic/chasenrc
(GRAMMAR  /usr/local/lib/chasen/dic/ipadic)
 ↓
(GRAMMAR  /home/vagrant/ipadic)

kh Coder

KH Coder安定版のダウンロード
$ cd ~
$ tar xvfz khcoder-200f.tar.gz
参考 KH Coder on Gentoo (正しいインストール・起動の仕方) これによりシステムの文字コードをEUCにせずにすむらしい・・
$ cd /home/vagrant/kh_coder
$ export LANG=ja_JP.EUC-JP
$ perl kh_coder.pl
■ kh_coderのcoder.iniを作成・設定
プロジェクト → 設定 → OK → 終了
$ vi config/coder.ini
chasenrc_path<tab>/home/vagrant/ipadic/chasenrc
grammarcha_path<tab>/home/vagrant/ipadic/grammar.cha
sql_username<tab>khcd
sql_password<tab>khcd

形態素解析テスト
$ cd /home/vagrant/kh_coder
$ mkdir testdata ←ここにkokoro2.txtをscp
$ nkf -e --overwrite testdata/kokoro2.txt
$ perl kh_coder.pl
1. プロジェクト→新規→kokoro2.txtを選択、文字コードはEUC
2. 前処理→分析対象ファイルのチェック
3. 前処理の実行
4. 語の抽出結果を確認
"先生"で検索→行を選択して詳細表示→品詞に名詞、動詞など数種類あることを確認
5. ツール→文書→クラスター分析→OK→分類結果の保存→変数名を入力して保存→変数名リストを選択→特徴語(一覧EXCEL形式)を選択→LibreOfficeが起動→結果出力されていることを確認
6. ツール→抽出語→抽出語リスト→頻出150語・出現回数・Excelを選択してOK→LibreOfficeが起動→結果出力されていることを確認
7. ツール→抽出語→対応分析→OK→→結果出力されていることを確認
8. ツール→抽出語→多次元尺度法→OK→→結果出力されていることを確認

Linux上の画面(X11)をWindows上で表示する方法

1. Xming、Xming-fontsをインストール
参考 WindowsでリモートのLinuxのGUIアプリを表示させる-Xサーバ Xming  
※ Puttyを使うので「Tera Termの設定」は行わない

2. X0.hostsにゲストOSのIPを追加
C:\Program Files (x86)\Xming\X0.hosts
localhost
192.168.33.130
※ 最初は権限で更新出来ないので、デスクトップにコピー・更新したファイルを上書きする。

3. XLaunch.exeを実行
C:\Program Files (x86)\Xming\XLaunch.exe
参考 Linux上の画面(X11)をWindows上で表示し,操作する

4. Puttyの設定
SSH > X11 >「 X11フォワーディングを有効にする」をチェック

5. ゲストOSにログイン
以下の状態である事を確認
$ echo $DISPLAY
localhost:10.0
$ sudo cat /etc/ssh/sshd_config | grep X11Forwarding
X11Forwarding yes

6. kh_coderを起動
$ cd kh_coder
$ perl kh_coder.pl
This is KH Coder 2.00f on linux.
CWD: /home/vagrant/kh_coder
R Version: 3.1, x86_64
Using un-threaded functions...

Windows上にKH_Coderが起動される