IBM Content Analyzer 運用ガイド
本書には、IBM の専有情報が含まれています。その情報は、使用許諾条件に基づき提供され、 著作権により保護されています。 本書に記載される情報には、いかなる製品の保証も含まれていません。 また、本書で提供されるいかなる記述も、製品保証として解釈すべきではありません。 お客様の環境によっては、資料中の円記号がバックスラッシュと表示されたり、バックスラッシュが円記号と表示されたりする場合があります。

© Copyright IBM Corp. 2007, 2008. All Rights Reserved.

この文書では、IBM Content Analyzer の運用について解説します。
1 はじめに

この文書では、テキストマイニングシステム IBM Content Analyzer の運用の流れ、および運用の各段階で使用するツールについて説明します。 とくに、分析対象のデータに言語処理を実施し、分析のための索引構造を作成するまでの一連の処理(前処理)の手順を解説します。

なお、本書は、IBM Content Analyzer がインストール済みの環境について説明しています。 インストールの詳細につきましては、インストールガイドを参照して下さい。

1.1 対象とする読者

この文書は、システム管理者、および 運用設計者を対象としています。 1章 の内容については、すべて理解する必要があります。

1.2 本書で使用する用語
本書では、以下の用語を用います。

用語 意味
%TAKMI_HOME% インストールディレクトリを指す、OS の環境変数。インストール時に決定されます。
※両端の % は、この記述がOSの環境変数であることを示します

例えば %TAKMI_HOME% が C:/Program Files/takmi という値に設定されている場合、
%TAKMI_HOME%/conf/global_config.xml は

C:/Program Files/takmi/conf/global_config.xml

に読みかえられます。
データベース 分析対象データごとの、言語処理結果の管理単位。
たとえば、「お客様問い合わせ」と「社内文書」の2種類のデータを別々に分析する場合、 それぞれに対応して2個のデータベースを作成します。
データベース名
(DATABASE_NAME)
データベースには、作成時に、半角数字もしくは半角アルファベットを用いて 任意の名前をつけることができます。
本書では、この名前を DATABASE_NAME として参照します。 ご使用の名前に読みかえて下さい。
データベースディレクトリ
(DATABASE_DIRECTORY)
データベースの物理的な配置場所となる、OSのディレクトリです。 デフォルトでは、データベース名を DATABASE_NAME とすると、

%TAKMI_HOME%/databases/DATABASE_NAME

がデータベースディレクトリとなります。これを DATABASE_DIRECTORY として参照することがあります。例えば、

DATABASE_DIRECTORY/conf/database_config.xml

は、データベースディレクトリの下の、conf ディレクトリの下の、database_config.xml ファイルを示します。
データベース設定
(database_config.xml)
データベース設定ファイル:
DATABASE_DIRECTORY/conf/database_config.xml
に記述された設定を指します。 ファイル名である「database_config.xml」もこの意味で用います。

このファイルは、各データベースに対して1つ存在します。
グローバル設定
(global_config.xml)
グローバル設定ファイル:
%TAKMI_HOME%/conf/global_config.xml
に記述された設定を指します。 ファイル名である「global_config.xml」もこの意味で用います。

このファイルは、1つの IBM Content Analyzer システム上に1つだけ存在します。
運用上重要な点として、新規に作成したデータベースを Web アプリケーションが使用可能にするためには、グローバル設定にそのデータベースを登録する必要があります。
ATML
(ATMLフォーマット)
言語処理の入力フォーマットです。
分析対象データは、必ずこのフォーマットに変換してから言語処理されます。
MIML
(MIMLフォーマット)
言語処理の出力フォーマットです。
言語処理結果はこの形式のファイルに書き出されたあと、インデキシングされます。

1.3 関連文書
IBM Content Analyzer の他のマニュアルについては、マニュアル一覧を参照して下さい。
1.4 設定ファイル編集上の注意

global_config.xml や database_config.xml などの設定ファイルを、テキストエディタで編集する上での注意事項を説明します。

これらのファイルは UTF-8 で保存する必要があります。 Windows のメモ帳を使用して編集する場合,必ず「文字コード」を「UTF-8」に明示的に指定して保存して下さい。
具体的には、メモ帳のメニューから「ファイル」、「名前をつけて保存」を順に選び、文字コードを UTF-8 にして保存します。 「Unicode」を選ばないで下さい。

2 運用手順とその設計

この章では、分析対象のデータを IBM Content Analyzer で分析するまでの、一連の作業について解説します。 使用されるツールの詳細については3章以降に記載されています。必要に応じて参照して下さい。

最初に、運用の流れを概観します。以下の図は、アプリケーションがデータを分析できるようになるまでの、バッチ処理の流れを示しています。 この処理全体を、前処理と呼びます。

前処理は大きく分けて、分析対象の生データを IBM Content Analyzer の標準入力データフォーマットATMLに変換する処理と、 ATML に共通処理を施して索引を生成する処理の2つに分かれます。
IBM Content Analyzer は、各処理を実行する以下のツールを提供します。 運用ではこれらのツールを起動するワークフローを、要件に応じて定めて下さい。 この章の後の節では、上の図に示す標準的な流れを解説します。

名称 役割
DICTIONARY EDITOR カテゴリや辞書の編集を支援します。
DATA INGESTER 分析対象のCSVファイルを、ATMLファイルに変換します。
NLP(言語処理) ATMLファイルを処理して、言語処理結果(MIMLファイル)を出力します。
INDEXER 言語処理結果から、アプリケーションのための索引を作成するインデキシング処理を実行します。

また、実際の運用では、処理したデータを削除し、新しいデータに置きかえる処理が発生します。 データの削除については、6.1 データの削除 を参照して下さい。

2.1 データベース名の決定とデータベース作成

データ処理に用いられるリソースは、データベースと呼ばれる単位で管理されます。 リソースは、物理的にはデータベースディレクトリに格納されています。

運用設計では、始めにデータベースディレクトリを作成します。 以下の手順に沿って作成して下さい。

2.2 分析対象データのCSVファイル化

分析対象データを、以下で述べる CSV(Comma Separated Values) 形式で用意する必要があります。 この形式でない任意のフォーマットのデータは、以下のルールにしたがって、予めCSVに変換して下さい。

基本的な CSV のフォーマットについては、Microsoft Excel が出力する形式をサポートします。 Microsoft Excel ファイルで保管されているデータは、Excel を用いるとCSV形式に簡単に変換することができます。

また、もともと CSV 形式で対象データが存在する場合は、以下のルールにしたがっているかどうか確認して下さい。

必須のルール:

強く推奨されるルール:

2.3 カテゴリツリーの設計

CSV ファイルの各列をカテゴリに対応させるため、カテゴリツリーを編集します。 また、ここで編集したカテゴリを定型項目として定義するため、データベース設定 database_config.xml を編集します。
以下を順に実施して下さい。なお、この作業は元CSVデータの構造が変わらない限り、原則としてデータベース設計時に一度だけ行ないます。

カテゴリツリー(category_tree.xml)の編集

CSV 列とカテゴリとの対応の仕方、およびカテゴリツリーの編集の仕方を例を挙げて説明します。 この対応は、DATA INGESTER が CSV ファイルを ATML ファイルに変換するときに用いられます。

例えば、以下のような列を持つ CSV ファイルを処理するとします。

列1 列2 列3 列4 列5
文書ID 問い合わせ日 顧客ID 氏名 問い合わせ内容

この CSV ファイルは5個の列を持ちます。5列目は言語処理が解析すべきテキストです。
それ以外の4個の列は、分析対象データにもとから付随している定型項目です。 このうち1列目の文書IDを除く、3個にカテゴリを対応させるとします。 カテゴリはカテゴリ名とカテゴリパスから成ります。いくつかの列名に対して、カテゴリの作成例を示します。

