東京外大2017
Japan Studies 2:コーパス日本語学入門
- 秋学期・木曜4限
- ogiso@ogiso.net ←@を@に直してください
アクティブラーニングについて
2018/1/11 発表 第7回 / ミニコーパスを作る
自分用のミニコーパスを作る
(テキストデータは別途用意するのを前提として)
- 日本語コーパスのタグ付けのレベル
テキストのレベル | ツール | 必要な技術 |
プレーンテキスト | テキストエディタ | grepと正規表現 |
構造化テキスト | ひまわり→ Excel | XML・マークアップの基礎,ピボットテーブル |
形態素解析済みテキスト | UniDic+MeCab→中納言・ChaKi | 形態素解析の知識,ChaKiの使い方 |
- プレーンテキスト:テキストエディタ(grepと正規表現) →今回
- 構造化テキスト(旧「太陽コーパス」など):XMLと「ひまわり」 →今回
- 形態素解析済みテキスト(BCCWJ,CHJなど):「中納言」相当←自分で作るには、Web茶まめ・ChaKi.net
プレーンテキストのミニコーパス
- ->(2017/10/26 テキストデータとエディタ)
構造化テキストのミニコーパス
XMLとひまわり
- XML
- 独自のタグが定義できる汎用のマークアップ言語
- 多くのコーパスがXMLで記述されている。
- 「現代日本語書き言葉均衡コーパス」(BCCWJ)も「日本語歴史コーパス」もソースはXML cf.BCCWJのタグセット
ひまわり
- 全文検索システム「ひまわり」
- ただのテキストファイル(プレーンテキスト)ではなく、XML形式にして、インデックスを付けた専用のデータを利用
- 基本的に文字列検索のみ(携帯論情報付きデータの検索にはあまり向かない)
全文検索システム「ひまわり」について
テキストデータを「ひまわり」で利用できるようにする
日本語のテキストの性質に関する古典的な指標とその出し方
- 語種比率
- TTR (Type Token Ratio)延べ異なり比
- 名詞率
- MVR (Modifier / Verb Ratio)
- 平均文長
2017/12/21 発表 第6回 / 主成分分析
主成分分析の解説
- (参考リンク)主成分分析 - 統計科学研究所
- (参考リンク)主成分分析の考え方 | Logics of Blue
- (参考リンク)はじめよう多変量解析~主成分分析編~
コーパスと統計的手法に関する参考資料
- (参考リンク)「統計処理環境Rで学ぶ 言語研究のための統計入門」
- (参考文献)
- 石川慎一郎・前田忠彦・山崎誠(編)(2010) 『言語研究のための統計入門』くろしお出版
2017/12/14 発表 第5回
2017/12/7 発表 第4回
2017/11/30 発表 第3回
特徴語抽出
特定のサブコーパスに特有の語彙を抽出するための指標を使う
(ミニコーパス作成に向けて)
- Web茶まめ
- 語種比率
- 延べ語数異なり語数比率
- Type Token Raio
- ピボットテーブルでの計算
特徴語抽出
2017/11/16 発表 第2回
2017/11/9 発表 第1回
2017/11/2 対応分析(コレスポンデンス分析)
前回補足・タグつき正規表現
対応分析
クロス集計表からのコレスポンデンス分析
yahari<-matrix(c(
1,2,0,9,4,0,
20,12,1,30,23,0,
31,54,13,17,31,2
)
,3,6,byrow = T)
colnames(yahari)<-c("雑誌","書籍","新聞","ブログ","知恵袋","白書")
rownames(yahari)<-c("ヤッパ","ヤッパリ","ヤハリ")
#MASSパッケージを読み込む
library(MASS)
(yahari.ca<-corresp(yahari,nf=3))
biplot(yahari.ca)
#固有値
固有値<-yahari.ca$cor^2
round(固有値,3)
#累積寄与率
round(100*固有値/sum(固有値),2)
参考リンク:Rと対応分析
データをファイルから読み込む
setwd("C:/Users/ユーザー名/Desktop")
x <- read.table("bccwjcore_adj_register.txt",
header=T, row.names=1, sep=",", fileEncoding="UTF-8")
#MASSパッケージを読み込む
library(MASS)
(x.ca<-corresp(x, nf=6)) #nf=行と列の数の小さいほうの値からさらに1引いた値
biplot(x.ca)
- 自分でデータを作るときにはファイルの文字コード(fileEncoding)に注意!
2017/10/26 テキストデータとエディタ
テキストエディタと正規表現
- 初心者におすすめの正規表現に対応したテキストエディタ(フリー)
- Windows: Sakura Editor
- Mac: Mi
授業用サクラエディタのダウンロード
テキストエディタの基礎
- 検索・置換、grep
- 検索で初出行を調べる
- 置換で用例数を数える
- grepで用例リストを作る
- タグジャンプで文脈を確認する
- サブフォルダのgrep
正規表現
- 正規表現 >用語
- 文字を表すための特殊な文字(メタ文字)を使って文字列のパターンを表現する
- エディタでは置換・検索・grepで利用できる (エディタ以外にもさまざまなアプリケ-ションやコンピュータ言語で利用されている)
- 特殊な文字(メタ文字)はすべて半角
正規表現に関する参考資料†
#amazon(4873114500)
#amazon(4873113598)
2017/10/19 Rを使ってみる(2)
発表順
前回までの復習
2017/10/12 (前期の復習)中納言による検索と集計 / Rを使ってみる
(前期の復習)中納言による検索と集計
Rを使ってみる
- 中納言でBCCWJコアの語彙素「矢張り」を検索、語形別に集計
| 雑誌 | 書籍 | 新聞 | ブログ | 知恵袋 | 白書 |
ヤッパ | 1 | 2 | | 9 | 4 | |
ヤッパリ | 20 | 12 | 1 | 30 | 23 | |
ヤハリ | 31 | 54 | 13 | 17 | 31 | 2 |
独立性の検定(χ二乗検定)
- ブログと知恵袋で「やはり」「やっぱり」「やっぱ」の使われ方に差はあるか
data <- matrix(c( 9,4,30,23,17,31), ncol=2, byrow=T)
chisq.test(data)
帰無仮説(H0):二つのレジスターで「やはり」類の使用頻度には差がない
検定の結果、p<0.05であれば0.05(= 5%)水準でH0は棄却される =二つのレジスターで差がある(レジスターと関係がないのに偶然こうなる可能性は5%以下)
クラスター分析
- 「やはり」「やっぱり」「やっぱ」の使用から見たレジスター間の距離(どのレジスター同士が似ているか)
yahari<-matrix(c(
1,2,0,9,4,0,
20,12,1,30,23,0,
31,54,13,17,31,2
)
,3,6,byrow = T)
colnames(yahari)<-c("雑誌","書籍","新聞","ブログ","知恵袋","白書")
rownames(yahari)<-c("ヤッパ","ヤッパリ","ヤハリ")
yahari <- t(yahari) #行と列を入れ替え
yahari.d<-dist(yahari) #距離の計算
yahari.d
result <- hclust(yahari.d, method="ward.D") #word法でクラスター分析
plot(result,hang=-1) #デンドログラムを描く
#amazon(4274065707)
2017/10/05 イントロダクション
- 講義・演習の別
- 演習
- 授業の目標
- 日本語コーパスを研究に利用することができるようになるためのやや高度な知識と技術を身につける。
- 授業の概要
- 日本語コーパスを活用するための技術、統計的指標や手法について講義する。参加者は実際にコーパスとこれらの技術を利用した調査研究と発表を行う。
- 授業の計画
- 実際にコーパスを利用する演習発表をとおして、コロケーションや特徴語抽出のための指標、クラスタリングや主成分分析などの統計的手法、関係データベースを利用したデータの処理、ミニコーパスを自作する方法など、コーパスを研究に活用するための方法について学ぶ。
最初に講義形式でコーパスの利用法を説明した後は、毎回参加者による演習発表形式で授業を行う。
- 成績の評価
- 授業態度・期末レポート等を総合して評価する。
- 事前学習等
- 担当教員の前期の授業(Japan Studies 1)を履修するなどして日本語コーパスの基本的な利用方法を身につけておくこと。