Minimum Seq2Seq implementation using Tensorflow 1.4/1.5 API

This is minimum Seq2Seq implementation using Tensorflow 1.4/1.5 API with some comments, which supports Attention and Beam Search and is based on tensorflow/nmt/README.md. I'd recommend you run this in https://colab.research.google.com/.Thi…

Seq2Seq まとめ

ML

以前作った Seq2Seq を利用した chatbot はゆるやかに改良中なのだが、進捗はあまり良くない。学習の待ち時間は長く暇だし、コード自体も拡張性が低い。そういうわけで最新の Tensorflow のバージョンで書き直そうと思って作業を始めた。しかし深掘りしてい…

ZOZO SUIT 後の世界に起こること - 副作用編

思いついたら追記していく or コメント下さい。 Amazon が似たようなことをやる。 中高生が結果を見せあって盛り上げる。「おまえ足短っ!」とか。 筋トレクラスタが盛り上がる。 ダイエットクラスタが盛り上がる。 夫婦間でも結果を見せ合うのに躊躇する。 …

Deep Reinforcement Learning for Dialogue Generation を読む(まだ途中)

ML

Abstract seq2seq は良いのだけど未来の会話の方向性を無視した近視眼的な output を出しがち。future reward をモデル化することで良いゴールを達成するよ。 モデルは2人の virtual agent をシミュレートする。vitual agents は policy gradient mothods を…

Chatbot と beam search

seq2seq で decoder から出力するときに beam search の方が出現確率が高いモノを選べるので結果が良くなるはず。beam search の詳細は karino2氏の解説。beam search 自体はシンプルで理解しやすいアルゴリズムなのだけど、Tensorflow のグラフでこれを書く…

Style Transfer

ML

Style Transfer を Stanford の機械学習クラスの CS 20SI の課題で実装してみた。Style Transfer とは絵画の写真から作風を特徴として、別の画像にその作風を適用するもの。Style Loss と Content Loss の和を最小化する方向で画像を生成するのが面白い。し…

Chatbot tweet listener と reply worker を分離した

prediction の際に時々落ちる。そのたびに落ちないように修正しているが、まだまだ未知のものがありそう。落ちてしまうと reply できないままに情報が失われてしまう。これを改善するためにプロセスを分けて listener: user stream を listen して tweet を …

Chatbot ときどき自発的に tweet するように

今日の Chatbot 変更。時々自発的に tweet するように。あとエラーハンドリングをまじめに。

「1手詰ハンドブック」完了

詰将棋を始めて続けることが今年の目標の一つ。1日3問ずつ解いてようやく1手詰ハンドブック終わった。当初の目的である脳内ワーキングメモリの増量効果はまだ感じていない。 次は 3手詰ハンドブック〈2〉 やる。

seq2seq の chatbot を日本語で動かしてみた

最近ずっと NN/CNN/RNN/LSTM などで遊んでいたのだけど Seq2Seq の encoder/decoder と word embeddings を理解したかったので Seq2Seq の chatbot を動かしてみた。Keras でフルスクラッチで書いていたのだけど上手く動かず。論文読んでもわからないところ…

Fluent Python を読んだ

Jupyter 上でよく Keras + Python を書くようになってきたので読んだ。omo さんが読んでいたから真似したともいう。Python に関する知識は「インデントの言語」、「numpy すごい」程度。見よう見まねでコードを書いていた状態だった。読んで一番良かったのは…

Seq2Seq の疑問を解決するために論文を読む

ML

疑問1 encoder の input について Seq2Seq encoder に sentence を input するときに Word Embeddings をするのだけど、input が [word_vec1, word_vec2, ..., word_vecn] のように word vector の sequence になるような気がするが自信なし。 Decoder/Encod…

Sequence to Sequence Learning with Neural Networks を読む

ML

