タグ

機械学習と解析に関するyubessyのブックマーク (2)

  • Autogradという野郎が乗り込んできたのでガクブルな件 - Qiita

    Autogradという野郎が乗り込んできました。はい、そりゃもういきなり。複雑な確率モデルや損失関数だとしても、パラメータに関する勾配をこれでもかというぐらい簡単に計算できちゃうので、機械学習の世界に大きな影響を与えそうです。現時点では、PythonとTorchでの実装が公開されているようですが、これからJuliaなど他の言語でも実装されていきそうですね。 (補足:この記事を書いたすぐ後にGoogleがTensorFlowなるものを出してきまして、そちらでも自動微分がしっかり実装されてるみたいです〜。機械学習関連のフレームワークは移り変わりが激しいですねー ^^; ) ちなみに始まりはこんな感じでした。 ゆるいですね。 とりあえずチュートリアルやりながら、Python版チュートリアルの前半部分にテキトーな日語訳をつけたので、ここでシェアしておきます。英語が読める方は、僕のヘンテコな日

    Autogradという野郎が乗り込んできたのでガクブルな件 - Qiita
  • 二重数で自動微分する - Qiita

    と記述する数である。ここで、$\epsilon$ が複素数の $i$ にあたるもので、$\epsilon^2 = 0$ という性質を持つものとして定義されている。 加減乗除も複素数と同様に定義されて、C++ で実装すると、 #pragma once #include <ostream> namespace math { // 二重数 a + b ε template <typename T = double> class dual_number { public: using this_type = dual_number<T>; public: dual_number(T a, T b = T(0)) : a_(a), b_(b) {} this_type operator - () const { return this_type(-a_, -b_); } this_type& ope

    二重数で自動微分する - Qiita
  • 1