SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Oracle Database Cloudでいってみよう! ~ 【特別編】

「機械学習」を始める前に知っておくこと・検討すべきこと

Oracle Database Cloudでいってみよう! 〜 【特別編】


クラウドで機械学習プラットフォームを運用するメリット

ここまで、機械学習を始めるにあたって重要なことについて説明してきました。数日で完了するようなプロジェクトではないことをお分かりいただけたかと思います。

機械学習を行うには、「分析の知識」だけでなく「ITインフラの知識」と「ビジネスの理解」が求められます。しかし、これらすべてを身につけている人は希有ですし、チームを組みメンバーで補い合うことも容易ではありません。また、前準備が多く、小さく早く始められないことも、機械学習に取り組む際の高い障壁となってきました。

しかし、機械学習の機能を提供するクラウドサービスが現れたことで、分析とITインフラに求められる知識が、以前ほどは高くない状態になりました。

機械学習プラットフォームをクラウドで構築するメリットはたくさんあります。先ほどのPDCAサイクルで説明したように、機械学習プラットフォームにかかる負荷は一様ではありません。一番マシンパワーを必要とするのは、「データ準備」と「データモデリング」のときです。このようなマシンパワーを必要なときだけ動的に増やせるクラウドサービスは、機械学習プラットフォームのワークロードとの相性がとてもよいです。

また、機械学習を利用する取り組みは研究に近いため、ROI(費用対効果)の算出が難しいです。クラウドならば、専用のサーバを用意する必要ないため早く安く始めることができます。プロジェクトを回し切るには十分な体制が整っていないと分かり、プロジェクトの中止を余儀なくされた場合でも、クラウドであれば、無駄になるハードウェアやソフトウェアへの投資は最小限で済みます。

インフラ担当者や分析担当者にとっても機械学習プラットフォームにクラウドを採用するメリットは大きい
インフラ担当者や分析担当者にとっても機械学習プラットフォームにクラウドを採用するメリットは大きい

クラウドで機械学習を始めてみる(Oracle Cloudを例に)

それでは、機械学習プラットフォームの構築を体験してみましょう。本稿では「Oracle Cloud」を利用します。

Oracle Cloudで機械学習を始めるメリットとして、まず十分なアルゴリズムが用意されていることがあります。また、GUIでもRクライアントでも操作できるため、機械学習をこれから始める方にも、R言語を使用しているユーザにも優しいものとなっています。

また、Oracle Cloudのデータベースサービス「Oracle Database Cloud Service」には機械学習エンジンが組み込まれており、データベース内で機械学習を行うことができます。メモリに全データを展開せずに分析できるため、大容量のデータを分析することができますし、データの移行コストも発生しないため、分析サイクルを高速化することができます。

データ管理に関しても、データベース内に完結しているため、SQLだけでETL処理を書けることも便利です。一定の分析をジョブとして管理する場合にも、機械学習エンジンがデータベースに組み込まれたことによって、「データ分析基盤+データベース」でなく「データベース内だけ」でジョブ管理が完結します。

セキュリティに関しては、データの配置場所もデータベースだけに限られ、そのデータベースに対してもOracle Databaseのセキュリティ機能をすべて使用して守ることができます。

このようにOracle Cloudは、プラットフォームとして必要な要件を満たしています。クラウドサービスなので、課金も使用する間だけであり、分析用途のプラットフォームとしても相性がよいものとなります。

機械学習プラットフォームの構築手順

Oracle Cloudで機械学習を始めるためには、まずはOracle Database Cloud ServiceでOracle Databaseを作成します。

Oracle Database Cloud ServiceでOracle Databaseを作成
Oracle Database Cloud ServiceでOracle Databaseを作成

Oracle Database Cloud Serviceインスタンスのデータベース・エディションを選ぶ画面では、Advanced Analyticsオプションを利用可能な「High Performance」または「Extreme Performance」を選択します。

Advanced Analyticsオプションを利用可能な「High Performance」または「Extreme Performance」を選択
Advanced Analyticsオプションを利用可能な「High Performance」または「Extreme Performance」を選択

データベースが作成されたら、クライアントPCに「SQL Developer」をインストールします。SQL DeveloperはOracle Databaseに付属する無料の開発ツールです。インストールはzipファイルを解凍するだけで完了します。インストールしたSQL Developerを起動し、Oracle Database Cloud Service上に作成したOracle Databaseに接続して、Oracle Data Minerのプラグインをインストールします。以上で機械学習の環境構築は完了です。

ここから機械学習を行うには、データをクラウドにロードして、GUIで機械と学習フローを設計します。今回はサンプルデータを基に予測分析を行ったときのフローを下図に示します。

サンプルデータを基に予測分析を行ったときのフロー
サンプルデータを基に予測分析を行ったときのフロー

ドラム缶とテーブルの組み合わさったアイコンが学習データです。「分類構築」と書かれたタグとダイヤモンドが組み合わさったアイコンでモデルを作成しています。ダイヤモンドと表が組み合わさったアイコンに対して、予測対象のデータソースをつなぐことによって、予測分析のフローは作成完了です。 アルゴリズムは初めから組み込まれているため、GUIでフローを記載するだけでモデルが作成されます。アルゴリズムを実装できなくても、線でアイコンを結ぶだけで機械学習によってモデルが作成できます。

作成したモデルの予測精度に関してもGUI上で確認が可能となっています。下図は「リフトチャート」と呼ばれる、機械学習のモデルの予測精度を確認するグラフです。細かい説明は省きますが、左上にあるモデルほど予測精度が高いものとなります。

リフトチャート
リフトチャート

機械学習というとすごく高度なスキルが必要に思われますが、モデルの作成も自動化され、予測精度の結果の見方さえある程度学べば、簡単に機械学習を始めることができます。プラットフォームを構築するステップもクラウドサービスを使うことによって、GUIだけで完結することができます。

まとめ

機械学習のブームから機械学習について考えさせられるケースが増えてきています。機械学習を始める際には、分析だけでなく、インフラやビジネスと幅広い知識が必要となります。ただ、クラウドサービスによって1つ1つの知識を深く必要とせず開始できるようになりました。

分析は始めてみないと、うまくいくかどうかがわかりません。クラウドによってスモールスタートできるいま、まずは手持ちのデータでどこまで分析できるのか試してみましょう。

この記事は参考になりましたか?

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
Oracle Database Cloudでいってみよう! ~ 【特別編】連載記事一覧
この記事の著者

小川 幹雄(オガワ ミキオ)

日本オラクルのクラウドアーキテクト。データサイエンスにおけるオラクルクラウドのソリューション構築を担当。機械学習、グラフ分析、ビジュアライズ分析とデータ分析をライフワークにしている。プライベートでも分析関連の論文などを読んでいることが多い。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/9331 2016/05/29 16:02

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー