12
SLAT2/ChaKi.NET DB Model 解解解解 ChaKi-SLAT 解解解解解解解解解解解 ()解 解 解 解 解解 解解 [email protected] 2009-06-26

SLAT2/ChaKi.NET DB Model 解説資料 (兼 ChaKi-SLAT 統合状況の経過説明)

  • Upload
    caia

  • View
    29

  • Download
    0

Embed Size (px)

DESCRIPTION

SLAT2/ChaKi.NET DB Model 解説資料 (兼 ChaKi-SLAT 統合状況の経過説明). 2009-06-26. (有) 総 和 技 研 森田 敏生 [email protected]. ChaKi と SLAT の機能範囲. ChaKi.NET. SLAT2. ・ KWIC 検索・表示 ・文節 / 係り受けアノテー  ションに特化した編集 ・文 - 語構造の表現 ・ Lexicon の管理 ・コロケーション / 統計 ・用途に応じた複数の RDBMS サポート ・ Windows / Rich Client - PowerPoint PPT Presentation

Citation preview

Page 1: SLAT2/ChaKi.NET DB Model  解説資料 (兼  ChaKi-SLAT  統合状況の経過説明)

SLAT2/ChaKi.NET DB Model 解説資料(兼 ChaKi-SLAT 統合状況の経過説明)

(有)総 和 技 研森田 敏生

[email protected]

2009-06-26

Page 2: SLAT2/ChaKi.NET DB Model  解説資料 (兼  ChaKi-SLAT  統合状況の経過説明)

2009-06-26 2

ChaKi と SLAT の機能範囲

ChaKi.NET SLAT2

・ KWIC 検索・表示・文節 / 係り受けアノテー ションに特化した編集・文 - 語構造の表現・ Lexicon の管理・コロケーション / 統計・用途に応じた複数の  RDBMS サポート・ Windows / Rich Client  ・ Standalone or Client-Server

・ドキュメントの表示・アノテーションの 表示 / 基本編集・アノテーションプロ ジェクトの管理

・アノテーションの 高度な編集・タグセットの作成支援・ Web Application Thin Client・ Client-Server

ChaKi SLAT~ 2008 ~ 2008

Page 3: SLAT2/ChaKi.NET DB Model  解説資料 (兼  ChaKi-SLAT  統合状況の経過説明)

2009-06-26 3

現在の Database Model

• 別紙 1: SLAT2 DB Model   (ER 図 )• 別紙 2: ChaKi.NET DB Model   (ER 図 )• 別紙 3: ChaKi.NET のオブジェクトマッピング  ( クラス図 )

• 両者は共通部分において可能な限り互換に作成している。

Page 4: SLAT2/ChaKi.NET DB Model  解説資料 (兼  ChaKi-SLAT  統合状況の経過説明)

2009-06-26 4

Document と DocumentSet

• Document– コーパス (DB) は、 1 つ以上の Document を持つ。– Document は、文字 ( 内部表現は UCS-2) の一次元配列である。– 文字インデックス (0, … , Ndoc-1) は Document に固有。– 平文表現 {C(0), …, C(Ndoc-1)} を large text として保持する。

• ChaKi の” String Search” (文字列検索・正規表現検索)は、この平文に対して行われる。

– Document の例 ) bccwj の単一ファイル、新聞記事、書籍一冊、 etc.• DocumentSet

– アノテーション作業の対象とする Document の集合であり、コーパスに含まれるすべての Document の部分集合である。

– DocumentSet 間で Document を共有することはできない。(任意の Document は必ず 1 つの DocumentSet に属する。)

– アノテーションを行う場合に必ず定義する必要がある。– ChaKi では、文節・係り受け情報インポート(=最初のアノテーショ

ン)の際に、全 Document を含む唯一の DocumentSet を作成する。つまり、 ChaKi では、コーパス =DocumentSet とみなす。

Page 5: SLAT2/ChaKi.NET DB Model  解説資料 (兼  ChaKi-SLAT  統合状況の経過説明)

2009-06-26 5

DocumentSet – Project – User

Project1

Project2

Project3

DocumentSet1

DocumentSet2

1 : nDocumentSet Project n : n User

User1

User2

Project とは、一連のアノテーションが実施・保持される作業環境であり、ひとつの Project に複数の作業者が参加可能である。(※「一連の」=「同一基準によって付加された」)

Page 6: SLAT2/ChaKi.NET DB Model  解説資料 (兼  ChaKi-SLAT  統合状況の経過説明)

2009-06-26 6

Project – TagSet

Project1

Project2

Project3

TagSet1

TagSet2

Project n : n TagSet

TagSet3

