Help us understand the problem. What is going on with this article?

【参加レポ】TFUG #3

More than 1 year has passed since last update.

TFUG #3

TFUG #3に参加しました。
2017/02/22 @Google(六本木)
https://tfug-tokyo.connpass.com/

メモメモです。

Retty

講演者:RettyのCTO
Retty流『2200万ユーザを支える機械学習基盤』の作り方
http://qiita.com/taru0216/items/dda1f9f11397f811e98a

今日は機械学習基盤のDocker部分を話す。

Rettyの紹介

Rettyトップページ
https://retty.me/

Recommend + Happy = Retty (創業6年ちょい)
「食を通じて世界中の人々をHappyに」
「人から探せるグルメサービス」
月間利用者数2200万人。

Rettyトップユーザーズ:ユーザからグルメな人を発掘してレコメンドに利用。
https://retty.me/top-users/

RettyはCGM(consumer generated media)。
利用者が作っていくメディア。

Rettyで扱うデータ

  1. 自然言語:口コミ300万件
  2. 人:行動、ソーシャルグラフ
  3. 画像:料理1000万枚
  4. お店:全国80万店舗(常にアップデートが必要)

DeepLearninig, Word2Vec, LDA, LSI・・・

機械学習基盤@Docker

インフラ:GPU付き自作サーバを全自動ネットブート(Kubernetes + Docker + Tensorflow)
使い方:SSHでログイン
コーディング:PythonユーザはJupyter Notebook
機械学習エンジニアは自分の要件にあったGPUサーバを選んで使う。

DockerはKubernetesで構築管理、OS(Ubuntu)部分はjuju + MaaS。

配備しているCuda Docker、Anaconda Docker、SSH Docker・・・は全て別々に配備されるDockerイメージだが、Fromは同じ(コアDockerイメージを用意し、継承ビルドしている)。
シェルプロンプトにビルドバージョンが出るようにし、Dockerイメージバージョンを明示している。

新しいDockerイメージはKubernetesで全マシンに配布している。
Kubernetes構築はjuju + MaaSで実現している。

ノートPCにも同じ環境を用意した(Ubuntu Desktop)。

DeepLearningの自然言語処理応用(文字単位CNN)

課題

日本語では単語の切れ目がわからない。
すもももももももものうち ← どこで切れている?
MeCabはあるが、辞書が必要→未知の単語は対応できない。
Rettyは口語表現(口コミ)→ギャル語とか。

解決策:character-level CNN

文字列のベクトル化(Word2Vec)。しかしWord2Vecは分かち書きが必要。やっぱりMeCab?
文字単位CNN:文字毎にCNNを適用し、単語はNNで見つけさせる。
https://papers.nips.cc/paper/5782-character-level-convolutional-networks-for-text-classification.pdf
http://qiita.com/bokeneko/items/c0f0ce60a998304400c8

カラフルボード株式会社

http://www.colorful-board.com/

SENSY

http://sensy.jp/
パーソナルAI。感性を学習する人工知能。
弱いAI(特化型AI)。

適用分野

toC: ファッション、chatbot、グルメ。
toB: toCサービスを応用して企業提供。API。コンサルティング。

機械学習・深層学習事例

ファッション:ユーザのコーディネート
  各画像の推定スコア(CNN、chainerを利用)
  →商品企画の方向性、需要予測、MD計画の最適化
  →今後はtensorflowによる分散学習が必要(速度がでない)
グルメ:お酒の推薦
chatbot:サポート業務のAI化
広告CVR予測:オートエンコーダーで予測回帰モデル
  入力層1000次元 → 中間層200次元 → 出力層1000次元に戻す。
  シグモイド関数。

Tensorflowのデバッグ

https://www.tensorflow.org/versions/master/how_tos/debugger/

GMOインターネット

https://www.gmo.jp/

NNで広告配信ユーザの最適化

Akane:ユーザごとにより適切な広告を配信する。
多層パーセプトロンのNN。
ユーザのWeb行動履歴(とてもスパース)、データ加工(圧縮、Embedding)→機械学習。

Kerasを利用(書くのが簡単)。
https://keras.io/

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away