<?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%2F%C4%86wiczenia_1</id>
	<title>Uczenie maszynowe i sztuczne sieci neuronowe/Ćwiczenia 1 - 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%2F%C4%86wiczenia_1"/>
	<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/%C4%86wiczenia_1&amp;action=history"/>
	<updated>2026-05-03T21:08:40Z</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/%C4%86wiczenia_1&amp;diff=4822&amp;oldid=prev</id>
		<title>SuperAdmin: /* Zapoznanie się z regresją liniową */</title>
		<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/%C4%86wiczenia_1&amp;diff=4822&amp;oldid=prev"/>
		<updated>2016-03-01T16:20:01Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Zapoznanie się z regresją liniową&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 16:20, 1 mar 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-l88&quot; &gt;Linia 88:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 88:&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;* dla przypomnienia: odwrotność macierzy można obliczyć w numpy funkcją: &amp;lt;tt&amp;gt;numpy.linalg.inv&amp;lt;/tt&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;* dla przypomnienia: odwrotność macierzy można obliczyć w numpy funkcją: &amp;lt;tt&amp;gt;numpy.linalg.inv&amp;lt;/tt&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;/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;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 class=&quot;diffchange diffchange-inline&quot;&gt;Algortym &lt;/del&gt;gradientowy &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;zbiorczy &lt;/del&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;/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;Proszę napisać funkcję, która znajduje optymalne parametry theta wg. &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;algorytmy &lt;/del&gt;gradientowego &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;zbiorczego&lt;/del&gt;. Funkcja jako argumenty przyjmuje ciąg uczący, wartości początkowe theta i parametr szybkości zbiegania alpha.&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;/div&gt;&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 class=&quot;diffchange diffchange-inline&quot;&gt;Algorytm &lt;/ins&gt;gradientowy &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;stochastyczny &lt;/ins&gt;==&lt;/div&gt;&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;Proszę napisać funkcję, która znajduje optymalne parametry theta wg. &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;algorytmu &lt;/ins&gt;gradientowego &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;stochastycznego&lt;/ins&gt;. Funkcja jako argumenty przyjmuje ciąg uczący, wartości początkowe theta i parametr szybkości zbiegania alpha.&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 wyjściu funkcja powinna zwracać wyestymowane wartości parametrów.&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 wyjściu funkcja powinna zwracać wyestymowane wartości parametrów.&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;/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;W ramach ilustracji po każdej iteracji proszę dorysować prostą parametryzowaną przez aktualne wartości parametrów. Prostą animację można wykonać [[TI/Matplotlib#Prosta_animacja| analogicznie jak tu]].&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 ramach ilustracji po każdej iteracji proszę dorysować prostą parametryzowaną przez aktualne wartości parametrów. Prostą animację można wykonać [[TI/Matplotlib#Prosta_animacja| analogicznie jak tu]].&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;/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;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 class=&quot;diffchange diffchange-inline&quot;&gt;Algorytm &lt;/del&gt;gradientowy &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;stochastyczny &lt;/del&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;Algortym &lt;/ins&gt;gradientowy &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;zbiorczy &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;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;Proszę napisać funkcję, która znajduje optymalne parametry theta wg. &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;algorytmu &lt;/del&gt;gradientowego &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;stochastycznego&lt;/del&gt;. Funkcja jako argumenty przyjmuje ciąg uczący, wartości początkowe theta i parametr szybkości zbiegania alpha.&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;Proszę napisać funkcję, która znajduje optymalne parametry theta wg. &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;algorytmy &lt;/ins&gt;gradientowego &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;zbiorczego&lt;/ins&gt;. Funkcja jako argumenty przyjmuje ciąg uczący, wartości początkowe theta i parametr szybkości zbiegania alpha.&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 wyjściu funkcja powinna zwracać wyestymowane wartości parametrów.&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 wyjściu funkcja powinna zwracać wyestymowane wartości parametrów.&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;/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;/table&gt;</summary>
		<author><name>SuperAdmin</name></author>
		
	</entry>
	<entry>
		<id>http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/%C4%86wiczenia_1&amp;diff=4428&amp;oldid=prev</id>
		<title>Jarekz: /* Przykładowe kody */</title>
		<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/%C4%86wiczenia_1&amp;diff=4428&amp;oldid=prev"/>
		<updated>2015-11-22T18:32:52Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Przykładowe kody&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 18:32, 22 lis 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-l106&quot; &gt;Linia 106:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 106:&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;/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 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;&amp;lt;!--&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;==Przykładowe kody ==&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;==Przykładowe kody ==&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;source lang = python&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;source lang = python&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-l186&quot; &gt;Linia 186:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 187:&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;py.show()&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;py.show()&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;/source&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;/source&amp;gt;&lt;/div&gt;&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;--&amp;gt;&lt;/ins&gt;&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/%C4%86wiczenia_1&amp;diff=4427&amp;oldid=prev</id>
		<title>Jarekz: /* Algorytm gradientowy stochastyczny */</title>
		<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/%C4%86wiczenia_1&amp;diff=4427&amp;oldid=prev"/>
		<updated>2015-11-22T18:27:37Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Algorytm gradientowy stochastyczny&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 18:27, 22 lis 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-l98&quot; &gt;Linia 98:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 98:&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 wyjściu funkcja powinna zwracać wyestymowane wartości parametrów.&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 wyjściu funkcja powinna zwracać wyestymowane wartości parametrów.&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;/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;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;W ramach ilustracji po każdej iteracji proszę dorysować prostą parametryzowaną przez aktualne wartości parametrów. Prostą animację można wykonać [[&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;TIMatplotlib&lt;/del&gt;#Prosta_animacja| analogicznie jak tu]].&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;W ramach ilustracji po każdej iteracji proszę dorysować prostą parametryzowaną przez aktualne wartości parametrów. Prostą animację można wykonać [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;TI/Matplotlib&lt;/ins&gt;#Prosta_animacja| analogicznie jak tu]].&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;/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;==Porównanie algorytmów==&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;==Porównanie algorytmów==&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/%C4%86wiczenia_1&amp;diff=4426&amp;oldid=prev</id>
		<title>Jarekz: /* Algorytm gradientowy stochastyczny */</title>
		<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/%C4%86wiczenia_1&amp;diff=4426&amp;oldid=prev"/>
		<updated>2015-11-22T18:27:17Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Algorytm gradientowy stochastyczny&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 18:27, 22 lis 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-l98&quot; &gt;Linia 98:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 98:&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 wyjściu funkcja powinna zwracać wyestymowane wartości parametrów.&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 wyjściu funkcja powinna zwracać wyestymowane wartości parametrów.&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;/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;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;W ramach ilustracji po każdej iteracji proszę dorysować prostą parametryzowaną przez aktualne wartości parametrów. Prostą animację można wykonać [[&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;TI:Programowanie_z_Pythonem/Matplotlib&lt;/del&gt;#Prosta_animacja| analogicznie jak tu]].&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;W ramach ilustracji po każdej iteracji proszę dorysować prostą parametryzowaną przez aktualne wartości parametrów. Prostą animację można wykonać [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;TIMatplotlib&lt;/ins&gt;#Prosta_animacja| analogicznie jak tu]].&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;/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;==Porównanie algorytmów==&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;==Porównanie algorytmów==&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/%C4%86wiczenia_1&amp;diff=4425&amp;oldid=prev</id>
		<title>Jarekz: /* Algortym gradientowy zbiorczy */</title>
		<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/%C4%86wiczenia_1&amp;diff=4425&amp;oldid=prev"/>
		<updated>2015-11-22T18:26:52Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Algortym gradientowy zbiorczy&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 18:26, 22 lis 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-l92&quot; &gt;Linia 92:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 92:&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 wyjściu funkcja powinna zwracać wyestymowane wartości parametrów.&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 wyjściu funkcja powinna zwracać wyestymowane wartości parametrów.&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;/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;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;W ramach ilustracji po każdej iteracji proszę dorysować prostą parametryzowaną przez aktualne wartości parametrów. Prostą animację można wykonać [[TI&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;:Programowanie_z_Pythonem&lt;/del&gt;/Matplotlib#Prosta_animacja| analogicznie jak tu]].&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;W ramach ilustracji po każdej iteracji proszę dorysować prostą parametryzowaną przez aktualne wartości parametrów. Prostą animację można wykonać [[TI/Matplotlib#Prosta_animacja| analogicznie jak tu]].&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;/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;==Algorytm gradientowy stochastyczny ==&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;==Algorytm gradientowy stochastyczny ==&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/%C4%86wiczenia_1&amp;diff=4424&amp;oldid=prev</id>
		<title>Jarekz: /* Algorytm równań normalnych */</title>
		<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/%C4%86wiczenia_1&amp;diff=4424&amp;oldid=prev"/>
		<updated>2015-11-22T18:23:32Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Algorytm równań normalnych&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 18:23, 22 lis 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-l83&quot; &gt;Linia 83:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 83:&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;==Algorytm równań normalnych ==&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;==Algorytm równań normalnych ==&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;Proszę napisać funkcję, która:&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;Proszę napisać funkcję, która:&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;* na wejściu przyjmuje ciąg uczący, implementuje wzór na parametry optymalne na podstawie [[&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;STAT:&lt;/del&gt;Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/Wyk%C5%82ad_1#Minimalizacja_funkcji_kosztu|równań normalnych]].  &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;* na wejściu przyjmuje ciąg uczący, implementuje wzór na parametry optymalne na podstawie [[Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/Wyk%C5%82ad_1#Minimalizacja_funkcji_kosztu|równań normalnych]].  &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;* Funkcja powinna zwracać estymowane parametry theta.&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;* Funkcja powinna zwracać estymowane parametry theta.&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;* Proszę dorysować prostą reprezentującą hipotezę do wykresu punktów ciągu uczącego.&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;* Proszę dorysować prostą reprezentującą hipotezę do wykresu punktów ciągu uczącego.&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/%C4%86wiczenia_1&amp;diff=827&amp;oldid=prev</id>
		<title>Jarekz: /* Przykładowe kody */</title>
		<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/%C4%86wiczenia_1&amp;diff=827&amp;oldid=prev"/>
		<updated>2015-05-21T18:21:03Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Przykładowe kody&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 18:21, 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-l107&quot; &gt;Linia 107:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 107:&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;==Przykładowe kody ==&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;==Przykładowe kody ==&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;source lang = &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;'py'&lt;/del&gt;&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;source lang = &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;python&lt;/ins&gt;&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;# -*- coding: utf-8 -*-&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;# -*- coding: utf-8 -*-&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;import matplotlib&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;import matplotlib&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/%C4%86wiczenia_1&amp;diff=826&amp;oldid=prev</id>
		<title>Jarekz: Utworzono nową stronę &quot;=Powtórka podstawowych rachunków wektorowych i macierzowych w ptyhonie= ==Wektor wierszowy i kolumnowy == Natywnym typem zmiennych w numpy są tablice czyli &lt;tt&gt;array&lt;...&quot;</title>
		<link rel="alternate" type="text/html" href="http://brain.fuw.edu.pl/edu/index.php?title=Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/%C4%86wiczenia_1&amp;diff=826&amp;oldid=prev"/>
		<updated>2015-05-21T18:20:45Z</updated>

		<summary type="html">&lt;p&gt;Utworzono nową stronę &amp;quot;=Powtórka podstawowych rachunków wektorowych i macierzowych w ptyhonie= ==Wektor wierszowy i kolumnowy == Natywnym typem zmiennych w numpy są tablice czyli &amp;lt;tt&amp;gt;array&amp;lt;...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nowa strona&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=Powtórka podstawowych rachunków wektorowych i macierzowych w ptyhonie=&lt;br /&gt;
==Wektor wierszowy i kolumnowy ==&lt;br /&gt;
Natywnym typem zmiennych w numpy są tablice czyli &amp;lt;tt&amp;gt;array&amp;lt;/tt&amp;gt;. Aczkolwiek są one wielowymiarowe i przy pomocy indeksowania i pobierania wycinków można się nimi sprawnie posługiwać to nie są one domyślnie macierzami w sensie matematycznym. Aby uprawiać przy ich pomocy algebrę musimy nadać im kształt :-). Służy do tego metoda &amp;lt;tt&amp;gt;reshape&amp;lt;/tt&amp;gt;.&lt;br /&gt;
Aby zbadać własności tych obiektów proszę wykonać następujący kod:&lt;br /&gt;
&amp;lt;source lang =python&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
x = np.array([1,2,3,4])&lt;br /&gt;
print len(x), x.shape&lt;br /&gt;
print 'x: ',x&lt;br /&gt;
print 'transponowany x: ',x.T&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Czy tablica x i transponowana tablica x się różnią?&lt;br /&gt;
&lt;br /&gt;
A teraz proszę wykonać następujący kod:&lt;br /&gt;
&amp;lt;source lang =python&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
x = np.array([1,2,3,4]).reshape(4,1)&lt;br /&gt;
print len(x), x.shape&lt;br /&gt;
print 'x: ',x&lt;br /&gt;
print 'transponowany x: ',x.T&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Proszę sprawdzić kształt i transpozycję macierzy 2x2, np. &lt;br /&gt;
::&amp;lt;math&amp;gt;A =&lt;br /&gt;
\left[&lt;br /&gt;
\begin{array}{cc}&lt;br /&gt;
1 &amp;amp; 2 \\&lt;br /&gt;
3 &amp;amp; 4&lt;br /&gt;
\end{array}&lt;br /&gt;
\right]&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang =python&amp;gt;&lt;br /&gt;
A = np.array([[1,2],[3,4]])&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Operator &amp;lt;tt&amp;gt;*&amp;lt;/tt&amp;gt; służy do mnożenia macierzy element po elemencie, albo do mnożenia macierzy przez skalar:&lt;br /&gt;
&amp;lt;source lang =python&amp;gt;&lt;br /&gt;
print A*A&lt;br /&gt;
print 2*A&lt;br /&gt;
v = np.array([3])&lt;br /&gt;
print v*A&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Do wykonywania mnożenia w sensie macierzowym służy funkcja &amp;lt;tt&amp;gt;np.dot&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;source lang =python&amp;gt;&lt;br /&gt;
print np.dot(A,A)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Co robią następujące polecenia:&lt;br /&gt;
&amp;lt;source lang =python&amp;gt;&lt;br /&gt;
import numpy as np&lt;br /&gt;
x = np.array([1,2,3,4]).reshape(4,1)&lt;br /&gt;
print np.dot(x.T,x)&lt;br /&gt;
print np.dot(x,x.T)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Zapoznanie się z regresją liniową=&lt;br /&gt;
W poniższych ćwiczeniach korzystać będziemy z następującej funkcji generującej dane. Proszę ją wykonać i obejrzeć dane.  &amp;lt;tt&amp;gt;(X,Y)&amp;lt;/tt&amp;gt; to ciąg uczący.&lt;br /&gt;
&amp;lt;source lang = python&amp;gt;&lt;br /&gt;
# -*- coding: utf-8 -*-&lt;br /&gt;
import scipy.stats as st&lt;br /&gt;
import pylab as py&lt;br /&gt;
import numpy as np&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
def symuluj_dane(theta, ile=30, odch_std = 3):&lt;br /&gt;
	# symuowana zalezność ma nastepującą postać y = theta[0] + theta[1]*x &lt;br /&gt;
	# wartości parametrów  &lt;br /&gt;
	X = np.ones((ile,2)).reshape(ile,2) # X ma być macierzą, w której wierszach zapisane są kolejne wejścia ciągu&lt;br /&gt;
	X[:,1] = np.linspace(0, 10,ile)&lt;br /&gt;
	#błąd &lt;br /&gt;
	epsilon = st.norm.rvs(size = ile, loc=0, scale = odch_std).reshape(ile,1)&lt;br /&gt;
	#epsilon = (st.uniform.rvs(size = ile, loc=-0.5, scale = odch_std)**3).reshape(ile,1)&lt;br /&gt;
		&lt;br /&gt;
	Y =  np.dot(X,theta) + epsilon &lt;br /&gt;
	return (X,Y)&lt;br /&gt;
&lt;br /&gt;
theta = np.array([1.,3.]).reshape(2,1) # theta ma być wektorem kolumnowym&lt;br /&gt;
(X,Y) = symuluj_dane(theta,  ile = 7, odch_std = 3) #symulujemy dane&lt;br /&gt;
py.plot(X[:,1], Y,'bo') # przedstawiamy nasze dane na wykresie&lt;br /&gt;
py.show()&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algorytm równań normalnych ==&lt;br /&gt;
Proszę napisać funkcję, która:&lt;br /&gt;
* na wejściu przyjmuje ciąg uczący, implementuje wzór na parametry optymalne na podstawie [[STAT:Uczenie_maszynowe_i_sztuczne_sieci_neuronowe/Wyk%C5%82ad_1#Minimalizacja_funkcji_kosztu|równań normalnych]]. &lt;br /&gt;
* Funkcja powinna zwracać estymowane parametry theta.&lt;br /&gt;
* Proszę dorysować prostą reprezentującą hipotezę do wykresu punktów ciągu uczącego.&lt;br /&gt;
* dla przypomnienia: odwrotność macierzy można obliczyć w numpy funkcją: &amp;lt;tt&amp;gt;numpy.linalg.inv&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Algortym gradientowy zbiorczy ==&lt;br /&gt;
Proszę napisać funkcję, która znajduje optymalne parametry theta wg. algorytmy gradientowego zbiorczego. Funkcja jako argumenty przyjmuje ciąg uczący, wartości początkowe theta i parametr szybkości zbiegania alpha.&lt;br /&gt;
Na wyjściu funkcja powinna zwracać wyestymowane wartości parametrów.&lt;br /&gt;
&lt;br /&gt;
W ramach ilustracji po każdej iteracji proszę dorysować prostą parametryzowaną przez aktualne wartości parametrów. Prostą animację można wykonać [[TI:Programowanie_z_Pythonem/Matplotlib#Prosta_animacja| analogicznie jak tu]].&lt;br /&gt;
&lt;br /&gt;
==Algorytm gradientowy stochastyczny ==&lt;br /&gt;
Proszę napisać funkcję, która znajduje optymalne parametry theta wg. algorytmu gradientowego stochastycznego. Funkcja jako argumenty przyjmuje ciąg uczący, wartości początkowe theta i parametr szybkości zbiegania alpha.&lt;br /&gt;
Na wyjściu funkcja powinna zwracać wyestymowane wartości parametrów.&lt;br /&gt;
&lt;br /&gt;
W ramach ilustracji po każdej iteracji proszę dorysować prostą parametryzowaną przez aktualne wartości parametrów. Prostą animację można wykonać [[TI:Programowanie_z_Pythonem/Matplotlib#Prosta_animacja| analogicznie jak tu]].&lt;br /&gt;
&lt;br /&gt;
==Porównanie algorytmów==&lt;br /&gt;
* Proszę sprawdzić zbieżność algorytmów w zależności od parametrów szybkości zbiegania.&lt;br /&gt;
* Proszę sprawdzić czy algorytmy optymalizacyjne działają poprawnie dla danych gdzie błąd podlega innym rozkładom prawdopodobieństwa niż normalny. np. rozkład jednorodny lub  t o 3 st. swobody.&lt;br /&gt;
 *&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Przykładowe kody ==&lt;br /&gt;
&amp;lt;source lang = 'py'&amp;gt;&lt;br /&gt;
# -*- coding: utf-8 -*-&lt;br /&gt;
import matplotlib&lt;br /&gt;
matplotlib.use('TkAgg')&lt;br /&gt;
import scipy.stats as st&lt;br /&gt;
import pylab as py&lt;br /&gt;
import numpy as np&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
def symuluj_dane(theta, ile=30, odch_std = 3):&lt;br /&gt;
	# symuowana zalezność ma nastepującą postać y = theta[0] + theta[1]*x &lt;br /&gt;
	# wartości parametrów  &lt;br /&gt;
	X = np.ones((ile,2)).reshape(ile,2) # X ma być macierzą, w której wierszach zapisane są kolejne wejścia ciągu&lt;br /&gt;
	X[:,1] = np.linspace(0, 10,ile)&lt;br /&gt;
	#błąd &lt;br /&gt;
	epsilon = st.norm.rvs(size = ile, loc=0, scale = odch_std).reshape(ile,1)&lt;br /&gt;
	#epsilon = (st.uniform.rvs(size = ile, loc=-0.5, scale = odch_std)**3).reshape(ile,1)&lt;br /&gt;
		&lt;br /&gt;
	Y =  np.dot(X,theta) + epsilon &lt;br /&gt;
	return (X,Y)&lt;br /&gt;
&lt;br /&gt;
def licz_rownania_normalne(X,Y):&lt;br /&gt;
	theta = np.dot( np.dot(np.linalg.inv( np.dot(X.T,X)  ),X.T) ,Y)&lt;br /&gt;
	return theta&lt;br /&gt;
&lt;br /&gt;
def koszt(X,Y,theta):&lt;br /&gt;
	return 0.5* np.dot( ( np.dot(X,theta) - Y).T, ( np.dot(X,theta) -Y) )&lt;br /&gt;
&lt;br /&gt;
def licz_iteracyjnie_stoch(X,Y,theta0 = np.array([0,0]).reshape(2,1), alpha = 0.01):&lt;br /&gt;
	&lt;br /&gt;
	py.ion()	&lt;br /&gt;
	py.plot(X[:,1], Y,'bo')&lt;br /&gt;
	y_reg = np.dot(X,theta0)&lt;br /&gt;
	linia, = py.plot(X[:,1],y_reg,'r')&lt;br /&gt;
	for i in range(200):&lt;br /&gt;
		ind = np.random.randint(X.shape[0])		&lt;br /&gt;
		# mały x to wejście pojedynczego przykładu o indeksie in&lt;br /&gt;
		x = X[ind,:]		&lt;br /&gt;
		x = x.reshape(1,len(x))&lt;br /&gt;
		theta0 = theta0 - alpha * ( np.dot(x,theta0)- Y[ind])*x.T&lt;br /&gt;
		#print 'J: ', koszt(X,Y,theta)&lt;br /&gt;
		linia.set_ydata(np.dot(X,theta0))&lt;br /&gt;
		py.draw()&lt;br /&gt;
	return theta0&lt;br /&gt;
&lt;br /&gt;
def licz_iteracyjnie_batch(X,Y,theta0 = np.array([0,0]).reshape(2,1), alpha = 0.005):&lt;br /&gt;
	py.ion()	&lt;br /&gt;
	py.plot(X[:,1], Y,'bo')&lt;br /&gt;
	y_reg = np.dot(X,theta0)&lt;br /&gt;
	linia, = py.plot(X[:,1],y_reg,'m')&lt;br /&gt;
	delta = np.ones(len(theta0)).reshape(len(theta0),1)&lt;br /&gt;
	while np.max(np.abs(delta)) &amp;gt; 0.001:&lt;br /&gt;
		delta = np.zeros(len(theta0)).reshape(len(theta0),1)&lt;br /&gt;
		for ind, x in enumerate(X):		&lt;br /&gt;
			# mały x to wejście pojedynczego przykładu o indeksie in&lt;br /&gt;
			x = x.reshape(1,len(x))&lt;br /&gt;
			delta += ( np.dot(x,theta0)- Y[ind])*x.T&lt;br /&gt;
		theta0 = theta0 - alpha * delta &lt;br /&gt;
		#print 'J: ', koszt(X,Y,theta)&lt;br /&gt;
		linia.set_ydata(np.dot(X,theta0))&lt;br /&gt;
		py.draw()&lt;br /&gt;
	return theta0&lt;br /&gt;
	&lt;br /&gt;
theta = np.array([1.,3.]).reshape(2,1) # theta ma być wektorem kolumnowym&lt;br /&gt;
(X,Y) = symuluj_dane(theta,  ile = 7, odch_std = 3)&lt;br /&gt;
&lt;br /&gt;
theta_est = licz_rownania_normalne(X,Y)&lt;br /&gt;
theta_est_iter_stoch = licz_iteracyjnie_stoch(X,Y)&lt;br /&gt;
theta_est_iter_batch = licz_iteracyjnie_batch(X,Y)&lt;br /&gt;
&lt;br /&gt;
print theta&lt;br /&gt;
print theta_est&lt;br /&gt;
print theta_est_iter_stoch&lt;br /&gt;
print theta_est_iter_batch&lt;br /&gt;
py.plot(X[:,1], Y,'bo')&lt;br /&gt;
y_reg = np.dot(X,theta_est) &lt;br /&gt;
py.plot(X[:,1],y_reg,'g')&lt;br /&gt;
py.show()&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jarekz</name></author>
		
	</entry>
</feed>