誤字ェネレータは、入力された文章に含まれている漢字を誤字に置換するアプリです。dreamhost上のRailsで動いてます。
glitchmonkeyとかその辺の技術が僕は結構好きで、glitchというかcorruptingと言うか、そう言ったノイズ系のフィルタを日本語の文章にかけるのはどうしたらいいのか考えてました。一つの解は多分カットアップなんですが、それはもうきょうじんでやっていて結構いい感じなので、別のアプローチを考えてたんです。で、誤字かな、と。誤字って大抵見た目の似てる漢字を書いてしまうものなので、そういった感じの事を裏側ではやっています。
ぶっちゃけこれ僕の初めての割とまともな趣味webアプリなので、嬉しくって動画とか撮っちゃってます。使い方結構シンプルですがとりあえずこれを見て頂くと言う事で。
見ると分かると思うのですが、日本語の文章なんてぱっと思いつかねえよって方のためにきょうじんボタンを用意してあります。きょうじん発言がどんどん置換されてってカオスになって行きます。生成にはきょうじんAPIを用いていますが、多分これってこう言う時に使うものだと思うですよ。
で、APIも一応用意してあります。
基本のuriは
http://goji.polog.org/api/get.[format]?sentence=[sentence]
な感じで、format別に分けてざっくり機能を書くと
jsonp
jsonp形式で返す。sentence:入力文字列、callback:コールバック関数の名前(default: callback)、rate:誤字を混ぜる割合(default: 0.2)
json
json形式で返す。sentence:入力文字列、rate:誤字を混ぜる割合(default: 0.2)
plain
テキストで返す。sentence:入力文字列、rate:誤字を混ぜる割合(default: 0.2)
と言う感じです。
広報もかねて一個user.jsを書いてみました。
twitterBlendGoji
twitter.com/homeから投稿されるステータスを誤字だらけにするuser scriptです。youpyさんの死語scriptからほとんどコピペです。ごめんなさい。
このscriptによって生じたどんなディスコミュニケーションにもnegipoは責任を持ちません。平気で午前十時が午前一時になったりしますのでご了承下さい。
コメント (4)
ひらがな対応は?
投稿者: NZM | 2008年01月07日 10:07
してない。ぐちゃぐちゃになりそうだから。
投稿者: negipo | 2008年01月07日 10:11
そう?閾値の問題だと思うけど。
そういやピクセルマッチングの閾値設定したら誤字する度合いも返られる?
データベースはbooleanなの?
あとkyojinにしろこれにしろ、生成文を一度(分割でもして)googleにかませたらよいものが生成できる気がした。
例えば、「ABCDEFG」という文を生成したときに、
「ABCD」
「BCDE」
「CDEF」
...
というように適当に分割して、すべての部分がgoogleである程度のヒットを得られたとき、その文をアクセプトするというように。
分裂症気味の文章を作りたいなら別だけど。
投稿者: NZM | 2008年01月07日 16:15
後だしで悪いけどもう一こ理由があって、誤字ってひらがな・カタカナではやらないよね。だからその辺は今後も実装しないっす。
あとそうそう、閾値設定は検討した。だけど実際のところ、本当に間違える可能性がありそうな値を閾値に設定すると、持ってた漢字のデータセットの一部が誤字が見つからないようになっちゃう。
その辺は精度の問題と言うより、アプリの楽しさとか、想定されるユーザの期待(漢字入力して誤字にならなかったらなんじゃこりゃって思うよね)を優先した感じです。その辺をクリアするやりようもあるかなとは思ったけど、ごちゃごちゃしそうなのでやめた。
apiには後々機能として追加するかも。
googleを使うのは確かに面白いね。それやると本当に誤字DBが作れそう。
乱文失礼
投稿者: negipo | 2008年01月07日 19:28