SlideShare a Scribd company logo
1 of 44
Download to read offline
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
Treasure  Data  Inc.
Research  Engineer
油井 誠 @myui
2015/05/12
Hivemall  meetup #1 1
Hivemall(v0.3)の機能紹介
http://myui.github.io/
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
Ø2015/04  トレジャーデータ入社
Ø第1号のリサーチエンジニア
ØML  as  a  Service  (MLaaS)に従事
Ø2015/03  産業技術総合研究所 情報技術研究部
門 主任研究員
Ø大規模機械学習および並列データベースの研究に従
事
Ø2009/03  NAIST  博士課程修了 博士(工学)
ØXMLネイティブデータベースおよび超並列データベース
の研究に従事
ØH14未踏ユース第1期スーパクリエイタ
2
自己紹介
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
3
0
2000
4000
6000
8000
10000
12000
Aug-­‐12
Sep-­‐12
Oct-­‐12
Nov-­‐12
Dec-­‐12
Jan-­‐13
Feb-­‐13
M
ar-­‐13
Apr-­‐13M
ay-­‐13
Jun-­‐13
Jul-­‐13
Aug-­‐13
Sep-­‐13
Oct-­‐13
Nov-­‐13
Dec-­‐13
Jan-­‐14
Feb-­‐14
M
ar-­‐14
Apr-­‐14M
ay-­‐14
Jun-­‐14
Jul-­‐14
Aug-­‐14
Sep-­‐14
Oct-­‐14
(単位)10億レコード
サービス開始
Series  A  Funding
100社導入
Gartner社「Cool  Vendor  in  
Big  Data」に選定される
10兆件
5兆レコード
数字でみる トレジャーデータ (2014年10月):
40万レコード 毎秒インポートされるデータの数
10兆レコード以上 インポートされたデータの数
120億 アドテク業界のお客様1社によって毎日送られてくるデータ
数字で見るトレジャーデータ
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
数字で見る現在のトレジャーデータ
100+
日本の顧客社数
15兆
保存されている
データ件数
4,000
一社が所有する最大
サーバー数
500,000
1秒間に保存される
データ件数
4
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
発表の構成
• Hivemallの概要
• How  to  use  Hivemall
• リアルタイム予測
w/  Hivemall  and  RDBMS
• Hivemall  v0.3の新機能紹介
• Matrix  Factorization  
• AdaGrad/AdaDelta
• Mix  Server  (Parameter  Mixing)
• HivemallへのFeature  Requests
5
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
Hivemallとは
Apache  Hadoopのエコシステム上に構築したオープン
ソース(Apache  license  v2)の機械学習ライブラリ
Hadoop  HDFS
MapReduce
(MRv1)
Hive/PIG
クエリ処理系
Hivemall
Apache  YARN
Apache  Tez
DAG処理系
MR v2
分散ファイルシステム
リソース管理システム
並列処理フレームワーク
問合せ処理系
機械学習ライブラリ
github.com/myui/hivemall
6
MapReduceもTezもYARN上の
1アプリケーション
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
R
M MM
M
HDFS
HDFS
M M M
R
M M M
R
HDFS
M MM
M M
HDFS
R
MapReduce  and  DAG  engine
MapReduce   DAG  engine
Tez/Spark
ディスクにチェックポイントを
とってもとらなくても再計算可能
7
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
SQLベースの宣言的かつ容易な記述
Hivemallの特徴
何十行もの
プログラム
Mahoutによるプログラミング
CREATE  TABLE  lr_model AS
SELECT
feature,  -­‐-­‐ reducers  perform  model  averaging  in  
parallel
avg(weight)  as  weight
FROM  (
SELECT  logress(features,label,..)  as  (feature,weight)
FROM  train
)  t  -­‐-­‐ map-­‐only  task
GROUP  BY  feature;  -­‐-­‐ shuffled  to  reducers
ü 一般的なエンジニアでも機械学習を扱える
ü API抽象度がHiveQLと高いのでAPIがかなりstable
(Sparkはまだ結構unstable)
このような問合せを書くと学習処理が
Hadoop上で並列実行される
8
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
Hivemall  v0.3で提供している機能
9
• クラス分類(二値分類/多値
分類)
ü Perceptron
ü Passive  Aggressive  (PA)
ü Confidence  Weighted  (CW)
ü Adaptive  Regularization  of  Weight  
Vectors  (AROW)
ü Soft  Confidence  Weighted  (SCW)
ü AdaGrad+RDA
• 回帰分析
ü 確率的勾配降下法に基づくロジス
ティック回帰
ü PA  Regression
ü AROW  Regression
ü AdaGrad
ü AdaDELTA
• K近傍法 &  レコメンデーション
ü Minhashとb-­‐Bit  Minhash (LSH  variant)
ü 類似度に基づくK近傍探索
ü Matrix  Factorization
• Feature  engineering
ü Feature  hashing
ü Feature  scaling  (normalization,  z-­‐score)  
ü TF-­‐IDF  vectorizer
トレジャーデータでもv0.3を5月中に
サポート予定
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
• Contribution  from  Daniel  Dai  (Pig  PMC)  from  
Hortonworks
• To  be  supported  from  Pig  0.15
10
Hivemall  on  Apache  Pig
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
• On-­‐going  work  by  Takeshi  Yamamuro
https://github.com/maropu/hivemall-­‐spark
• Spark  is  not  a  Foe  (敵) but  a  Friend  (友達) of  Hivemall  
J
• Supports  Hyper  parameter  optimization  and  model  
selection  on  Spark though  Spark  ML  Pipeline
More  to  be  introduced  by  @maropu
11
Hivemall  on  Apache  Spark
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
発表の構成
• Hivemallの概要
• How  to  use  Hivemall
• リアルタイム予測
w/  Hivemall  and  RDBMS
• Hivemall  v0.3の新機能紹介
• Matrix  Factorization  
• AdaGrad/AdaDelta
• Mix  Server  (Parameter  Mixing)
• HivemallへのFeature  Requests
12
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
How  to  use  Hivemall
Machine
Learning
Training
Prediction
Prediction
Model
Label
Feature  Vector
Feature  Vector
Label
Data  preparation
13
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
Create external table e2006tfidf_train (
rowid int,
label float,
features ARRAY<STRING>
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '¥t'
COLLECTION ITEMS TERMINATED BY ",“
STORED AS TEXTFILE LOCATION '/dataset/E2006-
tfidf/train';
How  to  use  Hivemall  – データの準備
訓練とテストデータ用のテーブルを定義
HDFSに置いた(HiveのSERDEでパース可能な)任意フォー
マットのデータを利用可能
14
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
How  to  use  Hivemall
Machine
Learning
Training
Prediction
Prediction
Model
Label
Feature  Vector
Feature  Vector
Label
Feature  Engineering
15
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
create view e2006tfidf_train_scaled
as
select
rowid,
rescale(target,${min_label},${max_label})
as label,
features
from
e2006tfidf_train;
Min-Max正規化による特徴量の正規化
How  to  use  Hivemall  -­‐ Feature  Engineering
Target値を0~1の範囲に変換
16
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
How  to  use  Hivemall
Machine
Learning
Training
Prediction
Prediction
Model
Label
Feature  Vector
Feature  Vector
Label
Training
17
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
How  to  use  Hivemall  -­‐ Training
CREATE TABLE lr_model AS
SELECT
feature,
avg(weight) as weight
FROM (
SELECT logress(features,label,..)
as (feature,weight)
FROM train
) t
GROUP BY feature
ロジスティック回帰による学習
予測モデルを学習するmap-­‐onlyのtask
Featureの値によってmap出力結果をreducerにShuffle
特徴ごとに学習した重みの平均
を取る処理をreducer側で並列に処理
18
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
How  to  use  Hivemall  -­‐ Training
CREATE TABLE news20b_cw_model1 AS
SELECT
feature,
voted_avg(weight) as weight
FROM
(SELECT
train_cw(features,label)
as (feature,weight)
FROM
news20b_train
) t
GROUP BY feature
Confidence  Weightedによる学習
投票に基づきPositive or  Negativeな
重みの平均
+0.7,  +0.3,  +0.2,  -­‐0.1,  +0.7
CWクラス分類器による学習
19
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
20
hive> desc news20b_cw_model1;
feature int
weight double
hive> select * from a9a_model1 limit 10;
0 -0.5761121511459351
1 -1.5259535312652588
10 0.21053194999694824
100 -0.017715860158205032
101 0.007558753248304129
102 -0.277366042137146
103 -0.4896543622016907
104 -0.0955817922949791
105 0.12560302019119263
106 0.09214721620082855
How  to  use  Hivemall  -­‐ Training
予測モデルテーブルの構成
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
create table news20mc_ensemble_model1 as
select
label,
cast(feature as int) as feature,
cast(voted_avg(weight) as float) as weight
from
(select
train_multiclass_cw(addBias(features),label)
as (label,feature,weight)
from
news20mc_train_x3
union all
select
train_multiclass_arow(addBias(features),label)
as (label,feature,weight)
from
news20mc_train_x3
union all
select
train_multiclass_scw(addBias(features),label)
as (label,feature,weight)
from
news20mc_train_x3
) t
group by label, feature;
アンサンブル学習 for  stable  prediction  performance
個別に学習した予測モデルを
Union  allでまとめる
21
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
How  to  use  Hivemall
Machine
Learning
Training
Prediction
Prediction
Model
Label
Feature  Vector
Feature  Vector
Label
Prediction
22
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
How  to  use  Hivemall  -­‐ Prediction
CREATE TABLE lr_predict
as
SELECT
t.rowid,
sigmoid(sum(m.weight)) as prob
FROM
testing_exploded t LEFT OUTER JOIN
lr_model m ON (t.feature = m.feature)
GROUP BY
t.rowid
予測はテスト事例と予測モデルの
LEFT  OUTER  JOINによって行う
予測モデル全体をメモリに載せる必要がない
23
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
発表の構成
• Hivemallの概要
• How  to  use  Hivemall
• リアルタイム予測
w/  Hivemall  and  RDBMS
• Hivemall  v0.3の新機能紹介
• Matrix  Factorization  
• AdaGrad/AdaDelta
• Mix  Server  (Parameter  Mixing)
• HivemallへのFeature  Requests
24
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
データ分析の分類とツール
25
MLCTでの@tokorotenさんのスライドより抜粋
「プロダクション環境でオンラインで機械学習を動かすにあたってツライ話」
http://www.slideshare.net/TokorotenNakayama/mlct/12
需要がない??
実は最も重要
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
How  to  use  Hivemall
Machine
Learning
Batch Training on Hadoop
Online Prediction on RDBMS
Prediction
Model
Label
Feature  Vector
Feature  Vector
Label
Export  
prediction  model
26
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
リアルタイム予測
27
hive> desc news20b_cw_model1;
feature int
weight double
#1  予測モデルのexport
Any  RDBMS
TD  export
TDではモデル構築(SQL実行)結果
のexportを定期自動実行できる
103 -0.4896543622016907
104 -0.0955817922949791
105 0.12560302019119263
106 0.09214721620082855
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
28
hive>  desc  testing_exploded;                                                    
feature                                  string  
value                                      float
リアルタイム予測
#2  feature/valueからなるviewを作成
SIGMOID(x) =1.0  /  (1.0  +  exp(-­‐x))
Prediction
Model
Label
Feature  Vector
SELECT    
sigmoid(sum(t.value   *  m.weight))  as  prob
FROM
testing_exploded   t  LEFT  OUTER  JOIN  
prediction_model   m  ON  (t.feature  =  m.feature)
#3  実際の予測を実行
例えばあるユーザの特徴ベクトルを
selectしてexplodeする
(SubqueryやWITH句でも良い)
modelテーブルの
feature絡むに索引を
貼っておくと高速
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
余談:  Amazon  Machine  Learningのコスト
Vowpal Wabbit(単一プロセス版?)ベースらしい
29
モデル構築や評価時
$0.42/インスタンス時
バッチ予測
$0.1/1000件
リアルタイム予測
$0.1/1000件(+キャパシティ予約のチャージ)
広告分野での利用だとリアルタイム予測をかなりの頻度
で行うのでモデルを取得できないと厳しい(!?)
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
30
広告系でのHivemallの応用例
Hivemallで
予測モデル構築
Real-­‐time  prediction
on  a  RDBMS
*近々記事を書きます
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
発表の構成
• Hivemallの概要
• How  to  use  Hivemall
• リアルタイム予測
w/  Hivemall  and  RDBMS
• Hivemall  v0.3の新機能紹介
• Matrix  Factorization  
• AdaGrad/AdaDelta
• Mix  Server  (Parameter  Mixing)
• HivemallへのFeature  Requests
31
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
32
Matrix  Factorization
k個の潜在因子をもつ
行列P,Qで近似
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
33
評価値の
平均
Matrix  Factorization
正則化項
ユーザおよび商品ごとの
評価バイアスを考慮
Biased  MFのSGDおよびAdagradによる最適化
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
34
Matrix  Factorizationの学習
ローカルディスクに訓練事例を書き出すことで学習が収束するまでの
繰り返し学習に対応(全体最適化のためにパラメタ交換が必要)
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
35
Matrix  Factorizationの予測/評価
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
http://bit.ly/hivemall-­‐mf
交差検定の並列処理
各foldごとの訓練データ、テストデータのVIEWを
定義することでえ、学習モデルを並列に構築~
検定までを並列実行可能
36
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
Sparkのmatrix  factorizationとの比較
• 精度面はほぼ同等(Movielens 10Mで評価時)
• Qiitaに詳しい記事を載せている(Hivemall  Qiita/Matrix  
Factorizationで検索)
• Sparkの場合は100+行のScalaコーディングが必要
37
http://bit.ly/spark-­‐mf
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
AdaGrad
確率的勾配降下法(SGD)のモデルパラメタの更新
学習率 勾配
学習率の指定方法が難しい→自動設定できないか?→AdaGrad
過去の勾配の二乗の総和を更新対象の特徴ごとに保存
学習率
学習率の減少を保障
AdaDeltaはAdaGradの定数αの手動設定の
問題と学習率がtが進むと小さくなりすぎる問題に対処
38
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
機械学習におけるパラメタ交換
39
学習器1
学習器2
学習器N
パラメタ
交換
学習
モデル
分割された訓練例例
データ並列列
データ並列列
(モデルパラメタ)
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
create  table  kdd10a_pa1_model1  as
select  
feature,
cast(voted_avg(weight)  as  float)  as  weight
from  
(select  
train_pa1(addBias(features),label,"-­‐mix  host01,host02,host03")  
as  (feature,weight)
from  
kdd10a_train_x3
)  t  
group  by  feature;
MIX  Serverの利用
このように学習器の呼び出しで
Mix  serverをオプション指定する
40
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
・・・・・・
Model  updates
Async add
AVG/Argmin KLD  accumulator
hash(feature)  %  N
Non-­‐blocking  Channel
(single  shared  TCP  connection  w/  TCP  keepalive)
classifiers
Mix  serv.Mix  serv.
Computation/training  
is  not  being  blocked
MIX  Serverの概要
41
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
発表の構成
• Hivemallの概要
• How  to  use  Hivemall
• リアルタイム予測
w/  Hivemall  and  RDBMS
• Hivemall  v0.3の新機能紹介
• Matrix  Factorization  
• AdaGrad/AdaDelta
• Mix  Server  (Parameter  Mixing)
• HivemallへのFeature  Requests
42
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
43
Feature  requests  to  Hivemall
Copyright  ©2015  Treasure  Data.    All  Rights  Reserved.
44
Treasure  Dataでは、機械学習の実装に強いエンジニア、
Kaggle Master/Data  Scientistsも募集しております!
(夏のインターン生も近いうちに募集します)
Hiringの一覧にはまだ出ていないので、興味のある方は
myui@treasure-­‐data.com または @myui に連絡ください
http://bit.ly/gmo0512
休憩時間などにアンケートにご協力よろしくお
願い致します

More Related Content

What's hot

画像認識モデルを作るための鉄板レシピ
画像認識モデルを作るための鉄板レシピ画像認識モデルを作るための鉄板レシピ
画像認識モデルを作るための鉄板レシピTakahiro Kubo
 
الخطة التعليمية الفردية
الخطة التعليمية الفرديةالخطة التعليمية الفردية
الخطة التعليمية الفرديةDumbWavesOnline
 
文献紹介:Image-to-Image Translation: Methods and Applications
文献紹介:Image-to-Image Translation: Methods and Applications文献紹介:Image-to-Image Translation: Methods and Applications
文献紹介:Image-to-Image Translation: Methods and ApplicationsToru Tamaki
 
鷲崎 メトリクスとGQMチュートリアル-公開版-20130912
鷲崎 メトリクスとGQMチュートリアル-公開版-20130912鷲崎 メトリクスとGQMチュートリアル-公開版-20130912
鷲崎 メトリクスとGQMチュートリアル-公開版-20130912Hironori Washizaki
 
Task Spooler を試した
Task Spooler を試したTask Spooler を試した
Task Spooler を試したy-uti
 
Ansible module development 101
Ansible module development 101Ansible module development 101
Ansible module development 101yfauser
 
[DL Hacks]Variational Approaches For Auto-Encoding Generative Adversarial Ne...
[DL Hacks]Variational Approaches For Auto-Encoding  Generative Adversarial Ne...[DL Hacks]Variational Approaches For Auto-Encoding  Generative Adversarial Ne...
[DL Hacks]Variational Approaches For Auto-Encoding Generative Adversarial Ne...Deep Learning JP
 
[DLHacks]StyleGANとBigGANのStyle mixing, morphing
[DLHacks]StyleGANとBigGANのStyle mixing, morphing[DLHacks]StyleGANとBigGANのStyle mixing, morphing
[DLHacks]StyleGANとBigGANのStyle mixing, morphingDeep Learning JP
 
Generating Better Search Engine Text Advertisements with Deep Reinforcement L...
Generating Better Search Engine Text Advertisements with Deep Reinforcement L...Generating Better Search Engine Text Advertisements with Deep Reinforcement L...
Generating Better Search Engine Text Advertisements with Deep Reinforcement L...harmonylab
 
テスト観点に基づくテスト開発方法論 VSTePの概要
テスト観点に基づくテスト開発方法論VSTePの概要テスト観点に基づくテスト開発方法論VSTePの概要
テスト観点に基づくテスト開発方法論 VSTePの概要Yasuharu Nishi
 
本気で使うStack storm
本気で使うStack storm本気で使うStack storm
本気で使うStack stormtyamane
 
DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜
DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜
DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜Takeo Imai
 
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料) 40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料) hamaken
 
