メニュー

技術ブログ

Denso IT Lab.社員による技術情報の紹介

Denso IT Laboratory researcher's blog sites

数式

RSS

ページトップへ

WWDC2016レポート

吉田悠一です.
甲子園ではないですが,3年ぶり,5回目WWDC2016に行ってきました.

気になったところをまとめてみたいと思います.

WWDC2016_IMG_1784 WWDC2016_IMG_1840

プラットフォームが4つになり,すべてはフラットに

OSXが頂点に立ち,iOS, tvOS, watchOSがそれに続くイメージだった各プラットフォームの関係を,アップルが今回のKeynoteでフラットであるように,あるいは,もうそうではないと印象付けようとしているように感じました.OSXは,macOSとリネームされ,4つのプラットフォームの名前の印象が統一されることになりました.

macOSの新機能は,iOSからの移植されるものが増え,iOSやwatchOSとの連携を歌うものが目立ちました.State of Unionでも,トリの発表はiOSであり,分量も多く,アップルが,iOSに注力していることは明確です.例えば,iOSで紹介された機能が,その発表の最後で「実はmacOSでも使えるよ」といった説明の仕方も散見されます.もはや,iOSはもモバイルで動くmacOSのサブセットという位置づけではなくなったということなのでしょう.

Swift3

オープンソースになってから,Swift3の方向性について,ある程度オープンに議論されてきましたが,ついにXcodeに組み込まれてベータテストされることになりました.Swift3は,NSプレフィックスがなくなったり,命名規則が大幅に変更されたので,そのあたりをフォローするだけでも,開発者にとってはかなり大変です(私が趣味で開発しているSwiftで書いたreddit API wrapperのコンパイルできるようになるのは,かなり先になりそうです).Swift3から4へは,コードの書き換えなしで移行できるようにすると,Chris Lattnerは言ってましたが・・・・・

Extensionがすべて

純正地図アプリ,メッセージアプリ,SiriKitなど,iOS8から実装されたextensionの仕組みを使った新しいAPIが追加されました.これにより,いくつかの純正アプリにサードパーティから機能を追加できるようになりました.例えば,地図アプリにレストラン検索アプリの検索結果を表示したりすることができるようになるようです.iOS3の頃のアップルの態度を考えると,考えられないオープン戦略ですが,ユーザや開発者にとってはよいことだと思います.しかしながら,ここまで先延ばしにしたのは,セキュリティを確保する開発に手間取ったのか,戦略の転換なのか・・・・どちらなのでしょう・・・.

そして,Deepとプライバシー,Accelerate.framework

昨今,学会発表でDeepというワードが出てこないことは稀ですが,WWDCもその例外ではありませんでした.なぜ,学会でない会議でもそのワードを聞かないといけないのか,”Deep”が食傷気味の私は憂鬱でしたが.Keynoteの発表によれば,アップルも写真アプリにシーン推定とオブジェクト推定機能をiOS10から導入し,その推定は,エッジで,つまりiOSデバイス上で実行されるそうです.今回の発表ではこれらの機械学習を使った機能追加に続けて,アップルは,Googleなどの他社のアプローチとは異なり,ユーザの情報をクラウドの集めて使うようなプライバシーを侵害することはしないと宣言しました.近年,とにかくユーザデータを集めて,それを使って機械学習し,サービスを作ったり,向上させるアプローチが,データセンターとユーザをもつサービサーにとってのメインストリームになってきていますが,アップルはそうではないと立場の違いを強調しました.