列名 カテゴリパス カテゴリ名
顧客ID .customer_id 顧客ID
氏名 .fullname 氏名

カテゴリパスは、"." で始まり、2文字目以降に "." を含まない半角英数文字列を使用して下さい。 大文字と小文字は区別されます。
使用可能な文字は、0-9,a-z,A-Z および '-', '_' のいずれかです。 また、読みからその意味がわかるようにしておくと便利です。
カテゴリ名は、ほとんどの場合に列名がそのまま使用できますが、必要に応じて変更しても構いません。

なお、時系列分析で使用したい日付(上の例だと「問い合わせ日」)については、 ".date" という日付専用の特別なカテゴリパスを使用します。 このカテゴリパスはテンプレートのカテゴリツリーに既に用意されているため、新たに作成する必要はありません。 日付として使用する列をこのカテゴリに対応させる規則は、DATA INGESTER の設定csv.column.index.dateに記述します。

また、文書IDとなる列を指定するにはDATA INGESTER の設定csv.column.index.idに記述し、 文書IDにカテゴリを対応させないことを指定するにはDATA INGESTER の設定csv.column.namesに記述します。
文書IDをカテゴリに対応付けることもできます。その場合には、文書IDに対応するカテゴリも作成して下さい。

次に、これらのカテゴリをカテゴリツリーに登録します。 カテゴリツリーは、DATABASE_DIR/category/category_tree.xml というファイルに記述されています。
category_tree.xml をテキストエディタで開き、上で作成したカテゴリを以下のように追加します。

<?xml version="1.0" encoding="UTF-8"?>
<category_tree>
<node id="1" path="date" name="標準日付" features=""/>
<node id="2" path="date/dd" name="日付(日)" features="integer"/>
<node id="3" path="date/dow" name="日付(曜日)" features="integer"/>
<node id="4" path="date/yyyy" name="日付(年)" features="integer"/>
...
<node id="200" path="customer_id" name="顧客ID" features=""/>
<node id="201" path="fullname" name="氏名" features=""/>
</category_tree>

1つのカテゴリに対し、node 要素を1つ、category_tree 要素の直下の子要素として追加します。 編集時には以下のことに注意して下さい。

データベース設定(database_config.xml)の編集

カテゴリツリーの編集後、カテゴリツリーに新しく登録したカテゴリが辞書ツールによって編集されないよう、 データベース設定を編集します。
DATABASE_DIR/conf/database_config.xml をテキストエディタで開き、 category_entries 要素の直下の子要素 category_entry を以下のように追加して下さい。

<category_entries>
<!-- Specifies subroot categories for system-reserved categories. -->
<category_entry name="reserved_by_system" value=".date"/>
<category_entry name="reserved_by_system" value=".date/dd"/>
<category_entry name="reserved_by_system" value=".date/dow"/>
<category_entry name="reserved_by_system" value=".date/yyyy"/>
<category_entry name="reserved_by_system" value=".date/yyyymm"/>
<category_entry name="reserved_by_system" value=".date/yyyyww"/>
<category_entry name="reserved_by_system" value=".date/yyyymmdd"/>
<category_entry name="reserved_by_system" value=".tkm_ja_base_word"/>
<category_entry name="reserved_by_system" value=".tkm_ja_base_phrase"/>
<category_entry name="reserved_by_system" value=".customer_id"/>
<category_entry name="reserved_by_system" value=".fullname"/>
...

1つのカテゴリに対し、category_entry 要素を1つ追加します。編集時には以下のことに注意して下さい。

2.4 言語処理リソースの作成

必要に応じて、辞書や追加のカテゴリ、パターンなどのリソースを作成して下さい。 辞書やカテゴリの編集については、辞書ツールを参照して下さい。

2.5 ATMLフォーマットへのデータ変換

CSV から IBM Content Analyzer の入力データフォーマットである ATML に変換するには、DATA INGESTER を用います。 詳細は、DATA INGESTER の章で述べます。

2.6 言語処理(NLP)

ATML ファイルを処理して、言語処理結果を含む MIML ファイルを作成する処理が言語処理(NLP)です。 詳細は、4.1節で述べます。

2.7 インデキシング

MIML ファイルを処理して、高速なマイニングを実現するための索引を作成する処理がインデキシングです。 詳細は、5.1節で述べます。

2.8 TEXT MINER による稼動確認

インデキシングが完了したら、TEXT MINER などの索引を使用するアプリケーションが使用可能になります。ここでは、TEXT MINER を起動して稼動確認する手順を述べます。

3 データ変換

この章では、CSV形式のデータを、DATA INGESTER を用いてATMLに変換する手順について説明します。

3.1 コマンド実行方法

DATA INGESTER は、CSV ファイルから ATML ファイルへの変換を実行するツールです。 ここでは、ツールを起動するコマンド takmi_data_ingester 実行の手順、 および設定ファイルの記述の仕方について説明します。

コマンド実行方法

設定編集方法

ここでは、data_ingester_config_csv2atml.xml の設定を編集する方法について説明します。 より詳細な設定については、ツールの詳細設定を参照して下さい。 なお、このファイルを編集して保管する際、文字コードを UTF-8 にして下さい。

以下は、5つの列を持つ CSV ファイルの例です。1行目には列名が、2行目以降には実際のデータが入っています。 CSVファイルのフォーマット詳細については、分析対象データのCSVファイル化 を参照して下さい。

文書ID 問い合わせ日 顧客ID 氏名 問い合わせ内容
D00000001 2007/04/01 XX001122 佐藤太郎 パソコンが起動しない
D00000002 2007/04/05 XX00334455 鈴木一郎 新製品の価格について
:
:
:
:
:
:
:
:
:
:

このCSVファイルをATMLに変換するために、以下の設定をするとします。

これらの設定の仕方を、それぞれ以下に示します。 先ず、1列目の値を文書IDとするためには、設定ファイルを以下のように編集します。 1列目を指定するために、valueに1を入力しています。

<param name="csv.column.index.id" multivalued="no">
  <value>1</value>
</param>

2列目の値を日付とするためには、設定ファイルを以下のように編集します。 csv.date.format.list は、"2007/04/01" というフォーマットの日付を解釈するための設定です。

<param name="csv.column.index.date" multivalued="no">
  <value>2</value>
</param>
    :
    :
<param name="csv.date.format.list" multivalued="true">
  <value>yyyy/MM/dd</value>
</param>

次に、CSVファイルの各列とカテゴリ・テキストとの対応を、以下のように設定します。

<param name="csv.column.text.indexes" multivalued="yes">
  <value>5</value>
</param>
    :
    :
<param name="csv.column.names" multivalued="yes">
  <value></value>
  <value></value>
  <value>.customer_id</value>
  <value>.fullname</value>
  <value>問い合わせ内容</value>
</param>

csv.column.text.indexes には、言語処理に解析させたいテキストを含む列の番号を指定します。 複数の列を指定することもできます。

csv.column.names に設定する value の数は、必ず CSV ファイルの列数と同じにします。 この例では5個です。
各 value の値は、カテゴリパスか、言語処理対象のテキストにつけるラベルか、または空白文字列のいずれかを選びます。 文書ID,文書タイトルあるいは日付として指定する列には、対応して「空白文字列」を指定します。
この例では、1列目を文書IDに対応させるためにcsv.column.index.idに値1を、2列目を日付に対応させるために csv.column.index.date に値2をセットしています そのため、対応する1個目と2個目の value には両方とも空白文字列をセットしています。
また、5列目を言語処理対象のテキストとするため、csv.column.text.indexes に値5をセットしています。 そのため、対応する5個目の value には、テキストのラベル "問い合わせ内容" をセットしています。
残りの3列目・4列目は、それぞれカテゴリ .customer_id と .fullname に対応させるための値を value にセットしています。