【SQiP2016】楽天のアジャイル開発とメトリクス事例
【SQiP2016】楽天のアジャイル開発とメトリクス事例【SQiP2016】楽天のアジャイル開発とメトリクス事例
【SQiP2016】楽天のアジャイル開発とメトリクス事例Kotaro Ogino
 
MicroProfile 5で超手軽に始める今どきのクラウド完全対応エンタープライズシステム
MicroProfile 5で超手軽に始める今どきのクラウド完全対応エンタープライズシステムMicroProfile 5で超手軽に始める今どきのクラウド完全対応エンタープライズシステム
MicroProfile 5で超手軽に始める今どきのクラウド完全対応エンタープライズシステムHirofumi Iwasaki
 
マルチモーダル深層学習の研究動向
マルチモーダル深層学習の研究動向マルチモーダル深層学習の研究動向
マルチモーダル深層学習の研究動向Koichiro Mori
 
MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話Yoshinori Matsunobu
 

What's hot (20)

画像認識モデルを作るための鉄板レシピ
画像認識モデルを作るための鉄板レシピ画像認識モデルを作るための鉄板レシピ
画像認識モデルを作るための鉄板レシピ
 
ResNetの仕組み
ResNetの仕組みResNetの仕組み
ResNetの仕組み
 
الخطة التعليمية الفردية
الخطة التعليمية الفرديةالخطة التعليمية الفردية
الخطة التعليمية الفردية
 
