ids による 漢字情報処理

25
IDS ににに にににににに 川川 1

Upload: meli

Post on 10-Jan-2016

38 views

Category:

Documents


1 download

DESCRIPTION

IDS による 漢字情報処理. 川幡  太一. IDS とは何か?. 「漢字の構造」の表現 Ideographic Description Sequence の略 ISO/IEC 10646:2003 Annex F にて用法を規定. 構. ⿰. ⿰木冓. 木. 冓. ⿰木⿱𠀎冉. ⿱. ⿱𠀎冉. 𠀎. 冉. IDS の意義. 漢字構造情報 の電子的表現 漢字字形の定義・検索に利用可能。 漢字が7万文字を超えると、従来の方法では検索は困難に。 異体字の照合や判定・フォント合成・文字認識・ OCR 等にも応用可能。 IDS の問題 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: IDS による 漢字情報処理

IDSによる漢字情報処理

 川幡 太一

1

Page 2: IDS による 漢字情報処理

IDS とは何か? 「漢字の構造」の表現

Ideographic Description Sequence の略ISO/IEC 10646:2003 Annex F にて用法を規定

⿰木冓

⿱𠀎冉

⿰木 冓

⿱𠀎 冉

⿰木⿱𠀎冉

2

Page 3: IDS による 漢字情報処理

IDS の意義

漢字構造情報の電子的表現 漢字字形の定義・検索に利用可能。

漢字が7万文字を超えると、従来の方法では検索は困難に。

異体字の照合や判定・フォント合成・文字認識・OCR 等にも応用可能。

IDS の問題 同じ漢字を複数の方法で表現できる。 同じ符号で包摂可能な漢字を異なる符号で表

現できる。3

Page 4: IDS による 漢字情報処理

漢字データベースプロジェクト http://kanji-database.sourceforge.net/

様々な漢字情報を収集/整理 漢字字形は IDS でデータ化

UCS 漢字 GB 7589/7590 の漢字 チュノム 拡張漢字 E 候補漢字 日本の国字(和製漢字の辞典)

ある「漢字」が符号化されているか、または上記データにあるかを IDS で判別できるか?

4

Page 5: IDS による 漢字情報処理

IDS の課題

I. 必ずしも漢字部品の全てが、符号化されているとは限らない 例:乌 → ⿹乌一(乌は符号文字にない)

この問題については、台湾 CDP (Chinese Document Processing) の作成した「漢字部品外字フォント」が豊富な部品バリエーションがあり、多くの漢字の分解に利用可。

II. 特定の漢字符号に対して、 IDS は必ずしもユニークにならない → 「正規化」による「比較可能性」が必要

5

Page 6: IDS による 漢字情報処理

IDS の多様性(1)

分割点による IDS の相違

⿰亻頃  ⿰化頁  ⿲亻匕頁

傾傾 傾

亻 頃

化 頁

亻 頁匕

6

Page 7: IDS による 漢字情報処理

IDS の多様性(2)

分割レベルによる IDS の相違

例:

⿰山𠀎   ⿰山⿱上下

峠峠⿰

山 𠀎

山 ⿱上 下

7

Page 8: IDS による 漢字情報処理

IDS の多様性(3)

垂/繞のかかる範囲の違い

⿰麥面 ⿺麥面 ⿸鹿射 ⿱鹿射

麥 面

麥 面

鹿 射

鹿 射

8

Page 9: IDS による 漢字情報処理

IDS の多様性(4)

統合可能な字形の違い

忄 青

忄 靑

衛 心

衞 心

9

同じ符号が異なる IDS で表記できる場合の他にも、同じ IDS が複数の符号に対応する、「重複符号化」の問題もある。

Page 10: IDS による 漢字情報処理

IDS の多様性(5)

「意味的」 IDS と「表示的」 IDS の違い

旗旗⿸

㫃 其

方 ⿱𠂉 其

