API Meetup Tokyo #19 行ってきたメモ

API Meetup Tokyo #19 〜六本木ヒルズスペシャル〜に行ってきました

  • ヒルズにいるapigee@GoogleさんとPivotalさんなのでヒルズスペシャル!

Googleが提供する機械学習API

  • Google Cloud Platformチーム デベロッパーアドボケイト 佐藤 一憲(@kazunori_279) さん

  • GCP

    • AWSみたいなやつ」で会場ウケる
  • ニューラルネットワーク(NN)

    • 学習できる関数
    • 「やってみないとわからないが」
      • ゲームならチートや優良プレイヤーの検知
    • PlayGroundのデモ
      • 根気強く答えを教えてやると学習してくる
      • 単純な線形分割を1つのニューロンとすると、それを階層化する
      • ニューロンの結びつき(Weight)の強弱を変える
      • これをノンプログラミングでできるのが、いまのAIの盛り上がり
      • ニューロンの階層、各階層の数はセオリーがない
        • みんな試行錯誤でやっている・・
        • ルールベースでないところがNNの強み
          • cf.チェスのディープブルー
        • 要は データの特徴を探し出す
      • ニューロンの階層が深いと「ディープラーニング(DL)」
  • Googleでは10を超えるサービスでDL
  • Cloud Vision API
    • 一番使われているのはセーフサーチ(エログロ系のブロック)
  • Cloud Speech API

    • 文字起こしに使える
    • コールセンターなどの引き合い
    • さらにNatural Language API自然言語っぽく整形、感情分析
    • ツイートなどから製品や店舗の評判の分析にも
  • TensorFlow

    • よくある引き合い、既存のAPIでは対応できないもの
      • CTやレントゲンの画像からガンを見つけたい
      • 中古車の画像から車種などを特定したい
    • 機械学習で必要な数学の知識がなくても使えるのが強み
    • 結局NNは行列演算になるので、得意なのはGPU
    • スケーラビリティを念頭に置いたフレームワーク
    • 学習結果自体は数十MBぐらいの容量になるのでスマホにも入れられなくはないサイズ
    • コミュニティ、エコシステムの厚さ
    • SnapdragonがチップセットレベルでTensorFlowをサポートするなど
      • CPUでの認識より10倍以上早いというデモ
    • きゅうり農家さんの事例
    • からあげロボット
      • 食品をつかむのは難しい、というところを学習
    • DCGAN
      • お手本を多数インプットすると、それに近いものを生成してくる
        • アイドルの顔を多数見せて、アイドルっぽい顔写真の生成 こちら?
      • DeNAはプレイヤーごとのアイコン作成を実験中
    • GoogleではTensor用のASICチップを大量に入れているのでTensorに最適化されている
      • なのでGCP使うといいよ!
  • Cloud Machine Learning Engine(ML Engine)

Pivotalが推進するAPIとプラットフォームの活用

  • Pivotalジャパン 市村 友寛 さん
  • VMWareとGE出資でPivotal
  • Spring盛り上がっている!

  • アジャイルメソドロジーを覚えて帰っていってもらう活動もしている

    • Circle of Code
    • イデア→プラン→コード→ビルドパイプライン→デプロイ→フィードバック→(アイデアに戻る)
      • Pivotalで一連のアクティビティをサポートできるよ
  • 朝礼は9:06分

    • 9:00だと来ない、9:10だと遅れだすらしい
    • 円陣組んでやってる
  • イデアからプランへ

    • トーリーにする
      • コードを書き出せる程度に細分化するプロセス
    • Pivotal Tracker
      • SaaS型PJ管理ツール
      • 対抗はRedmineとかJIRA
      • トーリーを管理できるのがウリ
      • CloudFoundryのプロダクト管理にも活用
      • トーリーが1タスクになる
        • プロダクトマネージャーが承認して開始、受入もプロダクトマネージャー
          • (難易度を入れられるところも含めスクラムみたいだ)
        • トーリーの状態管理にUIもAPIもある
          • わかりやすい事例はGithub連携
          • コミットコメントにステータスとストーリIDを埋めるとWebhookでTrackerに
  • spring framework

  • Concourse (build pipeline)

    • CloudFoundryにおけるCI/CDの課題
      • 異なるアーキテクチャ、プラットフォーム、インフラでの動作確認やデプロイ
      • Jenkins職人作るぐらいなら・・・・
    • リソースにGitやS3、Docker、Bosh.ioつかえる
    • パイプラインの定義はYAMLで書ける
      • Concourseが動いていれば、どこでもパイプラインを持ち出せる
    • プロジェクトとパイプラインの統合
      • git -> Concourse -> Pivotal Tracker
      • APIを駆使して色々なものをパイプラインに任せられる
  • フィードバック

    • Spring Cloud Sleuth + Zipken
      • Zipkin
        • どのエンドポイントがボトルネックになっているか を一元的に表示
    • 何かが遅いというときに
      • Sleuthで仕込み
      • Zipkinで集める
  • Pivotal Labsでベストプラクティスをお教えしています!」

次回予告

  • 次回番外 福岡開催
    • 国家戦略特区である福岡
    • 5/19(金)@ヌーラボ福岡オフィス