<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	
	>
<channel>
	<title>Comments on: What is automatic differentiation, and why does it work?</title>
	<atom:link href="http://conal.net/blog/posts/what-is-automatic-differentiation-and-why-does-it-work/feed" rel="self" type="application/rss+xml" />
	<link>http://conal.net/blog/posts/what-is-automatic-differentiation-and-why-does-it-work</link>
	<description>Inspirations &#38; experiments, mainly about denotative/functional programming in Haskell</description>
	<lastBuildDate>Sat, 26 Sep 2020 21:06:12 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=4.1.17</generator>
	<item>
		<title>By: In Heaven Now Are Three &#171; Changing the world</title>
		<link>http://conal.net/blog/posts/what-is-automatic-differentiation-and-why-does-it-work#comment-334</link>
		<dc:creator><![CDATA[In Heaven Now Are Three &#171; Changing the world]]></dc:creator>
		<pubDate>Mon, 09 Feb 2009 19:30:56 +0000</pubDate>
		<guid isPermaLink="false">http://conal.net/blog/?p=79#comment-334</guid>
		<description><![CDATA[&lt;p&gt;[...]    Short summary: I rant a little about how I found out about Automatic Differentiation from Conal Elliott and then from wikipedia. After this I speak a little about how this tool was useful once in my [...]&lt;/p&gt;
]]></description>
		<content:encoded><![CDATA[<p>[&#8230;]    Short summary: I rant a little about how I found out about Automatic Differentiation from Conal Elliott and then from wikipedia. After this I speak a little about how this tool was useful once in my [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Conal Elliott &#187; Blog Archive &#187; From the chain rule to automatic differentiation</title>
		<link>http://conal.net/blog/posts/what-is-automatic-differentiation-and-why-does-it-work#comment-333</link>
		<dc:creator><![CDATA[Conal Elliott &#187; Blog Archive &#187; From the chain rule to automatic differentiation]]></dc:creator>
		<pubDate>Sun, 08 Feb 2009 22:14:16 +0000</pubDate>
		<guid isPermaLink="false">http://conal.net/blog/?p=79#comment-333</guid>
		<description><![CDATA[&lt;p&gt;[...] What is automatic differentiation, and why does it work?, I gave a semantic model that explains what automatic differentiation (AD) accomplishes. Correct [...]&lt;/p&gt;
]]></description>
		<content:encoded><![CDATA[<p>[&#8230;] What is automatic differentiation, and why does it work?, I gave a semantic model that explains what automatic differentiation (AD) accomplishes. Correct [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: conal</title>
		<link>http://conal.net/blog/posts/what-is-automatic-differentiation-and-why-does-it-work#comment-332</link>
		<dc:creator><![CDATA[conal]]></dc:creator>
		<pubDate>Mon, 02 Feb 2009 19:29:16 +0000</pubDate>
		<guid isPermaLink="false">http://conal.net/blog/?p=79#comment-332</guid>
		<description><![CDATA[&lt;p&gt;Simon,
Thanks for the tip.  Yes, I know Barak (CMU classmates).  The issue he raises is &quot;nested AD&quot; -- derivatives of functions built out of derivatives, and the danger of confusing one infinitessimal (perturbation) with another.  I&#039;ve read his &lt;em&gt;&lt;a href=&quot;http://www.bcl.hamilton.ie/~barak/publications.html&quot; rel=&quot;nofollow&quot;&gt;Nesting forward-mode AD in a functional framework&lt;/a&gt;&lt;/em&gt; a couple of time and haven&#039;t yet gotten my head around whether the problem is inherent in AD or in a way of attacking it.  A related post is &lt;em&gt;&lt;a href=&quot;http://conway.rutgers.edu/~ccshan/wiki/blog/posts/Differentiation/&quot; rel=&quot;nofollow&quot;&gt;Differentiating regions&lt;/a&gt;&lt;/em&gt; by &lt;a href=&quot;http://www.cs.rutgers.edu/~ccshan/&quot; rel=&quot;nofollow&quot;&gt;Chung-chieh Shan&lt;/a&gt;.&lt;/p&gt;
]]></description>
		<content:encoded><![CDATA[<p>Simon,
Thanks for the tip.  Yes, I know Barak (CMU classmates).  The issue he raises is &#8220;nested AD&#8221; &#8212; derivatives of functions built out of derivatives, and the danger of confusing one infinitessimal (perturbation) with another.  I&#8217;ve read his <em><a href="http://www.bcl.hamilton.ie/~barak/publications.html" rel="nofollow">Nesting forward-mode AD in a functional framework</a></em> a couple of time and haven&#8217;t yet gotten my head around whether the problem is inherent in AD or in a way of attacking it.  A related post is <em><a href="http://conway.rutgers.edu/~ccshan/wiki/blog/posts/Differentiation/" rel="nofollow">Differentiating regions</a></em> by <a href="http://www.cs.rutgers.edu/~ccshan/" rel="nofollow">Chung-chieh Shan</a>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Simon PJ</title>
		<link>http://conal.net/blog/posts/what-is-automatic-differentiation-and-why-does-it-work#comment-331</link>
		<dc:creator><![CDATA[Simon PJ]]></dc:creator>
		<pubDate>Mon, 02 Feb 2009 11:39:14 +0000</pubDate>
		<guid isPermaLink="false">http://conal.net/blog/?p=79#comment-331</guid>
		<description><![CDATA[&lt;p&gt;Conal, do you know Barak Pearlmutter?  http://www-bcl.cs.nuim.ie/~barak/.  He&#039;s an expert on AD, and knows Haskell too.  Well worth talking to.&lt;/p&gt;

&lt;p&gt;My hind-brain memory is that he&#039;s identified something to do with AD that you can nearly-but-not-quite Do Right in Haskell. I never quite got my brain around what that Thing was, but I&#039;m sure he could tell you.  It may be that some implementation hack would let you do it Right, but I&#039;m not quite sure what the hack is.  It&#039;s cool stuff anyway.&lt;/p&gt;

&lt;p&gt;Simon&lt;/p&gt;
]]></description>
		<content:encoded><![CDATA[<p>Conal, do you know Barak Pearlmutter?  <a href="http://www-bcl.cs.nuim.ie/~barak/" rel="nofollow">http://www-bcl.cs.nuim.ie/~barak/</a>.  He&#8217;s an expert on AD, and knows Haskell too.  Well worth talking to.</p>

<p>My hind-brain memory is that he&#8217;s identified something to do with AD that you can nearly-but-not-quite Do Right in Haskell. I never quite got my brain around what that Thing was, but I&#8217;m sure he could tell you.  It may be that some implementation hack would let you do it Right, but I&#8217;m not quite sure what the hack is.  It&#8217;s cool stuff anyway.</p>

<p>Simon</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Raoul Duke</title>
		<link>http://conal.net/blog/posts/what-is-automatic-differentiation-and-why-does-it-work#comment-330</link>
		<dc:creator><![CDATA[Raoul Duke]]></dc:creator>
		<pubDate>Thu, 29 Jan 2009 00:11:13 +0000</pubDate>
		<guid isPermaLink="false">http://conal.net/blog/?p=79#comment-330</guid>
		<description><![CDATA[&lt;p&gt;i read the wikipedia entry&lt;/p&gt;

&lt;p&gt;http://en.wikipedia.org/wiki/Automatic_differentiation&lt;/p&gt;

&lt;p&gt;and found it not bad. in particular i thought the following really explained AD well vs. the other 2 options:&lt;/p&gt;

&lt;p&gt;&quot;AD exploits the fact that any computer program that implements a vector function y = F(x) (generally) can be decomposed into a sequence of elementary assignments, any one of which may be trivially differentiated by a simple table lookup. These elemental partial derivatives, evaluated at a particular argument, are combined in accordance with the chain rule from derivative calculus to form some derivative information for F (such as gradients, tangents, the Jacobian matrix, etc.). This process yields exact (to numerical accuracy) derivatives. Because the symbolic transformation occurs only at the most basic level, AD avoids the computational problems inherent in complex symbolic computation.&quot;&lt;/p&gt;
]]></description>
		<content:encoded><![CDATA[<p>i read the wikipedia entry</p>

<p><a href="http://en.wikipedia.org/wiki/Automatic_differentiation" rel="nofollow">http://en.wikipedia.org/wiki/Automatic_differentiation</a></p>

<p>and found it not bad. in particular i thought the following really explained AD well vs. the other 2 options:</p>

<p>&#8220;AD exploits the fact that any computer program that implements a vector function y = F(x) (generally) can be decomposed into a sequence of elementary assignments, any one of which may be trivially differentiated by a simple table lookup. These elemental partial derivatives, evaluated at a particular argument, are combined in accordance with the chain rule from derivative calculus to form some derivative information for F (such as gradients, tangents, the Jacobian matrix, etc.). This process yields exact (to numerical accuracy) derivatives. Because the symbolic transformation occurs only at the most basic level, AD avoids the computational problems inherent in complex symbolic computation.&#8221;</p>
]]></content:encoded>
	</item>
</channel>
</rss>
