3つのコア技術:ユビキタス、AI、マルチセンスとマルチデバイス
初日の基調講演で登壇したのは日本マイクロソフト株式会社 執行役員 常務 デジタルトランスフォーメーション事業本部長 伊藤かつら氏。「マイクロソフトは開発者のみなさんがどのようなイノベーションを提供できるかが大事と考えている」と話し、イベントを通じて開発者の能力や生産性を高め、力づけることを重視するスタンスを示した。
伊藤氏はマイクロソフトの世界観を紹介した。これは5月始めに米国で開催された開発者会議「BUILD 2018」で、マイクロソフト コーポレーション CEO サティア・ナデラ氏が示したコンセプトとなる。中心にインテリジェントなクラウド、周辺に多様なデバイスがインテリジェントなエッジとして存在して有機的に連携する。具体的にはMicrosoft AzureとMicrosoft 365のプラットフォームとなる。加えて今、マイクロソフトが注力しているコア技術が3つある。あらゆるデバイスがどこでもネットワークにつながる「ユビキタス・コンピューティング」「AI」「マルチセンスとマルチデバイス」。最後のものは主にARやVRを指している。
ここから具体的かつ細かい話へと移る。4月末にリリースされた「Windows 10 April 2018 Update(1803)」で目玉となるのがタイムラインだ。過去30日間で使用したファイルを閲覧できるようになっており、直近で作業したファイルを探しやすくなっている。
将来的にはパソコンとスマートフォンとの連携機能も提供が予定されている。Windows 10では「Your Phone」アプリ、iOSでは「Microsoft Edge」アプリ、Androidでは「Microsoft Launcher」アプリを用いて、マイクロソフトアカウントで端末を紐付けて連携する。
・参考:「Windows 10 1803の新機能「タイムライン」とはなにか? ~まずはUWPアプリから使ってみる」(CodeZine)
サーバーレス、IoT、AI機能をさらに拡充したMicrosoft Azure
続いてクラウドコンピューティングのプラットフォーム「Microsoft Azure(以下、Azure)」で提供する新機能や改善点について、マイクロソフトコーポレーション Azure Marketing コーポレートバイスプレジデント ジュリア・ホワイト氏が解説した。マイクロソフトはAzureをエンタープライズ向けのソリューションとして位置づけており、高生産性、(オンプレミスとの)ハイブリッド、インテリジェント(データやAIを活用したアプリを作成できる)、高信頼性に力を入れている。
Azureで提供しているサービス群は大きく分けて、「コンテナ+サーバーレス」「IoT」「データ」「AI」の4つ。
「コンテナ+サーバーレス」に該当するのがAzure Platform Servicesで、Web Apps、Serverless Functions、Kubernetes Service(AKS)、Service Fabricといったサービスがある。緩やかに結合されたサーバーレスアーキテクチャとなっており、柔軟にアプリケーション開発ができるとされる。機能改善として紹介されたのがAzure Event Gridで、各種のイベントソースからAzure FunctionsやLogic Appなどのイベントハンドラーへデリバリーする。1秒あたり数百万のイベントをさばけるほどの拡張性を備えている。
「IoT」ではAzure IoT HubとAzure IoT Edgeが紹介された。Azure IoT HubはIoTデバイスからアプリへ接続するためのもので、デモでは小型IoTデバイスからボタンを押すと、Azure IoT Hubから、Azure FunctionsとLogic Appを通じてTwitterへ投稿するというアプリが紹介された。Azure IoT Edgeはエッジとなるデバイスにアプリを組み込むもので、WindowsとLinuxデバイスに対応している。Azure ML、Functions、Streaming Analyticsなどをサポートしており、デモではRaspberry Piのデバイスに画像認識を実装したものが披露された。高度な機能をIoTデバイスで利用できる。
「データ」では多様なデータサービスが提供されている。RDBではSQL DB、PostgreSQL、MySQL、RDB以外にもRedis Cache、Cosmos DBがある。比較的新顔でユニークなのがCosmos DBだ。世界規模でスケールし、多様なデータモデルをサポートしているのが特徴だ。今はCosmos DBで使えるAPIはMongoDB、SQL、Table、Gremlin、Cassandraへと広がった。また新たにマルチマスターの書き込みがサポートされるようになり、複数のAzureリージョンで書き込みもできるようになった。
「AI」について、ホワイト氏は「ソフトウェアとデータからインテリジェントなアプリができる」と話した。AzureのAI関連サービスはAzure Cognitive Servicesとしてまとめられている。ここでは視覚(画像認識など)、音声(音声とテキスト間の変換や翻訳など)、言語(テキスト分析、スペルチェック、翻訳、言語理解など)、知識(Q&A作成、意思決定など)、検索(Bingの活用)に関する機能が提供されており、これらはマイクロソフトでトレーニングされているAIサービスとなる。実際には.NET、Java、Python、Node SDKなどの言語からREST APIで呼び出して使う。さらにこのAzure Cognitive ServiceはAzure Searchと統合し、あらゆるデータから目的のものを検索できるようになるなどカスタマイズの幅が広がった。
Azureで自前のAI(インテリジェンス)を作るためのサービスもそろっている。自分でAIモデルを開発するなら、大きな流れとしてはまずデータを準備し、AIモデルを構築してトレーニングを行い、そしてアプリとしてデプロイを行うことを繰り返して品質を高めていく。データの準備ではAzureに最適化されたApache Sparkベースの分析プラットフォーム「Azure Databricks」があり、Azureの各種データサービスとシームレスに統合されておりデータ準備作業を効率良く進めることができるとされる。モデルの構築とトレーニングではAzure Machine Learningがあり、TensorFlowやCaffe2、Kerasなど幅広いフレームワークやツールに対応しており、事前に準備されたAIモデルのパッケージになっている。デプロイの段階になればAzure Kubernetes Service(AKS)がある。