root/AutoKeyword/trunk/README

リビジョン 54, 6.7 KB (コミッタ: masa, 5 年 前)

Autokeyword logging by log4j

行番号 
1********************************************************************************
2本プログラムは、「Rinza公衆使用許諾契約書 第1.0版」に基づいて提供されています。
3「Rinza公衆許諾契約書 第1.0版」は、パッケージ内の"LICENSE"ファイル、および次に
4示すURLにおいて参照することができます:
5        http://www.tyzoh.jp/rinza/licenses/LICENSE-1.0.txt
6本プログラムにおけるオリジナル・プログラムの初期開発者は、日本ユニシス株式会社で
7あり、その著作権は日本ユニシス株式会社が所有しています(The Original Program is
8copyrighted (C) 2005 by Nihon Unisys, Ltd. with all rights reserved.)。
9
10本プログラムは現状有姿にて提供されるものとし、明示・黙示を問わず、プログラムの
11瑕疵の不存在、商業的な使用可能性、使用目的に対する適合性を含め、いかなる保証も
12なしに提供されるものです。
13また、日本ユニシス株式会社をはじめとするRinzaソフトウェアの開発に携わっている
14団体および個人は、本プログラムの使用によって発生するいかなる損害に対しても一切の
15責任を負わないものとします。
16
17なお,上記の”本プログラム”および”オリジナル・プログラム”の定義については、
18「Rinza公衆使用許諾契約書 第1.0版」を参照ください。
19********************************************************************************
20
21                             Rinza AutoKeyword
22                             ==============
23■ AutoKeyword について
24AutoKeyword は文書からのキーワード抽出を自動的に行うツールです。
25(全文検索には Namazu, 形態素解析には MeCab を用います)
26
27■ 主な機能
28・ 文書から重要キーワードを自動的に抽出
29 TF-IDF による
30 固有名詞、名詞を抽出
31 複数語からなる名詞を連結させて一つの名詞とします。
32
33次期バージョンでの開発アイテム
34・索引によるキーワード重み付け
35
36■ リリース日時
372006年10月
38バージョン名
390.1.1
40
41■ 配布内容
42
43Keyword-0.1.1.zip
44
45このファイルを任意のディレクトリで展開すると次のような構成となります。
46src
47└─jp
48    └─tyzoh
49        └─rinza
50            └─folksonomy
51                ├─analyze
52                ├─common
53                ├─keyword
54                └─search
55
56■ 動作環境
57OS(下記いずれか)
58 Windows 2000, XP
59 Linux(FedoraCore4 以降で動作確認済み)
60
61MW
62namazu 2.0.14
63Mecab 0.93
64java 1.5.03(おそらく、これ以前のバージョンでもコンパイル/実行可能です)
65Jakarta Logging Log4j 1.2.12+ [http://logging.apache.org/log4j/]
66
67■ 環境設定
681.全文検索エンジンの設定
69全文検索エンジンとして namazu に対応しています。
70下記 URL から namazu をダウンロードし、導入してください
71http://www.namazu.org/#download
722.0.14 以降で動作確認をしております(セキュリティホール等の問題もありますし、最新の office ドキュメント等を検索対象にする場合はできるだけ最新版 2.0.16 をお使いください)
73全文検索対象ファイル数が多いほど TF-IDF が妥当な数値となります。
74
752.形態素解析エンジンの設定
76形態素解析エンジンとして MeCab に対応しています。
77http://mecab.sourceforge.jp/
780.93 で動作確認をしております。
79
80■ インストール方法
81makefile を適宜環境(javac のパスなど)に合わせて修正し実行するか、makefile をご覧頂き即した形で javac を実行してください。
82お使いの環境に応じて次のように autokeyword.properties を編集してください。
83
84-----  autokeyword.properties 開始 -----
85#mecab のパス
86analyzer.command = c:\\mecab\\bin\\mecab.exe
87
88#namazu のパス
89command = c:\\namazu\\bin\\namazu.exe -l
90#namazu の index パス
91indexDirectory = c:\\\\tPodIndex
92#namazu の index 作成ルーチンのパスとオプション(インデックス作成は呼ばれないので、この記述は無くても動作します)
93index = c:\\namazu\\bin\\mknmz.bat "c:\\\\tPodIndex" -O
94-----  autokeyword.properties 終了 -----
95
96■ 利用方法
97
98・動作確認
99コマンドラインから
100java -cp src;. jp.tyzoh.rinza.folksonomy.keyword.Auto <対象ファイルパス>
101として実行してください。
102標準出力に結果が(TF-IDF の値が大きい順に)表示されます。
103
104-------------------出力例 開始--------------------
105>java -cp src;. jp.tyzoh.rinza.folksonomy.keyword.Auto ..\tPod\README
106N 3
107TFIDF 開始
10823.0708580620303        21      tPod    名詞    固有名詞
10915.380572041353535      14      Rinza   名詞    固有名詞
11014.281959752685424      13      namazu  名詞    固有名詞
11113.183347464017315      12      lib     名詞    固有名詞
1129.887510598012986       9       http    名詞    固有名詞
1139.887510598012986       9       jp      名詞    固有名詞
1149.887510598012986       9       ディレクトリ    名詞    一般
1158.788898309344876       8       sh      名詞    固有名詞
1167.690286020676767       7       var     名詞    固有名詞
1177.690286020676767       7       rinza   名詞    固有名詞
118...
119-------------------出力例 終了--------------------
120
121・ライブラリとして利用
122ライブラリとして使う場合は、
123boolean Engine.init(Properties properties)
124を呼び出した後に、
125Collection Engine.getKeywrods(String filename)
126を呼び出してください。
127このメソッドの戻り値は TF-IDF 順にソートされた Collection になります(要素は Result インスタンス)。
128
129■ TF-IDF
130w = tf x log( N / df) として求めています。
131w : TF-IDF 値
132tf : 対象ファイル中のキーワード出現数
133N : 全文検索対象のファイル数
134df : キーワードが含まれる(全文検索対象中の)ファイル数
135
136なお、形態素解析エンジン(MeCab)と、全文検索エンジン(Namazu)が利用する形態素解析(わかち書き)エンジンが異なる(デフォルトは Kakashi)ときや、当該ツールで「名詞を連結」するというアルゴリズムの関係から、全文検索の結果にヒットしないことがあります。この場合 df 値は 0 となりますが、0 除算を避ける都合と、本来対象文書として必ず1件はヒットするはずなので、便宜上 df 値を 1 として計算しています。
137
138以上
139
Note: リポジトリブラウザについてのヘルプは TracBrowser を参照してください。