また,アップルは,Accelerate.frameworkにニューラルネットワークを高速に計算するためのAPIを追加しました.Accelerate.frameworkは,iOS10, macOSに含まれるSIMD命令を使って算術計算を高速化するフレームワークです.このAPIセットはinferenceのみで学習するためのAPIは提供されません.このAPIでは,畳み込みレイヤーと線形レイヤー等を組み合わせることができ,それぞれに適応する活性化関数も,いくつかのあらかじめ用意されたものか選ぶことができます.どのみち学習は別のコードを使って行うのに,このAPIのためだけにネットワーク構造をコードで書き,各パラメータを設定して・・・・・・TensorFlowもiOS対応をうたい始めた今,このAPIの必要性がどれくらいあるのかちょっと不明ですが,これで,この世界にいったいいくつDNNに関するライブラリがリリースされたことになるのでしょうか・・・・.

Swift Playgrounds

Keynoteでは,アップルがSwift Playgroundsが教育アプリであることに重点を置いて発表したため,開発者たちのテンションはくらだらねーという雰囲気でした.しかしながら,State of Unionやいくつかのセッションで,そうではなく,Swift Playgroundsが単純にコーディング環境として使えることや,Bluetoothやカメラ,ビューにアクセスすることもできることがわかってきました.PlaygroundsがiPad上のかなり汎用的なコーディング環境であるということに気付いた開発者コミュニティは,にわかに盛り上がってきています.

しかし,これは,ついにiOSでクリエイティビティを発揮するアプリケーションが主流になってくるということの兆候かもしれません.今まで,私はmacOSで創作,iOSはビューアや消費の道具というイメージを強く持っていましたが,そうではないときが少しずつ近づいているのかもしれません.そう考えると,macOSのフルスクリーン機能も,クリエイターをiOSの世界に引き吊り込むための戦略だった・・・と考えるのは信者っぽいのでやめにしますが,今後,iOSを取り巻くSDKは,コンテンツを消費するのではなく,創作する方向に強化されていくのでしょうか・・・・.

WWDC2016_IMG_1840 WWDC2016_IMG_1849

まとめ

今回は3年前と比較し,セッションの発表数も減り,その内容もコードベースのガリガリ技術的なセッションが減ったという風に私は感じました.反面,ラボなどのアップルのエンジニア等と対面で情報をやりとりできるラボが増強されているようでした.セッションの内容は,全世界にリアルタイムで公開できるようになった昨今,もはや一方通行に話を聞くだけのセッションはWWDCのメインコンテンツではなく,エンジニア同士の交流やアップルとのエンジニアとの直のやりとりの方がメインコンテンツであるという風に,アップル自身がシフトしているように思いました.
ラボがメインコンテンツになっていくと,WWDCに参加する価値が揺らいでくる考えもありますが,1週間それだけしか考えない時間を作るというのは,エンジニアにとって重要だと考えています.

以上,ダラダラとまとめてきたWWDC2016ですが,なかなかおもしろいものでした.来年は,VRとかその辺の新しいソフトウェアフレームワークを出してくれないかなぁと夢想しつつ,しばらくはSwift Playgroundsで遊ぶことにします.

このエントリーをはてなブックマークに追加

Deep Learning 勉強会 Chapter 12

研究の方ではなかなか触る機会が無いのですが,知識だけは入れておきたいということで最近は社外の人達が主催しているDeep Learning勉強会に参加させてもらっています.

こちらでは輪講資料として以下のサイトで公開されている書籍のドラフト版を使用しています.

https://www.deeplearningbook.org/

なかなか知識不足という事もあって,細かい部分は分からなかったりするのですけど,12章は自然言語処理の話も含まれていることから私の担当となりました.広い内容をカバーしていることもあって私としても非常に勉強になりました.

勉強会の中では Chen and Goodman の資料は 1998 ではないかと書いたのですが,1999の物もありました.ということで,資料の方でのリファレンスの指摘は私の間違いです.

http://www2.denizyuret.com/ref/goodman/chen-goodman-99.pdf

使用した資料は以下で公開しております.十分に理解しているわけではないので,間違い等ありましたら教えて頂けると助かります.


PDF化してスライドシェアにアップしたところ,背景が非常に見づらくなってしまっているので,読む場合はダウンロードすることをお勧めします.

このエントリーをはてなブックマークに追加