この記事は The TensorFlow Blog の記事 "Recap of the 2020 TensorFlow Dev Summit" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
投稿者: デベロッパー アドボケート、Laurence Moroney


バーチャル TensorFlow Dev Summit 2020 ライブストリームに参加してくださった皆さん、どうもありがとうございました!皆さんと直接お会いすることは叶いませんでしたが、今まで以上に参加しやすいイベントを作ることができたのではないかと思っています。

このブログ投稿では、新しいアップデートの要点をすべてまとめてお知らせします。基調講演やセッションの録画は、TensorFlow YouTube チャンネルでご覧いただけます。

TensorFlow 2.2

昨年の Developer Summit で TensorFlow 2.0 がリリースされてからというもの、私たちはさらに機能を高めるため、ユーザーやコミュニティとともに懸命に作業してきました。そして今週、TensorFlow 2.2 のリリース候補を公開しました。
TensorFlow エコシステム
2.2 は、昨年の勢いに乗って構築されています。中心的に取り組んでいるのはパフォーマンスです。パフォーマンスを改善するため、そしてパフォーマンスを今まで以上に一貫性をもって簡単に計測できるようにするため、実行コアに手を入れています。また、新しい Performance Profiler など、パフォーマンスの計測に役立つ新しいツールを導入します。さらに、TensorFlow Extended などの重要なライブラリを含む TensorFlow エコシステムの互換性を向上させています。同じコア API を維持して追加による変更のみを行っているので、1.x のコードは確実に移植できます。詳細については、GitHub のリリース セクションをご覧ください。

TensorFlow エコシステム

TensorFlow 2.2 は、拡大を続けるさらに大きなライブラリや拡張機能からなるエコシステムの一部でしかありません。こういったライブラリや拡張機能が、皆さんの機械学習の目的を達成できるようにサポートします。あらゆる種類のデベロッパーの皆さんが使えるツールを用意しました!
TensorFlow エコシステムのサービスとプロダクトの一覧
研究者向けには、最新の ML 技術の限界を広げるライブラリがあります。応用 ML エンジニアやデータ サイエンティスト向けには、モデルによって現実の世界に影響を与えるために役立つツールがあります。さらに、このエコシステムには、公平性から最適化まで、また大規模から超小型ハードウェアまで、ユーザーに優れた AI 体験を生み出すために役立つライブラリも存在します。

これらすべてを支えているのは、このエコシステムと、責任を持って AI を構築するという私たち共通の目標に貢献している TensorFlow コミュニティです。

リサーチのための TensorFlow

TensorFlow は、最新の ML 技術の限界を広げるために、さまざまなサブ分野で使われています。

例として、最近リリースされた T5 論文について考えてみましょう。この論文は、統合テキスト対テキスト変換の転移学習の限界について考察したものです。C4 データセット(TensorFlow Datasets で公開されています)で事前トレーニングした T5 モデルは、多くの共通 NLP ベンチマークで最高水準の結果を達成できました。さらに、翻訳、文法チェック、要約など、さまざまな下流タスクに合わせて微調整できるほど柔軟でした。
T5 モデルは、最新の転移学習を使い、言語に関するあらゆる問題をテキスト対テキスト形式に変換する

また、昨年の NeurIPS の多くの論文やポスター セッションで TensorFlow が使われていました。

私たちは、常に研究者のエクスペリエンスを向上させる方法について検討しています。そこで、いくつかの重要な機能について紹介します。

まず、TensorBoard.dev は研究者の皆さんから好意的なフィードバックをいただいています。私たちが昨年リリースしたこのツールを使えば、実験結果をアップロードし、URL でその成果を共有できます。この URL にアクセスすると、ハイパーパラメータの設定による変化を簡単に視覚化することができます。次に、TensorBoard から利用できる新しいパフォーマンス プロファイラ ツールを導入しました。これを使うと、モデルのパフォーマンスに関して一貫したモニタリングが可能です。
TensorBoard
研究者の皆さんからは、モデルを すばやく 変更し、アクセラレーションを利用できるハードウェアで大規模にトレーニングを行いたいという声も寄せられています。その際にとりわけ重視されているのが、データの抽出、変換、読み込みの管理です。tf.data API の TensorFlow Datasets は、このことを念頭に置き、研究者の皆さんが最新のデータセットにすばやくアクセスできるように作成しました。これを使っている方も、個人のデータセットを使っている方も、ベースとなる TFRecord ベースのアーキテクチャを活用して tf.distribute による並列化を実現し、GPU ベースまたは TPU ベースのトレーニング インフラストラクチャを最も効率よく使用して最適な入力パイプラインを構築できます。