論文を流し読み、途中でメモを諦めた。word embeddings をどのタイミングでやっているかわからなかった。基礎知識だから省略されたのかな。 Introduction Input sequence を 1 timestamp ずつ読んで large fixed vector を得る(Input の長さは可変長だが fi…

作業ログ LSTM 途中

ML

Machine-Learning/1. Predict Nikkei Up or Down.ipynb at master · higepon/Machine-Learning · GitHub Machine-Learning/2. Binary Predict Nikkei Up or Down.ipynb at master · higepon/Machine-Learning · GitHub Machine-Learning/3. Nikkei curve fit…

Keras LSTM で足し算

ML

http://peterroelants.github.io/posts/rnn_implementation_part02/ を Keras で。一部元コードをそのまま使ってる。 # Porting http://peterroelants.github.io/posts/rnn_implementation_part02/ using Keras import sys import os import numpy as np fro…

むだ死にしない技術を読んだ

ピロリ菌は知っていたけど。こういった、ある程度科学的根拠が追いやすい知識集をWebで作ったらいいと思った。むだ死にしない技術posted with amazlet at 17.02.20マガジンハウス (2016-12-20)売り上げランキング: 1,831Amazon.co.jpで詳細を見る

Deep Work を読んだ - 大事なことに集中する―――気が散るものだらけの世界で生産性を最大化する科学的方法

omo さんがおすすめしていた Deep Work を熟読した。Deep Work とは「長期間中断しない難しい知的作業」のこと。その Deep Work がいかに大事か。そしてもっと時間を費やすべきかという内容。Deep Work と対極にあるのが Shallow Work。Twitter/Facebook/Ins…

How to run ptb_word_lm.py

古いバージョンの 0.12.1 の頃は models が同梱されていたのでこれを使う。現在は tensorflow/tensorflow と tensorflow/models に分かれてしまったのでバージョンミスマッチなどで全然動かない。 sudo -H pip install tensorflow-0.12.1-cp35-cp35m-macosx_…

Tensorflow CNN の読み解きメモ

ML

https://www.tensorflow.org/tutorials/mnist/pros/ のメモ。 さらっ読み流すと意外とつまづくので。 convolution で input と output が同じサイズなのはなぜ? padding=SAME が指定されているから 0 で padding されてる。zero padding を padding しない…

ゼロから作る Deep Learning 読んだ

https://www.coursera.org/learn/machine-learning を2周しているので NN の前提知識が合ったのでこの本はそれを補う形でとても良かった。とくに Gradient Descent の説明は分かりやすかった。 Coursera のコースでは CNN がなかったので CNN の説明が日本語…

Google Japan に転職

しました。 https://twitter.com/HigeponJa/status/818691485797203968

雑誌 WEB+DB PRESS でコラム「継続は力なり」の連載がスタートしました

WEB+DB PRESS Vol.93posted with amazlet at 16.06.24原田 騎郎 吉羽 龍太郎 松浦 隼人 須藤 涼介 生沼 一公 森下 雅章 前島 真一 鍛治 匠一 伊藤 直也 のざき ひろふみ うらがみ 高山 温 佐々木 健一 わかめ まさひろ ひげぽん 遠藤 雅伸 海野 弘成 はまち…

Tensorflow の dropout

dropout で精度が上がるの不思議。 それはそうと Tensorflow の dropout 。training 時と違って eval 時は当然ながら keep_prob を 1 にしないと行けない気がする。けどほとんど例が見つからない。 feed_dict={ x:batch[0], y_: batch[1], keep_prob: 1.0}

BerkeleyX: CS190.1x Scalable Machine Learning を修了した

CS190.1x Courseware | edX。 Andrew Ng のコースで学んだ機械学習 Linear / Logistic regression 等々を大量データの時にどう分散させるという話。Apache Spark を Python から利用して進めていきます。Apache Spark は良くできている。特に ML ライブラリ…

Coursera の Best Practices for iOS User Interface Design を修了した

Machine Learning のコースが大変良かったので iOS のクラスをとってみた。 Good Interface builder の使い方で一部知らないものがあった。こういうのは動画で見ると一発だね Bad 講師が iOS 開発者として素人に近いと思う。少なくともプロではない。色々お…

スマートウォッチの加速度計データとニューラルネットワークを利用してヨガのポーズを区別できるか?

Rebuild: Aftershow 126: Everything Except Mayonnaise (higepon)で紹介したプロジェクト。Machine Learning | Coursera で機械学習のクラスを修了した。理解を確認するために小さなプロジェクトを作っていたので紹介。実用性はいまのところない。 まとめ P…

Coursera の機械学習コースを修了

Machine Learning | Courseraを修了した。以前から良い評判を聞いていたのだが、正直ここまでよいとは思わなかった。コースは英語だけど、日本語字幕もある。 Andrew Ng 氏は大変バランス感覚に優れた研究者ですね。このコースによる氏の人類への貢献は大き…

ポッドキャスト #rebuildfm に出演しました

http://rebuild.fm/126/

Swift 読みもの

Mocks in Swift via Protocols http://blog.eliperkins.me/mocks-in-swift-via-protocols Swift Weekly より。UIApplication がからんだテストをどうするか? Blog http://www.captechconsulting.com/blogs/ios-9-tutorial-series-protocol-oriented-program…

Swift 2.0 の initializer 自分用まとめ

https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Initialization.html を適当におぼえるためにまとめただけ。 基礎 すべての property はインスタンス化に初期化されていないといけない 例 // 初期値は…