街街⿴

行 圭

彳圭亍

10

説文解字などを重視して意味的に漢字を分解しよう、という意識が働くとき、実際の物理的な分解方法とは異なる IDS が構成される可能性があ

る。

VS. VS.

Page 11: IDS による 漢字情報処理

IDS の正規化 現実の IDSは、上記の5つの問題が複雑に絡み合

い、「同一性」の判定を IDS文字列の単純な比較だけで行うのは困難。

解決に向けての4つの手段 IDS入力ルールの明確化 IDCの統合 IDS木構造の「正規化」 統合可能な漢字部品 (DC)の「正規化」または「同一

視化」 過去に、 IRG N1154 として分解アルゴリズムを提案したことがあったが、処理が重すぎた。

11

Page 12: IDS による 漢字情報処理

IDS 入力ルールの明確化

入力時のルールを、 Annex F.3 に追加。 重ね合わせ IDS は極力避ける 「意味論的」ではなく「表現的」な IDS のみ

例:辧(説文「判也。从刀。辡聲。」)は「⿴辡刀」とせず「⿲辛刀辛」とする。

辧 辧

辡 刀

辛 辛刀 12

Page 13: IDS による 漢字情報処理

IDC の統合

IDS の比較の際、⿵⿸⿹は⿱に、⿺⿶⿷は⿰に統合し、また⿶はノードの左右を入れ替えて、⿱に統合する。

凵 㐅

㐅 凵13

Page 14: IDS による 漢字情報処理

IDS 木構造の正規化(1)

IDS の「⿲/⿳」と「⿰/⿱」の曖昧さを避けるため、⿲ ABC は⿰ A ⿰ BC 等に置き換える。

亻 匕 頁

傾⿰

亻 ⿰匕 頁

14

Page 15: IDS による 漢字情報処理

IDS 木構造の正規化(2)IDS の「分割点」の曖昧さを避けるため、

木のノードの IDC と、その左枝の IDC が同じ場合は、当該 IDC を右側に移動する。

儲⿰

⿰亻 言

儲⿰

亻 ⿰言 者

15

Page 16: IDS による 漢字情報処理

IDS 木構造の正規化(3)前ページのルールは、ノードの IDC の左

下の漢字が、当該ノードの IDC と同じIDC で分解可能な場合にも、分解して適用する。

⿰⿰

亻 言

⿰亻 ⿰言 者

者⿰

信 者「信」は「⿰亻言」と展開でき、右上ノードと IDC が一致する。

(儲) (儲) (儲)

16

Page 17: IDS による 漢字情報処理

IDS 木構造の正規化(4) IDS の縮約

IDS 木の正規化後、 IDS 木の葉が符号化漢字(DC) の場合は、ノードの IDS をデータベースから検索、該当漢字があれば置換を行う。

⿰亻 ⿰言 者

(儲)⿰

亻 諸

(儲)儲

(儲)

17

Page 18: IDS による 漢字情報処理

IDS 木構造の正規化(5)

IDS 木構造の正規化例(1)

A

A1 A2 A3

⿰⿰

B C

⿰⿰

B CA1

A2 A3

A1 A2 A3

⿰⿰

B C

18

処理ノードの IDC が横方向に分解でき、かつその左側の文字 A が、 IDS データベース上は⿲ A1A2A3 と横方向に分解できる場合、 A はいったん、正規化のために分解する。

ノード左の漢字を IDS 木構造に分解した場合は、そのノードに対しても正規化処理を再帰反復実行する。

Page 19: IDS による 漢字情報処理

IDS 木構造の正規化(6)

IDS 木構造の正規化例(2)

⿰⿰

B CA1

A2 A3

⿰⿰A1

A2 A3

B C

⿰⿰A1

B C

A3

A2

19

処理ノードの左側が同じ IDC の場合、当該 IDC の左側を処理ノードの左側( A1) に、右側を新設した処理ノード右側ノードの左側に、処理ノード右側を新設ノードの右側に移動する。