設定の詳細については、ツールの詳細設定を参照して下さい。

最後に、データの先頭行(今回の例では、2行目)を指定する次の設定をして、設定は完了です。
文字コードを UTF-8 にして保管することを忘れないようにして下さい。

<param name="csv.row.firstindex" multivalued="no">
  <value>2</value>
</param>

4 言語処理

この章では、言語処理について説明します。

4.1 コマンド実行方法

言語処理は入力データ(ATMLファイル)ごとに処理を行います。 また言語処理を行う前に、辞書ツール・DOCATで更新された言語処理で用いるリソースを配置する処理が必要になります。

言語処理リソースの配置

言語処理を行う前に本処理を一度だけ行います。この処理により、辞書ツール・DOCATでの言語リソースの変更が言語処理に反映されるようになります。

言語処理 全ての入力ファイルを処理し終わるまで、言語処理リソースの配置を行ってはいけません。また、すでに出力データファイルが存在する場合には上書きされます。 必要に応じて古いデータを削除します。

5 インデキシング

この章では、インデキシングについて説明します。

5.1 コマンド実行方法

インデキシングには、索引の新規作成と追加更新との2種類の処理があります。

新規作成は、すべての言語処理済データ(MIMLファイル)に対してインデックス作成を行ないます。 それに対し、追加更新は、新規MIMLファイルと既存のMIMLファイルとを合わせてインデックス作成を行ないます。
なお、インデキシングをカスタマイズするためのコマンドについては、ツールの詳細設定を参照して下さい。

新規作成のとき

追加更新のとき 新規作成のときと異なり、takmi_index_diff.bat は、実行時に DATABASE_DIRECTORY/db/miml にある新規言語処理済みデータを調べ、 それに対してインデックス作成を行います。 新規言語処理済みデータがない場合にも、既存インデックスに対する更新処理が行われます。

複数のテキストからなる文書を処理するとき

OmniFind Analytics Edition 8.4.2以降のバージョンでは複数のテキストからなる文書をテキスト毎に解析することが可能です。

この機能を使用する場合は database_config.xml ファイルの text_entries タグの要素にテキスト名を name 属性に持つ text_entry タグを追加してインデックスを作成します。以下は質問と回答という名前の2つのテキストからなる文書を処理する場合の例です。


  <impl name="standard">
    ...
    <text_entries>
       <text_entry name="質問"/>
       <text_entry name="回答"/>
    </text_entries>
    ...
  </impl>

6 データの削除

この章では、データの削除について説明します。

6.1 データの削除

言語処理およびインデキシングの際、必要に応じて以前作成したファイルを削除します。 これらの作業は、必ず WebSphere Application Server を停止してから実行して下さい。 (停止しないとファイルを消去できない場合があります)
なお、停止せずに削除した場合、その削除したファイルを使用する Webアプリケーション の挙動は保証されません。

新たに言語処理済み MIML ファイルをインデックスに追加したい場合は、インデックスのみの再作成となるため、 %TAKMI_HOME%/binにある以下のコマンドでインデックスを消去します。
Windows:
> takmi_clear_index.bat  DATABASE_DIRECTORY
Unix:
> takmi_clear_index.sh  DATABASE_DIRECTORY
すべてのデータを処理しなおす場合(辞書更新時など)には、MIMLファイルとインデックスの両方を、 %TAKMI_HOME/bin にある以下のコマンドで消去します。
Windows:
> takmi_clear_nlp_index.bat  DATABASE_DIRECTORY
Unix:
> takmi_clear_nlp_index.sh  DATABASE_DIRECTORY
いずれのコマンドも、実行すると削除してよいか確認してきます。"y" を入力すると削除が実行されます。
以下に典型的な実行の例を示します。

インデックス消去の実行例
インデックス消去コマンド実行画面のスクリーンショット

言語処理結果とインデックス消去の実行例
言語処理結果&インデックス消去コマンド実行画面のスクリーンショット

なお、言語処理前の ATML ファイルについては、必要に応じて削除するように運用を定めて下さい。

7 サーバーの停止と起動

この章では、サーバーの停止と起動の方法を説明します。 IBM Content Analyzer の Webアプリケーションは、WebSphere Application Server 上で稼動するものであり、 基本的に WebSphere Application Server を停止・起動するだけでその上のすべてのアプリケーションが停止・起動します。

7.1 サーバーの停止

WebSphere Application Server を、通常の方法で停止します。 停止方法は、コマンドラインによる方法と Windows のメニューからアイコンを指定する方法、 および Windows サービスに登録された WebSphere Application Server サービスを停止する方法があります。 詳しくは、WebSphere Application Server の製品マニュアルを参照して下さい。

7.2 サーバーの起動

WebSphere Application Server を、通常の方法で起動します。 起動方法は、コマンドラインによる方法と Windows のメニューからアイコンを指定する方法、 および Windows サービスに登録された WebSphere Application Server サービスを起動する方法があります。 詳しくは、WebSphere Application Server の製品マニュアルを参照して下さい。

WebSphere Application Server 起動後、Webアプリケーションが正常に稼動していることを確認して下さい。 TEXT MINER にWebブラウザでアクセスし、データベース一覧が表示されていれば、 TEXT MINER は正常に起動しています。ただし、グローバル設定にデータベースが1つも登録されていない場合、 データベース名は表示されません。

8 ログファイル

この章では、システムが出力するログファイルについて説明します。

8.1 ログファイル出力場所

前処理、およびサーバープロセスは、実行時および稼動時にログを出力します。 デフォルトで以下の場所に出力されます。

種類 ログ出力場所
前処理 %TAKMI_HOME%/logs
サーバー(Webアプリケーション含む) WebSphere Application Server のログディレクトリ

WebSphere Application Server のログディレクトリは、ご使用の環境によって異なります。 詳しくは、WebSphere Application Server の製品マニュアルを参照して下さい。

また、前処理実行時に出力されるログファイル名は、ログを出力するアプリケーションによって異なります。 デフォルトでは、"アプリケーション名.log" となっていますので、問題の切り分けに使用して下さい。 なお、WebSphere Application Server のログファイル SystemOut.log, SystemErr.log なども、問題判別にしばしば有用です。

8.2 ログファイル設定

ログファイルの設定は、DATABASE_DIRECTORY/conf/アプリケーション名_logging.properties という設定ファイルに記述されています。 設定ファイルの仕様は Java の Logging API に準じています。詳細は Java Logging API の文献を参照して下さい。

9 ツールの詳細設定

この章では、前処理で使用されるツールの、詳細設定を紹介します。

9.1 DATA INGESTER

DATA INGESTER の設定ファイル data_ingester_config_csv2atml.xml を編集することで、 CSVからATMLへの変換方法をカスタマイズすることが可能です。

data_ingester_config_csv2atml.xml は、次のような形式をしています。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ingester_config SYSTEM "data_ingester_config.dtd">
<ingester_config>
  <data_source impl="com.ibm.research.trl.milne.application.impl.common.prenlp.PreNLPDataSourceCSV">
  </data_source>
  <doc_converter_list>
    <doc_converter impl="com.ibm.research.trl.milne.application.impl.common.prenlp.PreNLPDocumentConverterATML">
    </doc_converter>
  </doc_converter_list>
  <doc_serializer impl="com.ibm.research.trl.milne.application.impl.common.prenlp.PreNLPDocumentSerializerATML">
  </doc_serializer>
</ingester_config>

