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
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
2009-06-26 3
現在の Database Model
• 別紙 1: SLAT2 DB Model (ER 図 )• 別紙 2: ChaKi.NET DB Model (ER 図 )• 別紙 3: ChaKi.NET のオブジェクトマッピング ( クラス図 )
• 両者は共通部分において可能な限り互換に作成している。
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 とみなす。
2009-06-26 5
DocumentSet – Project – User
Project1
Project2
Project3
DocumentSet1
DocumentSet2
1 : nDocumentSet Project n : n User
User1
User2
Project とは、一連のアノテーションが実施・保持される作業環境であり、ひとつの Project に複数の作業者が参加可能である。(※「一連の」=「同一基準によって付加された」)
2009-06-26 6
Project – TagSet
Project1
Project2
Project3
TagSet1
TagSet2
Project n : n TagSet
TagSet3
・ひとつの Project で複数の TagSet を組み合わせて利用可能・ TagSet は Project 間で共有可能
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 のバージョンを取得可能
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 と関連付けられたまま。
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)}
+ +
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 として変換
2009-06-26 11
ChaKi実装における既知の問題点
• 英語における空白自動挿入の問題– 原文にない空白が挿入される
• 入れ子 Sentence の扱い– Document.Text を密に分割する構造的な Main-Sentence (前頁の Sent
ence) 以外に、 Segment で表現された Sub-Sentence を導入する予定。
• 複合語構造を Segment として扱うか ?– 複合語構造は Lexicon の問題であり、 Document 内の出現毎にタグ
付けするのはふさわしくないのではないか。
2009-06-26 12
本ドキュメントの保管場所
PowerPoint ファイル付属の ChaKi.NETモデルファイル (PDF)
http://sourceforge.jp/projects/chaki/docs/?category_id=920