機械学習アプリを「FaaS」で開発すべきこれだけの理由「サーバレス」で開発にまつわる負担を軽減

機械学習を導入する際は、幾つかのハードルを越えなければならない。その有力な手段となり得るのが「FaaS」だ。それはなぜなのか。

2020年01月21日 05時00分 公開
[Scott RobinsonTechTarget]

 さまざまな業界で競争上の優位性をもたらしている技術に「機械学習」がある。一般的に機械学習を導入する際には、大規模なインフラを使って機械学習モデルをトレーニングすることが必要になる。大勢のエンドユーザーが求める速度で、機械学習モデルのトレーニングを機能させなければならない。

 無視できない問題に「コンセプトドリフト」がある。コンセプトドリフトとは、データの多様性によって時間の経過とともに、機械学習モデルのトレーニングパフォーマンスが低下し、再トレーニングが頻繁に必要になることを意味する。この状況はバージョン管理といった問題の引き金にもなる。

 Amazon Web Services(AWS)やGoogleなどの大手クラウドベンダーは、機械学習モデルのトレーニングを支援するサービスを用意している。AWSの「Amazon SageMaker」、Googleの「AI Platform」、IBMの「Watson Machine Learning」、salesforce.com(Salesforce)の「Salesforce Einstein」、Seldon Technologiesの「Seldon Core」は、このようなサービスの代表例だ。

 機械学習のアプリケーションを従来の方法で開発する際には、幾つかの課題に直面する。そうした課題をある程度解消する手段となり得るのが「FaaS」(Function as a Service)だ。

FaaSとは何か

 FaaSは、アプリケーションサーバの存在を意識せずに開発可能なアプリケーションのアーキテクチャ「サーバレスアーキテクチャ」を実現する。FaaSの代表的なサービスに、特定のイベントをトリガーにしてコードを自動実行する「イベント駆動型コード実行サービス」がある。大手クラウドベンダー各社は既にFaaSを提供している。AWSの「AWS Lambda」、Microsoftの「Azure Functions」、Googleの「Cloud Functions」、IBMの「IBM Cloud Functions」はその例だ。

 HTTPリクエストの処理やマルチスレッドといった、アプリケーションサーバの処理に起因する悩みを抱えている企業は少なくない。FaaSの導入でこうした悩みを一掃できる。FaaSのユーザー企業は、特定のジョブの実行時に使ったリソースについてのみ利用料金を支払えばよい。このシンプルな従量課金制モデルによって、企業はより迅速なアプリケーション開発に向けて必要なリソースを投入できるようになり、開発会社は全社レベルで条件の均一化を図ることが可能になる。

機械学習×FaaSがもたらすもの

Copyright © ITmedia, Inc. All Rights Reserved.

ITmedia マーケティング新着記事

news202.jpg

ネットの口コミを参考に8割超が商品を購入 最も参考にした口コミの掲載先は?
ホットリンクは、口コミ投稿の経験や購買への影響を調査した結果を発表した。

news071.jpg

「生成AIの普及でSEOはオワコン」説は本当か?
生成AIの普及によりSEOが「オワコン」化するという言説を頻繁に耳にするようになりました...

news067.jpg

ボストン コンサルティング平井陽一朗氏が語る 日本企業のイノベーションを阻む「5つの壁」
企業の変革を阻む5つの壁とそれを乗り越える鍵はどこにあるのか。オンラインマーケットプ...