<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl">
	<id>http://brain.fuw.edu.pl/edu/index.php?action=history&amp;feed=atom&amp;title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe%2FWyk%C5%82ad_4</id>
	<title>Uczenie maszynowe i sztuczne sieci neuronowe/Wykład 4 - Historia wersji</title>
	<link rel="self" type="application/atom+xml" href="http://brain.fuw.edu.pl/edu/index.php?action=history&amp;feed=atom&amp;title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe%2FWyk%C5%82ad_4"/>
	<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/Wyk%C5%82ad_4&amp;action=history"/>
	<updated>2026-04-29T16:53:42Z</updated>
	<subtitle>Historia wersji tej strony wiki</subtitle>
	<generator>MediaWiki 1.34.1</generator>
	<entry>
		<id>http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/Wyk%C5%82ad_4&amp;diff=8000&amp;oldid=prev</id>
		<title>Jarekz: /* Pojedynczy neuron: reguła delta */</title>
		<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/Wyk%C5%82ad_4&amp;diff=8000&amp;oldid=prev"/>
		<updated>2019-03-29T15:41:11Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Pojedynczy neuron: reguła delta&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;pl&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← poprzednia wersja&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Wersja z 15:41, 29 mar 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l28&quot; &gt;Linia 28:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 28:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: &amp;lt;math&amp;gt;J(w) = \frac{1}{2} \sum_{j=1}^N\left(z^{(j)}- y^{(j)} \right)^2 = \sum_{j=1}^N J^{(j)}(w)&amp;lt;/math&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: &amp;lt;math&amp;gt;J(w) = \frac{1}{2} \sum_{j=1}^N\left(z^{(j)}- y^{(j)} \right)^2 = \sum_{j=1}^N J^{(j)}(w)&amp;lt;/math&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;gdzie:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;gdzie:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;:&amp;lt;math&amp;gt;y^{(j)} = f\left(e^{(j)}\right) = f \left( \sum_{i=0}^n w_i&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;^{(j)} &lt;/del&gt;x_i^{(j)}\right)&amp;lt;/math&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;:&amp;lt;math&amp;gt;y^{(j)} = f\left(e^{(j)}\right) = f \left( \sum_{i=0}^n w_i x_i^{(j)}\right)&amp;lt;/math&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;zaś&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;zaś&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;:&amp;lt;math&amp;gt;J^{(j)}(w) = \frac{1}{2} \left( z^{(j)} -y^{(j)}\right)^2 &amp;lt;/math&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;:&amp;lt;math&amp;gt;J^{(j)}(w) = \frac{1}{2} \left( z^{(j)} -y^{(j)}\right)^2 &amp;lt;/math&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l47&quot; &gt;Linia 47:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 47:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;gdzie wprowadziliśmy:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;gdzie wprowadziliśmy:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;:&amp;lt;math&amp;gt;\delta^{(j)} = \frac{df(e)}{de^{(j)}} \left( z^{(j)}- y^{(j)}\right)&amp;lt;/math&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;:&amp;lt;math&amp;gt;\delta^{(j)} = \frac{df(e)}{de^{(j)}} \left( z^{(j)}- y^{(j)}\right)&amp;lt;/math&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Uczenie nieliniowej sieci: Jak znaleźć błąd dla warstwy ukrytej?==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Uczenie nieliniowej sieci: Jak znaleźć błąd dla warstwy ukrytej?==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jarekz</name></author>
		
	</entry>
	<entry>
		<id>http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/Wyk%C5%82ad_4&amp;diff=6441&amp;oldid=prev</id>
		<title>Jarekz o 16:32, 16 lut 2017</title>
		<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/Wyk%C5%82ad_4&amp;diff=6441&amp;oldid=prev"/>
		<updated>2017-02-16T16:32:53Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;pl&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← poprzednia wersja&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Wersja z 16:32, 16 lut 2017&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Linia 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Uczenie_maszynowe_i_sztuczne_sieci_neuronowe|powrót]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Formy nieliniowości=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Formy nieliniowości=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Na poprzednich wykładach zajmowaliśmy się:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Na poprzednich wykładach zajmowaliśmy się:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jarekz</name></author>
		
	</entry>
	<entry>
		<id>http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/Wyk%C5%82ad_4&amp;diff=5114&amp;oldid=prev</id>
		<title>Jarekz: /* Uczenie nieliniowej sieci: Jak znaleźć błąd dla warstwy ukrytej? */</title>
		<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/Wyk%C5%82ad_4&amp;diff=5114&amp;oldid=prev"/>
		<updated>2016-04-25T08:15:59Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Uczenie nieliniowej sieci: Jak znaleźć błąd dla warstwy ukrytej?&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;pl&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← poprzednia wersja&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Wersja z 08:15, 25 kwi 2016&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l68&quot; &gt;Linia 68:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 68:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Jednostka wyjściowa, ''n'' − ta, otrzymuje zatem sygnał:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Jednostka wyjściowa, ''n'' − ta, otrzymuje zatem sygnał:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;math&amp;gt; e_n^{(j)} = \sum_{i \in Wyj} W_i^{n(j)}V_i^{(j)} = \sum_{i \in Wyj}  &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;:&lt;/ins&gt;&amp;lt;math&amp;gt; e_n^{(j)} = \sum_{i \in Wyj} W_i^{n(j)}V_i^{(j)} = \sum_{i \in Wyj}  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;W_i^{n(j)}f\left(\sum_{i \in U} w_i^{k(j)}x_i^{(j)}\right)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;W_i^{n(j)}f\left(\sum_{i \in U} w_i^{k(j)}x_i^{(j)}\right)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/math&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/math&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;(gdzie: &amp;lt;math&amp;gt;Wyj&amp;lt;/math&amp;gt; — indeksy wejść warstwy wyjściowej, '''uwaga''': &amp;lt;math&amp;gt;e_n^{(j)} \ne e_k^{(j)}&amp;lt;/math&amp;gt; dla &amp;lt;math&amp;gt; n \ne k &amp;lt;/math&amp;gt; !)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;:&lt;/ins&gt;(gdzie: &amp;lt;math&amp;gt;Wyj&amp;lt;/math&amp;gt; — indeksy wejść warstwy wyjściowej, '''uwaga''': &amp;lt;math&amp;gt;e_n^{(j)} \ne e_k^{(j)}&amp;lt;/math&amp;gt; dla &amp;lt;math&amp;gt; n \ne k &amp;lt;/math&amp;gt; !)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;i wytwarza sygnał wyjściowy:  &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;i wytwarza sygnał wyjściowy:  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;:&amp;lt;math&amp;gt;y_n^{(j)} = f\left(e_n^{(j)}\right) = f\left(\sum_{i \in Wyj} W_i^{n(j)} f\left(\sum_{i \in U} w_i^{k(j)}x_i^{(j)}\right)\right)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;:&amp;lt;math&amp;gt;y_n^{(j)} = f\left(e_n^{(j)}\right) = f\left(\sum_{i \in Wyj} W_i^{n(j)} f\left(\sum_{i \in U} w_i^{k(j)}x_i^{(j)}\right)\right)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jarekz</name></author>
		
	</entry>
	<entry>
		<id>http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/Wyk%C5%82ad_4&amp;diff=617&amp;oldid=prev</id>
		<title>Jarekz o 15:32, 21 maj 2015</title>
		<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/Wyk%C5%82ad_4&amp;diff=617&amp;oldid=prev"/>
		<updated>2015-05-21T15:32:39Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;pl&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← poprzednia wersja&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Wersja z 15:32, 21 maj 2015&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Linia 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Formy nieliniowości=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Formy nieliniowości=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Na poprzednich wykładach zajmowaliśmy się:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Na poprzednich wykładach zajmowaliśmy się:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jarekz</name></author>
		
	</entry>
	<entry>
		<id>http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/Wyk%C5%82ad_4&amp;diff=609&amp;oldid=prev</id>
		<title>Jarekz: Utworzono nową stronę &quot; =Formy nieliniowości= Na poprzednich wykładach zajmowaliśmy się: * sieciami liniowymi: łatwo można dla nich sformułować i udowodnić zbieżność gradientowej r...&quot;</title>
		<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/Wyk%C5%82ad_4&amp;diff=609&amp;oldid=prev"/>
		<updated>2015-05-21T15:27:00Z</updated>

		<summary type="html">&lt;p&gt;Utworzono nową stronę &amp;quot; =Formy nieliniowości= Na poprzednich wykładach zajmowaliśmy się: * sieciami liniowymi: łatwo można dla nich sformułować i udowodnić zbieżność gradientowej r...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nowa strona&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