data_source, doc_converter, doc_serializer のそれぞれに、キーと対応する値の組をパラメタとして指定します。
パラメタは、これら3つに共通な以下の形式で与えられます。

<param name="key of this parameter" multivalued="yes">
  <value>AAA</value>
  <value>BBB</value>
</param>

multivalued 属性には、"yes" か "no" のいずれかを必ず指定します。
no が指定された場合は、その param には1個の value しか指定できません。

data_source のパラメタ一覧
name 必須 multivalued valueの意味と書式 valueの例 注意
csv.character.encoding * no 入力CSVファイルの文字エンコード UTF-8, MS932 など Java が解釈可能な文字セットを指定すること
csv.row.firstindex * no CSV ファイルの何行目からを文書として取り込むかを指定する 1, 2, 3, ...
csv.column.index.id no 文書ID文字列に対応する列番号を、1を最左列として指定する 1, 2, 3, ... DOCAT使用時には省略できない。省略時は、CSVファイル毎に"1", "2", ... という連番が ID に自動的に振られる。
csv.column.index.title no 文書タイトルに対応する列番号を、1を最左列として指定する 1, 2, 3, ... 省略時は、各文書のタイトルは "" になる
csv.date.format.list yes csv.column.index.date で指定した列を日付として解釈するための、日付フォーマットのリスト。
Java のクラス java.text.SimpleDateFormat がサポートするパターンに従う
yyyyMMdd, MM-dd-yyyy, yyyy/MM/dd など 省略時は、
"yyyyMMdd"
のみが使われる。

CSV に入っている日付の文字列形式どおりに csv.date.format.list の値を定めること。
csv.column.index.date no 文書日付に対応する列番号を、1を最左列として指定する 1, 2, 3, ... 省略時は、各文書に処理時点の日付が .date 定型項目として入る 書式に合わない文字列が入力データに含まれていた場合は、その文書に処理時点の日付が入る(省略時の挙動と同じ)。ログには処理に失敗した日付文字列が出る
csv.column.text.indexes yes 言語処理に解析させたいテキストを含む列番号を、1を最左列として指定する 1, 2, 3, ...
csv.column.names * yes 入力CSVファイルの各列に対し、ラベル(文字列)を付与する。
どんな場合でも、必ず CSV の列の個数と同じ個数の value を設定する。 value の並びはそのまま CSV の列の順番に対応する。
付与するラベルは、基本的に、定型項目用に設計したカテゴリのパスになる。 例外として、日付設定・テキスト用ラベル・空白設定がある。これらは以下のルールで記述する。
  • 日付設定: パラメタ csv.column.index.date で指定された列に対しては、このパラメタで パスを設定しても反映されない。
  • テキスト用ラベル: パラメタ csv.column.text.indexes で指定された列に対し、名前を付与する。
  • 空白設定: value を空白文字で設定した場合、対応する列はATMLに取り込まれない。
具体例で示す。いま入力CSVファイルが4列から成るとし、csv.column.names を以下のように設定したとする。

<param name="csv.column.names" multivalued="yes">
  <value>.aaa</value>
  <value></value>
  <value>.customer_id</value>
  <value>TEXT</value>
</param>

このとき、1列目はカテゴリ ".aaa" に、3列目はカテゴリ ".customer_id" に、それぞれ対応する。 また、2列目の設定は空白設定なので、2列目はATMLに取り込まれない。 この空白設定は省略できないことに注意する。
4列目の設定値 "TEXT" はカテゴリパスでない(先頭が "." で始まっていない)ので、 csv.column.text.indexes の設定に値 4 が含まれていない場合はエラーとなる。 含まれていれば、テキスト用ラベルとしてATMLに反映される。

doc_converter のパラメタ一覧
name 必須 multivalued valueの意味と書式 valueの例 注意
string.converter.locale no 言語処理対象のテキストに対し、言語に依存した変換を行なうかどうかを設定する ja 省略時は変換は何も行なわれない。ja を設定すると、半角文字はすべて全角に変換される。

doc_serializer のパラメタ一覧
name 必須 multivalued valueの意味と書式 valueの例 注意
atml.indent.size no 出力 ATML ファイル内の、タグのインデントに使う空白文字の個数を指定する。
0を指定するとインデントされない。
0, 1, 2, ... 省略時は0

9.2 言語処理

言語リソース配置処理(takmi_nlp_resource_deploy.bat(.sh)) の引数一覧
パラメータ 説明
DATABASE_DIRECTORY 指定されたデータベースディレクトリ以下のdic/category/にあるTAKMIユーザー辞書ファイル(.adic.xml)およびcategory/category_tree.xmlを 読み込み言語処理で使用するリソースファイルが更新されます。DATABASE_DIRECTORY/category,DATABASE_DIRECTORY/dicおよびDATABASE_DIRECTORY/ie以下のファイルが更新されます。

言語処理(takmi_nlp.bat(.sh)) の引数一覧
パラメータ 説明
DATABASE_DIRECTORY 指定されたデータベースディレクトリ以下のcategory,dicおよびieディレクトリ以下のファイルを読み込み言語処理を行います。
DATABASE_DIRECTORY/db/atml/input.atml 言語処理の入力ファイル。言語処理でのみ使われます。MINERなどのアプリケーションから参照されません。
DATABASE_DIRECTORY/db/miml/output.atml 言語処理の出力ファイル。すでに同じファイルがある場合には書き換えられます。MINERの原文表示などで参照されます。 したがって、言語処理でファイルを上書きする運用ではMINER(およびMINERから接続されるアプリケーション)を止める必要があります。

言語処理で使用するユーザー辞書(.adic.xml)ファイルは次のような形式をしています。

<?xml version="1.0" encoding="UTF-8"?>
<dictionary>
  <engry id="0" lex="パソコン" pos="noun" cat=".category1" />
  <engry id="1" lex="ソフトウェア" pos="noun" cat=".category2" />
  <engryC id="2" str="PC" pos="noun" eid="0" />
  <engryC id="3" str="ソフト" pos="noun" eid="1" />
<dictionary>

entryがキーワード、entryCが同義語をあらわします。同義語entryCは対応するキーワードentryの後で定義されていなければなりません。属性は以下の通りとなっています。

属性 説明
id 辞書エントリーのID。0以上の整数を入れます。重複があってはいけません。
lex キーワード。同一のpos、catを持つキーワードを定義してはいけません。
pos 品詞情報。noun(名詞)以外はサポートされておりません。
cat カテゴリ情報。category_tree.xmlで定義されているものを記入します。定義されていないものを記述した場合、動作が保障されません。
str 同義語情報。同一のpos、eidを持つ同義語を定義してはいけません。
eid 対応するキーワードのIDを記述する。存在しないIDを記述した場合、動作が保障されません。複数のキーワードに対応させる場合は別エントリとして定義します。
9.3 インデキシング

インデキシング時に実行される takmi_index は、幾つかの副処理から成ります。 以下、takmi_index 内で実行される順序で、各処理について説明します。

処理名(ツール名) 処理内容
takmi_generate_config 指定したデータベースに対して、database_config.xml の MIML ファイルリストを更新します。
takmi_index_singlebuild MIML ファイルを個別に処理し、MIML 毎に中間ファイルインデックスを作成します。
takmi_index_filemerge takmi_index_singlebuild で作成した個々のファイルインデックスをマージし、 すべての MIML ファイルの情報を含む中間ファイルインデックスを作成します。
この処理が完了した時点では、インデックスはまだ使用可能ではありません。 takmi_index_groupmerge による処理が必要です。
takmi_index_groupmerge takmi_index_filemerge でマージしたファイルインデックスを処理して、最終的な索引を作成します。

