umz21/lab/03_Regresja_liniowa.ipynb

79 lines
2.4 KiB
Plaintext
Raw Normal View History

{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "-"
}
},
"source": [
"## Uczenie maszynowe 2019/2020 laboratoria\n",
"### 23/24 marca 2020\n",
"# 3. Regresja liniowa zadanie"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Zadanie 3"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Część podstawowa (4 punkty)\n",
"\n",
"Plik `fires_thefts.csv` zawiera rzeczywiste dane zebrane przez *U.S. Commission on Civil Rights*, przedstawiające liczbę pożarów w danej dzielnicy na tysiąc gospodarstw domowych (pierwsza kolumna) oraz liczbę włamań w tej samej dzielnicy na tysiąc mieszkańców (druga kolumna). \n",
"\n",
"Stwórz model (regresja liniowa) przewidujący liczbę włamań na podstawie liczby pożarów:\n",
" * Oblicz parametry $\\theta$ krzywej regresyjnej za pomocą metody gradientu prostego (*gradient descent*). Możesz wybrać wersję iteracyjną lub macierzową algorytmu.\n",
" * Wykorzystując uzyskaną krzywą regresyjną przepowiedz liczbę włamań na tysiąc mieszkańców dla dzielnicy, w której występuje średnio 50, 100, 200 pożarów na tysiąc gospodarstw domowych."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Część zaawansowana (2 punkty)\n",
"\n",
"Dla różnych wartości długości kroku $\\alpha \\in \\{ 0.001, 0.01 , 0.1 \\}$ stwórz wykres, który zilustruje progresję wartości $J(\\theta)$ dla pierwszych 200 króków algorytmu gradientu prostego:\n",
" * Oś $x$ wykresu to kolejne kroki algorytmu od 0 do 200.\n",
" * Oś $y$ wykresu to wartosci $J(\\theta)$.\n",
" * Wykres powinien skłądać się z trzech krzywych:\n",
" 1. dla $\\alpha = 0.001$\n",
" 2. dla $\\alpha = 0.01$\n",
" 3. dla $\\alpha = 0.1$"
]
}
],
"metadata": {
"celltoolbar": "Slideshow",
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.3"
},
"livereveal": {
"start_slideshow_at": "selected",
"theme": "amu"
}
},
"nbformat": 4,
"nbformat_minor": 4
}