コーパス言語学入門・日本語コーパスの活用
- コーパス言語学入門(人文社会系研究科/基礎文化研究専攻言語学専門分野)
- 人文情報学特殊講義(文学部次世代人文学開発センター)
- 言語学特殊講義(文学部言語文化学科言語学専修課程)
- 冬学期 4限(14:55~16:40) 法文1号室 111教室
2016/12/16
形態素解析の実際
インストールと利用のデモ
#amazon(4254516029)
形態素解析結果の利用
テキストの性質に関する古典的な指標とその出し方
- 語種比率
- TTR (Type Token Ratio)延べ異なり比
- 名詞率
- 平均文長
- MVR (Modifier / Verb Ratio)
形態素解析結果の修正・利用
2016/12/09
自分用のミニコーパスを自分で作る
(テキストデータは別途用意するのを前提として)
- 日本語コーパスのタグ付けのレベル
テキストのレベル | ツール | 必要な技術 |
プレーンテキスト | テキストエディタ | grepと正規表現 |
構造化テキスト | ひまわり→ Excel | XML・マークアップの基礎,ピボットテーブル |
形態素解析済みテキスト | UniDic+MeCab→中納言・ChaKi | 形態素解析の知識,ChaKiの使い方 |
- プレーンテキスト:テキストエディタ(grepと正規表現) →前回
- 構造化テキスト(旧「太陽コーパス」など):XMLと「ひまわり」 →今回
- 形態素解析済みテキスト(BCCWJ,CHJなど):「中納言」相当←自分で作るには、Web茶まめ・ChaKi.net
XMLとひまわり
- XML
- 独自のタグが定義できる汎用のマークアップ言語
- 多くのコーパスがXMLで記述されている。
- 「現代日本語書き言葉均衡コーパス」(BCCWJ)も「日本語歴史コーパス」もソースはXML cf.BCCWJのタグセット
ひまわり
- 全文検索システム「ひまわり」
- ただのテキストファイル(プレーンテキスト)ではなく、XML形式にして、インデックスを付けた専用のデータを利用
- 基本的に文字列検索のみ(携帯論情報付きデータの検索にはあまり向かない)
全文検索システム「ひまわり」について
- 「ひまわり」の検索結果をピボットテーブルで集計する
2016/12/02
調整頻度の計算
- 粗頻度を総語数で割る
- レジスターごとの語数データ:中納言ページの「語数について」からExcelでダウンロードできる
- 調整頻度には100万語あたりの頻度(pmw)が比較的よく使われる
- ※割合の違いを比較するだけなら調整頻度を出す必要はない。
ランダムサンプリング調査
大量に用例があり、調査内容から全てをすべて対象にできない(全てを調査する必要がない)場合
- ランダムに並べ替え→先頭n例を調査対象に
- ランダムな数字の列: =RAND()
- ランダムな数字の列をコピーして「値として貼り付ける」と数字が固定される
重複の削除
用例数ではなく、用例が一つでも出現したサンプルの数を調べたい場合
- たとえば同一サンプル内での繰り返しが多いものを調査するとき(例:一人称代名詞など)
テキストエディタと正規表現
- 初心者におすすめの正規表現に対応したテキストエディタ(フリー)
- Windows: Sakura Editor
- Mac: Mi
授業用サクラエディタのダウンロード
(正規表現ライブラリ同梱)
サンプルテキスト
正規表現
- 正規表現 >用語
- 文字を表すための特殊な文字(メタ文字)を使って文字列のパターンを表現する
- エディタでは置換・検索・grepで利用できる (エディタ以外にもさまざまなアプリケ-ションやコンピュータ言語で利用されている)
- 特殊な文字(メタ文字)はすべて半角
正規表現に関する参考資料†
#amazon(4873114500)
#amazon(4873113598)
2016/11/25
復習:「中納言」検索結果のダウンロードとExcelでの利用
複数の検索結果の結合
ショートカットキーを活用すると便利
- Ctrl+End ファイルの末尾/表のいちばん右下に移動
- Shift+Ctrl+End 〃範囲を選択
- 表をコピー
- Ctrl+Home, ↓(列名はコピーしないようにする),Shift+Ctrl+End, Ctrl+C
- コピーした表を既存の表の下に貼り付け
- Ctrl+End, Home, ↓, Ctrl+V, Ctrl+Home
授業資料/覚えておきたいショートカットキー
集計用の列を自分で用意する
- 例:表記(ひらがな・かたかな・漢字)別集計
- 例:用法分類
Excelの文字列関数とIF関数
- 例:ジャンル(NDC)の整理
- 先頭の文字を取り出す(NDCの一次区分(=類))
- スラッシュで区切られた最初の部分(ジャンルの大分類)
- =LEFT(<ジャンルのセル>,SEARCH("/",<ジャンルのセル>)-1)
- 集計用に用意した列で文字列処理関数を利用する
- LEFT
- RIGHT
- MID
- LEN
- SEARCH
- SUBSTITUTE
- 応用例:品詞の大分類を使う
- =IFERROR(LEFT(<品詞>,SEARCH("-",<品詞>)-1),<品詞>)
【補足】Excelの文字列関数とIF関数
- 後文脈の「。」より後を消す(「。」がない場合はそのまま)
=IF(ISERROR(SEARCH("。",<後文脈>)),<後文脈>,LEFT(<後文脈>,SEARCH("。",<後文脈>)))
- 前文脈の「。」以前を消す(「。」がない場合はそのまま)*1
=RIGHT(<前文脈>,LEN(<前文脈>)-(FIND("~",SUBSTITUTE("。"&<前文脈>,"。","~",LEN("。"&<前文脈>)-LEN(SUBSTITUTE("。"&<前文脈>,"。",""))),1)-1))
BCCWJ利用の落とし穴
- BCCWJはあくまでも「現代語」のためのコーパスなので通時的な調査、経年調査には向かない
- レジスターによって母集団の年が違っている
- 30年あるのは白書・ベストセラー・国会会議録など一部のものだけ
- もともとテキスト量の多いレジスターにたくさん用例があるからといって「そのレジスターでよく使われる」とはいえない→調整頻度の計算
- cf.人口あたりの事故件数,1平方キロあたりの…etc.
2016/11/18
「中納言」の利用・続き
検索条件式の利用
キー: (品詞 LIKE "形容詞%" AND 活用形 LIKE "連体形%")
AND 後方共起: 語彙素="言葉" ON 1 WORDS FROM キー
WITH OPTIONS tglKugiri="|" AND tglBunKugiri="#" AND limitToSelfSentence="1"
AND tglFixVariable="2" AND tglWords="20" AND unit="1" AND encoding="UTF-16LE" AND endOfLine="CRLF"
「中納言」検索結果のダウンロードとExcelでの利用
2016/11/11
(休講)
シカゴに出張していました。
2016/10/28
補足
「中納言」の利用続き
2016/10/21
(復習)
コーパスへの形態論情報の付与
- 短単位:MeCabとUniDicを使った形態素解析で情報付与
- 長単位:Comainu(など)で短単位を組み上げる
形態素解析:「Mecab」と「UniDic」†
形態素解析とは†
どんなものか
- デモ: Web茶まめ (MeCab + UniDic)
- 日本語の自然言語処理の基礎技術
- 今ではかなり枯れた技術
- 機械学習による言語処理のはしり
- 形態素解析の解析単位は言語学で言う「形態素」ではないことに注意
- 「形態素解析」= "Morphological analysis"
- morphologicalな(形態論上の)単位は形態素だけではない(訳語に問題がある)
- 日本語の形態素解析の単位は一般に「語」(語をどう定義するかという問題は残る)
- 形態素解析の仕組み
- 生起コストと連接コスト
- その語はどれくらい出てくるか、どんな語とつながりやすいか
- コーパスから統計的に取得(機械学習)
- 経路の選択(参考:ビタビアルゴリズム)
形態素解析用ソフトウェア†
以前から使われているソフトウェア
- 形態素解析器(解析エンジン・プログラム)
- 解析用辞書
UniDicの特長†
- 見出し語が短単位という斉一な単位に揃えられている
- 見出し語が階層化されており表記の揺れや語形の変異にかかわらず同一の見出しを与えることができる
- アクセントや音変化の情報を付与することができる
- 語種など言語研究のための豊富な情報が付与されている
- UniDicはChaSen, MeCabのどちらの解析器でも利用可能*2
- 後から開発されたMeCabの方が解析精度が高いのでおすすめ
比較的新しい形態素解析器†
形態素解析に関する専門書†
- 工藤拓『形態素解析の理論と実装』近代科学社(2018)
(参考)長単位解析器†
※BCCWJの長単位を付けるのに使われた。短単位を組み上げて品詞を長単位規定に合わせることができる
(参考)係り受け解析器†
※BCCWJには係り受け情報は付いていない。NWJCは自動解析した係り受け情報付き
最近の動向
長単位解析器
係り受け解析器
参考図書
#amazon(4254516010,left)
#amazon(4254516029,left)
#amazon(479812852X,left)
#amazon(4339024511,left)
#amazon(4873114705,left)
#amazon(4339027510,left)
2016/10/14
- 配布資料:「中納言の使い方」(次回以降も使います)
(前回補足)コーパスの設計とサンプリング
XMLによる電子化
形態論情報
2016/10/7
「コーパス」について†
- 狭義のコーパス
- 言語研究を目的として収集され、言語研究のための情報が付けられたコンピュータ上で利用可能な大規模な言語データ。
- 現代日本語書き言葉均衡コーパス(BCCWJ) / 日本語歴史コーパス(CHJ)
- 広義のコーパス
- コンピュータ上で利用可能な大規模な言語データ。必ずしも言語研究向きではないが、言語研究に利用可能。
- さまざまなテキストアーカイブ(新潮文庫の百冊 / 青空文庫 / 国会会議録)
- Web上のデータ
- 検索サイトの利用
- WAC(Web as Corpus)
紙の資料からコーパスまで (日本語研究資料の変遷)
- (紙の)本文
- (紙の)総索引(コンコーダンス)
- 各種の電子テキスト
- 構造化テキスト
- 形態論情報付きコーパス
コーパスに求められるもの
- コーパス以前の電子化日本語資料(とその限界)
- 個人研究者による電子化テキスト
- 出版社による電子出版物(CD-ROM)
- 新聞のデータベース(CD-ROM)
- 研究機関のデータベース
- Web上のテキストアーカイブ
- Webそのもの
- コーパスへの要請
- 大規模であること
- 各種のテキストが含まれていて、ジャンルなどのバランスがとれていること
- 著作権の問題がないこと
- 言語研究に利用できる情報がついていること
コーパスの設計とサンプリング
- (スライド参照)
- 均衡コーパス(Balanced corpus)
- 「バランスがとれている」とは?
- コーパスの母集団の設定とサンプリング
- BCCWJのサブコーパス
- 可変長と固定長
参考リンク
- 英語のコーパス リファレンス
- 現代日本語書き言葉均衡コーパス(BCCWJ)
2016/9/30
イントロダクション/日本語コーパスの紹介
「中納言」オンライン利用申込み