通常のインデキシングでは、takmi_index 実行によってこれらが順に実行され、索引が作成されます。
これに対し、MIML ファイル数が多い場合に、メモリ使用の観点からマージ処理を複数回に分ける「中間マージ」を実行することもできます。 中間マージが必要となるMIMLファイル数は、1文書の平均サイズや言語処理リソースの量などに依存しますが、200を目安として下さい。 これより少ないファイル数でインデキシングが失敗する場合も、中間マージの使用を検討して下さい。

中間マージを実行するためのツールは takmi_index_filemidmerge です。これは、takmi_index_filemerge の段階で takmi_index_filemerge の代わりに実行します。

takmi_index_filemidmerge には、以下の2つの機能があります。

以下、中間マージを使用したインデックス作成の手順を示します。

はじめに、古いインデックスが削除されていることを確認したうえで、takmi_generate_config および takmi_index_singlebuild を、以下の手順で先ず実行して下さい。

>  takmi_generate_config  -dbdir DATABASE_DIRECTORY  -template DATABASE_CONFIG_FILE
>  takmi_index_singlebuild  DATABASE_DIRECTORY  HEAP_SIZE_MB

OmniFind Analytics Edition 8.4.2以降のバージョンでは data_entry の行番号を指定して複数のプロセスで takmi_index_singlebuild を実行できます。以下はdata_entry の2行目以前と3行目以降を別々に実行する例です。

>  takmi_index_singlebuild  DATABASE_DIRECTORY  HEAP_SIZE_MB  1  2
>  takmi_index_singlebuild  DATABASE_DIRECTORY  HEAP_SIZE_MB  3

次に、中間マージする MIML ファイルのグループを決定します。 DATABASE_DIRECTORY/conf/database_config.xml をテキストエディタで開いて、 data_entries 要素を探し、以下のようなリストを見つけて下さい。

<data_entries min_doc_id="0" max_doc_id="399999">
<data_entry path_type="relative" path="db\miml\sample.1.miml" type="miml" min_doc_id="0" max_doc_id="99999"/>
<data_entry path_type="relative" path="db\miml\sample.2.miml" type="miml" min_doc_id="100000" max_doc_id="199999"/>
<data_entry path_type="relative" path="db\miml\sample.3.miml" type="miml" min_doc_id="200000" max_doc_id="299999"/>
<data_entry path_type="relative" path="db\miml\sample.4.miml" type="miml" min_doc_id="300000" max_doc_id="399999"/>
<data_entry path_type="relative" path="db\miml\sample.5.miml" type="miml" min_doc_id="400000" max_doc_id="499999"/>
<data_entry path_type="relative" path="db\miml\sample.6.miml" type="miml" min_doc_id="500000" max_doc_id="599999"/>
</data_entries>

takmi_index_filemidmerge によって、複数の MIML ファイルの中間マージを部分的に実行できます。
次のコマンド実行により、sample.1.miml と sample.2.miml の中間インデックスがマージされます。

>  takmi_index_filemidmerge  DATABASE_DIRECTORY -from 0 -to 199999
同様に、以下を順に実行することによって、sample.3.miml と sample.4.miml のマージ、および sample.5.miml と sample.6.miml のマージが行なわれます。
>  takmi_index_filemidmerge  DATABASE_DIRECTORY -from 200000 -to 399999
>  takmi_index_filemidmerge  DATABASE_DIRECTORY -from 400000 -to 599999

-from と -to で指定するこれらの区間の和が、data_entries の min_doc_id と max_doc_id で指定される区間と ちょうど一致するように -from と -to の値を設定して下さい。

すべての区間について処理が完了したら、最後に区間ごとのインデックスをマージする次のコマンドを実行します。

>  takmi_index_filemidmerge  DATABASE_DIRECTORY 
	-intervals  0-199999  200000-399999  400000-599999

-intervals オプションでは、"from-to" の形式で、1. の処理で設定した区間をすべて指定します。

ここまでの処理が正常に終了したら、takmi_group_index を実行します。これでインデキシングが完了します。

>  takmi_index_groupmerge  DATABASE_DIRECTORY  HEAP_SIZE_MB

9.4 DOCAT(日本語のみ)

言語処理リソースの配置を実施する前に、文書を分類するためのカテゴリを database_config.xml に設定する必要があります。
DOCAT の設定については、DOCAT のマニュアル を参照して下さい。

10 ツール一覧

IBM Content Analyzer 内で使用されるツールは、%TAKMI_HOME%/bin ディレクトリ下に配置されています。 以下、その一覧を示します。実際のファイル名は、Windows の場合は ".bat"、 Unixの場合は".sh"という拡張子がツール名の後ろにつきます。

ツール名 takmi_alert_correlation
機能 ALERTING SYSTEM において、相関検出バッチ処理を実行します。
使用方法 takmi_alert_correlation DATABASE_NAME MAXIMUM_ANALYSIS_TIME_BY_MINUTE JAVA_HEAP_SIZE_BY_MEGA_BYTES
引数
  • DATABASE_NAME
    global_config.xml の global_config/database_entries/database_entry@name で定義されたデータベース名

  • MAXIMUM_ANALYSIS_TIME_BY_MINUTE
    最大解析時間を「分」で指定

  • JAVA_HEAP_SIZE_BY_MEGA_BYTES
    解析時の java ヒープサイズを「メガバイト」で指定

ツール名 takmi_alert_increase
機能 ALERTING SYSTEM において、増加検出バッチ処理を実行します。
使用方法 takmi_alert_increase DATABASE_NAME MAXIMUM_ANALYSIS_TIME_BY_MINUTE JAVA_HEAP_SIZE_BY_MEGA_BYTES
引数
  • DATABASE_NAME
    global_config.xml の global_config/database_entries/database_entry@name で定義されたデータベース名

  • MAXIMUM_ANALYSIS_TIME_BY_MINUTE
    最大解析時間を「分」で指定

  • JAVA_HEAP_SIZE_BY_MEGA_BYTES
    解析時の java ヒープサイズを「メガバイト」で指定

ツール名 takmi_clear_index
機能 指定したデータベースに対して、インデキシングで生成されたインデックスを削除します。
使用方法 takmi_clear_index DATABASE_DIRECTORY
引数
  • DATABASE_DIRECTORY
    データベースディレクトリの絶対パス

ツール名 takmi_clear_nlp_index
機能 指定したデータベースに対して、言語処理で生成されたMIMLファイル、およびインデキシングで生成されたインデックスを削除します。
使用方法 takmi_clear_nlp_index DATABASE_DIRECTORY
引数
  • DATABASE_DIRECTORY
    データベースディレクトリの絶対パス

ツール名 takmi_data_ingester
機能 指定したCSVファイルをATMLファイルに変換します。
使用方法 takmi_data_ingester CONFIG_FILE CSV_FILE ATML_FILE
引数
  • CONFIG_FILE
    設定ファイル。詳細は 9.1節を参照して下さい。
  • CSV_FILE
    変換対象の CSV ファイル
  • ATML_FILE
    生成される ATML ファイルのパス。 出力場所は任意だが、ATML ファイルは言語処理の入力ファイルとなることに注意する。
    特に理由がなければ、DATABASE_DIR/db/atml ディレクトリの下に出力すること。

ツール名 takmi_generate_config
機能 指定したデータベースに対して、database_config.xml のMIMLファイルリストを更新します。
使用方法 takmi_generate_config -dbdir DATABASE_DIRECTORY -template DATABASE_CONFIG_FILE [-diff]
引数
  • -dbdir DATABASE_DIRECTORY
    データベースディレクトリのパス
  • -template DATABASE_CONFIG_FILE
    更新対象の database_config.xml ファイル
  • -diff
    (任意)database_config.xml にまだ登録されていない MIML ファイルのみを追加する

