/detect-icon

CRFを用いた顔文字検出

Primary LanguageHaskell

abstract

CRFを用いて顔文字検出を行うための、チャンカーとタガー。

require

  • CRFsuite

用意するデータ

training data

./input.train.txt

一つの文を一行で表現。 検出したい塊を<>で囲む

あ!うそうそ<>(;_;)<>うそです!うそだよ<>(;_;)<>うるうる
<>( ゚д゚)<>ヘッ!!!!!そうなのwこれからも、カッコイイテクノの曲作ってね<>♪(*^ω^)<>ノ∠※PAN!オメデトクラッカー♪
イベントでも秋斉さん土方さん高杉さんかっこいー<>(^o^)<>スチルガチャ秋斉さん出ないよー<>(ρ_;)<>秋斉さんルートも見たいけど体力ないよーこんぺいとうと花魁ガチャ券ふってこないかな…<>(≧ε≦)笑<>

こんなん

test data

./input.test.txt

素の文章

プログラム

正直何がなんだかわからなくなる。 自分がプログラムに与えた名前が悪い気がする。 Makefileを見るほうが返ってわかりやすい。

訓練

(訓練データ) --(train.exe)--> train.crf --(crfsuite)--> icon.model

タギング

(テストデータ) --(test.exe)--> test.crf --(crfsuite + icon.model)--> tag.txt

tag.txtには、テストデータの各文字に対応したIOB2タグが行の単位で出力される。 これじゃわからないので、視覚化のために

(テストデータ, tag.txt) --(tag2html.exe)--> result.html

とした。