Download presentation
Presentation is loading. Please wait.
1
SLAT2/ChaKi.NET DB Model 解説資料 (兼 ChaKi-SLAT 統合状況の経過説明)
(有)総 和 技 研 森田 敏生
2
ChaKiとSLATの機能範囲 ChaKi.NET SLAT2 ・KWIC検索・表示 ・文節 / 係り受けアノテー ションに特化した編集
・文節 / 係り受けアノテー ションに特化した編集 ・文-語構造の表現 ・Lexiconの管理 ・コロケーション / 統計 ・用途に応じた複数の RDBMSサポート ・Windows / Rich Client ・Standalone or Client-Server ・アノテーションの 高度な編集 ・タグセットの作成支援 ・Web Application Thin Client ・Client-Server ・ドキュメントの表示 ・アノテーションの 表示/基本編集 ・アノテーションプロ ジェクトの管理 SLAT ChaKi ~ 2008 ~ 2008
3
別紙2: ChaKi.NET DB Model (ER図) 別紙3: ChaKi.NET のオブジェクトマッピング (クラス図)
現在のDatabase Model 別紙1: SLAT2 DB Model (ER図) 別紙2: ChaKi.NET DB Model (ER図) 別紙3: ChaKi.NET のオブジェクトマッピング (クラス図) 両者は共通部分において可能な限り互換に作成している。
4
DocumentとDocumentSet
コーパス(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とみなす。
5
DocumentSet – Project – User
n : n User Projectとは、一連のアノテーションが実施・保持される作業環境であり、ひとつの Projectに複数の作業者が参加可能である。(※「一連の」=「同一基準によって付加された」)
6
Project – TagSet ・ひとつのProjectで複数のTagSetを組み合わせて利用可能
n : n TagSet ・ひとつのProjectで複数のTagSetを組み合わせて利用可能 ・TagSetはProject間で共有可能
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のバージョンを取得可能
8
TagSetのバージョン管理(例) MyProject 定義の変遷 Rev.1 Rev.2 Rev.3 現在 Rev.4
アノテーション結果 TagDefinition の追加削除 TagSet1 Seg_Aを追加 Rev.1と関連付けられる。 Seg_A Rev.1 ・・・ ・・・ Seg_Bを追加 Rev.2と関連付けられる。 Seg_B 追加 ・・・ ・・・ Rev.2 Link_X (= Seg_A -> Seg_B) 追加 Link_Xを追加 Rev.3と関連付けられる。 Rev.3 ・・・ ・・・ 明示的に 削除 Seg_BとLink_Xを削除 残ったSeg_AはRev.1と関連付けられたまま。 × 無効j化 ・・・ ・・・ 現在 Rev.4
9
アノテーションはDocument内のTextの文字位置に対して設定される。
Sentence/Word構造とDocument.Text アノテーションはDocument内のTextの文字位置に対して設定される。 一方、ChaKiではCorpus以下にSentence-Wordの構造があり、Document.Textと併存している。 Corpus Sentence Sentence … Word Word … Word … ※ … ※英語などでは、Word間に空白を自動挿入 Lexemeの表層形 + Lexemeの表層形 + 一致 T e x t … Document.Text = {C(0), …, C(Ndoc-1)}
10
DBサイズの評価(ChaKi.NET) ※1) 改行は1文字とカウント ※2) 文節をSegment, 係り受けをLinkとして変換
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数 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として変換
11
ChaKi実装における既知の問題点 英語における空白自動挿入の問題 原文にない空白が挿入される 入れ子Sentenceの扱い
Document.Textを密に分割する構造的なMain-Sentence (前頁のSentence)以外に、Segmentで表現されたSub-Sentenceを導入する予定。 複合語構造をSegmentとして扱うか? 複合語構造はLexiconの問題であり、Document内の出現毎にタグ付けするのはふさわしくないのではないか。
12
本ドキュメントの保管場所 PowerPointファイル 付属のChaKi.NETモデルファイル(PDF)
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.