ツール名 takmi_index
機能 指定したデータベースに対して、新規インデキシングを実行します。
使用方法 takmi_index DATABASE_DIRECTORY [HEAP_SIZE_MB]
引数
  • DATABASE_DIRECTORY
    データベースディレクトリのパス
  • HEAP_SIZE_MB
    (任意)コマンド実行時のJavaヒープサイズ。MB単位で指定します。省略時は1000。

ツール名 takmi_index_diff
機能 指定したデータベースに対して、差分インデキシングを実行します。
使用方法 takmi_index_diff DATABASE_DIRECTORY [HEAP_SIZE_MB]
引数
  • DATABASE_DIRECTORY
    データベースディレクトリのパス
  • HEAP_SIZE_MB
    (任意)コマンド実行時のJavaヒープサイズ。MB単位で指定します。省略時は1000。

ツール名 takmi_index_filemerge
機能 インデキシングにおいて、ファイルマージ処理を行ないます。takmi_index から呼ばれます。
使用方法 takmi_index_filemerge DATABASE_DIRECTORY HEAP_SIZE_MB
引数
  • DATABASE_DIRECTORY
    データベースディレクトリのパス
  • HEAP_SIZE_MB
    コマンド実行時のJavaヒープサイズ。MB単位で指定します。

ツール名 takmi_index_filemidmerge
機能 インデキシングにおいて、ファイルマージを分割して行います。
使用方法 takmi_index_filemidmerge DATABASE_DIRECTORY -from xxx -to yyy

または

takmi_index_filemidmerge DATABASE_DIRECTORY -intervals from1-to1 from2-to2 ...
引数 詳細については 9.3 インデキシングを参照して下さい。
なお、中間マージの Java ヒープサイズはデフォルトで 1000MB です。
これを変更するためには、環境変数 JAVA_HEAP_SIZE_BY_MEGA_BYTES_FILEMIDMERGE にMB単位で値を外部で設定してから、ツールを実行して下さい。
Windows では例えば次のようにします。

> set JAVA_HEAP_SIZE_BY_MEGA_BYTES_FILEMIDMERGE=1500
> takmi_index_filemidmerge ...

ツール名 takmi_index_groupmerge
機能 インデキシングにおいて、グループマージ処理を行ないます。takmi_index から呼ばれます。
使用方法 takmi_index_groupmerge DATABASE_DIRECTORY HEAP_SIZE_MB
引数
  • DATABASE_DIRECTORY
    データベースディレクトリのパス
  • HEAP_SIZE_MB
    コマンド実行時のJavaヒープサイズ。MB単位で指定します。

ツール名 takmi_index_singlebuild
機能 インデキシングにおいて、MIML ファイルを個別に処理します。takmi_index から呼ばれます。
使用方法 takmi_index_singlebuild DATABASE_DIRECTORY HEAP_SIZE_MB [FROM] [TO]
引数
  • DATABASE_DIRECTORY
    データベースディレクトリのパス
  • HEAP_SIZE_MB
    コマンド実行時のJavaヒープサイズ。MB単位で指定します。
  • FROM、TO
    処理する data_entry を行番号で指定します。省略時は全ての行が処理されます。

ツール名 takmi_index_singlebuild_diff
機能 インデキシングにおいて、MIML ファイルを個別に処理します。takmi_index_diff から呼ばれます。
使用方法 takmi_index_singlebuild_diff DATABASE_DIRECTORY HEAP_SIZE_MB [FROM] [TO]
引数
  • DATABASE_DIRECTORY
    データベースディレクトリのパス
  • HEAP_SIZE_MB
    コマンド実行時のJavaヒープサイズ。MB単位で指定します。
  • HEAP_SIZE_MB
    (任意)コマンド実行時のJavaヒープサイズ。MB単位で指定します。省略時は1000。
  • HEAP_SIZE_MB
    (任意)コマンド実行時のJavaヒープサイズ。MB単位で指定します。省略時は1000。

ツール名 takmi_nlp
機能 指定したデータベースの言語処理リソースを用いて、ATMLファイルを言語処理してMIMLファイルを生成します。
使用方法 takmi_nlp DATABASE_DIRECTORY DATABASE_DIRECTORY/db/atml/input.atml DATABASE_DIRECTORY/db/miml/output.miml
引数
  • DATABASE_DIRECTORY
    データベースディレクトリのパス。
  • DATABASE_DIRECTORY/db/atml/input.atml
    入力データファイルのパス。
  • DATABASE_DIRECTORY/db/miml/output.miml
    出力データファイルのパス。

ツール名 takmi_nlp_resource_deploy
機能 指定したデータベースに対して、言語処理リソースを配置します。
使用方法 takmi_nlp_resource_deploy DATABASE_DIRECTORY
引数
  • DATABASE_DIRECTORY
    データベースディレクトリのパス。

ツール名 takmi_remove_inactive_index
機能 指定したデータベースに対して、使用されていない中間インデックスを削除します。
使用方法 takmi_remove_inactive_index DATABASE_DIRECTORY
引数
  • DATABASE_DIRECTORY
    データベースディレクトリのパス。

ツール名 takmi_set_cp
機能 言語処理に必要な環境変数を設定します。
使用方法 takmi_set_cp
引数 なし

ツール名 takmi_filenet2atml
機能 FileNet P8サーバから文書を取得し、ATMLファイルを作成します。
使用方法 takmi_filenet2atml CONFIG_FILE
引数
  • CONFIG_FILE
    FileNet P8サーバと通信するための設定ファイル。

ツール名 takmi_miml2filenet
機能 MIMLファイルのカテゴリ情報をFileNet P8サーバ上の文書に書き戻します。
使用方法 takmi_miml2filenet CONFIG_FILE MIML_FILE
引数
  • CONFIG_FILE
    FileNet P8サーバと通信するための設定ファイル。
  • MIML_FILE
    takmi_filenet2atmlコマンドで作成されたATMLを言語処理したMIMLファイル。

11 ファイル一覧

この章では、IBM Content Analyzer が使用するディレクトリ・ファイルについて説明します。

