Upgrade to Pro — share decks privately, control downloads, hide ads and more …

機械学習プラットフォームとして活用するAutonomous Database

機械学習プラットフォームとして活用するAutonomous Database

Autonomous Database (ADB)では、機械学習に必要な各種ツールがセットアップされており、データベースインスタンスを作成後にすぐに利用いただくことが可能です。
AutoMLテクノロジにより最適なアルゴリズムを自動選択しモデルを生成したり、
Apache ZeppelinベースでSQL,PL/SQL,Pythonの併用が可能なNotebookが構成されているので、データの把握から前処理、機械学習の実行、予測モデルの管理などといった作業を実施いただくことが可能になっています。

本資料ではこれら各ツールの概要について解説しています。

■参考資料
・ADB-S(Sharedモデル)に関して
https://speakerdeck.com/oracle4engineer/autonomous-database-cloud-ji-shu-xiang-xi
・OCI活用資料集
https://oracle-japan.github.io/ocidocs/

oracle4engineer

June 16, 2021
Tweet

More Decks by oracle4engineer

Other Decks in Technology

Transcript

  1. Oracle Autonomous Database AI/機械学習を利⽤した完全⾃動運⽤ チューニングをはじめとしたDB運⽤は消滅 完全な マネージド サービス 1CPU単位でCPUを無停⽌で増減可能 ワークロードに応じた⾃動増減も可能

    CPU/ストレージは1秒間単位で課⾦ 完全な 柔軟性 あらゆるワークロード(OLTP/分析/混在) あらゆるデータタイプ(構造化/JSON/グラフ等) 1つのデータベースで対応可能 完全な マルチモデル Autonomous Database 運⽤管理が⾃動化された、スケールアップ可能なクラウド・データベース Copyright © 2021, Oracle and/or its affiliates
  2. One Stopの機械学習環境 Autonomous Datawarehouse Autonomous Database 機械学習に必要な全てのツールがセットアップ済、インスタンス作成後すぐに利⽤可能 OML4SQL Oracle Machine

    Learning (OML) Oracle Database OML4Py OML4R※ Oracle Machine Learning AutoML UI SQL Oracle Application Express Database Actions (旧SQL Developer Web UI) Oracle Machine Learning Notebook あらゆるWebアプリケーションをGUI ベースで容易に構築できる開発ツー ル(Web UI) Oracle Databaseに実装された機械 学習の実⾏処理エンジン(Oracle AutoML実装済) 運⽤・管理が⾃動化されたスケール アップ可能なクラウドデータベース Apache Zeppelinベースの Notebookインタフェース。 SQL/Python/Rをサポート コーディング不要、 GUIのみのシンプ ルなワークフローで機械学習を実⾏で きるインタフェース(WebUI) 主要開発⾔語による機械学習の実 ⾏ライブラリ データのロードやあらゆるSQL処理を 実⾏するための統合開発環境(Web UI) Copyright © 2021, Oracle and/or its affiliates ※Autonomous DatabaseでのOML4R対応は将来予定
  3. 機械学習ワークフロー内での各ツールの役割 Autonomous Database データの把握や前処理から機械学習の主要作業を全てこの⼀つのサービスで OML4SQL Oracle Machine Learning (OML) Oracle

    Database OML4Py OML4R Oracle Machine Learning AutoML UI SQL Oracle Application Express Database Actions (旧SQL Developer Web UI) Oracle Machine Learning Notebook 予測結果をレポート • データの把握、前処理から、その 他全ての機械学習の処理を⾏ う • ノートブックでコーディングする開 発スタイル • GUI操作のみでモデル⽣成など 機械学習の主要なフェースをシン プルなワークロードで実⾏可能 • ノートブックによるコーディングとの 連携が可能 ノートブックで利⽤できる開発⾔語 データのローディングやDBのスキーマ 確認に利⽤ Copyright © 2021, Oracle and/or its affiliates ※Autonomous DatabaseでのOML4R対応は将来予定
  4. Database Action (旧SQL Developer Web UI) データのロードから、SQLのコード開発をGUIベースでシンプルに スキーマや表構 造の表⽰ SQL⼊⼒ペイン

    様々な操作とSQLの実⾏結果の表⽰ • インスタンス作成後、すぐに利⽤可能 • Web UIから簡単にデータロード • SQL、PL/SQL⽂をワークシート ü 表の作成、データの挿⼊、データの選択 ü トリガーの作成と編集 ü ファイルへのデータの保存 ü など • ⼀部のデータベース監視、管理作業が可能 ü アラートログエントリ ü セッション情報 ü 表領域、セグメントの使⽤状況 ü 待機イベント ü 初期化パラメータ ü リアルタイムSQLモニタリング ü など OML 4SQL Oracle Machine Learning (OML) Oracle Database OML 4Py OML 4R AutoML UI Oracle Application Express SQL Developer Web UI Notebook Copyright © 2021, Oracle and/or its affiliates
  5. Oracle Machine Learning Notebooks What it is • Apache Zeppelinベースのnotebookインターフェイス

    • インスタンス作成後、すぐに利⽤可能、セットアップ不要 • データサイエンティスト、データアナリスト、DBA、アプリ開発者 がADB上で使⽤可能 • データの把握、前処理、機械学習の実⾏、予測モデルの管 理など機械学習に必要な全ての作業を実⾏可能 Benefits • データサイエンスチームがADB上でコラボレーションできる統合 環境 • データサイエンスチーム間でノウハウをドキュメント化して共有 Copyright © 2021, Oracle and/or its affiliates 6 OML 4SQL Oracle Machine Learning (OML) Oracle Database OML 4Py OML 4R AutoML UI Oracle Application Express SQL Developer Web UI Notebook データの把握、前処理から機械学習の全ての作業を実⾏
  6. • SQL (OML4SQL) • データをグラフィカルなチャートで確認しながら、集計処理 し学習データ、評価データの作成が可能 • PL/SQLプロシージャ(dbms_data_mining)により簡単 にモデル作成、評価、予測、各種チャートの作成が可能 •

    Python (OML4Py) • PandasのDataFrameとしてDBの表やビューを操作 • ⾃動管理されたPythonエンジン上にユーザ定義の Python関数を実⾏、デプロイ • R (OML4R) • R DataFrameオブジェクトとしてDBの表やビューを操 作 • 統計処理、データ準備、データ探索のオフロードを広い 範囲でサポート • ⾃動管理されたRエンジン上に、ユーザ定義のR関数を 実⾏、デプロイ Oracle Machine Learning for SQL / Python / R 分析 OML Notebook OML4Py OML4R SQL OML4SQL • OML Notebook • Apache Zeppelinベースのnotebookインターフェイス • データの把握、前処理、機械学習の実⾏、予測モデル の管理 Oracle Database OML 4SQL Oracle Machine Learning (OML) Oracle Database OML 4Py OML 4R AutoML UI Oracle Application Express SQL Developer Web UI Notebook 主要な開発⾔語をサポート Copyright © 2021, Oracle and/or its affiliates ※Autonomous DatabaseでのOML4R対応は将来予定
  7. OML AutoML UI (1) 学習データの表を指定 予測したい列を選択 予測問題のタイプを指定 複数アルゴリズムで学習を実⾏ 予測モデルに寄与した特徴量のランキング 各予測のスコア

    What it is • モデルを⾃動ビルドし、管理・デプロイ を可能にするノーコードのユーザインタ ーフェイス • データベース内の表と予測対象列のみ を指定するシンプルなワークフロー • 複数アルゴリズムで同時に⾃動学習し、 ⾃動スコアリング Benefits • データサイエンティストの⽣産性を向上 • 専⾨知識無しでも機械学習を⾝近 なものに • アルゴリズムの詳細の知識不要 • モデル管理とデプロイをシンプルに 学習 GUIベース、ノーコードの機械学習インタフェース OML 4SQL Oracle Machine Learning (OML) Oracle Database OML 4Py OML 4R AutoML UI Oracle Application Express SQL Developer Web UI Notebook Copyright © 2021, Oracle and/or its affiliates
  8. OML AutoML UI (2) Notebookの実⾏ケジューリング 学習済みモデルからコードを⾃動⽣成 学習済みの予測モデル • 構築された予測モデルから、実⾏コードをOML Notebookに⾃

    動⽣成 • 予測モデルを更にチューニングしたり、コードを追記することで処理 内容を拡張することが可能 • ⽣成したNotebookをジョブ化し、スケジュール実⾏が可 能 • 業務処理(学習処理や予測処理)をバッチアプリケーション としてスケジューリング実⾏する運⽤が可能に 学習処理や予測業務をバッチ処理化&スケジューリング OML 4SQL Oracle Machine Learning (OML) Oracle Database OML 4Py OML 4R AutoML UI Oracle Application Express SQL Developer Web UI Notebook Copyright © 2021, Oracle and/or its affiliates
  9. OML AutoML UI (3) ソースコードのバージョニング • コードの追加、変更後、任意の時 点でのコードにバージョンを付与 • 任意の時点のコードをオリジナルにリ

    ストア • 任意の時点のコードから新規ノート ブックの作成 • バージョニングのノートブックは閲覧 のみ可能(編集、実⾏は不可) Version 1.0 コードの追加、変更 コードの追加、変更 コードの追加、変更 オリジナルノートブック (編集、実⾏可) Version 1.1 コードの追加、変更 コードの追加、変更 Version 1.2 バージョニング (編集、実不可) バージョニングとリストア 新規オリジナルノートブック (編集、実⾏可) 新規ノートブック作成 OML 4SQL Oracle Machine Learning (OML) Oracle Database OML 4Py OML 4R AutoML UI Oracle Application Express SQL Developer Web UI Notebook
  10. OML AutoML UI (4) 構築された予測モデル 予測モデルをREST サービスとして実装 予測モデルをデプロイ 予測したいデータをRESTクライアントからコール 予測結果が得られる

    • 予測モデルをデプロイすることでRESTサービスとして予測アプリケーションの構 築が可能 • 予測アプリケーションのRESTエンドポイントに予測データを投げることで予測 結果をえることが可能 予測モデルをデプロイし、予測処理をAPIコール可能に OML 4SQL Oracle Machine Learning (OML) Oracle Database OML 4Py OML 4R AutoML UI Oracle Application Express SQL Developer Web UI Notebook Copyright © 2021, Oracle and/or its affiliates
  11. Oracle Application Express(APEX) GUIベースで開発が可能なWeb Application Builder、予測レポートの結果確認に APEX開発画⾯ 予測値レポート画⾯ • GUIベース、コーディングなしでウェブ・アプリケーションを開発できるWeb

    UI開発環境 • DBインスタンス作成後、すぐに利⽤可能、ツールのインストールやウェブサーバーの等は不要 • 多数のアプリケーションテンプレートが利⽤可能 • 50万⼈超の開発者コミュニティ OML 4SQL Oracle Machine Learning (OML) Oracle Database OML 4Py OML 4R AutoML UI Oracle Application Express SQL Developer Web UI Notebook Copyright © 2021, Oracle and/or its affiliates
  12. Auto Machine Learning ⾃動特徴量選択 – 最も予測に寄与する特徴量の 特定によって特徴量の数を削減 – パフォーマンスと精度の向上 ⾃動アルゴリズム

    選択 ⼿あたり次第にアルゴリズ ムを探すよりも格段に速く ⾃動特徴量 選択 データノイズと特徴量の 数を削減 ⾃動モデル チューニング 正確性の向上に⼤きく貢献 ML Model ⾃動アルゴリズム選択 – モデルのクオリティを向上させること のできるデータベース内アルゴリズム を特定 – ⼿あたり次第のアルゴリズム探しよ りも格段に速く最適なアルゴリズム を選択 ⾃動モデルチューニング – アルゴリズムハイパーパラメータの ⾃動チューニング – ⼿作業や総当たりの最適パラ メータ探しが不要 データ テーブル OML 4SQL Oracle Machine Learning (OML) Oracle Database OML 4Py OML 4R AutoML UI Oracle Application Express SQL Developer Web UI Notebook ⾃動化によりデータサイエンティストの⽣産性を向上 Copyright © 2021, Oracle and/or its affiliates
  13. 分類 • 決定⽊(Decision Tree) * • (2項分類)⼀般化線形モデル(GLM) * • 単純ベイズ(Naïve

    Bayes) * • ランダム・フォレスト(Random Forest) * • サポート・ベクター・マシン(SVM) * • 明⽰的セマンティック分析(ESA) • ニューラル・ネットワーク* • XGBoost(21cで実装) 異常検知 • One-Class SVM • MSET-SPRT(21cで実装) クラスタリング • 期待値最⼤化法(EM) • k平均法(k-means) • 直交パーティショニング・クラスタリング(O- Cluster) 時系列 • 指数平滑法 等 • (単純,、2重、Holt-Winters法、Regular & Irregular, with and w/o trends & seasonal 含む) 回帰 • 線形モデル(LM) • ⼀般化線形モデル(GLM) * • サポート・ベクター・マシーン(SVM) * • ステップワイズ線形回帰 • ニューラル・ネットワーク* • XGBoost(21cで実装) 属性の重要度付け • 主成分分析 • 最⼩記述⻑(Minimum Description Length) • CUR⾏列分解 • 教師なしペアワイズKLダイバージェンス 相関ルール • Apriori 予測問合せ • 予測, クラスタ, 検知, 機能郡 SQL分析 • SQL ウインドウ関数 • SQL パターンマッチング • SQL 集計関数 特徴抽出 • 明⽰的セマンティック分析 (ESA) • ⾮負⾏列因⼦分解 (NMF) • 特異解分析 (SVD) • 主成分分析 (PCA) • 教師無し Pair-wise KL Div ⾏の重要度付け • CUR⾏列分解 ランキング • XGBoost(21cで実装) テキストマイニングサポート • テキスト列サポートのアルゴリズム • トークン化とテーマ検出 • 明⽰的セマンティック分析 統計関数 • 基本関数︓最⼩、最⼤、メジアン、標準偏 差、t検定、F検定、ピアソン分布、カイ⼆乗 検定、 分散分布(ANOVA)等 SQL関数︓⾏列の選択、条件式、結合、等 Oracle Machine Learning Algorithms Copyright © 2021, Oracle and/or its affiliates 14 * Auto ML UIでサポートしているアルゴリズム
  14. Forth Corporation, Thailandとその⼦会社であるForth Smart Corp.は、プリペイド携帯電話の充電、銀⾏送⾦、公共 料⾦の⽀払い、モバイルゲームの⽀払いなどの⾦融サービスを提 供する12万台以上のキオスクを運営しています。 Forth Smart社は、データベース内のOracle Machine

    Learningを使⽤して、MLモデルの構築、評価、展開にオラクル の既存の投資を活⽤しながら、事業範囲を拡⼤し、新しい機会 を模索しています。 Oracle Machine Learningを使⽤することで、Forth Smart は90%もの精度でターゲットを絞ることができ、コンバージョン数が 3倍になったことを確認しました。 Oracle Database と Oracle Machine Learning で新しい顧客を獲得 Copyright © 2021, Oracle and/or its affiliates 16
  15. 予測シナリオ ボストン住宅価格データを学習し、様々な条件の住宅の価格を推論する回帰問題 出典︓カーネギーメロン⼤学 Boston Housingデータセット ⽶国国勢調査局が収集した情報から抽出&加⼯して作成されたデータセット 14個の属性 CRIM︓ 犯罪率 ZN︓広い家の割合(25,000平⽅フィートを超える住宅地の割合)

    INDUS︓⾮⼩売業の割合 CHAS︓チャールズ川隣接状況(隣接の場合︓1、隣接していない場合︓0) NOX︓ ⼀酸化窒素濃度 RM︓平均部屋数 AGE︓築古の割合(1940年より前に建てられた持ち家の割合) DIS︓主要施設への距離(ボストン雇⽤センターまでの加重距離) RAD︓主要⾼速道路へのアクセス性指数 TAX︓固定資産税率(10,000ドル当たり) PTRATIO︓⽣徒と先⽣の⽐率 LSTAT︓低所得者⼈⼝の割合 MEDV︓住宅価格(1000ドル単位の中央値) Boston Housingデータセット 説明変数 ⽬的変数(予測対象)
  16. デモの流れ 学習⽤データ(CSV) 予測⽤データ(CSV) 学習⽤テーブル 予測学習⽤テーブル AutoML UI ノートブック データのローディング 予測モデルの構築

    予測モデル 予測 ノートブックのジョブ化 ソースコードのバージョニング ノートブックの⽣成 REST APIコール 予測結果のレポート(APEX)