LAC WATCH

セキュリティとITの最新情報

RSS

株式会社ラック

メールマガジン

サイバーセキュリティや
ラックに関する情報をお届けします。

ラックピープル | 

AI技術者向けデータ分析プラットフォームをAWSクラウド上で構築してみた

こんにちは、イノベーション推進部イノベーション開発グループの中本です。
新卒3年目でデータサイエンティストをしています。

今回はAI技術者に向けて、AWSを使ったデータ分析環境の構築についてお話します。

イノベーション開発グループの活動

本題に入る前に、少しだけ私が所属しているイノベーション開発グループ(InnoDev)についてご紹介します。InnoDevは、AI技術を活かした新たな技術やサービスを生み出すチームです。現在はAI不正取引検知サービス「AIゼロフラウド」のサービス提供を中心に外部コンペへの参加や論文執筆などで活動しています。

I不正取引検知サービス「AIゼロフラウド」

AIゼロフラウドで活用するAIエンジンは、金融犯罪対策に対する深い理解と、最先端のAI技術と知見を融合することで実現しました。インターネットバンキングの不正送金やECサイトにおけるクレジットカードの不正利用などオンライン取引の不正を防止するだけでなく、銀行ATMを出入口とした一部の特殊詐欺※1といった犯罪を未然に防ぐ対策としても有効です。

※1 預貯金詐欺、キャッシュカード詐欺盗、還付金詐欺

AWSを使ったデータ分析環境を作った背景

さて、今回AI技術者に向けて、AWSを使ったデータ分析環境の構築をした背景からお話ししていきます。これまでの開発環境では、AWSのEC2インスタンス上で起動しているJupyter Notebookを、ローカルPCからAWS System Manager(SSM)のSession Managerを通してSSH接続でアクセスしていました。

この方法だとインスタンスタイプ(スペック)の変更に再起動をする必要があったり、EC2インスタンスがオフラインのため、ライブラリのインストールに制限があったりと柔軟な開発ができませんでした。改めてデータ分析環境の要件を整理します。

  • セキュアな環境
    • (ア) データ暗号化される
    • (イ) ネットワーク通信制御ができる
    • (ウ) ユーザー制御ができる
  • リソースの拡張・縮小が柔軟にできる
  • 環境自体をすぐに作れる

そこで今回はSageMaker StudioというAWSのサービスを用いてデータ分析の新環境を構築しました。

データ分析の新環境の設計図

Amazon SageMaker Studioとは

今回使用するAmazon SageMaker Studioとは、「データ分析のための統合開発環境」です。これまで手動で管理していたプロセスを一か所で管理、実行可能にしたのがAmazon SageMaker Studioです。しかも簡単なデータ分析環境なら数クリックで構築ができるので、初心者から上級者まで使える便利なサービスです。しかし、課金口が複雑なので知らない間に費用がかさむことがあり気を付ける必要もあります。

通常のAmazon SageMaker Studio環境と違って工夫した点

今回の環境構築においてオプションで付け加えた設定が二点あります。

カーネルを起動している時間によって課金額が決まるのがSageMaker Studioですが、起動していてもプログラムを実行していないアイドル状態に課金されるのはもったいないですよね。

そこで公式から提供されているAPI、Sagemaker Studio Autoshutdown Extension※2を使ってアイドル状態のカーネルを自動シャットダウンするようにしました。

※2 GitHub - aws-samples/sagemaker-studio-auto-shutdown-extension

もう一つ、機密データを扱うことを想定してセキュアな環境にするためファイアフォールを設置しました。ただしライブラリのインストールや外部サイトのデータセットのダウンロードが業務上必要なため、ステートフルリストドメインフィルタという設定を採用しました。これはデフォルトですべての通信を遮断していますが、あらかじめ設定したドメインURLだけGET通信を許可する設定です。

(例)Kaggle, pip, githubのみ許可
.kaggle.com
.pythonhosted.org
.python.org
.pypi.org
github.com

実際に使ってみた所感

部署に配属された新人二名に対して、今回構築した環境を使って新人研修を実施しました。管理者側でAWSユーザーを作っておけば、あとはGUIで各自作業ができるので作業側の環境設定が容易になったことが思わぬ副産物でした。ただカーネルを複数起動して課金額がふくらむことがあったのでリソース管理を少し厳重に行う必要がありそうです。

Amazon SageMaker StudioのGUI

おわりに

私が所属するInnoDevではこのようにデータ分析プラットフォームを構築し、ビッグデータを用いて新たな技術やサービスを生み出すチームです。InnoDevはラックの中では比較的新しくできたチームで少数精鋭ですが、これからもっと大きくしていき、もっと皆さまのお役にたてる取り組みをしていきます。「AIゼロフラウド」をはじめ、AI技術を活かした新たな技術やサービスのご相談など、お気軽にラックまでお問合せください。

「AI技術を活かしたサービス」に関するお問い合わせ

この記事は役に立ちましたか?

はい いいえ