らこらこらこ~wと学ぶ機械学習

4

ネタツイのテンプレートみたいなものが合ったほうが表現の幅が広がるけど体系的に抽出するのは面倒すぎるから決め打ちで学習させたほうがいいってことだろうか

Kazuya Gokita @kazoo04

@laco0416 あと確率文脈自由文法の生起確率求めるって部分がブログの実装方法のところにないけど、多分必要だよ。1.ツイートから文を得る。2, … 3, … ってところね。

2014-01-10 00:25:50
Laco @laco0416

@kazoo04 実装的には出現回数の比で確率に置き換えていいのかな ポワソン分布的な感じ?

2014-01-10 00:30:45
Laco @laco0416

ポワソン分布は違うか 多項分布かな

2014-01-10 00:31:04
Kazuya Gokita @kazoo04

@laco0416 概ねそんな感じだけど、サンプルが少ない場合は学習データに1回も出現しない組み合わせとかでてきて生成確率が0%になって、精度が低くなるのはもちろんだけど、計算上色々不都合なことが起きる

2014-01-10 00:31:57
Laco @laco0416

@kazoo04 確率分布に制約加えて解決するような感じの問題じゃないからこれは最初に教師なしデータ?っていうか予めの確率データを入れておかないといけないかな

2014-01-10 00:35:58
Laco @laco0416

教師なしじゃないな 

2014-01-10 00:36:57
Kazuya Gokita @kazoo04

@laco0416 ものすごく簡単で大雑把な解決方法は全部の出現回数に問答無用で+1しちゃう方法(ラプラス法)がある。確率が0になるのは回避できるけど精度が悪すぎるのと出現する組み合わせや語が無限にあると確率が無限に小さくなっていくデメリットが有る。

2014-01-10 00:38:45
Kazuya Gokita @kazoo04

@laco0416 +0.1とか小さい数を足す方法もあるけど結局同じ問題が起きる。

2014-01-10 00:38:50
Kazuya Gokita @kazoo04

@laco0416 ラベルがついていないデータを教師なしデータって呼んでもおかしくはない(たぶんググれば用例でてくる)

2014-01-10 00:41:24
Laco @laco0416

@kazoo04 それって初期状態でも全ての組み合わせを計算に含めるための手法ってことなのかな それやると最初はマルコフ以上に構文めちゃくちゃになりそう

2014-01-10 00:44:30
Kazuya Gokita @kazoo04

@laco0416 ただ生成の場合は木を作る部分より、よりもっともらしい終端記号を選ぶところにあると思うから品詞の生成規則は適当でもなんとかなるんじゃないかなと思う。

2014-01-10 00:47:40
Kazuya Gokita @kazoo04

@laco0416 終端記号、つまり実際の単語を当てはめるときは、もしうまくいかなかったらある語の左右の語を見てよりもっともらしさが高くなるような語に差し替えるとかすればいいと思う。

2014-01-10 00:47:43
Laco @laco0416

@kazoo04 それってトライグラム(あるいはバイグラム)の情報も記憶しておくってことか

2014-01-10 00:50:18
Kazuya Gokita @kazoo04

@laco0416 そう。たとえば (文)→中略→(名|代)+(助)+(名)+(助)+(動)って生成されて、そこから 「私+は+あずにゃん+が+嫌い」が生成されて、嫌いより好きのほうが文の生成確率高くなるのなら嫌い→好きに置換して「私はあずにゃんが好き」に変換する。

2014-01-10 00:51:32
Laco @laco0416

@kazoo04 よく理解できた ラプラス法とやらのところはどうするかわからないけどnグラムとの融合はやる方向で考えてみる

2014-01-10 00:54:31
Kazuya Gokita @kazoo04

@laco0416 ゼロ頻度問題でググると多少出てくるはず

2014-01-10 00:56:14
Laco @laco0416

@kazoo04 スムージングね ラプラス平滑化ってのが出てきた これでトライグラムだとして「私はあずにゃんが好きです」と「私はむぎちゃんが嫌いです」から「あずにゃんが嫌いです」の組み合わせの頻度を+1として確率を与えられるわけかな

2014-01-10 01:03:04
Kazuya Gokita @kazoo04

@laco0416 うーん、まあ大体そんな感じかな…

2014-01-10 01:03:36
Kazuya Gokita @kazoo04

ちょっと眠いから正確な表現ができていない

2014-01-10 01:03:47
Laco @laco0416

@kazoo04 あんまり理解できてない 調べたら学習データでは冠詞がaしか使われてない単語でもtheが付くパターンを考えることが出来るって書いてあった でもこれって、事前にその単語知ってないとそもそも頻度を与えようがないよね

2014-01-10 01:05:03
Laco @laco0416

@kazoo04 知ってる単語全てに(あるいは、品詞を指定して)頻度を与えてる感じかな これなら一応実装できそう

2014-01-10 01:06:38
Kazuya Gokita @kazoo04

@laco0416 単語や状態が無数にあるときはノンパラメトリックベイズ的アプローチをしないといけなくなって死人が出る

2014-01-10 01:06:49
Kazuya Gokita @kazoo04

@laco0416 とりあえずはテキトーな実装でええんやないやろか

2014-01-10 01:07:07