2000年代から隆盛した人工知能(AI: Artificial Intelligence)のブームは、第3次人工知能ブームと呼ばれています。「機械学習(Machine Learning)」と特に「ディープラーニング(Deep Learning:深層学習)というテクノロジーの登場が、大きく様相を変えました。人工知能の汎用化はめざましく進展し、ビジネスで実践的に使われるようになりました。
AIは、センサーなどから入力したビッグデータをもとに、パターン認識などの学習を行います。機械学習によって精度を高めた人工知能の活用分野は、医療、金融、ロボットなどを中心に、さまざまな領域に拡がっています。特にIoTと結びつくことによって、消費者はもちろん産業分野で急速にAIが普及しつつあります。
Azure Machine Learningサービスは、効率的な機械学習モデルの構築、トレーニング、デプロイを実現し、ビジネスにおけるAI活用を加速するAzureのサービスです。
ここでは、まず機械学習を概説し、Azure Machine Learningで提供されるサービスの概要、機械学習のプラットフォームとしてAzureを選ぶべき理由を解説します。
機械学習のアルゴリズム4つの種類
機械学習のバイブルとしては、Kevin P. Murphy氏による『Machine Learning:a Probabilistic Perspective』が有名です。2012年の初版、1,000ページものボリュームがあり、機械学習について広範な知識が網羅されています。教師あり学習と教師なし学習などの基本が冒頭で解説され、ベイズ統計、線形回帰、ロジスティック回帰などの章が設けられています。機械学習は現状では、数学の統計理論で処理されるため、AIに関連する統計学の知識をひとつひとつ丁寧に解説していく構成の書物です。
機械学習のリファレンス(辞書)として研究者や開発者には絶賛されていますが、この本を読んだからといって機械学習の実践的な成果が出るとは限りません。とはいえ、もしデータサイエンティストとして本格的に取り組むのであれば、理論を熟知するためにこの本をひもとくとよいでしょう。
機械学習は非常に膨大な知識を背景に、さまざまな試行錯誤を繰り返しながら成長してきました。そのひとつひとつを詳細に解説するのは困難なので、最も基本的な4つのアルゴリズムを確認し、その後にAzure Machine Learningのメリットの解説につなげていきます。
機械学習のアルゴリズムには基本的に「教師あり学習」「教師なし学習」「強化学習」の3つがあります。加えて機械学習の一部として「ディープラーニング」があります。それぞれを解説します。
教師あり学習(Supervised Learning)
事前に正解が与えられた大量のデータをプログラムに与え、入力と出力を学習します。学習によって、未知のデータを与えられたときに回答を出力できるようになります。一般的に、画像を認識して分類したり、今日の天気を入力することによって明日の天気を出力して予測したり、そんな利用に適しています。
教師なし学習(Unsupervised Learning)
正解を記述されたデータを与えられずに、データの構造や特性をプログラムが解析して、特徴を導き出します。しかし、やはりデータは必要です。この学習に使われるデータは、教師ありデータに対して「教師なしデータ」と呼ばれます。たとえば、購買情報をもとに顧客をいくつかのグループに分けるようなときに有効です。
強化学習(Reinforcement Learning)
教師あり学習、教師なし学習のようにデータから学習するのではなく、プログラム自体が与えられた行動の選択肢と報酬によって評価を出力します。その結果、一連の選択肢の結果から報酬を最大化する方法をみずから学習するアルゴリズムです。たとえば、株価のチャート全体の情報から最大の利益が出るように自動的に売買するためのシステムとして、実際に証券会社に導入されています。
ディープラーニング(Deep Learning)
ディープラーニングは機械学習のひとつの手法です。20世紀後半から研究が進められた、人間の神経細胞(ニューロン)のモデルを模したニューラルネットワークという手法を発展させました。何層も機械学習を重ねることにより、データの分析と学習を強化します。大量のテキスト、音声、画像などによって特徴を自動的に解析し、ときには人間の精度を超える高度な認識が可能です。この手法が主力になりつつあります。
Azure Machine Learningとは
Azure Machine Learningはクラウドコンピューティングからエッジコンピューティングまで、開発者に適したツールやフレームワークで機械学習を使ったソリューションを迅速に構築します。そして、エンタープライズの生産性向上とイノベーションを実現する機械学習の機能です。
機械学習のアルゴリズムで解説したように、教師あり学習と教師なし学習では膨大な学習用データが必要であり、強化学習やディープラーニングではさらに高速処理できる環境が求められます。現実的には開発者の負荷軽減とコスト低減も考慮すべき課題です。Azure Machine Learningはそのような要望に応えます。
Azure Machine Learningにおけるアルゴリズムは「Azure Machine Learning Studioアルゴリズムチートシート」を使って選択できます。メリットは次の3つがあります。
コード不要で自動化された機械学習、オープンソースもサポート
ドラッグ&ドロップに対応したビジュアルインターフェイスで、機械学習を自動化できます。もちろんコードによるプログラミングも可能です。自動化された特徴エンジニアリング、アルゴリズム選択、ハイパーパラメータースイープを備え、機械学習モデルの開発期間を短縮します。ONNX、Python、PyTorch、scikit-learn、TensorFlowのような開発者が使い慣れたオープンソースやフレームワークをサポートしています。
機械学習用のDevOpsで信頼の高いイノベーションを実現
機械学習用のDevOpsである「MLOps」で、機械学習用データの準備、デプロイ、人工知能の運用と監視まで、エンドツーエンドのライフサイクルを効率化します。機械学習パイプラインを使用して、ワークフローの簡素化も実現します。
継続的インテグレーションと継続的デリバリー(CI/CD)によって、サポートとメンテナンスの手間を省き、機械学習モデルの品質を向上させることができます。成果物やデプロイ済み機械学習モデルのパフォーマンスを一元管理することが可能です。
柔軟性のあるスケーリング、機械学習モデルの保護
用意したデータを使って、柔軟に機械学習モデルをデプロイできます。強力なCPUとGPUのリソースによる自動スケーリングで、費用対効果の高い環境で迅速なトレーニングが可能です。ハードウェア言語で設計を修正できるFPGA(Field Programmable Gate Array)を使用して、リアルタイムの推論も実現。初期費用は不要で、必要な期間に利用した分だけ料金が発生する費用体系です。
また、構築した機械学習モデルはAzureのエンタープライズ対応のセキュリティ、コンプライアンス、仮想ネットワークサポートを適用し、ID、データ、ネットワーク用の組み込みコントロールでAzure全体のワークロードを包括的に保護します。
国立がん研究センター東病院に導入されたAzure
国立研究開発法人国立がん研究センター東病院では、Azureを用いて医師の暗黙知のデータベース化を2017年11月に着手、翌年に完成させました。世界で初めての試みです。
30 fpsで撮影した医師の手術映像をクラウド上のストレージに保存し、「手術工程」「利用術具」「処置内容」「対象臓器」など、人力によって映像をラベリングしました。手術時間は1回あたり2時間かかるため、100回の手術映像の総フレーム数は2,160万フレームになります。膨大な作業量を費やさなければなりませんでした。
Azureが選ばれた理由として、第一にMicrosoftはヘルスケア業界で13年以上の実績があり、ISO 27017/ISO 27018という第三者認証を得ている信頼性が評価されました。さらに、Cognitive Servicesによる学習済みモデルの提供や、Azure Machine Learningによる独自モデルのAIをPaaSで実装し、エッジコンピューティングのようなサーバーレスでも利用できる柔軟性が重視されたそうです。
超高齢社会と同時に医療従事者の人出不足という点から、優れた医師のノウハウをデータベース化することは意義がある試みといえるでしょう。
まとめ
社会現象としては沈静化した印象のAIブームですが、実際には、それぞれの分野で活用が進み、学習精度の向上とコスト削減や効率化が進んでいます。医療業界の事例に限らず、さまざまな分野でAIが実用化されていく時代になりました。Azure Machine Learningも今後が期待されるAzureの機能のひとつです。