文献紹介:Image-to-Image Translation: Methods and Applications
文献紹介:Image-to-Image Translation: Methods and Applications文献紹介:Image-to-Image Translation: Methods and Applications
文献紹介:Image-to-Image Translation: Methods and Applications
 
鷲崎 メトリクスとGQMチュートリアル-公開版-20130912
鷲崎 メトリクスとGQMチュートリアル-公開版-20130912鷲崎 メトリクスとGQMチュートリアル-公開版-20130912
鷲崎 メトリクスとGQMチュートリアル-公開版-20130912
 
Task Spooler を試した
Task Spooler を試したTask Spooler を試した
Task Spooler を試した
 
Ansible module development 101
Ansible module development 101Ansible module development 101
Ansible module development 101
 
Hive on Tezのベストプラクティス
Hive on TezのベストプラクティスHive on Tezのベストプラクティス
Hive on Tezのベストプラクティス
 
[DL Hacks]Variational Approaches For Auto-Encoding Generative Adversarial Ne...
[DL Hacks]Variational Approaches For Auto-Encoding  Generative Adversarial Ne...[DL Hacks]Variational Approaches For Auto-Encoding  Generative Adversarial Ne...
[DL Hacks]Variational Approaches For Auto-Encoding Generative Adversarial Ne...
 
[DLHacks]StyleGANとBigGANのStyle mixing, morphing
[DLHacks]StyleGANとBigGANのStyle mixing, morphing[DLHacks]StyleGANとBigGANのStyle mixing, morphing
[DLHacks]StyleGANとBigGANのStyle mixing, morphing
 
Generating Better Search Engine Text Advertisements with Deep Reinforcement L...
Generating Better Search Engine Text Advertisements with Deep Reinforcement L...Generating Better Search Engine Text Advertisements with Deep Reinforcement L...
Generating Better Search Engine Text Advertisements with Deep Reinforcement L...
 
テスト観点に基づくテスト開発方法論 VSTePの概要
テスト観点に基づくテスト開発方法論VSTePの概要テスト観点に基づくテスト開発方法論VSTePの概要
テスト観点に基づくテスト開発方法論 VSTePの概要
 
本気で使うStack storm
本気で使うStack storm本気で使うStack storm
本気で使うStack storm
 
DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜
DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜
DNNコンパイラの歩みと最近の動向 〜TVMを中心に〜
 
【BS7】GitHubをフル活用した開発
【BS7】GitHubをフル活用した開発【BS7】GitHubをフル活用した開発
【BS7】GitHubをフル活用した開発
 
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料) 40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
 
【SQiP2016】楽天のアジャイル開発とメトリクス事例
【SQiP2016】楽天のアジャイル開発とメトリクス事例【SQiP2016】楽天のアジャイル開発とメトリクス事例
【SQiP2016】楽天のアジャイル開発とメトリクス事例
 
MicroProfile 5で超手軽に始める今どきのクラウド完全対応エンタープライズシステム
MicroProfile 5で超手軽に始める今どきのクラウド完全対応エンタープライズシステムMicroProfile 5で超手軽に始める今どきのクラウド完全対応エンタープライズシステム
MicroProfile 5で超手軽に始める今どきのクラウド完全対応エンタープライズシステム
 
マルチモーダル深層学習の研究動向
マルチモーダル深層学習の研究動向マルチモーダル深層学習の研究動向
マルチモーダル深層学習の研究動向
 
MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話
 

Viewers also liked

hivemallを使って4日間で性別推定した話
hivemallを使って4日間で性別推定した話hivemallを使って4日間で性別推定した話
hivemallを使って4日間で性別推定した話eventdotsjp
 
3rd Hivemall meetup
3rd Hivemall meetup3rd Hivemall meetup
3rd Hivemall meetupMakoto Yui
 
Hivemallmtup 20160908
Hivemallmtup 20160908Hivemallmtup 20160908
Hivemallmtup 20160908Kazuki Ohmori
 
2nd Hivemall meetup 20151020
2nd Hivemall meetup 201510202nd Hivemall meetup 20151020
2nd Hivemall meetup 20151020Makoto Yui
 
Hivemall meetup vol2 oisix
Hivemall meetup vol2 oisixHivemall meetup vol2 oisix
Hivemall meetup vol2 oisixTaisuke Fukawa
 
Hivemallで始める不動産価格推定サービス
Hivemallで始める不動産価格推定サービスHivemallで始める不動産価格推定サービス
Hivemallで始める不動産価格推定サービスKentaro Yoshida
 
Sano tokyowebmining 201625_v04
Sano tokyowebmining 201625_v04Sano tokyowebmining 201625_v04
Sano tokyowebmining 201625_v04Masakazu Sano
 

Viewers also liked (9)

hivemallを使って4日間で性別推定した話
hivemallを使って4日間で性別推定した話hivemallを使って4日間で性別推定した話
hivemallを使って4日間で性別推定した話
 
3rd Hivemall meetup
3rd Hivemall meetup3rd Hivemall meetup
3rd Hivemall meetup
 
Sano hmm 20150512
Sano hmm 20150512Sano hmm 20150512
Sano hmm 20150512
 
Hivemallmtup 20160908
Hivemallmtup 20160908Hivemallmtup 20160908
Hivemallmtup 20160908
 
20160908 hivemall meetup
20160908 hivemall meetup20160908 hivemall meetup
20160908 hivemall meetup
 
2nd Hivemall meetup 20151020
2nd Hivemall meetup 201510202nd Hivemall meetup 20151020
2nd Hivemall meetup 20151020
 
Hivemall meetup vol2 oisix
Hivemall meetup vol2 oisixHivemall meetup vol2 oisix
Hivemall meetup vol2 oisix
 
Hivemallで始める不動産価格推定サービス
Hivemallで始める不動産価格推定サービスHivemallで始める不動産価格推定サービス
Hivemallで始める不動産価格推定サービス
 
Sano tokyowebmining 201625_v04
Sano tokyowebmining 201625_v04Sano tokyowebmining 201625_v04
Sano tokyowebmining 201625_v04
 

Similar to Hivemall v0.3の機能紹介@1st Hivemall meetup

Hivemall LT @ Machine Learning Casual Talks #3
Hivemall LT @ Machine Learning Casual Talks #3Hivemall LT @ Machine Learning Casual Talks #3
Hivemall LT @ Machine Learning Casual Talks #3Makoto Yui
 
リクルートを支える横断データ基盤と機械学習の適用事例
リクルートを支える横断データ基盤と機械学習の適用事例リクルートを支える横断データ基盤と機械学習の適用事例
リクルートを支える横断データ基盤と機械学習の適用事例Tetsutaro Watanabe
 
Hivemall Talk@SIGMOD-J Oct.4, 2014.
Hivemall Talk@SIGMOD-J Oct.4, 2014.Hivemall Talk@SIGMOD-J Oct.4, 2014.
Hivemall Talk@SIGMOD-J Oct.4, 2014.Makoto Yui
 
Cloudera Impalaをサービスに組み込むときに苦労した話
Cloudera Impalaをサービスに組み込むときに苦労した話Cloudera Impalaをサービスに組み込むときに苦労した話
Cloudera Impalaをサービスに組み込むときに苦労した話Yukinori Suda
 
Developers.IO 2019 Effective Datalake
Developers.IO 2019 Effective DatalakeDevelopers.IO 2019 Effective Datalake
Developers.IO 2019 Effective DatalakeSatoru Ishikawa
 
リクルートのビッグデータ活用基盤とデータ活用に向けた取組み
リクルートのビッグデータ活用基盤とデータ活用に向けた取組みリクルートのビッグデータ活用基盤とデータ活用に向けた取組み
リクルートのビッグデータ活用基盤とデータ活用に向けた取組みRecruit Technologies
 
A3RT - the details and actual use cases of "Analytics & Artificial intelligen...
A3RT - the details and actual use cases of "Analytics & Artificial intelligen...A3RT - the details and actual use cases of "Analytics & Artificial intelligen...
A3RT - the details and actual use cases of "Analytics & Artificial intelligen...DataWorks Summit/Hadoop Summit
 
A3RT -The details and actual use cases of“Analytics & Artificial intelligence...
A3RT -The details and actual use cases of“Analytics & Artificial intelligence...A3RT -The details and actual use cases of“Analytics & Artificial intelligence...
A3RT -The details and actual use cases of“Analytics & Artificial intelligence...Recruit Technologies
 
SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)
SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)
SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)NTT DATA OSS Professional Services
 
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 TokyoPrestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 TokyoTreasure Data, Inc.
 
巨大なサービスと膨大なデータを支えるプラットフォーム

巨大なサービスと膨大なデータを支えるプラットフォーム
巨大なサービスと膨大なデータを支えるプラットフォーム

巨大なサービスと膨大なデータを支えるプラットフォーム
Tetsutaro Watanabe
 
Whatap_Pitching_Deck_r12(ja).pdf
Whatap_Pitching_Deck_r12(ja).pdfWhatap_Pitching_Deck_r12(ja).pdf
Whatap_Pitching_Deck_r12(ja).pdfChaehakLee
 
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視Takanori Suzuki
 
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについてタクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについてTakashi Suzuki
 