以下のディレクトリおよびファイルが、データベース作成時に作成されます。
ディレクトリ・ファイル名必須運用時の変更の有無説明
category/category_tree.xmlYesYesカテゴリー情報ファイルを格納。DICTIONARY EDITORでカテゴリツリーを保存すると内容変更・ファイル追加が行われます。
conf/database_config.xmlYesYes使用されるモジュールやインデキシング対象のMIMLファイルなどの情報を記載。データの追加・変更に伴い変更されます。
conf/database_config_dictionary.xmlYesYesDICTIONARY EDITORで使用する定義済みカテゴリーの情報を記載。定型項目の情報などが変わった場合は変更されます。
conf/database_config_miner.xmlYesNoTEXT MINERのビュー情報や表示するカテゴリー情報を記載。
conf/database_config_alerting_system.xmlYesNoALERTING SYSTEMの設定情報を記載。
conf/database_config_docat.xmlYesNoDOCATの設定情報を記載。
conf/data_ingester_config_csv2atml.xmlYesNoDATA INGESTERの設定情報を記載。
conf/default,anonymousYesNoDICTIONARY EDITORの設定ファイルを格納(ツール使用時に随時書き換わります)。
db/atml/*.atmlYesYes言語処理の入力ファイル
db/miml/*.mimlYesYes言語処理の出力ファイル
db/indexYesYesTEXT MINERが使用する索引ファイルを格納。
dic/candidateNoYes辞書候補語リストを格納。
dic/category/*.adic.xmlNoYesカテゴリ付与用辞書ファイル群を格納。(デフォルトはファイル無し)。DICTIONARY EDITORを使用することによってファイルが作成されます。
dic/jsa/*.jmaNoYes(日本語のみ)ユーザー辞書ファイル群(デフォルトはファイル無し)。DICTIONARY EDITORを使用することによってファイルが作成されます。
dic/jsa/*.ddfNoYes(日本語のみ)ユーザー辞書ファイル群の情報を記載。言語処理を起動する際に*.jmaファイル情報を用いて更新されます。
dic/jsa/takmi.dsoNoYes(日本語のみ)言語処理で用いるユーザー辞書情報を記載。言語処理を起動する際に更新されます。
pattern/dictionary.patNoYes情報抽出パターン。DICTIONARY EDITORを使用しカテゴリツリーを更新すると更新されます。
alertingYesYesALERTING SYSTEM用のディレクトリ。ALERTING SYSTEMツールを使用すると以下にディレクトリ、ファイルが作成されます。
ieYesYes(日本語のみ)DOCAT用のディレクトリ。DOCATツールを使用すると以下にディレクトリ、ファイルが作成されます。

以下のディレクトリ・ファイルが、言語リソース配置処理・言語処理で参照・変更されます。言語処理を行っている間は言語リソース配置処理を行ってはいけません。
ディレクトリ・ファイル名 リソース配置処理での読み取り有無 リソース配置処理での書き込み有無 言語処理での読み取り有無 言語処理での書き込み有無 説明
category/category_tree.xml YesYes YesNo DICTIONARY EDITORでカテゴリが更新された場合、追加されたカテゴリの下に係り受けカテゴリが作成されます。そのため本処理を行っている間はDICTIONARY EDITORを止める必要があります。
conf/database_config.xml YesNo YesNo 言語情報などを取得します。
conf/database_config_docat.xml YesNo NoNo DOCATのパラメータ情報(working_directory)を読みこみます。
dic/category/*.adic.xml YesNo YesNo DICTIONARY EDITORを使用することによってファイルが作成されます。変更はされませんが、本処理を行っている間はDICTIONARY EDITORを止める必要があります。同義語処理、カテゴリ付与処理で読み込まれます。
dic/jsa/*.jma NoYes YesNo (日本語のみ)DICTIONARY EDITORで作成された*.adic.xmlファイルから作成されます。*.adic.xmlが存在しない場合は作成されません。構文解析器が読み込みます。
dic/jsa/*.ddf NoYes YesNo (日本語のみ)DICTIONARY EDITORで作成された*.adic.xmlファイルから作成されます。*.adic.xmlが存在しない場合は作成されません。構文解析器が読み込みます。
dic/jsa/takmi.dso NoYes YesNo (日本語のみ)DICTIONARY EDITORで作成された*.adic.xmlファイルから作成されます。*.adic.xmlが存在しない場合は作成されません。構文解析器が読み込みます。
dic/LangWare50/*.* NoYes YesNo (英語のみ)DICTIONARY EDITORで作成された*.adic.xmlファイルから作成されます。*.adic.xmlが存在しない場合は作成されません。構文解析器が読み込みます。
pattern/auto_generated.pat NoYes YesNo DICTIONARY EDITORで作成された*.adic.xmlファイルおよびcategory_tree.xmlから作成されます。そのため本処理を行っている間はDICTIONARY EDITORを止める必要があります。表現抽出処理で読み込みます。
ie/categorization/*.feature.xml YesYes YesNo (日本語のみ)DOCATによって作成される分類トリガー表現情報ファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。そのため本処理を行っている間はDICTIONARY EDITORを止める必要があります。DOCATの分類処理で読み込みます。
ie/categorization/*.model YesYes YesNo (日本語のみ)DOCATによって作成される分類モデルファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。そのため本処理を行っている間はDICTIONARY EDITORを止める必要があります。DOCATの分類処理で読み込みます。
ie/categorization/*.scfeature.xml YesNo(Yes) YesNo (日本語のみ)DOCATによって作成される分類トリガー検索条件ファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。そのため本処理を行っている間はDICTIONARY EDITORを止める必要があります。working_directoryが設定されている場合はファイルが上書きされます。DOCATの分類処理で読み込みます。
ie/categorization/*.annotation.xml YesNo NoNo (日本語のみ)DOCATによって作成される、ユーザによる文書選択箇所記録ファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。そのため本処理を行っている間はDICTIONARY EDITORを止める必要があります。言語処理では参照されません。

以下のディレクトリ・ファイルが、ALERTING SYSTEM 使用時に参照・変更されます。
ディレクトリ・ファイル名運用での読み取り有無運用での書き込み有無説明
alerting/setting--ALERTING SYSTEMを起動すると作成されます。本ディレクトリ以下のファイルはALERTING SYSTEMにのみ使用されるため、データ追加などの運用に影響は与えません。
alerting/setting/increase_detection_settingYesNo増加検出のパラメタ設定ファイル。パラメタ設定変更のたびに更新されます。
alerting/setting/correlation_detection_settingYesNo相関検出のパラメタ設定ファイル。パラメタ設定変更のたびに更新されます。
alerting/batch--ALERTING SYSTEMを起動すると作成されます。本ディレクトリ以下のファイルはALERTING SYSTEMにのみ使用されるため、データ追加などの運用に影響は与えません。
alerting/batch/increase_detection_report.xmlNoYes増加検出の定時バッチ処理の結果。定時バッチ処理のたびに更新されます。
alerting/batch/correlation_detection_report.xmlNoYes相関検出の定時バッチ処理の結果。定時バッチ処理のたびに更新されます。

以下のディレクトリ・ファイルが、DOCAT 使用時に参照・変更されます。
ディレクトリ・ファイル名運用での読み取り有無運用での書き込み有無説明
ie/categorization/*.feature.xmlYesYes(日本語のみ)DOCATによって作成される分類トリガー表現情報ファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。
ie/categorization/*.modelYesYes(日本語のみ)DOCATによって作成される分類モデルファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。
ie/categorization/*.scfeature.xmlYesNo(日本語のみ)DOCATによって作成される分類トリガー検索条件ファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。
ie/categorization/*.annotation.xmlYesNo(日本語のみ)DOCATによって作成される、ユーザによる文書選択箇所記録ファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。

12 アプリケーションのカスタマイズ

12.1 カスタマイズの概要

アプリケーションの設定ファイルにJavaScript または CSS (Cascading Style Sheets) の適用を設定することでアプリケーション単位でのカスタマイズが可能です。 アプリケーション毎にカスタマイズ用のファイルの名前と場所が決まっており、ファイルを作成または編集することでカスタマイズが可能となります。
アプリケーション名設定ファイルの名前
MINER%TAKMI_HOME%/conf/global_config_miner.xml
DICTIONARY EDITOR%TAKMI_HOME%/conf/global_config_dic.xml
DoCAT%TAKMI_HOME%/conf/global_config_docat.xml
ALERT%TAKMI_HOME%/conf/global_config_alerting.xml
カスタマイズ用のファイルが作成されていない場合はカスタマイズは適用されません。アプリケーションの設定ファイルの中では複数の JavaScript および CSS の指定が可能です。

12.2 TEXT MINER のカスタマイズ

%TAKMI_HOME%/conf/global_config_miner.xml を編集します。以下に編集例を示します。
{スクリプトのURL}、{スタイルシートのURL}には任意のURLを記述可能です。

%TAKMI_HOME%/conf/global_config_miner.xml
<?xml version="1.0" encoding="UTF-8"?>
<global_config>
	<customize>
		<script href="{スクリプトのURL1}" />
		<script href="{スクリプトのURL2}" />
		<stylesheet href="{スタイルシートのURL1}" />
		<stylesheet href="{スタイルシートのURL2}" />
	</customize>
</global_config>
12.3 DICTIONARY EDITOR のカスタマイズ

%TAKMI_HOME%/conf/global_config_dic.xml を編集します。以下に編集例を示します。
{スクリプトのURL}、{スタイルシートのURL}には任意のURLを記述可能です。

%TAKMI_HOME%/conf/global_config_dic.xml
<?xml version="1.0" encoding="UTF-8"?>
<global_config>
	<customize>
		<script href="{スクリプトのURL1}" />
		<script href="{スクリプトのURL2}" />
		<stylesheet href="{スタイルシートのURL1}" />
		<stylesheet href="{スタイルシートのURL2}" />
	</customize>
</global_config>
12.4 DoCat のカスタマイズ

%TAKMI_HOME%/conf/global_config_docat.xml を編集します。以下に編集例を示します。
{スクリプトのURL}、{スタイルシートのURL}には任意のURLを記述可能です。

%TAKMI_HOME%/conf/global_config_docat.xml
<?xml version="1.0" encoding="UTF-8"?>
<global_config_docat>
<params>
	<param name="skewness_scale" value="0.0"/>
</params>
<customize>
	<script href="{スクリプトのURL1}" />
	<script href="{スクリプトのURL2}" />
	<stylesheet1 href="{スタイルシートのURL1}" />
	<stylesheet1 href="{スタイルシートのURL2}" />
</customize>
</global_config_docat>
12.5 ALERTING SYSTEM のカスタマイズ

%TAKMI_HOME%/conf/global_config_alerting.xml を編集します。以下に編集例を示します。
{スクリプトのURL}、{スタイルシートのURL}には任意のURLを記述可能です。

%TAKMI_HOME%/conf/global_config_alerting.xml
<?xml version="1.0" encoding="UTF-8"?>
<global_config>
	<customize>
		<script href="{スクリプトのURL1}" />
		<script href="{スクリプトのURL2}" />
		<stylesheet href="{スタイルシートのURL1}" />
		<stylesheet href="{スタイルシートのURL2}" />
	</customize>
</global_config>
12.6 カスタマイズ例

以下にカスタマイズ例を示します。

12.6.1 タイトルを変更する

タイトルを変更するJavaScriptファイルの例(ALERT,DICTIONARY,DoCAT,MINER)
{設定したい文字} の部分を置き換えてください。

// customize-takmi-title-sample.js
var CUSTOMIZE_TITLE_PREFIX = "{設定したい文字} ";
document.title = CUSTOMIZE_TITLE_PREFIX + document.title;

12.6.2 ショートカットの制御

ショートカット制御ファイルの例(ALERT,DICTIONARY,DoCAT,MINER)

// customize-takmi-keyconfig-sample.js
allowMouseRightClick   = false;   // 右クリック無効
allowKeyFunction1      = true;    // F1 キー有効
allowKeyFunction2      = false;   // F2 キー無効
allowKeyFunction3      = false;   // F3 キー無効
allowKeyFunction4      = false;   // F4 キー無効
allowKeyFunction5      = false;   // F5 キー無効
allowKeyFunction6      = false;   // F6 キー無効
allowKeyFunction7      = false;   // F7 キー無効
allowKeyFunction8      = false;   // F8 キー無効
allowKeyFunction9      = false;   // F9 キー無効
allowKeyFunction10     = false;   // F10 キー無効
allowKeyFunction11     = true;    // F11 キー有効
allowKeyFunction12     = false;   // F12 キー無効

12.6.3 ロゴの変更

ロゴの変更(MINER)
{ロゴのURL} の部分をロゴにしたい画像のURLに置き換えてください。

/* masthead-logo1-sample.css */
div#masthead-logo1{
	margin-top : 0px;
	margin-left : 0px;
	margin-right : 0px;
	margin-bottom : 0px;
	padding-top : 0px;
	padding-left : 0px;
	padding-right : 0px;
	padding-bottom : 0px;
	background-image : url("{ロゴのURL}");
	width : 200px;
	height : 40px;
	position : absolute;
	top : 8px;
	left : 3px;
}

