機械学習アプリを「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がもたらすもの

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

news171.png

2024年のGW予算は横ばい 賃上げよりも物価高と円安の影響が勝る?――インテージ調査
インテージが全国の15歳から79歳の男女を対象に実施したゴールデンウイークに関する調査...

news148.jpg

CNN幹部が語る、メディアビジネスにとってのAIのリスクと機会
生成AIがコンテンツを量産し、真偽の明らかでない情報があふれかえる中、メディアの価値...

news016.png

「サイト内検索」&「ライブチャット」売れ筋TOP5(2024年4月)
今週は、サイト内検索ツールとライブチャットの国内売れ筋TOP5をそれぞれ紹介します。