DOORS DX

ベストなDXへの入り口が
見つかるメディア

【シリーズ】シチズンデータサイエンティストが扱う機械学習ツール~Azure編~

公開日
2021.05.18
更新日
2024.04.23

こんにちは。データサイエンティストの西村です。

皆様は、「データサイエンティスト」という言葉を聞いて、どんな業務を思い浮かべるでしょうか?

機械学習、統計解析の専門家たちが企業におけるさまざまな課題の解決に向け、Python, Rなどのプログラミング言語を駆使し、日々スクラッチで機械学習モデルや統計モデルを開発しつつ、さらなる精度の改善にいそしむ…

そのような業務風景を思い浮かべる方も多いでしょう。

現在弊社には150名ほどのデータサイエンティストが在籍していますが、実際に弊社の多くのデータサイエンティストもこのようなアプローチで仕事に取り組んでいます。

【関連記事】
【社員が解説】データサイエンティストとは?仕事内容やAI・DX時代に必要なスキル

一方で、高度な分析アルゴリズムやプログラミングスキルを持ち合わせていなくても、強力な機械学習ソフトウェアの力を借りて、日々分析や機械学習モデルの作成に取り組む、「シチズンデータサイエンティスト」と呼ばれる人たちが年々増えてきていることも事実です。

それに呼応するようにAzure、Google Cloud、AWSやOracleなど各種クラウドベンダーは、自社のクラウドサービス内で使える機械学習ツールの拡充を急速に進めてきています。

企業が抱えるさまざまな問題に対応するため、フルスクラッチでモデル構築を行うデータサイエンティストの日々の奮闘ぶりやそのノウハウについては、ほかの社員に任せすることにして、本稿では、機械学習にあまり詳しくない方(≒シチズンデータサイエンティスト)でも使えるクラウドベンダーの機械学習ツール、その中でもAzure Machine Learning サービスについて紹介します。
データサイエンティストを自社で育成、採用することに苦労している方にも、読んでいただきたいと思います。

※ツールの紹介がメインとなっており少々難しい内容かもしれませんが、機械学習を身近に感じていただける一助になれば幸いです。

Azureにおける機械学習サービス

Azureの機械学習サービスは

  • Azure Machine Learning
  • Azure Cognitive Services

の主に2つに分類されます。

前者は、CSVや、RDBなどのテーブル構造のデータといった「構造データ」を使った機械学習モデルの構築に特化していて、機械学習モデルを作成、作成したモデルによる予測(とその自動化)、ライフサイクル管理までを一気通貫で実施できるソリューションサービスです。

機械学習スキルやプログラミングスキルなどに応じて、いくつかの機械学習サービスを使い分けることができ、データの取り込み、前処理からモデルの作成、評価、モデルの管理まで総合的に実施できる内容となっています。

後者は、自然言語処理や画像認識といった「非構造データ」に関する各種のAIサービス群です。

実施する機械学習タスクによってDecision(異常検知やレコメンデーション)、Language(翻訳、テキスト理解等)、Speech(音声の文字起こし等), Vision(画像認識や顔検知等)の下位ツール群に分かれています。

それぞれノーコードでAPI開発や、アプリ化に特化しており、非構造データに関する機械学習サービスを簡単に構築することができます。 下記に、具体的な分析タスクごとのサービス表を記載します。

表からもわかる通り、機械学習を使って実施する主要なビジネスタスクはほぼ網羅しています。

上記のツール群は、データさえ取り込んでしまえば、機械学習モデルサービスとしてデプロイ(本番適用)することができるので、「とりあえず機械学習を導入してみて性能を測る」といった課題感であれば、クイックに実装できます。

またAzureの別サービス、特に機械学習に取り込む学習・検証用データ、あるいは実際にモデルを適用する本番データが格納されたAzure の各種データベースサービス群(特に高度なデータウェアハウスを構築するためのAzure Synapse Analytics)との連携機能も充実しています。

API化も含め、機械学習モデルのデプロイ機能までも完結するため、機械学習モデルの全プロセスをAzure内で完結させることができるようになっています。


Azure Machine Learningについて

