jubatus 1.0 の紹介

13
Jubatus 1.0 Yuhara Motoki Jubatus ハハハハハ with ハハハハ #2

Upload: jubatusofficial

Post on 13-Jan-2017

1.876 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Jubatus 1.0 の紹介

Jubatus 1.0Yuhara Motoki

Jubatus ハッカソン with 読売新聞 #2

Page 2: Jubatus 1.0 の紹介

2

(ユバタス)とは?

• 「分散したデータ」を• 「常に素早く」• 「深く分析する」ことを狙ったオンライン機械学習向け分散処理フレームワーク

Page 3: Jubatus 1.0 の紹介

3

Jubatus の歩み

version 新機能 説明

0.1 分類機能 与えられたデータをカテゴリに分類する機能を実装

0.2推薦機能 与えられたデータと似ているデータを推薦する機能を実装

回帰分析機能 与えられたデータに対する出力の値を推定する機能を実装

統計機能 データの頻度、標準偏差、最大値、最小値などの統計情報を集計する機能を実装

0.3 グラフマイニング機能 与えられたグラフ構造から中心点や最短経路を抽出する機能を実装

0.4 異常検知機能 与えられたデータ集合のなかから外れ値(異常値)を検知

0.5 クラスタリング機能 与えられたデータ集合を教師データなしで指定された個数にグルーピング

近傍探索機能 登録されたデータ集合から、指定されたデータに類似したものを高速に取得する

0.7 Bandit 機能選択肢と結果を与える事で選択肢の探索と活用を並行して行い、効用を最大化する選択肢を分析する

0.8 JubaQL 機能 SQL-like に Jubatus を実行するための DSL

0.9Jubakit Jubatus を利用した機械学習実行のためのサポートツール

近傍探索機能の高速化 SIMD の活用などにより最大 20 倍の高速化を実現

Page 4: Jubatus 1.0 の紹介

4

Jubatus1.0 のリリース内容1. 機械学習アルゴリズムの拡充

1. 回帰分析機能1. 分類機能でサポートしているアルゴリズムをサポート

2. クラスタリング機能1. DBSCAN アルゴリズムのサポート

2. Jubatus Core の python バインディングを提供3. 画像特徴量抽出プラグインの実装4. 公式 Docker イメージの提供5. 公式ドキュメント( HP )の拡充

Page 5: Jubatus 1.0 の紹介

5

1. 機械学習アルゴリズムの拡充( 1 )• 回帰分析機能( regression )• 分類器でサポートされているアルゴリズム全てを回帰分析機能でも利用でき

るように アルゴリズム名

1.0.0以前 1.0.0 手法の種類Perceptron × ○ 線形回帰PA × ○ 線形回帰PA1 ○ ○ 線形回帰PA2 × ○ 線形回帰CW × ○ 線形回帰AROW × ○ 線形回帰NHERD × ○ 線形回帰NN × ○ k-近傍法( hash値による近似)cosine × ○ k-近傍法(厳密な cosine距離)euclidean × ○ k-近傍法(厳密な euclid距離)

Page 6: Jubatus 1.0 の紹介

6

1. 機械学習アルゴリズムの拡充( 2 )• クラスタリング機能( clustering )• DBSCAN の実装

• density-based clustering• クラスタ数の指定が不要

• min_core_point :クラスタを構成する最小データ数• eps: 同クラスタにまとめるデータ間の距離

eps

min_core_point:3

K-means DBSCAN

Page 7: Jubatus 1.0 の紹介

7

1. 機械学習アルゴリズムの拡充( 2 )• Clustering API の変更、追加• データ追加時に ID を付与すように修正

• ID だけを返却する軽量な API を追加新規追加

Page 8: Jubatus 1.0 の紹介

8

2. Jubatus-core の python ライブラリ化• Embedded Jubatus Python• Jubatus Core のアルゴリズムを直接 Python から呼び出せる• RPC クライアントと互換の API インタフェースを提供

• コードの修正不要で、段階的なサイジングが可能

Embedded Jubatus Python

スタンドアロンモード分散モード

ネットワーク (RPC) や設定ファイルのハンドリングなど面倒な作業が不要。

精度検証 (PoC) フェーズに最適

Jubatus サーバ (1 台構成 ) として、クライアントとサーバを分離

Jubatus を複数台で構成することによりさらにスループットが向上

本番運用開始

スケールアウト

現状では macではインストールできない

Page 9: Jubatus 1.0 の紹介

9

3. 画像特徴量抽出プラグインの実装

• OpenCV を利用して、画像から特徴量を抽出できるようになりました

• 1.0.0 で対応している特徴量抽出アルゴリズムは、 RGB と ORB※ 利用には opencv2.3 以上が必要です

画像特徴量抽出プラグイン

特徴ベクトル (RGBの例 )x1y1-Red 115.0

x1y1-Green 110.0

x1y1-Blue 0.0

x1y2-Red 10.0

… …

JubaclassifierjubaclusteringJubarecommender…

Page 10: Jubatus 1.0 の紹介

10

4. 公式 Docker イメージの提供• Dockerhub に Jubatus イメージを公開しました• docker pull jubatus/jubatus だけで Jubatus を利用できる環境が手

に入ります

• 詳しくは Jubatus Blog を参照 (→ Jubatus Docker で検索 )• http://blog.jubat.us/2016/02/running-jubatus-on-docker.html

Page 11: Jubatus 1.0 の紹介

Jubatus 公式 HP が変わりました

11

ナビゲーションバーから各コンテンツに

アクセスしやすくなりました

Page 12: Jubatus 1.0 の紹介

12

バグ fix• 17件のバグを修正•主要なバグの内容• Recommender エンジン

• inverted_index / inverted_index_euclid 利用時に、稀に clear_row API で行削除ができない問題を修正

• Graph エンジン• 起動直後の Jubatus サーバにモデルファイルを load すると、 node / edge ID の重

複が発生してしまう問題を修正

Page 13: Jubatus 1.0 の紹介

13

おわりに

• Juabtus 1.0 ( 10/31 )での大きな機能追加・改善を紹介•これ以外にも細かなバグフィクスや機能改善も実施•引き続き、みなさまからのコントリビュートお待ちしてます