さらに、TensorFlow エコシステムには、皆さんのお気に入りのオープンソース ライブラリを使った実験や作業の効果を向上できるアドオンや拡張機能が含まれています。TF ProbabilityTF Agents などの拡張機能は、最新バージョンの TensorFlow で動作します。Google Research による JAX などの試験運用版ライブラリは TensorFlow と組み合わせることができます。たとえば、TensorFlow データ パイプラインを JAX の入力データとして使うことができます。実際にコンピューティングの最先端に向かおうとしている皆さんは、TensorFlow Quantum を確認してみてください。すばやくプロトタイピングを行える、量子 ML モデルと従来の ML モデルのハイブリッドのライブラリです。

応用 ML

恐縮なことに、大小問わず、世界中のたくさんの企業が機械学習ワークロードを扱うものとして TensorFlow に信頼を寄せてくださっています。

ユーザーの皆さんからは、ハイパーパラメータのチューニングに関する意見が寄せられています。昨年初めの時点で、Google は Keras Tuner をオープンソース化していますので、ぜひご覧ください。また、現在は一連の新しい軽量前処理レイヤーに関する作業も進めています。現在これは試験運用版です。

TensorFlow Hub: あらゆる人のためのモデル」というセッションでは、私たちがどのように TensorFlow Hub の拡張を続けているのかについて、Sandeep が説明しました。現在、1,000 個以上のモデルをドキュメントやコード スニペットと合わせて利用できます。これらのモデルは、ダウンロード、利用、保存、微調整が可能です。Keras レイヤーに追加するだけで簡単に使えるものもあります。Hub の一部のパブリッシャーは、すばらしい作品に注目してもらうため、カスタム コンポーネントを作って、なにもインストールすることなくブラウザから直接、皆さんのイメージやオーディオ クリップでモデルを試せるようにしています。

Google Colabratory は、皆さんのモデル構築に役立ててもらうために Python notebook 環境をホストしており、そこから TensorFlow モデルのトレーニングに利用できる GPU リソースや TPU リソースにアクセスできます。先日より、無料枠に加えて新しい Colab Pro サービスも提供しています。月単位のサブスクリプション費用をお支払いいただくことで、さらに高速な GPU、長時間の実行、多くのメモリを利用できます。Colab notebook のメリットは、こちらからご覧ください。Dev Summit では、Tim Novikoff が「Colab をフル活用する: TensorFlow ユーザーのためのヒント集」という楽しいセッションを開催しました。

また、トレーニングしたモデルがビジネスに欠かせない処理になるまでの作業は、モデルのアーキテクチャの作成やトレーニング、テストだけにとどまるものでないことは承知しています。大規模な本番環境向けのモデルを構築するには、複雑に絡み合った管理プロセスによって、モデルを実行し、関連性を保って更新し続けることも必要です。そのことを念頭に置いて作られたのが、TensorFlow Extended(TFX)です。以下に、TFX を使って構築した高レベルなアーキテクチャを持つ本番システムの例を示します。
TensorFlow Extended
本番環境でさらに TensorFlow を使いやすくするため、Google Cloud AI Platform Pipelines もリリースしました。これは、上記のエンドツーエンドの本番パイプラインを簡単に構築できるように設計されており、KubeFlow、TFX、Google Cloud を使って動作します。AI Platform Pipelines は、GCP の TensorFlow Enterprise で使うことができます。TensorFlow Enterprise は TensorFlow のカスタムビルドで、多くの最適化が行われているだけでなく、企業向けの長期サポートも提供されています。Cloud AI Platform Pipelines と TFX を組み合わせて使う際に役立つように、チュートリアルも用意しました。

デプロイメント

TensorFlow では、モデルの作成などの計算があらゆる種類のハードウェアで効率的に実行できることが重視されています。

TF Lite にも、たくさんの新機能が追加されました。Android Studio との統合も追加しており、近日中に Canary チャンネルで公開される予定です。これを使うと、Android Studio にドラッグ&ドロップして数クリックするだけで、TF Lite モデル用の Java クラスが自動生成されます。また、モデルの作成や変換を行う際に、モデルの作成者がメタデータ仕様を提供できるようにもしています。これにより、モデルのユーザーは動作の仕組みや本番環境での使い方を理解しやすくなります。さらに、デベロッパーが複雑な ML 処理を行わずに既存のモデルを微調整できる新しい Model Maker も提供します。最新の iPhone や iPad で TensorFLow Lite を使った浮動小数点モデルを高速化するために、Apple Neural Engine による Core ML Delegation についてもお知らせしています。加えて、スマートフォンの CPU や GPU、DSP、NPU でモデルの実行速度を上げるため、パフォーマンスの改善も重点的に継続しています。