Azure Machine Learningは、前述の通り利用者のプログラミングスキルに応じて機械学習モデルを構築、運用できるサービスで、「Automated ML」、「Designer」、「Notebooks」の3つの機能に分かれています。

ここでは、上記3つのツールについて詳細を紹介します。

Automated ML(自動ML)

自動機械学習(複数のアルゴリズムの中から、最も性能の良い前処理、モデリングを自動する選択する仕組み)による、機械学習モデルをGUIで構築できるサービスです。

  • 「分類(cf. クレジットカード不正検知、ローンの審査)」
  • 「回帰(cf. 価格や来店者数等の予測)」
  • 「時系列予測(cf. 需要予測)」

の3つの機械学習タスクを実施することができます。

自動機械学習のうち、機械学習のプロセスに応じて、

  • データの偏り、オーバーフィッティングの防止
  • 特徴量エンジニアリングの自動化
  • 最良のハイパーパラメータ選択、アルゴリズム選択の自動化

をサポートしているため、機械学習に詳しくないユーザーであっても、一定以上の精度のモデルを、迅速に作成することができます。 また、学習結果の評価機能も充実しています。

混同行列やROC曲線はもちろんのこと、機械学習モデルのブラックボックス化(予測精度は高くても、モデルの内部で何が評価されているか、人間から解釈できなくなってしまうこと)を防ぐための評価指標を確認できます。特に、

  • 特徴量のグローバルな重要度(作成した機械学習モデルにおいて、全体的にどのような特徴量が寄与しているか)
  • 特徴量の局所的な重要度(特定の予測結果に対して、どの特徴量が重要とみなされるか)

の双方をインタラクティブに確認できるようになっています。

Designer(デザイナー)

キャンバス上に、機械学習の各工程を実施するためのモジュールを並べて接続することによって、機械学習モデルの全工程を構築するサービスです。

Automated MLと違って、各工程を手作業で作成する必要はある、自動機械学習などの機能はない、などの違いはありますが、分類や回帰以外の「クラスタリング」や「レコメンデーション」などのタスクを実施することができます。

Notebooks

Azureのリソース上で動く、Jupyter notebookによるPython実行環境をAzure上に構築できます。

各種のAzure リソース同士(cf. データベースとの連携等)を接続したり、上記のAutomated MLで紹介した自動化、可視化機能等を、独自に用意されたPython SDKで利用することが可能です。

また、特筆すべき内容として、ここ数年機械学習界隈で話題になってきた「公平性の分析(fairlearn。機械学習モデルから、人種/性別/肌の色などによるバイアスを防ぐ)」機能をPython SDKの目玉として搭載しています。 また、上記の3つのツールや、関連リソースを管理するための管理用ポータル画面として、Azure Machine Learning Studioが利用できます。

Azure Machine Learning Studio上では、

  • 上記のツールを作って開発した機械学習モデルや利用したデータセットのバージョン管理
  • 機械学習モデルを構築するための計算リソースの管理
  • 機械学習モデルのデプロイ管理

等を実施することができます。上記を駆使することで、機械学習モデルのライフサイクル管理(MLOps)を実現することができます。

最後に

Azureでの機械学習サービスを駆け足で紹介しましたが、いかがでしたでしょうか。
他の2大クラウドベンダー(Google Cloud,、AWS)も足早に機械学習サービス群をリリースしており、単純な機能比較は難しい状況ですが、現在自社のデータウェアハウスをAzure上に構築している場合であれば、自社内のデータサイエンティストの有無に積極的に活用してみてはいかがでしょうか?

(参考)



本記事でご紹介した
製品・サービス
このページをシェアする

あなたにおすすめの記事

Recommended Articles

株式会社ブレインパッドについて

2004年の創業以来、「データ活用を通じて持続可能な未来をつくる」をミッションに掲げ、データの可能性をまっすぐに信じてきたブレインパッドは、データ活用を核としたDX実践経験により、あらゆる社会課題や業界、企業の課題解決に貢献してきました。 そのため、「DXの核心はデータ活用」にあり、日々蓄積されるデータをうまく活用し、データドリブン経営に舵を切ることであると私達は考えています。

メールマガジン

Mail Magazine