機械学習アプリを「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 マーケティング新着記事

news024.png

「ECプラットフォーム」 売れ筋TOP10(2024年3月)
今週は、ECプラットフォーム製品(ECサイト構築ツール)の国内売れ筋TOP10を紹介します。

news090.jpg

GoogleがZ世代のローカル検索でInstagramやTikTokに敗北 なぜこうなった? これからどうなる?
Googleは依然として人気の検索サイトだが、ことZ世代のローカル検索に関しては、Instagra...

news056.png

DE&Iに関する実態調査 「公平」と「平等」の違いについて認知度は2割未満
NTTデータ経営研究所がNTTコム オンライン・マーケティング・ソリューションと共同で実施...