移動後、処理ノードを右側ノードに移動し、同様の処理を再帰反復する。

一致

一致

Page 20: IDS による 漢字情報処理

IDS 木構造の正規化(6)

IDS 木構造の正規化例(3)

⿰⿰A1

XA2

20

⿰⿰A1

B C

A3

A2

⿰⿰A1

⿰ BC

A3

A2

処理ノードの左右が DC の場合、 IDCとの組み合わせで、 IDS のデータベース(ハッシュまたはトライ木)を検索する。該当漢字が検索できない場合は文字列を上ノードに返す。

⿰ BC が IDS データベースに存在していなくても、⿰ A3 ⿰ BC に対して、 Xがデータベースに存在する場合がある。

Page 21: IDS による 漢字情報処理

DC 部品の正規化(1) 漢字の構成部品として「同等」と考えられるもの

が存在する。 異符号を持つ同等な部品の判定には2つの方法が

ある。1. IDSデータの格納時に「片寄せ」正規化

メリット:単純/高速 デメリット:硬直的/片寄せ処理の無限ループ化を防止す

る方法が必要2. IDSデータ比較時に全「同等パターン」組み合わせを生成、全比較

メリット:柔軟性/応用性が高い デメリット:比較処理が複雑で遅くなる。

21

Page 22: IDS による 漢字情報処理

DC 部品の正規化(2) 片寄せ時の無限ループ問題

「犬/大」のような部品は、同等とみなして「犬」に寄せると、「大」と「丶」に分解され、分解がループする。

対策として、同等と考えられる部品のうち、「画数がもっとも小さいもの」に寄せる。 「漢字画数データベース」を整備

22

自  大

⿱犬

大  丶

分解分解

片寄せ正規化

片寄せ正規化

無限ループ化

Page 23: IDS による 漢字情報処理

IDS 正規化アルゴリズムのまとめ IDS木構造の最上位ノードから正規化処理を行う

対象ノードのIDCが⿵⿶⿷⿸⿹⿺/⿲⿳ならばIDCを正規化する。 対象ノードのIDCと、左側IDCが一致したら、木の組み替えを行

う。(⿰⿰ABC → ⿰A⿰BC) 対象ノードのIDCと、左側文字の潜在IDCが同じならば、左側

ノード文字のIDS分解と正規化を行う。 対象ノードの左側DCを(片寄せの場合は)正規化し、右側ノード

を対象ノードにして再起的に処理を行う。 左右のノードがDCのノードに到達したら終了。

IDS木構造の最上位ノードから文字合成処理を行う。 対象ノードの全子ノードがDC/IDSならば、ノード全体でIDSを

構築してIDSデータベースを検索する。 符号化漢字がヒットしたらその文字列を返す。 符号化漢字がヒットしない場合は、IDSをそのまま返す。

対象ノードの子ノードが木構造なら再帰処理を行う 処理終了時には正規化IDSが完成 23

Page 24: IDS による 漢字情報処理

本アルゴリズムの特徴

アルゴリズムが単純(全分解して、可能性のある全パターンを検索

する方法※に比較した場合)再帰を使えば非常に短いコードで記述可能。高速動作低メモリ消費

24

※ IRG N1154 で発表し、 IRG における重複漢字チェックに使用したアルゴリズム

Page 25: IDS による 漢字情報処理

まとめ IDS は漢字構造を記述。(部品としては CDP 外

字が便利) IDS は漢字の検索/照合/フォント合成/ OCR

など、様々な応用が考えられる。 IDS による照合処理には正規化が必要。 IDS の正規化には、「意味的 vs. 表示的IDS 」「分割点」「 IDC の正規化」「 DC の正規化」の問題がある。

本発表で提案するアルゴリズムは、上記の課題を高速・低メモリで解決することを可能にする。

25