初めてのgoogle code jam

2016-04-10

Googleが主催する競技プログラミングのgoogle code jam

バツイチちゃんは去年から参加してたのですが、インケンは今年はじめて参加してみました。

初回のQualification Roundは4問出題されます。

これを24時間以内に回答して30 point以上が次のステージに進めるんですね。

その4問をざっくり解説したいと思います。

 

 


MeCab 日本酒用語辞書

2016-03-17

mecabの日本酒用語辞書をgithubに公開しました

こんな感じで形態素解析できます。


$ echo '獺祭と而今と十四代の純米大吟醸を四合瓶で買った' | mecab

獺祭 名詞,固有名詞,一般,*,*,*,だっさい,ダッサイ,ダッサイ
と 助詞,並立助詞,*,*,*,*,と,ト,ト
而今 名詞,一般,*,*,*,*,*
と 助詞,並立助詞,*,*,*,*,と,ト,ト
十四代 名詞,固有名詞,一般,*,*,*,じゅうよんだい,ジュウヨンダイ,ジュウヨンダイ
の 助詞,連体化,*,*,*,*,の,ノ,ノ
純米大吟醸 名詞,固有名詞,一般,*,*,*,じゅんまいだいぎんじょう,ジュンマイダイギンジョウ,ジュンマイダイギンジョウ
を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
四合瓶 名詞,固有名詞,一般,*,*,*,しごうびん,シゴウビン,シゴウビン
で 助詞,格助詞,一般,*,*,*,で,デ,デ
買っ 動詞,自立,*,*,五段・ワ行促音便,連用タ接続,買う,カッ,カッ
た 助動詞,*,*,*,特殊・タ,基本形,た,タ,タ
EOS


echo 'カプエチ感があるフルーティーな山田錦や美山錦より濃醇な雄町が好き' | mecab

カプエチ 名詞,固有名詞,一般,*,*,*,かぷえち,カプエチ,カプエチ
感 名詞,接尾,一般,*,*,*,感,カン,カン
が 助詞,格助詞,一般,*,*,*,が,ガ,ガ
ある 動詞,自立,*,*,五段・ラ行,基本形,ある,アル,アル
フルーティー 名詞,形容動詞語幹,*,*,*,*,フルーティー,フルーティー,フルーティー
な 助動詞,*,*,*,特殊・ダ,体言接続,だ,ナ,ナ
山田錦 名詞,固有名詞,一般,*,*,*,やまだにしき,ヤマダニシキ,ヤマダニシキ
や 助詞,並立助詞,*,*,*,*,や,ヤ,ヤ
美山錦 名詞,固有名詞,一般,*,*,*,みやまにしき,ミヤマニシキ,ミヤマニシキ
より 助詞,格助詞,一般,*,*,*,より,ヨリ,ヨリ
濃醇 名詞,固有名詞,一般,*,*,*,のうじゅん,ノウジュン,ノウジュン
な 助動詞,*,*,*,特殊・ダ,体言接続,だ,ナ,ナ
雄町 名詞,固有名詞,一般,*,*,*,おまち,オマチ,オマチ
が 助詞,格助詞,一般,*,*,*,が,ガ,ガ
好き 名詞,形容動詞語幹,*,*,*,*,好き,スキ,スキ
EOS

 


「自分の好みの日本酒を機械学習で見つけよう」第2回目はレビューをmecabで分かち書きします。

レビューコメントは前回と同じようにこちらのサイトから、前回作ったsake.csvを基に銘柄ごとにスクレイピングして、review.tsvを作ります。

中身はこんな感じ

code meigara review datetime
4 鰊御殿 山田錦 4合瓶900円で安売りだったので買ってみました。あまり期待してなかったのですが、わりと普通に旨かったです。香はほどよく、アルコール感もなく飲みやすいです。ただこれといった特徴もないです。 2014-09-14 10:32:46

ソースはこちら

[続きをもっと見る…]


今回から何回かに分けて、機械学習で日本酒の味のタイプのクラスタリングをする動画をやっていきたいと思います。

Part1はデータを取得するスクレイピング編です。

機械学習はまず、データを集めるところから始まります。

日本酒の銘柄マスタを作るために、こちらの日本酒物語のサイトからスクレイピングをかけて銘柄を取得し、日本酒銘柄CSVを作ります。

スクレイピングにはPythonのBeautiful Soupを使います。こちらはAnacondaをインストールすると、一緒に入るのでそれを使います。

スクレイピングするソースはこちら

[続きをもっと見る…]


tmux便利ですよね。

インケンはちょっと前まで「tmux? iterm2で全然事足りてるし」って思ってましたが、tmux実際に入れてみたら意外と便利だったので、動画にしてみました。

動画の中で紹介してる機能の詳細は以下になります。

マウスで選択するだけでクリップボードにコピーされ、command+vでペースト

.tmux.confの設定

[続きをもっと見る…]