=Formy nieliniowości=&lt;br /&gt;
Na poprzednich wykładach zajmowaliśmy się:&lt;br /&gt;
* sieciami liniowymi: łatwo można dla nich sformułować i udowodnić zbieżność gradientowej reguły uczenia. Niestety miały one ograniczenie do reprezentowania odwzorowań liniowych. &lt;br /&gt;
* perceptornem Rosenblatta: łatwo można było wyprowadzić dla niego regułę uczenia, wnosił nową jakość- podział przestrzeni wejściowej na rozłączne obszary decyzyjne, składanie sieci wielowarstwowych wprowadza nową jakość (możliwość konstruowania dowolnych podziałów przestrzeni wejściowej ) ale:&lt;br /&gt;
** dla jednej warstwy można rozwiązywać tylko problemy separowalne liniowo&lt;br /&gt;
** dla większej ilości warstw brak jest reguły uczenia&lt;br /&gt;
&lt;br /&gt;
Problem z regułą uczenia perceptronu Rosenblatta bierze się z tego, że nie można do niej wykorzystać metod spadku gradientowego, ze względu na występującą w nim nieciągłość.&lt;br /&gt;
&lt;br /&gt;
Okazuje się, że w wielu przypadkach dobrze sprawdzają się następujące dwie funkcje sigmoidalne:&lt;br /&gt;
* funkcja logistyczna:&lt;br /&gt;
:&amp;lt;math&amp;gt;y = \frac{1}{1+\exp(-\beta e)} &amp;lt;/math&amp;gt;&lt;br /&gt;
: * pochodna: &amp;lt;math&amp;gt;\frac{dy}{de} = \beta y (1-y)&amp;lt;/math&amp;gt;&lt;br /&gt;
: * zbiór wartości otwarty:&amp;lt;math&amp;gt;y \in (0,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
* tangens hiperboliczny&lt;br /&gt;
:&amp;lt;math&amp;gt;y = \tgh(\beta e) = \frac{\exp(\beta e)-\exp(-\beta e)}{\exp(\beta e) + \exp(-\beta e)} &amp;lt;/math&amp;gt;&lt;br /&gt;
: * pochodna :&amp;lt;math&amp;gt;\frac{d y }{d e} = \beta (1+y)(1-y)&amp;lt;/math&amp;gt;&lt;br /&gt;
: * zbiór wartości &amp;lt;math&amp;gt;y \in (-1,1)&amp;lt;/math&amp;gt;&lt;br /&gt;
We wszystkich powyższych wzorach &amp;lt;math&amp;gt;\beta&amp;lt;/math&amp;gt; to parametr odpowiadający za stromość sigmoidy, zaś &amp;lt;math&amp;gt;e&amp;lt;/math&amp;gt; to pobudzenie neuronu.&lt;br /&gt;
&lt;br /&gt;
= Uczenie=&lt;br /&gt;
== Pojedynczy neuron: reguła delta ==&lt;br /&gt;
Podobnie jak dla wszystkich omawianych dotychczas sieci celem uczenia neuronu nieliniowego jest taki dobór jego wag, aby zminimalizować błąd średnio-kwadratowy popełniany na ciągu uczącym. &lt;br /&gt;
Niech ciąg uczący będzie:&lt;br /&gt;
:&amp;lt;math&amp;gt;\left\{ \left(X^{(j)}, z^{(j)}\right)\right\}_{j = 1,\dots,N} &amp;lt;/math&amp;gt;&lt;br /&gt;
Funkcja błędu to:&lt;br /&gt;
: &amp;lt;math&amp;gt;J(w) = \frac{1}{2} \sum_{j=1}^N\left(z^{(j)}- y^{(j)} \right)^2 = \sum_{j=1}^N J^{(j)}(w)&amp;lt;/math&amp;gt;&lt;br /&gt;
gdzie:&lt;br /&gt;
:&amp;lt;math&amp;gt;y^{(j)} = f\left(e^{(j)}\right) = f \left( \sum_{i=0}^n w_i^{(j)} x_i^{(j)}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
zaś&lt;br /&gt;
:&amp;lt;math&amp;gt;J^{(j)}(w) = \frac{1}{2} \left( z^{(j)} -y^{(j)}\right)^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
podobnie jak w przypadku regresji liniowej chcemy zmieniać wag w kierunku przeciwnym do kierunku gradientu funkcji kosztu, tzn. po prezentacji ''j = 1'' przykładu ''i''-ta waga zmienia się tak:&lt;br /&gt;
:&amp;lt;math&amp;gt;w_i^{(j+1)} - w_i^{(j)} = \Delta w_i^{(j)} = -\eta \frac{\partial J^{(j)} }{\partial w_i} = &lt;br /&gt;
-\eta \frac{\partial J^{(j)} }{\partial y^{(j)}} \frac{\partial y^{(j)}}{\partial w_i} = - \eta \frac{\partial J^{(j)} }{\partial y^{(j)}} \frac{\partial y^{(j)}}{\partial e} \frac{\partial e}{\partial w_i}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
łatwo zauważyć, że:&lt;br /&gt;
: &amp;lt;math&amp;gt;\frac{\partial J^{(j)} }{\partial y^{(j)}} = - \left( z^{(j)} -y^{(j)}\right)&lt;br /&gt;
 &amp;lt;/math&amp;gt;&lt;br /&gt;
oraz, że:&lt;br /&gt;
:&amp;lt;math&amp;gt; \frac{\partial e}{\partial w_i} = x_j^{(j)}&amp;lt;/math&amp;gt;&lt;br /&gt;
natomiast:&lt;br /&gt;
:&amp;lt;math&amp;gt;\frac{\partial y^{(j)}}{\partial e^{(j)}} = \frac{d f(e)}{de^{(j)}} &amp;lt;/math&amp;gt;&lt;br /&gt;
Łącząc te wszystkie spostrzeżenia otrzymujemy:&lt;br /&gt;
:&amp;lt;math&amp;gt; \Delta w_i^{(j)} = \eta \frac{df(e)}{d e^{(j)}}\left(z^{(j)} - y^{(j)}\right)x_i^{(j)} = \eta \delta^{(j)}x_i^{(j)}&amp;lt;/math&amp;gt;&lt;br /&gt;
gdzie wprowadziliśmy:&lt;br /&gt;
:&amp;lt;math&amp;gt;\delta^{(j)} = \frac{df(e)}{de^{(j)}} \left( z^{(j)}- y^{(j)}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Uczenie nieliniowej sieci: Jak znaleźć błąd dla warstwy ukrytej?==&lt;br /&gt;
;Pomysł: [[Plik:Rzutowanie.png‎|thumb|right|319px]]&lt;br /&gt;
błąd &amp;lt;math&amp;gt;\delta_m^{(j)}&amp;lt;/math&amp;gt; występujący w ''j'' − tym kroku uczenia na neuronie ''m'' rzutujemy wstecz do wszystkich neuronów, które stanowią wejście dla neuronu ''m'' − tego.&lt;br /&gt;
Rzutując, mnożymy błąd przez ten sam współczynnik wagowy, który w czasie propagacji ''w przód'' ważył wejście.&lt;br /&gt;
;Dlaczego?&lt;br /&gt;
;Uzasadnienie intuicyjne: Jeśli neuron warstwy ukrytej przyczynił się do powstania błędu na neuronie warstwy wyjściowej rzutując ''w przód'' przez dużą wagę, to trzeba mu zwrócić informację o błędzie proporcjonalnie do tej wagi.&lt;br /&gt;
﻿﻿&lt;br /&gt;
&lt;br /&gt;
;Uzasadnienie formalne: &lt;br /&gt;
[[Plik:Backprop_oznaczenia.png|thumb|right|319px|Oznaczenia]]&lt;br /&gt;
Reguła ta wynika wprost z gradientowej metody minimalizacji funkcji błędu.&lt;br /&gt;
Rozważmy sieć dwuwarstwową.&lt;br /&gt;
Dla wzorca ''j'' − tego ''k'' − ta jednostka ukryta otrzymuje pobudzenie:&lt;br /&gt;
:&amp;lt;math&amp;gt;e_k^{(j)} = \sum_{i \in U}w_i^{k{(j)}}x_i^{(j)}&amp;lt;/math&amp;gt;&lt;br /&gt;
gdzie: &amp;lt;math&amp;gt; U &amp;lt;/math&amp;gt; - indeksy wejść warstwy ukrytej, &amp;lt;math&amp;gt;w_i^{k{(j)}}&amp;lt;/math&amp;gt; - ''i''-ta waga ''k''-tej jednostki w ''j''-tym kroku uczenia.&lt;br /&gt;
Jednostka ta wytwarza sygnał wyjściowy:&lt;br /&gt;
:&amp;lt;math&amp;gt;V_k^{(j)} = f\left( e_k ^{(j)}\right) = f\left(\sum_{i \in U} w_i^{k(j)} x_i^{(j)}\right) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Jednostka wyjściowa, ''n'' − ta, otrzymuje zatem sygnał:&lt;br /&gt;
&amp;lt;math&amp;gt; e_n^{(j)} = \sum_{i \in Wyj} W_i^{n(j)}V_i^{(j)} = \sum_{i \in Wyj} &lt;br /&gt;
W_i^{n(j)}f\left(\sum_{i \in U} w_i^{k(j)}x_i^{(j)}\right)&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
(gdzie: &amp;lt;math&amp;gt;Wyj&amp;lt;/math&amp;gt; — indeksy wejść warstwy wyjściowej, '''uwaga''': &amp;lt;math&amp;gt;e_n^{(j)} \ne e_k^{(j)}&amp;lt;/math&amp;gt; dla &amp;lt;math&amp;gt; n \ne k &amp;lt;/math&amp;gt; !)&lt;br /&gt;
i wytwarza sygnał wyjściowy: &lt;br /&gt;
:&amp;lt;math&amp;gt;y_n^{(j)} = f\left(e_n^{(j)}\right) = f\left(\sum_{i \in Wyj} W_i^{n(j)} f\left(\sum_{i \in U} w_i^{k(j)}x_i^{(j)}\right)\right)&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Miara błędu wygląda tak:&lt;br /&gt;
:&amp;lt;math&amp;gt;J(\mathbf{w}) = \frac{1}{2}\sum_{n,j}\left(z_n^{(j)} - y_n{(j)}\right)^2 &lt;br /&gt;
= \frac{1}{2}\sum_{n,j} \left(z_n^{(j)} - f\left( \sum_{i \in Wyj} W_i^{n(j)}f\left(\sum_{i \in U}w_i^{k(j)}x_i^{(j)}\right)\right) \right)^2&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
i jest ciągłą i różniczkowalną funkcją wszystkich wag, możemy więc ją minimalizować zmieniając wagi w kierunku przeciwnym do gradientu (&amp;lt;math&amp;gt;\mathbf{w}&amp;lt;/math&amp;gt; to wszystkie wagi zarówno ''w'' jak i ''W'' ).&lt;br /&gt;
&lt;br /&gt;
Dla warstwy wyjściowej otrzymujemy:&lt;br /&gt;
:&amp;lt;math&amp;gt; \Delta W_i^{n(j)} = -\eta \frac{\partial J^{(j)}}{\partial W_i^{n}} = \eta \left( z_n^{(j)} - y_n^{(j)}\right) \frac{df(e_n^{(j)})}{de} V_k^{(j)} = \eta \delta^{(j)} V_k^{(j)} &amp;lt;/math&amp;gt;&lt;br /&gt;
gdzie oznaczyliśmy: &amp;lt;math&amp;gt;\delta_n^{(j)} = \left( z_n^{(j)} - y_n^{(j)}\right) \frac{df(e_n^{(j)})}{de}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dla warstwy ukrytej otrzymujemy: &lt;br /&gt;
[[Plik:Backprop_2.png|thumb|right|319px|Błędy w warstwie ukrytej]]&lt;br /&gt;
:&amp;lt;math&amp;gt;\Delta w_i^{k(j)} = -\eta \frac{\partial J^{(j)}}{\partial w_i^k} = -\eta \frac{\partial J^{(j)}}{\partial V_k }\frac{\partial V_k^{(j)}}{\partial w_i^k} =&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt; = \eta \sum_n \left(z_n^{(j)} - y_n^{(j)}\right)&lt;br /&gt;
\frac{df(e_n^{(j)})}{d e_n}W_i^n \frac{df(e_k^{(j)})}{de_k}  x_i^{(j)} =&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;=\eta \sum_n \delta_n^{(j)}W_i^n \frac{df(e_k^{(j)})}{de_k}x_i^{(j)} =&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt; =\eta \delta_k^{(j)} x_i^{(j)} &amp;lt;/math&amp;gt;&lt;br /&gt;
przy czym zdefiniowaliśmy: &lt;br /&gt;
:&amp;lt;math&amp;gt;\delta_k^{(j)} = \frac{df(e_k^{(j)}) }{d e_k} \sum_n W_i^n \delta_n^{(j)}&amp;lt;/math&amp;gt;&lt;br /&gt;
Widać, że wzór na zmianę wag, czy to warstwy wejściowej, czy ukrytej ma tę samą postać, różni się jedynie definicją &amp;lt;math&amp;gt; \delta&amp;lt;/math&amp;gt;. Dla warstw ukrytych błąd jest sumą ważoną (wagami połączeń ''do przodu'') błędów popełnionych w wyższej warstwie.&lt;br /&gt;
&lt;br /&gt;
Regułę tą można udowodnić dla dowolnej ilości warstw stosując odpowiednią ilość razy regułę łańcuchową.&lt;br /&gt;
&lt;br /&gt;
== Problemy uczenia metodą wstecznej propagacji błędu ==&lt;br /&gt;
* Minima lokalne funkcji kosztu. W odróżnieniu od funkcji kosztu dla problemu sieci liniowych w przypadku sieci nieliniowych funkcja kosztu ma zazwyczaj wiele lokalnych minimów. Algorytm wstecznej propagacji błędu jako algorytm spadku gradientowego nie jest odporny na ich występowanie. &lt;br /&gt;
* Generalizacja: Uczenie z wykorzystaniem tylko jednego ciągu uczącego i reguły wstecznej propagacji błędu może prowadzić do problemów z generalizacją, czyli wynikami działania sieci na danych nie występujących w ciągu uczącym.&lt;br /&gt;
&lt;br /&gt;
= Klasyczne przykłady zastosowań =&lt;br /&gt;
&lt;br /&gt;
;XOR: rozwiązanie metodą wstecznej propagacji dla jednostek sigmoidalnych — jednostki są sterowane w stronę wysycenia. Czas uczenia jest bardzo długi: setki epok prezentacji całego zbioru treningowego.&lt;br /&gt;
&lt;br /&gt;
;Koder: Dwuwarstwowa sieć o N wejściach, N wyjściach i M neuronach w warstwie ukrytej (M &amp;lt; N). Chcemy uzyskać autoasocjację czyli X(j) = Y (j). &lt;br /&gt;
* Praktyczne zastosowanie — kompresja np. obrazów. &lt;br /&gt;
* Teoretyczne — wyznaczanie możliwości sieci — problem łatwo można skalować i zmieniać jego trudność przez zmianę M/N.&lt;br /&gt;
[[Plik:koder.png|thumb|center|292px|Ilustracja koncepcji kodera.]]&lt;br /&gt;
&lt;br /&gt;
;NETtalk: Klasyczna praca (Sejnowski i Rosenberg 1987,Complex Systems 1, 145–168): generacja ciągu fonemów z angielskiego tekstu pisanego.&lt;br /&gt;
* Architektura: 7 × 29 wejść kodujących 7 kolejnych liter, 80 jednostek ukrytych, 26 jednostek wyjściowych kodujacych fonemy.&lt;br /&gt;
* Zbiór uczący: 1024 słowa podawane w postaci par (litera,fonem)&lt;br /&gt;
* Efekty: po 10 epokach zrozumiała wymowa, po 50 — 95% odtwarzania zbioru treningowego, 78% na ciągłym tekście źródłowym. Porównanie stanowi system algorytmiczny DEC-talk (jest lepszy)&lt;br /&gt;
[[Plik:NetTalk.png‎ |thumb|center|754px|Ilustracja konstrukcji sieci NetTalk]]&lt;br /&gt;
&lt;br /&gt;
;Struktura drugorzędowa białka: (Quian, Sejnowski (1988), Journal of Molecural Biology 202, 865–884). &lt;br /&gt;
* Wejście — ruchome okno z 13 aminokwasów. &lt;br /&gt;
* Na wyjściu odczytujemy prognozę struktury środkowej części okna jako spirali α, arkusza β lub innej struktury. &lt;br /&gt;
* Efekt: na nowym zbiorze danych dokładność predykcji 62% (w porównaniu do konkurencyjnej metody 53%)&lt;br /&gt;
&lt;br /&gt;
;Rozpoznawanie celów sonarowych:(Gorman i Sejnowski (1988) Neural Network 1, 75–89) Problem: rozróżnianie sygnałów sonarowych odbitych albo od skał albo od metalowych cylindrów leżących na dnie zatoki.&lt;br /&gt;
* Preprocessing: transformanta Fouriera &lt;br /&gt;
* Architektura: 60 jednostek wejściowych i 2 wyjściowe, liczba jednostek ukrytych od 0 –24,&lt;br /&gt;
* Na nowych danych (generalizacja ) dla 12 jednostek ukrytych ∼ 85%; poprawa jakości do ∼ 90% po staranniejszym wybraniu zbioru treningowego.&lt;br /&gt;
[[Plik:sonar_epoki.png|thumb|center|290px|Wyniki różnych architektur dla zbioru uczącego]]&lt;br /&gt;
&lt;br /&gt;
;Kierowanie samochodem (Pomerlau, 1989):&lt;br /&gt;
* Sygnał wejściowy — obraz z kamery video 30 × 32 piksle umocowanej na dachu oraz obraz 8 × 32 piksle z dalmierza kodującego odległość w skali szarości, &lt;br /&gt;
* warstwa ukryta 29 jednostek, wyjście 45 jednostek ułożonych w linię (środkowa jednostka kodowała jazdę na wprost, boczne — kąt skrętu odpowiednio w lewo lub w prawo).&lt;br /&gt;
* Zbiór treningowy: 1200 symulowanych fragmentów drogi. Uczenie: około 40 powtórzeń każdego ze wzorców.&lt;br /&gt;
* Efekt: sieć mogła prowadzić samochód z prędkością około 5 km/h po drodze przez zalesiony obszar wokół kampusu Carrengie-Mellon.&lt;br /&gt;
Ograniczenie prędkości: moc obliczeniowa komputera — sieć symulowana była na komputerze Sun-3 (metody algorytmiczne dawały prędkość o połowę mniejszą)&lt;br /&gt;
[[http://www.youtube.com/watch?v=5u4G23_OohI|Przykład kierowania samochodem (czas 3:25-8:38)]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;Rozpoznawanie ręcznie pisanych kodów pocztowych(Le Cun 1989, Neural Computaion 1 541–551):&lt;br /&gt;
[[Plik:Pismo.png|thumb|right|390px|Schemat sieci do rozpoznawania kodów pocztowych]]&lt;br /&gt;
* Preprocessing: rozdzielenie kodów na po jedyncze	cyfry,	wyskalowanie	do standardowych rozmiarów i skwantowanie na tablicę piksli 16 × 16.&lt;br /&gt;
* W całej sieci było w sumie 1256 jednostek i 9700 niezależnych parametrów. &lt;br /&gt;
* Nauka na zbiorze 7300 cyfr i test na 2000 cyfr.&lt;br /&gt;
* Wynik: 1% błędów dla zbioru uczącego i 5% dla testowego. Po dopuszceniu odpowiedzi ”nie wiem” błąd na zbiorze testowym 1%, ale odrzucone było 12% cyfr. Dalszą poprawę generalizacji uzyskano po usunięciu niepotrzebnych wag (99% trafności przy 9% odrzutów)&lt;/div&gt;</summary>
		<author><name>Jarekz</name></author>
		
	</entry>
</feed>