(57)【要約】【課題】言語辞書を使わずに暗号化された、N-gramの転置インデックスのデータサイズを圧縮することができる転置インデックスの作成方法を提供する。【解決手段】暗号化された文書の転置インデックスを作成する転置インデックス作成システムにおける暗号化された文書の転置インデックス作成方法であって、文書を字種の違いで切り分けて、字種ごとに異なるトークン化のルールを適用してトークンを生成し、生成した各トークンを暗号化し、暗号化したトークンを圧縮符号で置き換えて符号化し、符号で表されたトークンとその出現位置、文書の番号、位置情報を関係づけた転置インデックスを作成する。【選択図】図２
2013125445.tif 000002
【特許請求の範囲】
【請求項１】
暗号化された文書の転置インデックスを作成する転置インデックス作成システムにおける暗号化された文書の転置インデックス作成方法であって、
文書を字種の違いで切り分けて、字種ごとに異なるトークン化のルールを適用してトークンを生成し、
前記生成した各トークンを暗号化し、
前記暗号化したトークンを圧縮符号で置き換えて符号化し、
前記符号で表されたトークンとその出現位置、前記文書の番号、位置情報を関係づけた転置インデックスを作成する、
暗号化された文書の転置インデックス作成方法。
【請求項２】
前記文書の同じ字種の中に、空白、括弧、句読点、改行、記号のいずれかの区切り文字が存在する場合も、そこで前記文書を切り分ける請求項１記載の暗号化された文書の転置インデックス作成方法。
【請求項３】
前記トークン化のルールは、日本語解析ルールに基づいて文書から単語を抽出し、１ブロック長より長い文字列は分割し、短い文字列はパディングを行ってトークンを生成する、
請求項１又は請求項２記載の暗号化された文書の転置インデックス作成方法。
【請求項４】
前記符号化の手法は、可逆かつビットパターンが不変なものである請求項１乃至請求項３のいずれか１項に記載の暗号化された文書の転置インデックス作成方法。
【請求項５】
前記符号化の手法は、ハフマン符号化法である請求項４に記載の暗号化された文書の転置インデックス作成方法。
【請求項６】
前記符号化に際して、符号表を作成し、この符号表が既存の符号表に無い場合には、追加登録する請求項１乃至請求項５のいずれか１項に記載の暗号化された文書の転置インデックス作成方法。
【請求項７】
暗号化された文書の転置インデックスを作成する転置インデックス作成システムにおける暗号化された文書の転置インデックスを使用する検索方法であって、
検索クエリを受け付け、
前記クエリを字種の違いで切り分けて、字種ごとに異なるトークン化のルールを適用してトークンを生成し、
前記生成した各トークンを暗号化し、
前記暗号化したトークンを圧縮符号で置き換えて符号化し、
前記転置インデックスを読み出し、
前記読み出した転置インデックスを参照して前記符号化したトークンを検索し、
検索で見つかった文書番号と位置情報を出力する、
暗号化された文書の転置インデックスを使用する検索方法。
【請求項８】
前記検索クエリの同じ字種の中に、空白、括弧、句読点、改行、記号のいずれかの区切り文字が存在する場合も、そこで前記文書を切り分ける請求項７記載の暗号化された文書の転置インデックスを使用する検索方法。
【請求項９】
前記トークン化のルールは、日本語解析ルールに基づいて前記検索クエリから単語を抽出し、１ブロック長より長い文字列は分割し、短い文字列はパディングを行ってトークンを生成する、
請求項７又は請求項８記載の暗号化された文書の転置インデックスを使用する検索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、暗号化された文書の転置インデックス作成方法及び転置インデックスを使用する検索方法に関する。
【背景技術】
【０００２】
暗号化された文書を復号化しないで秘匿性を保ちつつ、高速検索する仕組みが要求されている。このような場合、検索クエリを暗号化して文書を検索することになるが、高速検索できるような転置インデックスが必要となる。一般的に、転置インデックスのデータサイズは元データの数倍となる。特に組込機器では、転置インデックスの圧縮は重要な問題となっている。
【０００３】
転置インデックスの作成手法において、形態素解析を用いる手法では、言語辞書が必要である。一方で、N-gramを用いた転置インデックスは、作成後のデータサイズが大きなものとなる。
【０００４】
このようなことから、文書から単語を取り出して暗号化し、長さをそろえるためにハッシュ関数演算を行い、ビット列のハミング距離が近いものをグループ化および階層化して、それをインデックスとするものが提案されている（例えば、特許文献１参照。）。
【０００５】
また、マークアップ言語で書かれた文書データの所定の部分を、所定の鍵で暗号化しDBに登録する。検索文字列が入力されると上記の鍵を用いて暗号化され、この暗号化された検索文字列を含む文書データが、DBから検索される。マークアップで書かれてない文書はマークアップに変換するものが提案されている（例えば、特許文献２参照。）。しかしながら、いずれも、データサイズの圧縮が十分ではなかった。
【０００６】
そこで、言語辞書を使わず、暗号化されたN-gramの転置インデックスのデータサイズを圧縮したままで検索できることが強く要請されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００７−５２６９８号公報
【特許文献２】特開２００５−２８４９１５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明が解決しようとする課題は、言語辞書を使わずに暗号化された、N-gramの転置インデックスのデータサイズを圧縮することができる転置インデックスの作成方法を提供することである。
【課題を解決するための手段】
【０００９】
実施形態の転置インデックスの作成方法は、暗号化された文書の転置インデックスを作成する転置インデックス作成システムにおける暗号化された文書の転置インデックス作成方法であって、
文書を字種の違いで切り分けて、字種ごとに異なるトークン化のルールを適用してトークンを生成し、
前記生成した各トークンを暗号化し、
前記暗号化したトークンを圧縮符号で置き換えて符号化し、
前記符号で表されたトークンとその出現位置、前記文書の番号、位置情報を関係づけた転置インデックスを作成する。
【図面の簡単な説明】
【００１０】
【図１】本実施形態に係る暗号化された文書の転置インデックス作成方法に用いる転置インデックス生成装置の構成例を示す図である。
【図２】転置インデックス作成方法による処理の流れを説明する図である。
【図３】転置インデックスの新規作成処理の流れを説明するフローチャートである。
【図４】転置インデックスの追加登録処理の流れを説明するフローチャートである。
【図５】転置インデックスの検索処理の流れを説明するフローチャートである。
【図６】本実施形態に係る転置インデックスの作成方法による具体例を説明する図である。
【図７】２-gramによる転置インデックスの作成方法による具体例を説明する図である。
【図８】既存の転置インデックスにおける検索事例を説明する図である。
【発明を実施するための形態】
【００１１】
以下、本発明の一実施の形態について、図面を参照して説明する。尚、各図において同一箇所については同一の符号を付すとともに、重複した説明は省略する。
【００１２】
まず、本実施形態で用いる主要な用語について説明する。
【００１３】
「ブロック暗号」は、平文を64ビットや128ビットなどの固定長のブロックに分割して暗号化する方式である。固定長に足りない分は、空白文字などを付加（パディング）する。これに対し、「ストリーム暗号」、は平文をビットやバイト単位で逐次暗号化する方式である。
【００１４】
「ハフマン符号」は、出現確率がより高いパターンに対してより短い符号を与える圧縮方式である。圧縮前後で記号を対応付けた符号表が必要である。
【００１５】
「転置インデックス」は、全文検索を行う対象となる文書群から単語の位置情報を格納するための索引構造である。
【００１６】
「N-gram（N文字インデックス法）」は、転置インデックスのキーの切り出しを、辞書や構造解析に基づくのではなく、単に一定の文字数で切り出した語を入れることで作る方式で、Nは、切り出す文字の単位である。N-gramでは、文書から抽出したN個の文字列（トークン）を検索キーとして作成される。
【００１７】
「形態素解析」は、辞書を用いて文を形態素（意味を持つ最小単位）に分割し、品詞を付加するものである。N-gramに比べ処理時間がかかる。
【００１８】
本実施形態に係る暗号化された文書の転置インデックス作成方法は、言語辞書を使用せずに、字種の違いで文書を切り分け、字種ごとに異なるトークン化のルールを適用してトークンを生成し、生成したトークンは暗号化後に圧縮し、転置インデックスを作成するものである。
【００１９】
図１は、本実施形態に係る暗号化された文書の転置インデックス作成方法に用いる転置インデックス生成装置の構成例を示す図である。
【００２０】
転置インデックス生成装置１００は、大別すると、ＣＰＵ１０と、主記憶装置２０と、暗号転置インデックス管理部３０と、文書保存部４０と、転置インデックス保存部５０と、符号表保存部６０と、ユーザインタフェース部７０を主な構成要素としている。
【００２１】
主記憶装置２０の上には、ストレージ（図示しない）から読み出されたオペレーティングシステムとして機能するアプリケーション（図示しない）が展開される。さらに、暗号転置インデックス管理部３０が主記憶装置２０の上で展開される。アプリケーションの制御のもとでＣＰＵ１０が暗号転置インデックス管理部３０における処理を実行する。
【００２２】
暗号転置インデックス管理部３０は、自然言語処理部３１と符号処理部３２から構成されている。自然言語処理部３１は、文書保存部４０に保存された文書を読み込んで言語処理するものである。符号処理部３２は、トークンについて符号処理するものである。
【００２３】
自然言語処理部３１は、トークンを生成するトークン生成部３３と、転置インデックスを生成する転置インデックス生成部３４と、転置インデックスを参照するための転置インデックス参照部３５から構成されている。符号処理部３２は、暗号文生成部３６と符号化部３７から構成されている。
【００２４】
まず、各部を簡潔に説明する。  
トークン生成部３３は、日本語解析ルールに基づいて文書から単語を抽出し、1ブロック長より長い文字列は分割し、短い文字列はパディングを行ってトークンを生成するものである。
【００２５】
転置インデックス生成部３４は、符号で表されたトークンとその出現位置とを関係づけた転置インデックスを生成するものである。
【００２６】
転置インデックス参照部３５は、符号化されたクエリを入力として、転置インデックスを参照し、クエリが存在する文書番号と位置を出力するものである。
【００２７】
暗号文生成部３６は、１ブロック長に揃えられた各トークンを暗号化するものである。
【００２８】
符号化部３７は、暗号化されたトークンを圧縮符号で置き換えるものである。
【００２９】
符号表保存部６０は、外部記憶装置であって、暗号化されたトークンを圧縮符号で置き換える際のルールを、符号表として保存するものである。例えば、ハードディスク装置や、半導体メモリであるフラッシュメモリを使用したソリッドステートドライブ（ＳＳＤ）装置が好適である。
【００３０】
文書保存部４０は、外部記憶装置であって、文書を記録・格納するものである。例えば、ハードディスク装置や、半導体メモリであるフラッシュメモリを使用したソリッドステートドライブ（ＳＳＤ）装置が好適である。
【００３１】
転置インデックス保存部５０は、外部記憶装置であって、転置インデックスを記録・格納するものである。例えば、ハードディスク装置や、半導体メモリであるフラッシュメモリを使用したソリッドステートドライブ（ＳＳＤ）装置が好適である。
【００３２】
ユーザインタフェース部７０は、暗号転置インデックス管理部３０、文書保存部４０との間で指令の授受を行うものである。
【００３３】
以上のように構成された転置インデックス生成装置１００による転置インデックス作成方法について説明する。図２は、転置インデックス作成方法による処理の流れを説明する図である。図２に示すように、転置インデックス作成時には、まず、文書を字種に分解する。通常のN-gramのように1文字ずつずらしてトークン化すると、トークンがブロックサイズに満たない場合はパディングが必要なため、データサイズがより大きくなる。そこで、本実施形態では、データサイズを抑えつつも検索精度を維持するため、言語辞書を使わずに字種の違いで文を切り分ける。同じ字種の中に区切り文字（空白・括弧・句読点・改行・記号）が存在する場合も、そこで分割する。
【００３４】
分解した字種は、トークン化する。トークン化に際しては、字種ごとに異なるルールを適用できる。例えば、漢字と平仮名は2-gramでトークン化し、カタカナと英数字は1-gramでトークン化する手法である。あるいは、漢字と平仮名は1-gramでトークン化（漢字＋送り仮名を考慮）し、カタカナと英数字は4-gramでトークン化する手法もある。さらには、漢字と平仮名は1-gramでトークン化し、カタカナと英数字は抽出された語の先頭から順次4文字のトークンを作成する手法も採用することができる。カタカナは4文字の長さが多いため、この手法が好適であると言える。例えば、「オープンソース」→（オープン）＋（ソース）のようにト−クン化し、「チョコレートパフェ」→（チョコレ）＋（ートパフ）＋（ェ）とト−クン化する。
【００３５】
生成したトークンは、暗号化する。暗号化を行うときに、暗号の１ブロック分に満たないトークンは、パディングを行う。
【００３６】
トークンの暗号化後は、所定の圧縮符号の符号表を作成し、符号表に基づいて転置インデックスを生成する。ここで、符号化手法は、データサイズが小さくなり、可逆かつビットパターンが不変なものであれば、適用することができる。例えば、ハフマン符号化法が好適である。
【００３７】
一方、転置インデックスを使用した検索時には、検索クエリを解析してトークンを生成する。各トークンは暗号化して、さらに上記符号表に基づいて符号化し、転置インデックスを参照して検索を行うものである。
【００３８】
＜転置インデックスの新規作成＞
次に、転置インデックスの新規作成について、処理の流れを説明する。図３は、転置インデックスの新規作成処理の流れを説明するフローチャートである。
【００３９】
図３に示すように、まず、暗号転置インデックス管理部３０は、ユーザインタフェース部７０から、転置インデックスの新規作成の指令を受け取ると、文書保存部４０から文書を読み込む（ステップＳ３０１）。続いて、トークン生成部３３は、日本語解析ルールに基づいて文書から単語を抽出し、1ブロック長より長い文字列は分割し、短い文字列はパディングを行ってトークンを生成する（ステップＳ３０２）。次に、暗号文生成部３６は、１ブロック長に揃えられた各トークンを暗号化する（ステップＳ３０３）。
【００４０】
暗号化したトークンを、符号化部３７によって、圧縮符号で置き換えて符号化する（ステップＳ３０４）。符号化に際して作成した符号表は、符号表保存部６０に保存する（ステップＳ３０５）。
【００４１】
次に、符号化部３７によって符号で表されたトークンとその出現位置との関係を転置インデックスとして作成する（ステップＳ３０６）。
【００４２】
作成した転置インデックスは、転置インデックス保存部５０に格納する（ステップＳ３０７）。
【００４３】
＜転置インデックスの追加登録＞
次に、転置インデックスの追加登録について、処理の流れを説明する。図４は、転置インデックスの追加登録処理の流れを説明するフローチャートである。
【００４４】
図４に示すように、まず、暗号転置インデックス管理部３０は、ユーザインタフェース部７０から、転置インデックスの追加登録の指令を受け取ると、文書保存部４０から文書を読み込む（ステップＳ４０１）。続いて、トークン生成部３３は、日本語解析ルールに基づいて文書から単語を抽出し、1ブロック長より長い文字列は分割し、短い文字列はパディングを行ってトークンを生成する（ステップＳ４０２）。次に、暗号文生成部３６は、１ブロック長に揃えられた各トークンを暗号化する（ステップＳ４０３）。
【００４５】
暗号化したトークンを、符号化部３７によって、圧縮符号で置き換えて符号化する（ステップＳ４０４）。符号化に際して作成した符号表が、既に符号表保存部６０に存在しているか参照する（ステップＳ４０５）。
【００４６】
次に、符号表保存部６０に保存されている符号表になければ、作成した符号表を追加登録する（ステップＳ４０６）。
【００４７】
符号化部３７によって符号で表されたトークンとその出現位置との関係を転置インデックスとして作成する（ステップＳ４０７）。
【００４８】
作成した転置インデックスは、転置インデックス保存部５０に格納する（ステップＳ４０８）。
【００４９】
＜検索時＞
次に、作成した転置インデックスを使用する検索処理の流れについて説明する。
【００５０】
図５は、転置インデックスを使用する検索処理の流れを説明するフローチャートである。
【００５１】
図５に示すように、まず、暗号転置インデックス管理部３０は、ユーザインタフェース部７０から、検索クエリを受け付ける（ステップＳ５０１）。
【００５２】
続いて、トークン生成部３３は、日本語解析ルールに基づいてクエリから単語を抽出し、1ブロック長より長い文字列は分割し、短い文字列はパディングを行ってクエリをトークン化する（ステップＳ５０２）。
【００５３】
次に、暗号文生成部３６は、１ブロック長に揃えられた各トークンを暗号化する（ステップＳ５０３）。
【００５４】
符号化部３７は、符号表保存部６０に保存されている符号表を読み込む（ステップＳ５０４）。
【００５５】
続いて、符号化部３７は、暗号化したトークンを符号化する（ステップＳ５０５）。
【００５６】
転置インデックス参照部３５は、転置インデックス保存部５０から転置インデックスを読み込む（ステップＳ５０６）。
【００５７】
転置インデックス参照部３５は、転置インデックスを参照して符号化したトークンを検索する（ステップＳ５０７）。
【００５８】
検索で見つかった文書番号と位置情報をユーザインタフェース部７０に出力する（ステップＳ５０８）。
【００５９】
次に、本実施形態に係る転置インデックスの作成方法の具体例を説明する。
【００６０】
図６（ａ）に示すように、ここでの具体例では、文書１が「テキストを検索する」、文書２が、「転置インデックス」、文書３が、「テキスト情報」、文書４が、「インデックスを検索」、文書５が、「情報検索する」であり、転置インデックス作成後にまとめて暗号化する。
【００６１】
まず、５文書を字種に分解して、トークン化する。ここでの字種分解のルールは、漢字と平仮名は1-gramでトークン化し、カタカナと英数字は抽出された語の先頭から順次4文字のトークンを作成する（図６（ｂ）参照）。
【００６２】
作成したトークンの暗号化バイナリデータは、図６（ｃ）に示すようになる。１ブロック長に足りない分は、パディングしている。例えば、トークン「テキスト」の暗号化バイナリデータは、“1B 11 3F A5 24 0C 76 B5 74 73 5F BC DF 65 04 8B”であり、トークン「転」の暗号化バイナリデータは、“59 98 CA 72 26 51 A9 92 68 70 CC 50 D6 D3 37 20”である。
【００６３】
そして、各トークンに対するトークンの出現場所は、図６（ｄ）に示すように、文書番号と位置が示されている。例えば、トークン「テキスト」出現場所は、文書１の冒頭と、文書３の冒頭に出現することがわかる。同様に、トークン「転」の出現場所は、文書２の冒頭に出現することがわかる。
【００６４】
また、各１Byteの暗号と符号とを関係づけた符号表は、図６（ｅ）に示すようになる。例えば、暗号“1B”は、符号化すると、“1100100”である。さらに、符号化された暗号化バイナリデータと、符号の出現位置、文書番号及び位置情報とを関係づけた転置インデックスは図６（ｆ）に示すようになる。
【００６５】
一方、検索時に、検索クエリとして「転置」を受け付けた場合の例である。クエリをトークン化すると、「転」と、「置」となる。トークン「転」の暗号化バイナリデータは、“59 98 CA 72 26 51 A9 92 68 70 CC 50 D6 D3 37 20”であり、トークン「置」の暗号化バイナリデータは、“3A 42 40 C3 65 F7 64 35 F7 5D 74 C4 FF 60 26 26”である。暗号化した1Byte“3A”の符号は、“01101110”であり、暗号化した1Byte“５９”の符号は、“１１００１１１”であり、暗号化した1Byte“９８”の符号は、“０１１０１１１１”である。
【００６６】
これらのことから、「転」が文書2の1Byte目に存在し「置」が文書2の3Byte目に存在することから、「転置」は文書2の1Byte目に存在することが判明する。尚、厳密には全ての符号を調べるが、精度と速度のトレードオフで、後ろの符号の確認は省略することもできる。
【００６７】
次に、比較のため、既存の2-gramによる転置インデックスの作成について説明する。図７は、２-gramによる転置インデックスの作成方法による具体例を説明する図である。図６（ａ）と同じ、５つの文書について転置インデックスを作成する。５文書を2-gramでトークン化したものが、図７（ｂ）に示されている。各トークンの暗号化バイナリデータは、図７（ｃ）に示すようになる。暗号化バイナリデータの生成の際、１ブロック長に足りない分は、パディングしている。さらに、各トークンに対するトークンの出現場所は、図７（ｃ）に示すように、文書番号と位置情報が示されている。ソートされた暗号化バイナリデータとトークン出現場所を合わせたものを転置インデックスとする。
【００６８】
図８は、既存の転置インデックスにおける検索事例を説明する図である。検索クエリは、「テキスト」とする。この場合、作成されるトークンと、各トークンの暗号化バイナリデータは、図８(a)に示すようになる。そして、転置インデックスは、図８（ｂ）に示すようになる。「テキ」が文書1の1Byte目と文書3の1Byte目に存在し、「キス」が文書1の3Byte目と文書3の3Byte目に存在し、「スト」が文書1の5Byte目と文書3の5Byte目に存在することから、「テキスト」は文書1の1Byte目と文書3の1Byte目に存在することが判明する。尚、厳密には全てのバイナリデータを調べるが、精度と速度のトレードオフで、後ろの符号の確認は省略することもできる。
【００６９】
＜転置インデックスのデータサイズの比較＞
本実施形態に係る転置インデックスの作成方法による転置インデックスのデータサイズと、従来手法による転置インデックスのデータサイズを、上記例によって比較する。
【００７０】
５文書のデータサイズの和：８６Byte
（１）本実施形態によるデータサイズ
暗号化バイナリデータ：２１６Byte
符号出現位置：１３０Byte
ハフマン圧縮前のサイズ：216+130＝346Byte
符号の出現回数、符号の個数、符号割当ビット数の関係は、下表となっている。
【表１】
2013125445.tif 000003
符号の総数：１９６
ユニークな符号の個数：１２０
したがって、ハフマン符号表のサイズは、
79*8 + 28*7 + 10*6 + 1*6 + 1*4 + 1*4 = 1800bit = 225Byte
1Byte * (ユニークな符号の個数120) = 120Byte、225 + 120 = 345Byteである。
【００７１】
よって、ハフマン圧縮後のサイズ（符号表含む）：167+130+345＝642Byte
この場合、圧縮後の方がサイズが大きいが、これは元の文書が小さいためである。ハフマン符号表は高々00〜FFまでであるため、元の文書が大きくなるほどハフマン符号表が占めるサイズの割合が小さくなり、圧縮効率が高くなる。
【００７２】
次に、ハフマン圧縮後の暗号化バイナリデータは、
1*79*8 + 2*28*7 + 3*10*6 + 4*1*6 + 12*1*4 + 15*1*4 = 1336bit = 167Byteとなる。
以上から、転置インデックス：１６７＋１３０＝２９７Byteとなる。
【００７３】
（２）既存手法（２−gram）によるデータサイズ
暗号化バイナリデータ：４１４Byte
トークン出現位置：１８８Byte
転置インデックス：４１４＋１８８＝６０２Byte
このように、上記した例では、既存手法に比べて、転置インデックスのデータサイズは、半分以下に圧縮できている。
【００７４】
本実施形態によれば、言語辞書が不要で、ヒューリスティックな日本語解析を併用したN-gramでトークン数を減らし、転置インデックスそのもののデータサイズを圧縮することができる。さらに、符号化を用いることでさらに圧縮することができる。
【００７５】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７６】
１００・・・転置インデックス生成装置、
１０・・・ＣＰＵ、
２０・・・主記憶装置、
３０・・・暗号転置インデックス管理部、
３１・・・自然言語処理部、
３２・・・符号処理部、
３３・・・トークン生成部、
３４・・・転置インデックス生成部、
３５・・・転置インデックス参照部、
３６・・・暗号文生成部、
３７・・・符号化部、
４０・・・文書保存部、
５０・・・転置インデックス保存部、
６０・・・符号表保存部、
７０・・・ユーザインタフェース部。
【図１】
2013125445.tif 000004
【図２】
2013125445.tif 000005
【図３】
2013125445.tif 000006
【図４】
2013125445.tif 000007
【図５】
2013125445.tif 000008
【図６】
2013125445.tif 000009
【図７】
2013125445.tif 000010
【図８】
2013125445.tif 000011