Negative/Positive Thinking

2016-04-01

👍📕😓🎉😆⚽✌

昨今、世界の砂漠化と並び、世界の絵文字(Emoji)化が進んでおり、社会問題として取り上げられています。

自然言語もEmoji化が進んでおり、今後数年以内に「日本語はEmojiにすべて置き換わる」とも言われております。
そこで、本ブログもこの流れを汲み、自然言語処理・日本語処理からEmoji処理・Emojineeringを中心とした技術へとシフトしていきたいと思います。
用いる言語を日本語からEmojiへt👍📕😓🎉😆⚽✌😙


参考

2015-01-05

今年の抱負

去年の反省

  • 数理計画法と係り受け解析/構文解析とSVMについて勉強する
    • あんまりできてない。。少なくともブログにまとめられていないので×
  • 調べたことややったりしたことはメモを残す
    • 調べた半分もまとめられていない
    • 記事的には18記事
  • 応用・動くものを作る
    • プログラミングタグがついてるのは10記事しかない

今年の抱負

定性なのよくないと思ったので、「本の演習を(何でもいいからとにかく)全部やる」を目標にしてがんばります。
対象の本は、

  • PRML(全Exercise)
  • 蟻本(全演習問題)

の2冊。たぶん後悔する。

その他の個人的な目標
  • 係り受け解析器を作る
    • 勉強のため
  • 体重10kg減
    • 料理できるようになって、運動もする
  • TopcoderのAlgorithmRate2000
    • 最近全然できていないので、やる気出すために、高め目標値
    • div1med解く

今年もどうぞよろしくおねがいします:)

2014-04-01

日猫/猫日翻訳を試す

はじめに

先日北海道で行われたNLP2014(Neko Language Processing 2014)で最優秀賞だった「ビットペア法を用いた日本語-猫語翻訳アルゴリズム」を試してみました。

ネコ氏の鳴き声を分析したところ特徴的なパターンが見られ、日本語とネコ語間の変換ルールを明らかにした事で話題になりました。
アルゴリズムは簡単だったので、これを用いて日ニャー/ニャー日翻訳機を作ってみました。

アルゴリズム

論文によると、日本語をビット列にして隣り合うビットのペアを4パターン(ニャ、ニャッ、ニャン、ニャー)の鳴き方にする事で、意思疎通できたそうです。

コード

日本語からネコ語へ変換
#!/usr/bin/perl
use strict;
use warnings;
use Encode;
use utf8;

binmode STDIN, ":utf8";
binmode STDOUT, ":utf8";

