この文書では、テキストマイニングシステム IBM Content Analyzer の運用の流れ、および運用の各段階で使用するツールについて説明します。 とくに、分析対象のデータに言語処理を実施し、分析のための索引構造を作成するまでの一連の処理(前処理)の手順を解説します。
なお、本書は、IBM Content Analyzer がインストール済みの環境について説明しています。
インストールの詳細につきましては、インストールガイドを参照して下さい。
この文書は、システム管理者、および 運用設計者を対象としています。 1章 の内容については、すべて理解する必要があります。
用語 | 意味 |
インストールディレクトリを指す、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 として参照します。 ご使用の名前に読みかえて下さい。 |
|
データベースの物理的な配置場所となる、OSのディレクトリです。
デフォルトでは、データベース名を DATABASE_NAME とすると、 %TAKMI_HOME%/databases/DATABASE_NAME がデータベースディレクトリとなります。これを DATABASE_DIRECTORY として参照することがあります。例えば、 DATABASE_DIRECTORY/conf/database_config.xml は、データベースディレクトリの下の、conf ディレクトリの下の、database_config.xml ファイルを示します。 |
|
データベース設定ファイル: DATABASE_DIRECTORY/conf/database_config.xml に記述された設定を指します。 ファイル名である「database_config.xml」もこの意味で用います。 このファイルは、各データベースに対して1つ存在します。 |
|
グローバル設定ファイル: %TAKMI_HOME%/conf/global_config.xml に記述された設定を指します。 ファイル名である「global_config.xml」もこの意味で用います。 このファイルは、1つの IBM Content Analyzer システム上に1つだけ存在します。 運用上重要な点として、新規に作成したデータベースを Web アプリケーションが使用可能にするためには、グローバル設定にそのデータベースを登録する必要があります。 |
|
ATML |
言語処理の入力フォーマットです。 分析対象データは、必ずこのフォーマットに変換してから言語処理されます。 |
MIML |
言語処理の出力フォーマットです。 言語処理結果はこの形式のファイルに書き出されたあと、インデキシングされます。 |
global_config.xml や database_config.xml などの設定ファイルを、テキストエディタで編集する上での注意事項を説明します。
これらのファイルは UTF-8 で保存する必要があります。
Windows のメモ帳を使用して編集する場合,必ず「文字コード」を「UTF-8」に明示的に指定して保存して下さい。
具体的には、メモ帳のメニューから「ファイル」、「名前をつけて保存」を順に選び、文字コードを UTF-8 にして保存します。
「Unicode」を選ばないで下さい。
この章では、分析対象のデータを 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 データの削除 を参照して下さい。
データ処理に用いられるリソースは、データベースと呼ばれる単位で管理されます。
リソースは、物理的にはデータベースディレクトリに格納されています。
運用設計では、始めにデータベースディレクトリを作成します。 以下の手順に沿って作成して下さい。
<?xml version="1.0" encoding="UTF-8"> <global_config> <params> <param name="language" value="ja"/> </params> <database_entries> <!-- Specify the relative path to the database directory as follows. --> <!-- Specify the absolute path to the database directory as follows. --> </global_config> |
分析対象データを、以下で述べる CSV(Comma Separated Values) 形式で用意する必要があります。 この形式でない任意のフォーマットのデータは、以下のルールにしたがって、予めCSVに変換して下さい。
基本的な CSV のフォーマットについては、Microsoft Excel が出力する形式をサポートします。 Microsoft Excel ファイルで保管されているデータは、Excel を用いるとCSV形式に簡単に変換することができます。
また、もともと CSV 形式で対象データが存在する場合は、以下のルールにしたがっているかどうか確認して下さい。
必須のルール:
強く推奨されるルール:
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に記述します。
次に、これらのカテゴリをカテゴリツリーに登録します。
カテゴリツリーは、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"/> ... |
必要に応じて、辞書や追加のカテゴリ、パターンなどのリソースを作成して下さい。
辞書やカテゴリの編集については、
CSV から IBM Content Analyzer の入力データフォーマットである ATML に変換するには、DATA INGESTER を用います。 詳細は、DATA INGESTER の章で述べます。
ATML ファイルを処理して、言語処理結果を含む MIML ファイルを作成する処理が言語処理(NLP)です。 詳細は、4.1節で述べます。
MIML ファイルを処理して、高速なマイニングを実現するための索引を作成する処理がインデキシングです。 詳細は、5.1節で述べます。
インデキシングが完了したら、TEXT MINER
などの索引を使用するアプリケーションが使用可能になります。ここでは、TEXT MINER を起動して稼動確認する手順を述べます。
この章では、CSV形式のデータを、DATA INGESTER を用いてATMLに変換する手順について説明します。
DATA INGESTER は、CSV ファイルから ATML ファイルへの変換を実行するツールです。 ここでは、ツールを起動するコマンド takmi_data_ingester 実行の手順、 および設定ファイルの記述の仕方について説明します。
コマンド実行方法
Windows: > takmi_data_ingester.bat CONFIG_FILE CSV_FILE ATML_FILE [HEAP_SIZE_MB] Unix: > takmi_data_ingester.sh CONFIG_FILE CSV_FILE ATML_FILE [HEAP_SIZE_MB]ここで、引数の意味は以下の通りです。
設定編集方法
ここでは、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に変換するために、以下の設定をするとします。
<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> : : <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> |
この章では、言語処理について説明します。
言語処理は入力データ(ATMLファイル)ごとに処理を行います。
また言語処理を行う前に、辞書ツール・DOCATで更新された言語処理で用いるリソースを配置する処理が必要になります。
言語処理リソースの配置
Windows: > takmi_nlp_resource_deploy.bat DATABASE_DIRECTORY [HEAP_SIZE_MB] Unix: > takmi_nlp_resource_deploy.sh DATABASE_DIRECTORY [HEAP_SIZE_MB]ここで、引数の意味は以下の通りです。
Windows: > takmi_nlp.bat DATABASE_DIRECTORY DATABASE_DIRECTORY/db/atml/input.atmlここで、引数の意味は以下の通りです。
DATABASE_DIRECTORY/db/miml/output.miml [HEAP_SIZE_MB] Unix: > takmi_nlp.sh DATABASE_DIRECTORY DATABASE_DIRECTORY/db/atml/input.atml
DATABASE_DIRECTORY/db/miml/output.miml [HEAP_SIZE_MB]
この章では、インデキシングについて説明します。
インデキシングには、索引の新規作成と追加更新との2種類の処理があります。
新規作成は、すべての言語処理済データ(MIMLファイル)に対してインデックス作成を行ないます。
それに対し、追加更新は、新規MIMLファイルと既存のMIMLファイルとを合わせてインデックス作成を行ないます。
なお、インデキシングをカスタマイズするためのコマンドについては、ツールの詳細設定を参照して下さい。
新規作成のとき
Windows: > takmi_index.bat DATABASE_DIRECTORY [HEAP_SIZE_MB] Unix: > takmi_index.sh DATABASE_DIRECTORY [HEAP_SIZE_MB]ここで、引数の意味は以下の通りです。
Windows: > takmi_index_diff.bat DATABASE_DIRECTORY [HEAP_SIZE_MB] Unix: > takmi_index_diff.sh DATABASE_DIRECTORY [HEAP_SIZE_MB]ここで、引数の意味は以下の通りです。
<impl name="standard"> ... <text_entries> <text_entry name="質問"/> <text_entry name="回答"/> </text_entries> ... </impl> |
この章では、データの削除について説明します。
言語処理およびインデキシングの際、必要に応じて以前作成したファイルを削除します。
これらの作業は、必ず WebSphere Application Server を停止してから実行して下さい。
(停止しないとファイルを消去できない場合があります)
なお、停止せずに削除した場合、その削除したファイルを使用する
Webアプリケーション の挙動は保証されません。
Windows: > takmi_clear_index.bat DATABASE_DIRECTORY Unix: > takmi_clear_index.sh DATABASE_DIRECTORYすべてのデータを処理しなおす場合(辞書更新時など)には、MIMLファイルとインデックスの両方を、
Windows: > takmi_clear_nlp_index.bat DATABASE_DIRECTORY Unix: > takmi_clear_nlp_index.sh DATABASE_DIRECTORYいずれのコマンドも、実行すると削除してよいか確認してきます。"y" を入力すると削除が実行されます。
なお、言語処理前の ATML ファイルについては、必要に応じて削除するように運用を定めて下さい。
この章では、サーバーの停止と起動の方法を説明します。 IBM Content Analyzer の Webアプリケーションは、WebSphere Application Server 上で稼動するものであり、 基本的に WebSphere Application Server を停止・起動するだけでその上のすべてのアプリケーションが停止・起動します。
WebSphere Application Server を、通常の方法で停止します。 停止方法は、コマンドラインによる方法と Windows のメニューからアイコンを指定する方法、 および Windows サービスに登録された WebSphere Application Server サービスを停止する方法があります。 詳しくは、WebSphere Application Server の製品マニュアルを参照して下さい。
WebSphere Application Server を、通常の方法で起動します。 起動方法は、コマンドラインによる方法と Windows のメニューからアイコンを指定する方法、 および Windows サービスに登録された WebSphere Application Server サービスを起動する方法があります。 詳しくは、WebSphere Application Server の製品マニュアルを参照して下さい。
WebSphere Application Server 起動後、Webアプリケーションが正常に稼動していることを確認して下さい。 TEXT MINER にWebブラウザでアクセスし、データベース一覧が表示されていれば、 TEXT MINER は正常に起動しています。ただし、グローバル設定にデータベースが1つも登録されていない場合、 データベース名は表示されません。
この章では、システムが出力するログファイルについて説明します。
前処理、およびサーバープロセスは、実行時および稼動時にログを出力します。 デフォルトで以下の場所に出力されます。
種類 | ログ出力場所 |
前処理 | %TAKMI_HOME%/logs |
サーバー(Webアプリケーション含む) | WebSphere Application Server のログディレクトリ |
WebSphere Application Server のログディレクトリは、ご使用の環境によって異なります。 詳しくは、WebSphere Application Server の製品マニュアルを参照して下さい。
また、前処理実行時に出力されるログファイル名は、ログを出力するアプリケーションによって異なります。 デフォルトでは、"アプリケーション名.log" となっていますので、問題の切り分けに使用して下さい。 なお、WebSphere Application Server のログファイル SystemOut.log, SystemErr.log なども、問題判別にしばしば有用です。
ログファイルの設定は、DATABASE_DIRECTORY/conf/アプリケーション名_logging.properties という設定ファイルに記述されています。 設定ファイルの仕様は Java の Logging API に準じています。詳細は Java Logging API の文献を参照して下さい。
この章では、前処理で使用されるツールの、詳細設定を紹介します。
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> |
<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" のみが使われる。 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 の列の順番に対応する。 付与するラベルは、基本的に、定型項目用に設計したカテゴリのパスになる。 例外として、日付設定・テキスト用ラベル・空白設定がある。これらは以下のルールで記述する。
このとき、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 |
言語リソース配置処理(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を記述した場合、動作が保障されません。複数のキーワードに対応させる場合は別エントリとして定義します。 |
インデキシング時に実行される 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
言語処理リソースの配置を実施する前に、文書を分類するためのカテゴリを database_config.xml に設定する必要があります。
DOCAT の設定については、DOCAT のマニュアル
を参照して下さい。
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 |
引数 |
|
ツール名 | takmi_alert_increase![]() |
機能 | ALERTING SYSTEM において、増加検出バッチ処理![]() |
使用方法 | takmi_alert_increase DATABASE_NAME MAXIMUM_ANALYSIS_TIME_BY_MINUTE JAVA_HEAP_SIZE_BY_MEGA_BYTES |
引数 |
|
ツール名 | takmi_clear_index |
機能 | 指定したデータベースに対して、インデキシングで生成されたインデックスを削除します。 |
使用方法 | takmi_clear_index DATABASE_DIRECTORY |
引数 |
|
ツール名 | takmi_clear_nlp_index |
機能 | 指定したデータベースに対して、言語処理で生成されたMIMLファイル、およびインデキシングで生成されたインデックスを削除します。 |
使用方法 | takmi_clear_nlp_index DATABASE_DIRECTORY |
引数 |
|
ツール名 | takmi_data_ingester |
機能 | 指定したCSVファイルをATMLファイルに変換します。 |
使用方法 | takmi_data_ingester CONFIG_FILE CSV_FILE ATML_FILE |
引数 |
|
ツール名 | takmi_generate_config |
機能 | 指定したデータベースに対して、database_config.xml のMIMLファイルリストを更新します。 |
使用方法 | takmi_generate_config -dbdir DATABASE_DIRECTORY -template DATABASE_CONFIG_FILE [-diff] |
引数 |
|
ツール名 | takmi_index |
機能 | 指定したデータベースに対して、新規インデキシングを実行します。 |
使用方法 | takmi_index DATABASE_DIRECTORY [HEAP_SIZE_MB] |
引数 |
|
ツール名 | takmi_index_diff |
機能 | 指定したデータベースに対して、差分インデキシングを実行します。 |
使用方法 | takmi_index_diff DATABASE_DIRECTORY [HEAP_SIZE_MB] |
引数 |
|
ツール名 | takmi_index_filemerge |
機能 | インデキシングにおいて、ファイルマージ処理を行ないます。takmi_index から呼ばれます。 |
使用方法 | takmi_index_filemerge DATABASE_DIRECTORY HEAP_SIZE_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 |
引数 |
|
ツール名 | takmi_index_singlebuild |
機能 | インデキシングにおいて、MIML ファイルを個別に処理します。takmi_index から呼ばれます。 |
使用方法 | takmi_index_singlebuild DATABASE_DIRECTORY HEAP_SIZE_MB [FROM] [TO] |
引数 |
|
ツール名 | takmi_index_singlebuild_diff |
機能 | インデキシングにおいて、MIML ファイルを個別に処理します。takmi_index_diff から呼ばれます。 |
使用方法 | takmi_index_singlebuild_diff DATABASE_DIRECTORY HEAP_SIZE_MB [FROM] [TO] |
引数 |
|
ツール名 | takmi_nlp |
機能 | 指定したデータベースの言語処理リソースを用いて、ATMLファイルを言語処理してMIMLファイルを生成します。 |
使用方法 | takmi_nlp DATABASE_DIRECTORY DATABASE_DIRECTORY/db/atml/input.atml DATABASE_DIRECTORY/db/miml/output.miml |
引数 |
|
ツール名 | takmi_nlp_resource_deploy |
機能 | 指定したデータベースに対して、言語処理リソースを配置します。 |
使用方法 | takmi_nlp_resource_deploy DATABASE_DIRECTORY |
引数 |
|
ツール名 | takmi_remove_inactive_index |
機能 | 指定したデータベースに対して、使用されていない中間インデックスを削除します。 |
使用方法 | takmi_remove_inactive_index DATABASE_DIRECTORY |
引数 |
|
ツール名 | takmi_set_cp |
機能 | 言語処理に必要な環境変数を設定します。 |
使用方法 | takmi_set_cp |
引数 | なし |
ツール名 | takmi_filenet2atml |
機能 | FileNet P8サーバから文書を取得し、ATMLファイルを作成します。 |
使用方法 | takmi_filenet2atml CONFIG_FILE |
引数 |
|
ツール名 | takmi_miml2filenet |
機能 | MIMLファイルのカテゴリ情報をFileNet P8サーバ上の文書に書き戻します。 |
使用方法 | takmi_miml2filenet CONFIG_FILE MIML_FILE |
引数 |
|
この章では、IBM Content Analyzer が使用するディレクトリ・ファイルについて説明します。
以下のディレクトリおよびファイルが、データベース作成時に作成されます。
ディレクトリ・ファイル名 | 必須 | 運用時の変更の有無 | 説明 |
---|---|---|---|
category/category_tree.xml | Yes | Yes | カテゴリー情報ファイルを格納。DICTIONARY EDITORでカテゴリツリーを保存すると内容変更・ファイル追加が行われます。 |
conf/database_config.xml | Yes | Yes | 使用されるモジュールやインデキシング対象のMIMLファイルなどの情報を記載。データの追加・変更に伴い変更されます。 |
conf/database_config_dictionary.xml | Yes | Yes | DICTIONARY EDITORで使用する定義済みカテゴリーの情報を記載。定型項目の情報などが変わった場合は変更されます。 |
conf/database_config_miner.xml | Yes | No | TEXT MINERのビュー情報や表示するカテゴリー情報を記載。 |
conf/database_config_alerting_system.xml | Yes | No | ALERTING SYSTEMの設定情報を記載。 |
conf/database_config_docat.xml | Yes | No | DOCATの設定情報を記載。 |
conf/data_ingester_config_csv2atml.xml | Yes | No | DATA INGESTERの設定情報を記載。 |
conf/default,anonymous | Yes | No | DICTIONARY EDITORの設定ファイルを格納(ツール使用時に随時書き換わります)。 |
db/atml/*.atml | Yes | Yes | 言語処理の入力ファイル |
db/miml/*.miml | Yes | Yes | 言語処理の出力ファイル |
db/index | Yes | Yes | TEXT MINERが使用する索引ファイルを格納。 |
dic/candidate | No | Yes | 辞書候補語リストを格納。 |
dic/category/*.adic.xml | No | Yes | カテゴリ付与用辞書ファイル群を格納。(デフォルトはファイル無し)。DICTIONARY EDITORを使用することによってファイルが作成されます。 |
dic/jsa/*.jma | No | Yes | (日本語のみ)ユーザー辞書ファイル群(デフォルトはファイル無し)。DICTIONARY EDITORを使用することによってファイルが作成されます。 |
dic/jsa/*.ddf | No | Yes | (日本語のみ)ユーザー辞書ファイル群の情報を記載。言語処理を起動する際に*.jmaファイル情報を用いて更新されます。 |
dic/jsa/takmi.dso | No | Yes | (日本語のみ)言語処理で用いるユーザー辞書情報を記載。言語処理を起動する際に更新されます。 |
pattern/dictionary.pat | No | Yes | 情報抽出パターン。DICTIONARY EDITORを使用しカテゴリツリーを更新すると更新されます。 |
alerting | Yes | Yes | ALERTING SYSTEM用のディレクトリ。ALERTING SYSTEMツールを使用すると以下にディレクトリ、ファイルが作成されます。 |
ie | Yes | Yes | (日本語のみ)DOCAT用のディレクトリ。DOCATツールを使用すると以下にディレクトリ、ファイルが作成されます。 |
ディレクトリ・ファイル名 | リソース配置処理での読み取り有無 | リソース配置処理での書き込み有無 | 言語処理での読み取り有無 | 言語処理での書き込み有無 | 説明 |
---|---|---|---|---|---|
category/category_tree.xml | Yes | Yes | Yes | No | DICTIONARY EDITORでカテゴリが更新された場合、追加されたカテゴリの下に係り受けカテゴリが作成されます。そのため本処理を行っている間はDICTIONARY EDITORを止める必要があります。 |
conf/database_config.xml | Yes | No | Yes | No | 言語情報などを取得します。 |
conf/database_config_docat.xml | Yes | No | No | No | DOCATのパラメータ情報(working_directory)を読みこみます。 |
dic/category/*.adic.xml | Yes | No | Yes | No | DICTIONARY EDITORを使用することによってファイルが作成されます。変更はされませんが、本処理を行っている間はDICTIONARY EDITORを止める必要があります。同義語処理、カテゴリ付与処理で読み込まれます。 |
dic/jsa/*.jma | No | Yes | Yes | No | (日本語のみ)DICTIONARY EDITORで作成された*.adic.xmlファイルから作成されます。*.adic.xmlが存在しない場合は作成されません。構文解析器が読み込みます。 |
dic/jsa/*.ddf | No | Yes | Yes | No | (日本語のみ)DICTIONARY EDITORで作成された*.adic.xmlファイルから作成されます。*.adic.xmlが存在しない場合は作成されません。構文解析器が読み込みます。 |
dic/jsa/takmi.dso | No | Yes | Yes | No | (日本語のみ)DICTIONARY EDITORで作成された*.adic.xmlファイルから作成されます。*.adic.xmlが存在しない場合は作成されません。構文解析器が読み込みます。 |
dic/LangWare50/*.* | No | Yes | Yes | No | (英語のみ)DICTIONARY EDITORで作成された*.adic.xmlファイルから作成されます。*.adic.xmlが存在しない場合は作成されません。構文解析器が読み込みます。 |
pattern/auto_generated.pat | No | Yes | Yes | No | DICTIONARY EDITORで作成された*.adic.xmlファイルおよびcategory_tree.xmlから作成されます。そのため本処理を行っている間はDICTIONARY EDITORを止める必要があります。表現抽出処理で読み込みます。 |
ie/categorization/*.feature.xml | Yes | Yes | Yes | No | (日本語のみ)DOCATによって作成される分類トリガー表現情報ファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。そのため本処理を行っている間はDICTIONARY EDITORを止める必要があります。DOCATの分類処理で読み込みます。 |
ie/categorization/*.model | Yes | Yes | Yes | No | (日本語のみ)DOCATによって作成される分類モデルファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。そのため本処理を行っている間はDICTIONARY EDITORを止める必要があります。DOCATの分類処理で読み込みます。 |
ie/categorization/*.scfeature.xml | Yes | No(Yes) | Yes | No | (日本語のみ)DOCATによって作成される分類トリガー検索条件ファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。そのため本処理を行っている間はDICTIONARY EDITORを止める必要があります。working_directoryが設定されている場合はファイルが上書きされます。DOCATの分類処理で読み込みます。 |
ie/categorization/*.annotation.xml | Yes | No | No | No | (日本語のみ)DOCATによって作成される、ユーザによる文書選択箇所記録ファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。そのため本処理を行っている間はDICTIONARY EDITORを止める必要があります。言語処理では参照されません。 |
ディレクトリ・ファイル名 | 運用での読み取り有無 | 運用での書き込み有無 | 説明 |
---|---|---|---|
alerting/setting | - | - | ALERTING SYSTEMを起動すると作成されます。本ディレクトリ以下のファイルはALERTING SYSTEMにのみ使用されるため、データ追加などの運用に影響は与えません。 |
alerting/setting/increase_detection_setting | Yes | No | 増加検出のパラメタ設定ファイル。パラメタ設定変更のたびに更新されます。 |
alerting/setting/correlation_detection_setting | Yes | No | 相関検出のパラメタ設定ファイル。パラメタ設定変更のたびに更新されます。 |
alerting/batch | - | - | ALERTING SYSTEMを起動すると作成されます。本ディレクトリ以下のファイルはALERTING SYSTEMにのみ使用されるため、データ追加などの運用に影響は与えません。 |
alerting/batch/increase_detection_report.xml | No | Yes | 増加検出の定時バッチ処理の結果。定時バッチ処理のたびに更新されます。 |
alerting/batch/correlation_detection_report.xml | No | Yes | 相関検出の定時バッチ処理の結果。定時バッチ処理のたびに更新されます。 |
ディレクトリ・ファイル名 | 運用での読み取り有無 | 運用での書き込み有無 | 説明 |
---|---|---|---|
ie/categorization/*.feature.xml | Yes | Yes | (日本語のみ)DOCATによって作成される分類トリガー表現情報ファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。 |
ie/categorization/*.model | Yes | Yes | (日本語のみ)DOCATによって作成される分類モデルファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。 |
ie/categorization/*.scfeature.xml | Yes | No | (日本語のみ)DOCATによって作成される分類トリガー検索条件ファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。 |
ie/categorization/*.annotation.xml | Yes | No | (日本語のみ)DOCATによって作成される、ユーザによる文書選択箇所記録ファイル。各カテゴリごとに作成されDOCATを使用すると更新されます。 |
アプリケーションの設定ファイルに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 |
%TAKMI_HOME%/conf/global_config_miner.xml を編集します。以下に編集例を示します。
{スクリプトのURL}、{スタイルシートのURL}には任意のURLを記述可能です。
<?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> |
%TAKMI_HOME%/conf/global_config_dic.xml を編集します。以下に編集例を示します。
{スクリプトのURL}、{スタイルシートのURL}には任意のURLを記述可能です。
<?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> |
%TAKMI_HOME%/conf/global_config_docat.xml を編集します。以下に編集例を示します。
{スクリプトのURL}、{スタイルシートのURL}には任意のURLを記述可能です。
<?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> |
%TAKMI_HOME%/conf/global_config_alerting.xml を編集します。以下に編集例を示します。
{スクリプトのURL}、{スタイルシートのURL}には任意のURLを記述可能です。
<?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> |
以下にカスタマイズ例を示します。
タイトルを変更するJavaScriptファイルの例(ALERT,DICTIONARY,DoCAT,MINER)
{設定したい文字} の部分を置き換えてください。
// customize-takmi-title-sample.js var CUSTOMIZE_TITLE_PREFIX = "{設定したい文字} "; document.title = CUSTOMIZE_TITLE_PREFIX + document.title;
ショートカット制御ファイルの例(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 キー無効
ロゴの変更(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; }