【Logic Apps編】ノンコーディングでデキる!お問い合わせフォーム機能拡張
【Logic Apps編】ノンコーディングでデキる!お問い合わせフォーム機能拡張【Logic Apps編】ノンコーディングでデキる!お問い合わせフォーム機能拡張
【Logic Apps編】ノンコーディングでデキる!お問い合わせフォーム機能拡張典子 松本
 
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by Taichi Umeda
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by  Taichi UmedaC22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by  Taichi Umeda
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by Taichi UmedaInsight Technology, Inc.
 
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ by トレジャーデータ株式会社 斉藤太郎
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ  by トレジャーデータ株式会社 斉藤太郎[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ  by トレジャーデータ株式会社 斉藤太郎
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ by トレジャーデータ株式会社 斉藤太郎Insight Technology, Inc.
 
何故DeNAがverticaを選んだか?
何故DeNAがverticaを選んだか?何故DeNAがverticaを選んだか?
何故DeNAがverticaを選んだか?Kenshin Yamada
 
Apache Drill で JSON 形式の オープンデータを分析してみる - db tech showcase Tokyo 2015 2015/06/11
Apache Drill で JSON 形式の オープンデータを分析してみる - db tech showcase Tokyo 2015 2015/06/11Apache Drill で JSON 形式の オープンデータを分析してみる - db tech showcase Tokyo 2015 2015/06/11
Apache Drill で JSON 形式の オープンデータを分析してみる - db tech showcase Tokyo 2015 2015/06/11MapR Technologies Japan
 

Similar to Hivemall v0.3の機能紹介@1st Hivemall meetup (20)

Hivemall LT @ Machine Learning Casual Talks #3
Hivemall LT @ Machine Learning Casual Talks #3Hivemall LT @ Machine Learning Casual Talks #3
Hivemall LT @ Machine Learning Casual Talks #3
 
リクルートを支える横断データ基盤と機械学習の適用事例
リクルートを支える横断データ基盤と機械学習の適用事例リクルートを支える横断データ基盤と機械学習の適用事例
リクルートを支える横断データ基盤と機械学習の適用事例
 
Hivemall Talk@SIGMOD-J Oct.4, 2014.
Hivemall Talk@SIGMOD-J Oct.4, 2014.Hivemall Talk@SIGMOD-J Oct.4, 2014.
Hivemall Talk@SIGMOD-J Oct.4, 2014.
 
Cloudera Impalaをサービスに組み込むときに苦労した話
Cloudera Impalaをサービスに組み込むときに苦労した話Cloudera Impalaをサービスに組み込むときに苦労した話
Cloudera Impalaをサービスに組み込むときに苦労した話
 
Developers.IO 2019 Effective Datalake
Developers.IO 2019 Effective DatalakeDevelopers.IO 2019 Effective Datalake
Developers.IO 2019 Effective Datalake
 
リクルートのビッグデータ活用基盤とデータ活用に向けた取組み
リクルートのビッグデータ活用基盤とデータ活用に向けた取組みリクルートのビッグデータ活用基盤とデータ活用に向けた取組み
リクルートのビッグデータ活用基盤とデータ活用に向けた取組み
 
A3RT - the details and actual use cases of "Analytics & Artificial intelligen...
A3RT - the details and actual use cases of "Analytics & Artificial intelligen...A3RT - the details and actual use cases of "Analytics & Artificial intelligen...
A3RT - the details and actual use cases of "Analytics & Artificial intelligen...
 
A3RT -The details and actual use cases of“Analytics & Artificial intelligence...
A3RT -The details and actual use cases of“Analytics & Artificial intelligence...A3RT -The details and actual use cases of“Analytics & Artificial intelligence...
A3RT -The details and actual use cases of“Analytics & Artificial intelligence...
 
SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)
SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)
SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)
 
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 TokyoPrestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
 
巨大なサービスと膨大なデータを支えるプラットフォーム

巨大なサービスと膨大なデータを支えるプラットフォーム
巨大なサービスと膨大なデータを支えるプラットフォーム

巨大なサービスと膨大なデータを支えるプラットフォーム

 
Whatap_Pitching_Deck_r12(ja).pdf
Whatap_Pitching_Deck_r12(ja).pdfWhatap_Pitching_Deck_r12(ja).pdf
Whatap_Pitching_Deck_r12(ja).pdf
 
ヤフーの次世代パイプラインについて#yjdsw3
ヤフーの次世代パイプラインについて#yjdsw3ヤフーの次世代パイプラインについて#yjdsw3
ヤフーの次世代パイプラインについて#yjdsw3
 
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視
 
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについてタクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
 
