Amazon SageMaker Searchについて調べてみた


この記事は株式会社ナレッジコミュニケーションが運営する[Amazon AI by ナレコム Advent Calendar 2018](https://qiita.com/advent-calendar/2018/knowcom-amazonai)の12日目の記事になります。

##はじめに
先日開催されたre:Invent 2018ではAmazon SageMaker アップデートとしてGitリポジトリ統合,Search,セマンティックセグメンテーションが発表されました。
![2018-12-12_11h03_36.png](https://qiita-image-store.s3.amazonaws.com/0/229923/a6150c7f-d4e4-e173-57d5-ff6e1e044792.png)
引用元：[[AWS クラウドサービス活用資料集]AWS re:Invent 2018 アップデート速報【NEW!】](https://d1.awsstatic.com/webinars/jp/pdf/services/20181130_AWS-BlackBelt_reinvent2018digest_1205.pdf)

今回は、Amazon SageMaker Searchについて調べたものをまとめていきます。

##Amazon SageMakerとは
Amazon SageMakerとは、一言で表すと「フルマネージドな機械学習サービス」です。
今回の記事はAmazon SageMaker Searchについての記事になるので、詳細については、下記URLを参考にしてください。
[Amazon SageMaker](https://aws.amazon.com/jp/sagemaker/)
[[ナレコムAWSレシピ]Amazon SageMaker　いじってみた1](https://recipe.kc-cloud.jp/archives/10841)

##Amazon SageMaker Search概要
Amazon SageMakerでの学習ジョブを様々な条件で素早く簡単に整理、追跡、評価することができる機能です。機械学習モデルを開発するには、継続的な実験や観察が必要になるため、新しい学習アルゴリズムを試したり、モデルのハイパーパラメータをチューニングしたりと、膨大な数のモデルや学習ジョブが必要になってきます。これらの学習ジョブなどをAWS マネジメントコンソールやAPIなどを使用し、簡単に管理できる検索機能がAmazon SageMaker Searchです。

※2018/12/12 現在、Amazon SageMaker の利用が可能な 13 の AWS リージョンで、追加料金なしで提供されていますが、ベータ版の為注意が必要です。

##使用方法
Amazon SageMaker SearchをAWS マネジメントコンソールから使用する方法はすごく簡単です。
AWS マネジメントコンソールよりAmazon SageMakerを開き、サイドメニューから[検索]を選択し、Amazon SageMaker Searchを開きます。
学習ジョブの情報（プロパティ / 演算子 / 値）を入力し、比較 / 検索をおこないます。
![2018-12-12_11h32_51.png](https://qiita-image-store.s3.amazonaws.com/0/229923/70f00f91-0e05-4c9e-31a8-f6a489110ea5.png)

####プロパティの選択
アルゴリズムのイメージ名や学習ジョブ名、学習日時などから選択します。
![2018-12-12_14h51_03.png](https://qiita-image-store.s3.amazonaws.com/0/229923/e8b4d825-de44-3542-e88b-fe6af40f52c6.png)

####演算子の選択
検索したいプロパティと値の関係です。また、選択したプロパティによって選択できる項目が異なります。
![2018-12-12_14h51_25.png](https://qiita-image-store.s3.amazonaws.com/0/229923/04585b5a-dc3b-35e3-21a1-c94548f0ca87.png)

####値の入力
検索したいプロパティに含まれる値を入力します。
例えば、日時(2018/12/12)や、名称(linear-learner)など。
![2018-12-12_15h07_51.png](https://qiita-image-store.s3.amazonaws.com/0/229923/55ebd3ed-72c2-3052-14b8-e327c1a3d489.png)

####検索
以下画像のように検索をかけると、linear-learnerの学習ジョブが表示されます。
![2018-12-12_15h11_05.png](https://qiita-image-store.s3.amazonaws.com/0/229923/1a8b8606-dc5b-4a11-35a2-1235229022a7.png)


####メトリクスのソート
以下画像の枠内、[▼]がついている項目に関しては、該当の名称部分をクリックするだけで結果の並べ替えが可能です。
![2018-12-12_15h20_03.png](https://qiita-image-store.s3.amazonaws.com/0/229923/76452198-7ad8-06ad-5fbc-02f3ffc7c496.png)


また、設定から表示させたいメトリクスの項目を変更することが可能です。
![2018-12-12_15h34_55.png](https://qiita-image-store.s3.amazonaws.com/0/229923/f4d5166c-c7d8-1093-e9e7-aaf37bb93b60.png)
![2018-12-12_15h19_41.png](https://qiita-image-store.s3.amazonaws.com/0/229923/8c667851-ca82-3717-5605-16b2764c5d59.png)

また、[AWS SDK API for Amazon SageMaker Search](https://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/API_Search.html)を使用して検索をすることも可能です。

参考URL：[Amazon SageMaker に機械学習実験を加速する新機能が登場](https://aws.amazon.com/jp/blogs/news/amazon-sagemaker-now-comes-with-new-capabilities-for-accelerating-machine-learning-experimentation/)

##さいごに
Amazon SageMaker SearchのAWS マネジメントコンソールやAPIを使用して簡単に学習ジョブを比較 / 検索できる機能はすごく便利な機能だと思います。
現在使用できるAmazon SageMaker Searchはベータ版になるので、今後のアップデートが気になりますね。