・ひとつの Project で複数の TagSet を組み合わせて利用可能・ TagSet は Project 間で共有可能

Page 7: SLAT2/ChaKi.NET DB Model  解説資料 (兼  ChaKi-SLAT  統合状況の経過説明)

2009-06-26 7

Tag の特徴

Tag ::= Segment | Link | Group

1. Segment は Document の連続部分文字列 [Cstart, Cend]– Document をまたぐことは不可。 (0 ≦ start ≦ end < Ndoc)

2. Link は 2 個の Segment 間の関連であり、方向・推移性の有無が設定可能。– Link は同一 DB に属する限り Document をまたぐこともできる。– これを利用すると、本文外への参照要素との Link を作りたいような場合に、あらかじめ

特別な Document を作成して本文に現れない Segment を(いくつでも必要なだけ)収めておき、それらへの Link を張ることでそのような Link を実現できる。

3. Group は Tag の集合である。

※ Tag は個々のアノテーションインスタンスである。Tag の種別・制約条件をあらかじめ定義した TagDefinition とは区別しなければならない。

※ Tag のインスタンス毎に、– 複数の Attribute ( Key-Valueペア)を付加可能– 付加した User を識別可能– 更新時刻を取得可能– 更新された時点で使用していた TagSet のバージョンを取得可能

Page 8: SLAT2/ChaKi.NET DB Model  解説資料 (兼  ChaKi-SLAT  統合状況の経過説明)

2009-06-26 8

TagSet のバージョン管理(例)

Rev.1

Rev.2

Rev.3

Rev.4

MyProject

定義の変遷

現在

アノテーション結果TagSet1

・・・

Seg_A を追加Rev.1 と関連付けられる。

Seg_A

Seg_B

Link_X(= Seg_A -> Seg_B)

× 無効j化

明示的に削除

追加

追加

TagDefinitionの追加削除

・・・

・・・

・・・

Seg_B を追加Rev.2 と関連付けられる。

・・・

・・・

Link_X を追加Rev.3 と関連付けられる。

・・・

・・・

Seg_B と Link_X を削除残った Seg_A は Rev.1 と関連付けられたまま。

Page 9: SLAT2/ChaKi.NET DB Model  解説資料 (兼  ChaKi-SLAT  統合状況の経過説明)

2009-06-26 9

Sentence/Word構造と Document.Text

• アノテーションは Document 内の Text の文字位置に対して設定される。• 一方、 ChaKi では Corpus 以下に Sentence-Word の構造があり、 Docum

ent.Text と併存している。

Sentence

Corpus

Sentence …

Word Word … Word

Lexeme の表層形 Lexeme の表層形 …

T e x t …

一致

※ 英語などでは、 Word 間に空白を自動挿入※

Document.Text = {C(0), …, C(Ndoc-1)}

+ +

Page 10: SLAT2/ChaKi.NET DB Model  解説資料 (兼  ChaKi-SLAT  統合状況の経過説明)

2009-06-26 10

DBサイズの評価 (ChaKi.NET)

CorpusName sanshiro OW_Core BK_PB

文字数 (※1) 166,850 352,595 13,233,948

Cabocha ファイルサイズ bytes

4,726,028(SJIS)

13,737,151(UTF-8)

523,840,901(UTF-8)

Document 数 1 62 2,584

Segment 数 (※2) 50,177 76,885 3,307,254

Link 数 (※2) 42,506 71,059 2,983,136

Group 数 0 0 0

Sentence 数 7,671 5,796 324,118

DB Size (SQLite)bytes

17,235,968 30,227,456 1,264,270,336

( 参考 ) Lexeme 数 8,931 9,072 126,023

※1) 改行は 1 文字とカウント※2) 文節を Segment, 係り受けを Link として変換

Page 11: SLAT2/ChaKi.NET DB Model  解説資料 (兼  ChaKi-SLAT  統合状況の経過説明)

2009-06-26 11

ChaKi実装における既知の問題点

• 英語における空白自動挿入の問題– 原文にない空白が挿入される

• 入れ子 Sentence の扱い– Document.Text を密に分割する構造的な Main-Sentence (前頁の Sent

ence) 以外に、 Segment で表現された Sub-Sentence を導入する予定。

• 複合語構造を Segment として扱うか ?– 複合語構造は Lexicon の問題であり、 Document 内の出現毎にタグ

付けするのはふさわしくないのではないか。

Page 12: SLAT2/ChaKi.NET DB Model  解説資料 (兼  ChaKi-SLAT  統合状況の経過説明)

2009-06-26 12

本ドキュメントの保管場所

PowerPoint ファイル付属の ChaKi.NETモデルファイル (PDF)

http://sourceforge.jp/projects/chaki/docs/?category_id=920