TensorFlow.js では、JavaScript デベロッパーやウェブ デベロッパーが今まで以上に簡単に機械学習を構築、利用できるようにする作業を続けています。ウェブや Node.js アプリケーションで、顔と手のトラッキングや NLP を行ういくつかの新しいモデルをすぐに利用できることもお知らせしました。また、パフォーマンスの改善や新しいバックエンドのほか、TensorFlow 2.0 モデルのトレーニングとのよりシームレスな統合もリリースしました。

さらに、コアループを高速化する新しい TensorFlow ランタイム(TFRT)のプレビュー版を発表しました。これは近日中にオープンソースとして公開される予定です。機械学習の計算を行うインフラストラクチャを統合する共有コンパイラ インフラストラクチャである MLIR についても説明しました。具体的な変更点として、2 月に TF → TF Lite コンバーターをリリースしました。これにより、エラー メッセージの改善、制御フローのサポート、統合量子化ワークフローが提供されます。TFRT と MLIR という 2 つの機能を組み合わせることで、一連の堅牢なハードウェアや低レベル ライブラリをサポートしたり、簡単にサポートを増やしたりできるようになります。

コミュニティ

もちろん、TensorFlow に関するすべての取り組みの中心にコミュニティがあります。皆さんが参加できる方法は、とてもたくさんあります!その例を紹介します。
  • TensorFlow ユーザー グループは、急拡大中のコミュニティです!立ち上げからわずか 7 か月で、世界中に 73 のユーザー グループができました。最も規模が大きいのは韓国で、46,000 人以上が参加しています。2019 年の TensorFlow Roadshows の後には、ブラジルとアルゼンチンで南米初となる 2 つの TFUG が設立されました。私たちは常にこの運動を応援しています。皆さんのお住まいの地域で TFUG を設立したいという方がいらっしゃいましたら、tfug-help@tensorflow.org までご連絡ください!
  • さまざまなトピックを集中的に扱う Special Interest Group もたくさんあります。最近できたグラフィックスを扱うグループは、3 月末に公開される予定です。SIG の詳細や仕組みについては、プレイブックをご覧ください。
  • 機械学習や TensorFlow の思想的リーダーの皆さんは、Google Developer Expert になることをご検討ください。Google Developer Expert は、イベントでの講演やコンテンツの公開を通して、積極的にデベロッパーや企業、テック コミュニティをサポートしています。
課題に取り組んでみたい方のために、Responsible AI の新しい Dev Post チャレンジや、学生がオープンソース団体と協力して 3 か月間のプログラミング プロジェクトを行う Google Summer of Code を開催しています。TensorFlow チームも参加団体の 1 つです。詳しくは Summer of Code のウェブサイトをご覧ください。

教育

大学などの教育機関に所属している方向けに、TensorFlow による機械学習を教えるための教育コンテンツの作成に役立つプログラムがあります。成功につながるさまざまなリソースで、皆さんをサポートいたします。これまで注目されていなかった AI コミュニティへのアクセスを広げるため、資金提供を目的とした提案依頼書を公開しました。詳しくは、TensorFlow ブログをご覧ください。TensorFlow について学びたい方は、さまざまな選択肢を利用できます。

TensorFlow デベロッパー認定試験

TensorFlow のコーディングやモデル作成のスキルを評価し、TensorFlow デベロッパーとしての実力を公式に認定する制度が始まります!多様な背景、経験、視点を持つ方に幅広く参加していただくため、人数限定で教育資料や試験費用に使える奨学金を提供します。詳しくは、tensorflow.org/certificate をご覧ください。 単純な線形回帰から、コンピュータ ビジョン、NLP、シーケンス モデリングなどの高度なシナリオまで、モデル作成能力が試されることになります。試験の準備には、Coursera の deeplearning.ai TensorFlow: In Practice 専門講座のシラバスが役立ちます。認定を受けると、LinkedIn や GitHub、そして新しく登場する TensorFlow Certificate Network で共有できます!

まとめ

このように多忙な 1 年でしたが、TensorFlow デベロッパーにとってはすばらしい時間でした!TensorFlow についてもっと知りたい方は、tensorflow.org をご覧ください。また、ブログを読んだり、ソーシャル メディアをフォローしたりすることもできます。YouTube チャンネルのサブスクライブもお忘れなく!TensorFlow Dev Summit 2020 のすべてのセッションは、YouTube のプレイリストから視聴できます。すぐに見ることができるように、こちらに各セッションへの直リンクも掲載します。

Reviewed by Khanh LeViet - Developer Relations Team