Rakuten Technology Conference 2015に参加しました。二子玉川にある楽天の新社屋Crimson Houseでの開催でした。
並行して複数のセッションが行われていたので見逃したセッションも多いですが、以下のタイムテーブルの各セッション詳細にYoutubeへのリンクがあるので安心です。 http://rakutentechnologyconference2015.sched.org/grid/
全てのセッションが英語ですので、その点でも動画で再確認できるのは素敵です。
以下は参加したセッションについてのまとめです。
## Will AI surpass human intelligence? – Beyond Deep Learning (Yutaka Matsuo)
松尾先生による、これまでのAIの歴史とディープラーニングを用いた研究成果、そして今後の展望についてのお話。
上記動画の28分あたりから紹介されている、ディープラーニングに関連する映像が衝撃的です。 画像解析とゲームスコアによる評価付けで、ブロック崩しやレースゲームをAIが効率良く解いている様子が紹介されています。 どの動画でも前半はやみくもにゲームをプレイしているAIも学習が進むと、ブロック崩しで端に穴をあけてまとめてブロックを崩したり、レースゲームで最適なコース取りをしていて、その急成長ぶりは気味の悪さも感じさせます。
近年の画像解析のアルゴリズムコンペでも、同一人物の顔を見つける処理をした場合の誤認識率は5%を下回り、同一人物・別人物と誤認識していた画像は人間が見ても判別が難しいそうです。
また近年の学習をしていくAIのことを**“Child AI”**、過去のAIにあったような人間が直接に解法や知識を与えておくアプローチでつくるAIを**“Adult AI”**と呼び分けていました。
Programmable IoT Platform “SORACOM" (Ken Tamagawa)
http://rakutentechnologyconference2015.sched.org/event/4N57/programmable-iot-platform-soracom
玉川さんによるSORACOMのお話。
キャリアが提供するパケット通信、帯域制限といった機能を賄うデータセンターのサーバーは、すべて用意しようとすると700億円近くもするらしいです。。
そこでMVNO。SORACOMはIoT向けのMVNOでAWSのようなWebコンソールから管理下のSIMの帯域制限などができます。
使っている例として大手企業や、以下の様なデバイスが紹介されていました。
SORACOM Beam
SIMカードから送られたパケットをキャリアネットワークから先で自動で暗号化してくれるサービス。例えばHTTP通信はHTTPS通信にしてくれます。デバイス側ではSSL通信の処理をしなくてよいので、バッテリーの使用量削減も期待できます。 WHILLでも使われてるらしいです。
今後の展開
最近ではカスタムDNS等の機能をリリースしており、今後も既存のプラットフォームをAWS上で各国にリリースすることでグローバルに展開していくとのことです。
Q&A
- 物理サーバは使ってないのか?それはボトルネックにならないのか?
- ドコモのデータセンターにあるが、拡張可能なためボトルネックにはならない。
- なぜSORACOMをやろうと決心したのか?
- AWSにいたころ、時差ボケで眠れない夜にSORACOMのプレスリリースを書いて、翌日の朝にそのプレスリリースを読んでこれはいけると思ったのがきっかけ
- SORACOM Beamはどのくらい電力使用量を減らすのか?
- 具体的なデータは持ってないが、HTTPSの処理は多大なリソースを使っていた部分をHTTPで処理できる分、削減できると考える。
- Software SIMについてどう考えるか?
- いまのSORACOMはSIMカードが必要。リモートでプロファイルが書き換えられるSoftware SIMはSORACOMとも相性が良いので、調査中。実際にEU諸国での例もあるので展開が楽しみ。
Rakuten and Microsoft talk DevOps in Real world (Kotaro Ogino / Drew Robbins / Tsuyoshi Ushio)
動画冒頭の"DevOps!!!“コールは音量に注意してください笑
The Phoenix ProjectがアメリカではDevOpsのバイブル本とのことです。
DevOps Journey (Micorsoft)
Visual Studioは1997年にリリースされ、当時は2、3年おきにリリースするというサイクルでした。 そして最初のリリース後はバグ修正だけに終始してユーザのフィードバックに応えることはありませんでした。
2008年移行にその体制は変わって、2013年にはVisual Studio Onlineという形でリリースがされました。
DevとOpsとPMに分かれていたチームは
- Dev & OpsでDevelopment Teamになり、
- Dev & Ops & PMでFeature Teamになり、
顧客とコラボレーションして動くようになりました。 その結果、いまでは1週間で80デプロイを行い、それでもインシデント数は1ヶ月で10個だけになったそうです。
さらに凄いのは、この変化は会社のサポートが最初からあって起きたわけではなく、以下のフェーズを経て少数の熱意から変化したそうです。
- Change agent(s) : DevOpsを始める少数の人、ユニコーンによるDevOps開始
- Grassroots : 著名人などを招いた会社内でのイベントの実施
- Tops down
- Scale : Dojoシステム
今ではDojoシステムというものがあり、週一程度で定期開催される会でCI等についていつでも学ぶことができます。 それでもまだDevOps Journeyの途上だということです。
他社のDevOps Journeyとしては以下のストーリーが紹介されました。
- Rakuten: Microservicesにより、大きな企業の中であっても、各チームはスタートアップのように振る舞う
- Yahoo! Japan: DevとOpsの壁をなくすために、Devチームのユニコーン(リーダー格)の人をOpsに入れることで、Opsに自動化の文化を生み出す
Test Automation for DevOps (Rakuten)
発表者の荻野さんは楽天のIDやポイント、決済を管理するGroup Core Serviceという部署で働いていており、多くのビジネス要求がある中でどのようにDevOpsを回しているかの紹介がありました。
スケール可能なパフォーマンステストを行うため、楽天内のOpenStack環境を使い、数クリックでGatlingによるテストを実行できるとのことです。そして全てのCI結果はKibanaにより集計されていました。かっこいい。
CI Strategies (Microsoft)
Microsoftでは以下のような戦略・手法をとっています。
- クラウドとオンプレミスのコードベースを共有する
- いつでもデプロイ可能にする
- Canary testing (カナリアテスト) : 一部のサーバクラスタにだけ新機能をリリースし、問題がなければ他のクラスタにもスケールしていく
- Feature flags : ランタイムで機能のON/OFF
Continuous Delivery Strategy Map
牛尾さんがDevOpsインタビューをする中で気づいた戦略マップにはSpeed、Qualityの2つの軸があります。
Cookpadが行っているような、いつでもロールバックできるようにする戦略はSpeed重視、荻野さんの例やカナリアテストを使う戦略はQuality重視になります。
Building Smart Applications with an Algorithm Marketplace : Diego Oppenheimer, Algorithmia & DEX & DEX(TRA) : Dextra (Daryl Arnold / Diego Oppenheimer)
Algorithmia
Algorithmiaは人々がアルゴリズムを発見・利用できる状態にすることを目的とする会社で、様々なアルゴリズムをサイト上で試用・購入することができます。
アルゴリズムエコノミーが必要な背景としては以下の事例を挙げていました。
- 2009年には8ゼタバイト(テラ->ペタ->エクサ->ゼタ)のデータが生み出され、2020年には35ゼタバイトに上る
- 1時間あたり、100万台の新しいデバイスがオンラインになっている
- 1分あたり、20時間分の動画がアップロードされている
実際のアルゴリズムの例は、以下が挙げられていました。
- Nudity detection: isitnude / ブログ
- Face recognition: Name That Actor / ブログ
- Web page recommender: https://algorithmia.com/recommends
- keyword tags for a URL: https://algorithmia.com/algorithms/tags/AutoTagURL
他の事例については以下のリンク先を見て、いくつか試してみるとわかりやすいです。
https://algorithmia.com/use-cases
DevOps with Lego and Chocolate simulation game (Dana Pylayeva)
DevOpsについて、ワークショップ形式で実際に他の方々とゲームで学べるセッションです。 文章では伝わりづらいかと思いますが、概ね以下のようなルールのゲームが行われました。
- ビジネス、Dev、Opsを持つ3つのチームにわかれ、さらにチーム内でそれぞれに、アドミンやテスターといった役割が割り振られる
- ビジネスの要求を基に、レゴで組み立てられたプロダクトを各チームはたくさん生産することを目的に取り組む
- 生産する時間な数スプリント用意されていて、各スプリント間には振り返りの時間と、ルール変更がある
上記のルール変更が大きなポイントで、例えばゲーム開始当初は
- Devのみがレゴを組み立てて良い
- Opsだけが使用できるレゴの種類を知っていて納品できる
という風に完全に役割が分かれています。
スプリントが進むとルールが変化し、
- Devも使用できるレゴを知って良いし、納品しても良い
- Opsもレゴを組み立てて良い
となります。
そうするとDevもOpsも待っているだけの時間がなくなり、スプリントを進めるごとに納品できるプロダクトが増えていきます。
このワークショップでは、以下の様な実際の現場にありそうなイベント・体験が用意されていたのが印象的でした。
- Devが作ったものが完成してから、Opsの段階でセキュリティの要件でプロダクトが差し戻されるイベントがある
- セキュリティ要件を修正したあと、ビジネス判断で完成品のデプロイが延期になるイベントがある
- スプリントが進んでDevがOpsを兼ねるようになると、Ops陣もDevに入らないとやることがなくなる(逆も然り)
また、突然その場であった人たちとお互いの会社も国籍も分からないまま、ルールも手探りで、英語と日本語であれこれ言いながらやれた体験が特に面白く感じました。
Regional Scrum Gathering Tokyo 2015でもそうでしたが、こういったワークショップは気づきが多く、個人的には満足感が高いです。
以上です。さいごに、講演者・スタッフの皆様、素敵なカンファレンスをありがとうございました!