【Logic Apps編】ノンコーディングでデキる!お問い合わせフォーム機能拡張
【Logic Apps編】ノンコーディングでデキる!お問い合わせフォーム機能拡張【Logic Apps編】ノンコーディングでデキる!お問い合わせフォーム機能拡張
【Logic Apps編】ノンコーディングでデキる!お問い合わせフォーム機能拡張
 
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by Taichi Umeda
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by  Taichi UmedaC22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by  Taichi Umeda
C22 スプリットブレインになっても一貫性を保証するインメモリデータグリッド製品 by Taichi Umeda
 
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ by トレジャーデータ株式会社 斉藤太郎
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ  by トレジャーデータ株式会社 斉藤太郎[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ  by トレジャーデータ株式会社 斉藤太郎
[db tech showcase Tokyo 2014] D33: Prestoで実現するインタラクティブクエリ by トレジャーデータ株式会社 斉藤太郎
 
何故DeNAがverticaを選んだか?
何故DeNAがverticaを選んだか?何故DeNAがverticaを選んだか?
何故DeNAがverticaを選んだか?
 
Apache Drill で JSON 形式の オープンデータを分析してみる - db tech showcase Tokyo 2015 2015/06/11
Apache Drill で JSON 形式の オープンデータを分析してみる - db tech showcase Tokyo 2015 2015/06/11Apache Drill で JSON 形式の オープンデータを分析してみる - db tech showcase Tokyo 2015 2015/06/11
Apache Drill で JSON 形式の オープンデータを分析してみる - db tech showcase Tokyo 2015 2015/06/11
 

More from Makoto Yui

Apache Hivemall and my OSS experience
Apache Hivemall and my OSS experienceApache Hivemall and my OSS experience
Apache Hivemall and my OSS experienceMakoto Yui
 
Introduction to Apache Hivemall v0.5.2 and v0.6
Introduction to Apache Hivemall v0.5.2 and v0.6Introduction to Apache Hivemall v0.5.2 and v0.6
Introduction to Apache Hivemall v0.5.2 and v0.6Makoto Yui
 
Introduction to Apache Hivemall v0.5.0
Introduction to Apache Hivemall v0.5.0Introduction to Apache Hivemall v0.5.0
Introduction to Apache Hivemall v0.5.0Makoto Yui
 
Idea behind Apache Hivemall
Idea behind Apache HivemallIdea behind Apache Hivemall
Idea behind Apache HivemallMakoto Yui
 
Introduction to Apache Hivemall v0.5.0
Introduction to Apache Hivemall v0.5.0Introduction to Apache Hivemall v0.5.0
Introduction to Apache Hivemall v0.5.0Makoto Yui
 
What's new in Hivemall v0.5.0
What's new in Hivemall v0.5.0What's new in Hivemall v0.5.0
What's new in Hivemall v0.5.0Makoto Yui
 
What's new in Apache Hivemall v0.5.0
What's new in Apache Hivemall v0.5.0What's new in Apache Hivemall v0.5.0
What's new in Apache Hivemall v0.5.0Makoto Yui
 
Revisiting b+-trees
Revisiting b+-treesRevisiting b+-trees
Revisiting b+-treesMakoto Yui
 
Incubating Apache Hivemall
Incubating Apache HivemallIncubating Apache Hivemall
Incubating Apache HivemallMakoto Yui
 
Hivemall meets Digdag @Hackertackle 2018-02-17
Hivemall meets Digdag @Hackertackle 2018-02-17Hivemall meets Digdag @Hackertackle 2018-02-17
Hivemall meets Digdag @Hackertackle 2018-02-17Makoto Yui
 
Apache Hivemall @ Apache BigData '17, Miami
Apache Hivemall @ Apache BigData '17, MiamiApache Hivemall @ Apache BigData '17, Miami
Apache Hivemall @ Apache BigData '17, MiamiMakoto Yui
 
機械学習のデータ並列処理@第7回BDI研究会
機械学習のデータ並列処理@第7回BDI研究会機械学習のデータ並列処理@第7回BDI研究会
機械学習のデータ並列処理@第7回BDI研究会Makoto Yui
 
Podling Hivemall in the Apache Incubator
Podling Hivemall in the Apache IncubatorPodling Hivemall in the Apache Incubator
Podling Hivemall in the Apache IncubatorMakoto Yui
 
Dots20161029 myui
Dots20161029 myuiDots20161029 myui
Dots20161029 myuiMakoto Yui
 
Hadoopsummit16 myui
Hadoopsummit16 myuiHadoopsummit16 myui
Hadoopsummit16 myuiMakoto Yui
 
HadoopCon'16, Taipei @myui
HadoopCon'16, Taipei @myuiHadoopCon'16, Taipei @myui
HadoopCon'16, Taipei @myuiMakoto Yui
 
Recommendation 101 using Hivemall
Recommendation 101 using HivemallRecommendation 101 using Hivemall
Recommendation 101 using HivemallMakoto Yui
 
Hivemall dbtechshowcase 20160713 #dbts2016
Hivemall dbtechshowcase 20160713 #dbts2016Hivemall dbtechshowcase 20160713 #dbts2016
Hivemall dbtechshowcase 20160713 #dbts2016Makoto Yui
 
Introduction to Hivemall
Introduction to HivemallIntroduction to Hivemall
Introduction to HivemallMakoto Yui
 
Tdtechtalk20160425myui
Tdtechtalk20160425myuiTdtechtalk20160425myui
Tdtechtalk20160425myuiMakoto Yui
 

More from Makoto Yui (20)

Apache Hivemall and my OSS experience
Apache Hivemall and my OSS experienceApache Hivemall and my OSS experience
Apache Hivemall and my OSS experience
 
Introduction to Apache Hivemall v0.5.2 and v0.6
Introduction to Apache Hivemall v0.5.2 and v0.6Introduction to Apache Hivemall v0.5.2 and v0.6
Introduction to Apache Hivemall v0.5.2 and v0.6
 
Introduction to Apache Hivemall v0.5.0
Introduction to Apache Hivemall v0.5.0Introduction to Apache Hivemall v0.5.0
Introduction to Apache Hivemall v0.5.0
 
Idea behind Apache Hivemall
Idea behind Apache HivemallIdea behind Apache Hivemall
Idea behind Apache Hivemall
 
Introduction to Apache Hivemall v0.5.0
Introduction to Apache Hivemall v0.5.0Introduction to Apache Hivemall v0.5.0
Introduction to Apache Hivemall v0.5.0
 
What's new in Hivemall v0.5.0
What's new in Hivemall v0.5.0What's new in Hivemall v0.5.0
What's new in Hivemall v0.5.0
 
What's new in Apache Hivemall v0.5.0
What's new in Apache Hivemall v0.5.0What's new in Apache Hivemall v0.5.0
What's new in Apache Hivemall v0.5.0
 
Revisiting b+-trees
Revisiting b+-treesRevisiting b+-trees
Revisiting b+-trees
 
Incubating Apache Hivemall
Incubating Apache HivemallIncubating Apache Hivemall
Incubating Apache Hivemall
 
Hivemall meets Digdag @Hackertackle 2018-02-17
Hivemall meets Digdag @Hackertackle 2018-02-17Hivemall meets Digdag @Hackertackle 2018-02-17
Hivemall meets Digdag @Hackertackle 2018-02-17
 
Apache Hivemall @ Apache BigData '17, Miami
Apache Hivemall @ Apache BigData '17, MiamiApache Hivemall @ Apache BigData '17, Miami
Apache Hivemall @ Apache BigData '17, Miami
 
機械学習のデータ並列処理@第7回BDI研究会
機械学習のデータ並列処理@第7回BDI研究会機械学習のデータ並列処理@第7回BDI研究会
機械学習のデータ並列処理@第7回BDI研究会
 
Podling Hivemall in the Apache Incubator
Podling Hivemall in the Apache IncubatorPodling Hivemall in the Apache Incubator
Podling Hivemall in the Apache Incubator
 
Dots20161029 myui
Dots20161029 myuiDots20161029 myui
Dots20161029 myui
 
Hadoopsummit16 myui
Hadoopsummit16 myuiHadoopsummit16 myui
Hadoopsummit16 myui
 
HadoopCon'16, Taipei @myui
HadoopCon'16, Taipei @myuiHadoopCon'16, Taipei @myui
HadoopCon'16, Taipei @myui
 
Recommendation 101 using Hivemall
Recommendation 101 using HivemallRecommendation 101 using Hivemall
Recommendation 101 using Hivemall
 
Hivemall dbtechshowcase 20160713 #dbts2016
Hivemall dbtechshowcase 20160713 #dbts2016Hivemall dbtechshowcase 20160713 #dbts2016
Hivemall dbtechshowcase 20160713 #dbts2016
 
Introduction to Hivemall
Introduction to HivemallIntroduction to Hivemall
Introduction to Hivemall
 
Tdtechtalk20160425myui
Tdtechtalk20160425myuiTdtechtalk20160425myui
Tdtechtalk20160425myui
 

Hivemall v0.3の機能紹介@1st Hivemall meetup

  • 1. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. Treasure  Data  Inc. Research  Engineer 油井 誠 @myui 2015/05/12 Hivemall  meetup #1 1 Hivemall(v0.3)の機能紹介 http://myui.github.io/
  • 2. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. Ø2015/04  トレジャーデータ入社 Ø第1号のリサーチエンジニア ØML  as  a  Service  (MLaaS)に従事 Ø2015/03  産業技術総合研究所 情報技術研究部 門 主任研究員 Ø大規模機械学習および並列データベースの研究に従 事 Ø2009/03  NAIST  博士課程修了 博士(工学) ØXMLネイティブデータベースおよび超並列データベース の研究に従事 ØH14未踏ユース第1期スーパクリエイタ 2 自己紹介
  • 3. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 3 0 2000 4000 6000 8000 10000 12000 Aug-­‐12 Sep-­‐12 Oct-­‐12 Nov-­‐12 Dec-­‐12 Jan-­‐13 Feb-­‐13 M ar-­‐13 Apr-­‐13M ay-­‐13 Jun-­‐13 Jul-­‐13 Aug-­‐13 Sep-­‐13 Oct-­‐13 Nov-­‐13 Dec-­‐13 Jan-­‐14 Feb-­‐14 M ar-­‐14 Apr-­‐14M ay-­‐14 Jun-­‐14 Jul-­‐14 Aug-­‐14 Sep-­‐14 Oct-­‐14 (単位)10億レコード サービス開始 Series  A  Funding 100社導入 Gartner社「Cool  Vendor  in   Big  Data」に選定される 10兆件 5兆レコード 数字でみる トレジャーデータ (2014年10月): 40万レコード 毎秒インポートされるデータの数 10兆レコード以上 インポートされたデータの数 120億 アドテク業界のお客様1社によって毎日送られてくるデータ 数字で見るトレジャーデータ
  • 4. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 数字で見る現在のトレジャーデータ 100+ 日本の顧客社数 15兆 保存されている データ件数 4,000 一社が所有する最大 サーバー数 500,000 1秒間に保存される データ件数 4
  • 5. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 発表の構成 • Hivemallの概要 • How  to  use  Hivemall • リアルタイム予測 w/  Hivemall  and  RDBMS • Hivemall  v0.3の新機能紹介 • Matrix  Factorization   • AdaGrad/AdaDelta • Mix  Server  (Parameter  Mixing) • HivemallへのFeature  Requests 5
  • 6. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. Hivemallとは Apache  Hadoopのエコシステム上に構築したオープン ソース(Apache  license  v2)の機械学習ライブラリ Hadoop  HDFS MapReduce (MRv1) Hive/PIG クエリ処理系 Hivemall Apache  YARN Apache  Tez DAG処理系 MR v2 分散ファイルシステム リソース管理システム 並列処理フレームワーク 問合せ処理系 機械学習ライブラリ github.com/myui/hivemall 6 MapReduceもTezもYARN上の 1アプリケーション
  • 7. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. R M MM M HDFS HDFS M M M R M M M R HDFS M MM M M HDFS R MapReduce  and  DAG  engine MapReduce   DAG  engine Tez/Spark ディスクにチェックポイントを とってもとらなくても再計算可能 7
  • 8. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. SQLベースの宣言的かつ容易な記述 Hivemallの特徴 何十行もの プログラム Mahoutによるプログラミング CREATE  TABLE  lr_model AS SELECT feature,  -­‐-­‐ reducers  perform  model  averaging  in   parallel avg(weight)  as  weight FROM  ( SELECT  logress(features,label,..)  as  (feature,weight) FROM  train )  t  -­‐-­‐ map-­‐only  task GROUP  BY  feature;  -­‐-­‐ shuffled  to  reducers ü 一般的なエンジニアでも機械学習を扱える ü API抽象度がHiveQLと高いのでAPIがかなりstable (Sparkはまだ結構unstable) このような問合せを書くと学習処理が Hadoop上で並列実行される 8
  • 9. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. Hivemall  v0.3で提供している機能 9 • クラス分類(二値分類/多値 分類) ü Perceptron ü Passive  Aggressive  (PA) ü Confidence  Weighted  (CW) ü Adaptive  Regularization  of  Weight   Vectors  (AROW) ü Soft  Confidence  Weighted  (SCW) ü AdaGrad+RDA • 回帰分析 ü 確率的勾配降下法に基づくロジス ティック回帰 ü PA  Regression ü AROW  Regression ü AdaGrad ü AdaDELTA • K近傍法 &  レコメンデーション ü Minhashとb-­‐Bit  Minhash (LSH  variant) ü 類似度に基づくK近傍探索 ü Matrix  Factorization • Feature  engineering ü Feature  hashing ü Feature  scaling  (normalization,  z-­‐score)   ü TF-­‐IDF  vectorizer トレジャーデータでもv0.3を5月中に サポート予定
  • 10. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. • Contribution  from  Daniel  Dai  (Pig  PMC)  from   Hortonworks • To  be  supported  from  Pig  0.15 10 Hivemall  on  Apache  Pig
  • 11. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. • On-­‐going  work  by  Takeshi  Yamamuro https://github.com/maropu/hivemall-­‐spark • Spark  is  not  a  Foe  (敵) but  a  Friend  (友達) of  Hivemall   J • Supports  Hyper  parameter  optimization  and  model   selection  on  Spark though  Spark  ML  Pipeline More  to  be  introduced  by  @maropu 11 Hivemall  on  Apache  Spark
  • 12. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 発表の構成 • Hivemallの概要 • How  to  use  Hivemall • リアルタイム予測 w/  Hivemall  and  RDBMS • Hivemall  v0.3の新機能紹介 • Matrix  Factorization   • AdaGrad/AdaDelta • Mix  Server  (Parameter  Mixing) • HivemallへのFeature  Requests 12
  • 13. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. How  to  use  Hivemall Machine Learning Training Prediction Prediction Model Label Feature  Vector Feature  Vector Label Data  preparation 13
  • 14. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. Create external table e2006tfidf_train ( rowid int, label float, features ARRAY<STRING> ) ROW FORMAT DELIMITED FIELDS TERMINATED BY '¥t' COLLECTION ITEMS TERMINATED BY ",“ STORED AS TEXTFILE LOCATION '/dataset/E2006- tfidf/train'; How  to  use  Hivemall  – データの準備 訓練とテストデータ用のテーブルを定義 HDFSに置いた(HiveのSERDEでパース可能な)任意フォー マットのデータを利用可能 14
  • 15. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. How  to  use  Hivemall Machine Learning Training Prediction Prediction Model Label Feature  Vector Feature  Vector Label Feature  Engineering 15
  • 16. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. create view e2006tfidf_train_scaled as select rowid, rescale(target,${min_label},${max_label}) as label, features from e2006tfidf_train; Min-Max正規化による特徴量の正規化 How  to  use  Hivemall  -­‐ Feature  Engineering Target値を0~1の範囲に変換 16
  • 17. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. How  to  use  Hivemall Machine Learning Training Prediction Prediction Model Label Feature  Vector Feature  Vector Label Training 17
  • 18. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. How  to  use  Hivemall  -­‐ Training CREATE TABLE lr_model AS SELECT feature, avg(weight) as weight FROM ( SELECT logress(features,label,..) as (feature,weight) FROM train ) t GROUP BY feature ロジスティック回帰による学習 予測モデルを学習するmap-­‐onlyのtask Featureの値によってmap出力結果をreducerにShuffle 特徴ごとに学習した重みの平均 を取る処理をreducer側で並列に処理 18
  • 19. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. How  to  use  Hivemall  -­‐ Training CREATE TABLE news20b_cw_model1 AS SELECT feature, voted_avg(weight) as weight FROM (SELECT train_cw(features,label) as (feature,weight) FROM news20b_train ) t GROUP BY feature Confidence  Weightedによる学習 投票に基づきPositive or  Negativeな 重みの平均 +0.7,  +0.3,  +0.2,  -­‐0.1,  +0.7 CWクラス分類器による学習 19
  • 20. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 20 hive> desc news20b_cw_model1; feature int weight double hive> select * from a9a_model1 limit 10; 0 -0.5761121511459351 1 -1.5259535312652588 10 0.21053194999694824 100 -0.017715860158205032 101 0.007558753248304129 102 -0.277366042137146 103 -0.4896543622016907 104 -0.0955817922949791 105 0.12560302019119263 106 0.09214721620082855 How  to  use  Hivemall  -­‐ Training 予測モデルテーブルの構成
  • 21. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. create table news20mc_ensemble_model1 as select label, cast(feature as int) as feature, cast(voted_avg(weight) as float) as weight from (select train_multiclass_cw(addBias(features),label) as (label,feature,weight) from news20mc_train_x3 union all select train_multiclass_arow(addBias(features),label) as (label,feature,weight) from news20mc_train_x3 union all select train_multiclass_scw(addBias(features),label) as (label,feature,weight) from news20mc_train_x3 ) t group by label, feature; アンサンブル学習 for  stable  prediction  performance 個別に学習した予測モデルを Union  allでまとめる 21
  • 22. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. How  to  use  Hivemall Machine Learning Training Prediction Prediction Model Label Feature  Vector Feature  Vector Label Prediction 22
  • 23. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. How  to  use  Hivemall  -­‐ Prediction CREATE TABLE lr_predict as SELECT t.rowid, sigmoid(sum(m.weight)) as prob FROM testing_exploded t LEFT OUTER JOIN lr_model m ON (t.feature = m.feature) GROUP BY t.rowid 予測はテスト事例と予測モデルの LEFT  OUTER  JOINによって行う 予測モデル全体をメモリに載せる必要がない 23
  • 24. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 発表の構成 • Hivemallの概要 • How  to  use  Hivemall • リアルタイム予測 w/  Hivemall  and  RDBMS • Hivemall  v0.3の新機能紹介 • Matrix  Factorization   • AdaGrad/AdaDelta • Mix  Server  (Parameter  Mixing) • HivemallへのFeature  Requests 24
  • 25. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. データ分析の分類とツール 25 MLCTでの@tokorotenさんのスライドより抜粋 「プロダクション環境でオンラインで機械学習を動かすにあたってツライ話」 http://www.slideshare.net/TokorotenNakayama/mlct/12 需要がない?? 実は最も重要
  • 26. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. How  to  use  Hivemall Machine Learning Batch Training on Hadoop Online Prediction on RDBMS Prediction Model Label Feature  Vector Feature  Vector Label Export   prediction  model 26
  • 27. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. リアルタイム予測 27 hive> desc news20b_cw_model1; feature int weight double #1  予測モデルのexport Any  RDBMS TD  export TDではモデル構築(SQL実行)結果 のexportを定期自動実行できる 103 -0.4896543622016907 104 -0.0955817922949791 105 0.12560302019119263 106 0.09214721620082855
  • 28. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 28 hive>  desc  testing_exploded;                                                     feature                                  string   value                                      float リアルタイム予測 #2  feature/valueからなるviewを作成 SIGMOID(x) =1.0  /  (1.0  +  exp(-­‐x)) Prediction Model Label Feature  Vector SELECT     sigmoid(sum(t.value   *  m.weight))  as  prob FROM testing_exploded   t  LEFT  OUTER  JOIN   prediction_model   m  ON  (t.feature  =  m.feature) #3  実際の予測を実行 例えばあるユーザの特徴ベクトルを selectしてexplodeする (SubqueryやWITH句でも良い) modelテーブルの feature絡むに索引を 貼っておくと高速
  • 29. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 余談:  Amazon  Machine  Learningのコスト Vowpal Wabbit(単一プロセス版?)ベースらしい 29 モデル構築や評価時 $0.42/インスタンス時 バッチ予測 $0.1/1000件 リアルタイム予測 $0.1/1000件(+キャパシティ予約のチャージ) 広告分野での利用だとリアルタイム予測をかなりの頻度 で行うのでモデルを取得できないと厳しい(!?)
  • 30. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 30 広告系でのHivemallの応用例 Hivemallで 予測モデル構築 Real-­‐time  prediction on  a  RDBMS *近々記事を書きます
  • 31. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 発表の構成 • Hivemallの概要 • How  to  use  Hivemall • リアルタイム予測 w/  Hivemall  and  RDBMS • Hivemall  v0.3の新機能紹介 • Matrix  Factorization   • AdaGrad/AdaDelta • Mix  Server  (Parameter  Mixing) • HivemallへのFeature  Requests 31
  • 32. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 32 Matrix  Factorization k個の潜在因子をもつ 行列P,Qで近似
  • 33. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 33 評価値の 平均 Matrix  Factorization 正則化項 ユーザおよび商品ごとの 評価バイアスを考慮 Biased  MFのSGDおよびAdagradによる最適化
  • 34. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 34 Matrix  Factorizationの学習 ローカルディスクに訓練事例を書き出すことで学習が収束するまでの 繰り返し学習に対応(全体最適化のためにパラメタ交換が必要)
  • 35. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 35 Matrix  Factorizationの予測/評価
  • 36. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. http://bit.ly/hivemall-­‐mf 交差検定の並列処理 各foldごとの訓練データ、テストデータのVIEWを 定義することでえ、学習モデルを並列に構築~ 検定までを並列実行可能 36
  • 37. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. Sparkのmatrix  factorizationとの比較 • 精度面はほぼ同等(Movielens 10Mで評価時) • Qiitaに詳しい記事を載せている(Hivemall  Qiita/Matrix   Factorizationで検索) • Sparkの場合は100+行のScalaコーディングが必要 37 http://bit.ly/spark-­‐mf
  • 38. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. AdaGrad 確率的勾配降下法(SGD)のモデルパラメタの更新 学習率 勾配 学習率の指定方法が難しい→自動設定できないか?→AdaGrad 過去の勾配の二乗の総和を更新対象の特徴ごとに保存 学習率 学習率の減少を保障 AdaDeltaはAdaGradの定数αの手動設定の 問題と学習率がtが進むと小さくなりすぎる問題に対処 38
  • 39. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 機械学習におけるパラメタ交換 39 学習器1 学習器2 学習器N パラメタ 交換 学習 モデル 分割された訓練例例 データ並列列 データ並列列 (モデルパラメタ)
  • 40. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. create  table  kdd10a_pa1_model1  as select   feature, cast(voted_avg(weight)  as  float)  as  weight from   (select   train_pa1(addBias(features),label,"-­‐mix  host01,host02,host03")   as  (feature,weight) from   kdd10a_train_x3 )  t   group  by  feature; MIX  Serverの利用 このように学習器の呼び出しで Mix  serverをオプション指定する 40
  • 41. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. ・・・・・・ Model  updates Async add AVG/Argmin KLD  accumulator hash(feature)  %  N Non-­‐blocking  Channel (single  shared  TCP  connection  w/  TCP  keepalive) classifiers Mix  serv.Mix  serv. Computation/training   is  not  being  blocked MIX  Serverの概要 41
  • 42. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 発表の構成 • Hivemallの概要 • How  to  use  Hivemall • リアルタイム予測 w/  Hivemall  and  RDBMS • Hivemall  v0.3の新機能紹介 • Matrix  Factorization   • AdaGrad/AdaDelta • Mix  Server  (Parameter  Mixing) • HivemallへのFeature  Requests 42
  • 43. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 43 Feature  requests  to  Hivemall
  • 44. Copyright  ©2015  Treasure  Data.    All  Rights  Reserved. 44 Treasure  Dataでは、機械学習の実装に強いエンジニア、 Kaggle Master/Data  Scientistsも募集しております! (夏のインターン生も近いうちに募集します) Hiringの一覧にはまだ出ていないので、興味のある方は myui@treasure-­‐data.com または @myui に連絡ください http://bit.ly/gmo0512 休憩時間などにアンケートにご協力よろしくお 願い致します