自動微分(AD)マスターコース のご案内

産業アプリケーションでの利用を前提としたコース

自動微分の専門家から実利用可能な自動微分を学ぶ

5回にわたってオンラインで開催される 自動微分(AD)マスターコースをご紹介します。
(参加予定:数百名様以上、使用言語: 英語)

参加のご登録(無料)はこちらからお願いします。

NAGの自動微分の専門家が、今までの経験に基づき、産業用アプリケーションで実際に利用できる自動微分について説明をいたします。(計5回)

本コースのホストであるNAGは、産業アプリケーションにおける自動微分のパイオニアであり、10年以上に渡る第一線での経験を活かし、経験則上何が最も良い方法なのか、また、ソフトウェアエンジニアリング上の各種問題は何か、どのような最適化手法が適切か、また、一般的な落とし穴は何かなどについて情報を共有し、実際のコードに自動微分を適用する方法を示します。そして、自動微分の知識を深め、教科書や例題には出てこない各種問題を乗り越えて行く方法を示します。

自動微分(AD)マスターコースの参加者は次のことを学びます。

  • 自動微分(AD)とは何か、それが世界に与える影響、およびコードにとっての意味
  • 正接およびAjoint(随伴)ADを使用して導関数を計算する方法
  • 厳密なテストハーネスのセットアップ方法と、これがソフトウェアエンジニアリングに及ぼす影響
  • SIMDベクトル化を活用する方法
  • 検証済みのAjointを実際のコードでブートストラップする方法
  • Adjointソリューションを高速化し、そのメモリ使用量を削減する方法

本マスターコースはNAGのADツールである dco/c++ を用いますが、トピック自体は本質的に普遍的です。 参加者は、dco/c++ トライアルライセンスとともに、使用されているすべてのコード例を参照できます。

開催日時

開催日時(5回)は以下の通りです。

参加のご登録(無料)はこちらからお願いします。また、ご登録をいただきますと、何らかの理由で参加ができなかった場合でも、メールにてコースの記録を受け取る事ができます。

(以下、日本時間で表記しています)
  2020年7月30日(木) 11:00PM(約1時間)
  2020年8月 6日(木) 11:00PM(約1時間)
  2020年8月13日(木) 11:00PM(約1時間)
  2020年8月20日(木) 11:00PM(約1時間)
  2020年8月27日(木) 11:00PM(約1時間)

オンライン自動微分(AD)マスターコース 詳細

2020年7月30日 なぜ自動微分(AD)が必要なのですか?
ADはこれまで以上に急速に私たちの世界を変えています。どうしてこれなの?ADの2つの基本モデルを紹介し、それらを使用して正確な導関数を計算する方法を示します。速度と精度を有限差分(バンピング)と比較し、ADが科学およびエンジニアリングでどのように使用されているかについて、実際の例をいくつか示します。
2020年8月 6日 ADの仕組み:ヤコビアンの計算
ADの基本を掘り下げ、ADがどのように機能するか、およびサードパーティのライブラリを含め、その影響について説明します。一次接線と随伴値を詳細に調べ、パフォーマンスとメモリ使用量を調べます。随伴メモリの使用は、飼いならされないと、禁止されます。幸い、メモリの使用を包括的に制御する方法があります。
2020年8月13日 テストと検証
なぜADコードをテストする必要があるのですか?非微分可能性を含む一般的な問題と落とし穴を強調します。ADテストをテストハーネスに組み込む方法を示します。これを行うことは、コードのメンテナンスとビルドシステムにとってソフトウェアエンジニアリングに大きな影響を及ぼします。利用可能なオプションのいくつかを強調し、ベストプラクティスを共有します。
2020年8月20日 SIMDベクトル化を使用したパフォーマンスの向上
なぜタンジェントモードに悩むのか?理由はたくさんあります!接線が速いことは誰にとっても朗報です。その理由を説明します。タンジェントコードと随伴コードをベクトルモードで実行し、SIMDベクトル化を使用すると、どのようにして健全なスピードアップを実現できるかを示します。
2020年8月27日 実際のコードで検証済みの随伴をブートストラップする
コードの最適化を行う前の重要な最初のステップは、正当性テストを実施することです。Ajointについても同じことが言えます。Ajoint最適化手法を適用する前に、内部の製品IDを検証するテストハーネスが必要です。ただし、これには有効なAjointが必要であり、力づくのアプローチはメモリを使い果たす可能性が高いことがわかっています。これをどのように解決できますか?検証済みのAjointをブートストラップするためのいくつかのオプションについて説明します。これには、さまざまなテープタイプを含め、ヤコビアン事前累積を使用します。この後者の手法は非常に効果的です。検証済みのAjointが得られると、チェックポイント、シンボリック随伴、外部随伴などのより高度な随伴最適化を適用するための段階が設定されます。これらのより高度なトピックについては、今後のウェビナーで説明します。
関連情報
MENU
Privacy Policy  /  Trademarks