sub nichinya {
    my ($text) = @_;

    my $arr = unpack("B*", encode('UTF-8', $text));
    my @bin = split(//, $arr);
    for(my $i=0; $i<@bin; $i+=2){
        if   ($bin[$i] eq '1' && $bin[$i+1] eq '1'){ print "ニャッ"; }
        elsif($bin[$i] eq '1' && $bin[$i+1] eq '0'){ print "ニャン"; }
        elsif($bin[$i] eq '0' && $bin[$i+1] eq '1'){ print "ニャー"; }
        else { print "ニャ"; }
    }
    print "\n";
}

while(<>){
    chomp;
    print "翻訳結果\n";
    nichinya($_);
}

ネコ語から日本語へ変換
#!/usr/bin/perl
use strict;
use warnings;
use Encode;
use utf8;

binmode STDIN, ":utf8";
binmode STDOUT, ":utf8";

sub nyanichi {
    my ($text) = @_;
    
    $text =~ s/ニャッ/11/g;
    $text =~ s/ニャン/10/g;
    $text =~ s/ニャー/01/g;
    $text =~ s/ニャ/00/g;

    my $arr = pack("B*", $text);
    print decode('UTF-8', $arr), "\n";
}

while(<>){
    chomp;
    print "翻訳結果:\n";
    nyanichi($_);
}

結果

# 日本語->猫語
$ perl nichinya.pl
通じてるかにゃ?
翻訳結果:
ニャッニャンニャンニャーニャンニャニャニャニャンニャーニャンニャンニャッニャンニャニャッニャンニャニャニャーニャンニャーニャンニャニャッニャンニャニャッニャンニャニャニャーニャンニャンニャーニャンニャッニャンニャニャッニャンニャニャニャンニャンニャニャンニャッニャッニャンニャニャッニャンニャニャニャーニャンニャニャンニャッニャッニャンニャニャッニャンニャニャニャーニャンニャンニャンニャッニャッニャンニャニャッニャンニャニャニャンニャンニャニャニャッニャッニャンニャッニャッニャンニャッニャッニャニャンニャーニャッニャッ

踏んでください
翻訳結果:
ニャッニャンニャンニャニャンニャッニャンニャニャンニャニャッニャッニャッニャンニャニャッニャンニャニャニャンニャンニャーニャニャッニャッニャンニャニャッニャンニャニャニャーニャンニャンニャーニャッニャッニャンニャニャッニャンニャニャニャーニャンニャニャッニャッニャッニャンニャニャッニャンニャニャニャーニャンニャンニャニャニャッニャンニャニャッニャンニャニャニャーニャンニャーニャーニャーニャッニャンニャニャッニャンニャニャニャーニャンニャニャーニャ

# 猫語->日本語
$ perl nyanichi.pl
ニャッニャンニャンニャーニャンニャニャニャニャンニャーニャンニャンニャッニャンニャニャッニャンニャニャニャーニャンニャーニャンニャニャッニャンニャニャッニャンニャニャニャーニャンニャンニャーニャンニャッニャンニャニャッニャンニャニャニャンニャンニャニャンニャッニャッニャンニャニャッニャンニャニャニャーニャンニャニャンニャッニャッニャンニャニャッニャンニャニャニャーニャンニャンニャンニャッニャッニャンニャニャッニャンニャニャニャンニャンニャニャニャッニャッニャンニャッニャッニャンニャッニャッニャニャンニャーニャッニャッ
翻訳結果:
通じてるかにゃ?

ニャッニャンニャンニャニャンニャンニャーニャッニャンニャンニャーニャンニャッニャンニャニャッニャンニャニャニャンニャンニャニャンニャッニャッニャンニャニャッニャンニャニャニャーニャンニャンニャンニャッニャッニャンニャニャッニャンニャニャニャンニャンニャニャニャッニャッニャンニャッニャッニャンニャッニャッニャニャンニャニャニャー
翻訳結果:
触るにゃ!


           . ィ
._ .......、._    _ /:/l!
 :~""''.>゙' "~ ,、、''‐'、|         _
゙、'、::::::ノ:::::::_,.-=.  _〜:、         /_.}'':,
 ``、/:::::::::__....,._ `゙'Y' _.ェ-、....._ /_゙''i゙ノ、ノ
 ,.--l‐''"~..-_'.x-='"゙ー 、`'-、 ,:'  ノ゙ノブ
"   .!-'",/  `'-‐'') /\ `/ でノ-〈
 .-''~ >'゙::    ‐'"゙./  ヽ.,'   ~ /
   //:::::       ',    /    ,:'゙

ニャッニャンニャニャッニャンニャニャニャンニャンニャンニャンニャニャッニャンニャニャッニャンニャニャニャッニャンニャッニャッニャニャッニャンニャニャッニャンニャニャニャッニャンニャーニャーニャッニャッニャンニャニャッニャンニャニャニャッニャンニャンニャンニャンニャッニャンニャニャッニャンニャニャニャッニャンニャンニャンニャッニャッニャンニャニャッニャンニャニャニャッニャンニャーニャーニャーニャッニャンニャニャッニャンニャニャニャッニャンニャッニャッニャニャッニャンニャニャッニャンニャニャニャッニャンニャンニャンニャッニャッニャンニャニャッニャンニャニャニャーニャンニャンニャーニャッニャッニャンニャニャッニャンニャニャニャーニャンニャーニャンニャーニャッニャンニャニャッニャンニャニャニャーニャンニャンニャンニャッニャッニャンニャニャッニャンニャニャニャンニャンニャニャニャッニャニャッニャンニャンニャニャンニャンニャー

2013-01-05

今年の抱負

去年の反省

  • やろうと思ったことはやる
    • あんまりできていなかった気がする
    • 後でやろうとすると溜まってく、、、
  • 調べたりやったりしたことはメモを残す
    • 比較的残せてたけど、半分くらい書けてない、、、
  • ベイズ周りをちゃんと勉強する
    • さわりだけだけど、何をやってるかはわかった

今年の抱負

  • 数理計画法と係り受け解析/構文解析とSVMについて勉強する
  • 調べたことややったりしたことはメモを残す
  • 応用・動くものを作る

今年もどうぞよろしくおねがいします:)

2012-04-01

「言語モデル」という本を書かせていただきました

この度、基礎から応用まで広くカバーした「言語モデル」という本を書かせていただきました。(嘘でした!)
6月にオライリーさんから出版させていただく予定です。(オライリーさんに迷惑!)


言語モデルーー言語モデルの基礎と応用
f:id:jetbead:20120401021841p:image:medium:left(オライリーさん、あの動物の画像どうやって作ってるんですか!)
Jetbead April, Phyllo Fool 著(日本人じゃないじゃん!)
2112年6月23日発売予定(100年後まで生きてる自信ありません!)
314ページ(リアルな数値!)
定価3,290円(税込み)(2000円ぐらいなら買ってもいいかな!)
ISBN978-9-8731145-243-2(一番最後はチェックサム!)

内容

Webテクノロジーが進化し続けている今、自然言語を処理する技術の必要性が高まっています。(なんかできるとうれしいですよね!)
しかし、Webで扱われる自然言語で書かれた文書は、多くの問題があり簡単には扱えません。(難しいですよね!)
これを解決するアプローチの一つとして、自然言語を適切にモデル化することで、この扱いにくい問題を解決することができます。(論理が飛躍してませんか!)
本書では、自然言語をモデル化する方法から、それを用いてさまざまな問題を解決する実例を
紹介、解説します。(誰か書いてください!買います!)

目次

  1. まえがき(まえがきは1章ではないですよね!)
  2. 言語モデルの基礎(元ネタはまどまぎのアニメタイトルですね!)
    1. 日本語にあった、ような・・・
    2. それはとっても多いなって
    3. もう何も恐くない
    4. Interpolateも、backoffも、あるんだよ
    5. 未知語なんてあるわけない
    6. こんなの絶対少ないよ
    7. 本当の出現確率と合っていますか?
    8. 最尤推定って、ほんとバカ
    9. そんなの、あたしが許さない
    10. もう何にも頼らない
    11. 最後に残った道しるべ
    12. わたしの、最高の言語モデル
  3. 言語モデルの応用と評価(元ネタはあの花のアニメタイトルですね!)
    1. 形態素アナライーズ
    2. こうぶんかいせき
    3. そせいを探そうの会
    4. 確率の、依存のグラマー
    5. チャンキング
    6. さがしてさがさないで
    7. ほんとの分類
    8. my corpus
    9. せいどとさいげんりつ
    10. 評価
    11. あの分野に合うモデル
  4. あとがき
  5. 参考文献一覧
  6. 索引