付録
商標

ここでは、IBM の商標と、特定のIBM 以外の商標をリストします。 IBM の商標について詳しくは、http://www.ibm.com/legal/copytrade.shtml を参照して下さい。 以下は、それぞれ各社の商標または登録商標です。

Java およびすべてのJava 関連の商標およびロゴは、Sun Microsystems, Inc. の米国およびその他の国における商標または登録商標です。 Microsoft、Windows、Windows NT およびWindows ロゴは、Microsoft Corporationの米国およびその他の国における商標です。 Intel、Intel Inside (ロゴ)、およびPentium は、Intel Corporation の米国およびその他の国における商標です。 UNIX は、The Open Group の米国およびその他の国における登録商標です。 Linux は、Linus Torvalds の米国およびその他の国における商標です。 他の会社名、製品名およびサービス名等はそれぞれ各社の商標です。

©Copyright IBM Corp. 2007, 2008. All Rights Reserved.

特記事項

本書でIBM 製品、プログラム、またはサービスに言及していても、そのIBM 製品、プログラム、またはサービスのみが使用可能であることを意味するものではありません。 これらに代えて、IBM の知的所有権を侵害することのない、機能的に同等の製品、プログラム、またはサービスを使用することができます。 ただし、IBM 以外の製品とプログラムの操作またはサービスの評価および検証は、お客様の責任で行っていただきます。

IBM は、本書に記載されている内容に関して特許権(特許出願中のものを含む) を保有している場合があります。 本書の提供は、お客様にこれらの特許権について実施権を許諾することを意味するものではありません。

この情報には、技術的に不適切な記述や誤植を含む場合があります。本書は定期的に見直され、必要な変更は本書の次版に組み込まれます。 IBM は予告なしに、随時、この文書に記載されている製品またはプログラムに対して、改良または変更を行うことがあります。

本書においてIBM 以外のWeb サイトに言及している場合がありますが、便宜のため記載しただけであり、決してそれらのWeb サイトを推奨するものではありません。 それらのWeb サイトにある資料は、このIBM 製品の資料の一部ではありません。それらのWeb サイトは、お客様の責任でご使用ください。

IBM は、お客様が提供するいかなる情報も、お客様に対してなんら義務も負うことのない、自ら適切と信ずる方法で、使用もしくは配布することができるものとします。

本プログラムに関する上記の情報は、適切な使用条件の下で使用することができますが、有償の場合もあります。 本書で説明されているライセンス・プログラムまたはその他のライセンス資料は、IBM所定のプログラム契約の契約条項、IBM プログラムのご使用条件、またはそれと同等の条項に基づいて、IBM より提供されます。

この文書に含まれるいかなるパフォーマンス・データも、管理環境下で決定されたものです。そのため、他のオペレーティング環境で得られた結果は、異なる可能性があります。 一部の測定が、開発レベルのシステムで行われた可能性がありますが、その測定値が、一般に利用可能なシステムのものと同じである保証はありません。 さらに、一部の測定値が、推定値である可能性があります。実際の結果は、異なる可能性があります。お客様は、お客様の特定の環境に適したデータを確かめる必要があります。

IBM 以外の製品に関する情報は、その製品の供給者、出版物、もしくはその他の公に利用可能なソースから入手したものです。 IBM は、それらの製品のテストは行っておりません。したがって、他社製品に関する実行性、互換性、またはその他の要求については確証できません。 IBM 以外の製品の性能に関する質問は、それらの製品の供給者にお願いします。 IBM の将来の方向または意向に関する記述については、予告なしに変更または撤回される場合があり、単に目標を示しているものです。