Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Haaste: Suoran Sovittaminen Gradienttilaskulla | Matemaattinen Analyysi
Matematiikka Data-analytiikkaan

bookHaaste: Suoran Sovittaminen Gradienttilaskulla

Tehtävä

Swipe to start coding

Opiskelija haluaa käyttää gradienttimenetelmää sovittaakseen suoran viivan aineistoon, jossa on esitetty vuosien työkokemus ja palkka (tuhansina). Tavoitteena on löytää parhaiten sopiva suora säätämällä kulmakerrointa (mm) ja vakiotermiä (bb) iteratiivisilla päivityksillä.

Tulee minimoida seuraava tappiofunktio:

1ni=1n(yi(mxi+b))2\frac{1}{n}\sum^n_{i=1}(y_i - (mx_i + b))^2

Gradienttimenetelmän päivityssäännöt ovat:

mmαJmbbαJbm \larr m - \alpha \frac{\partial J}{\partial m} \\[6 pt] b \larr b - \alpha \frac{\partial J}{\partial b}

Missä:

  • α\alpha on oppimisnopeus (askelkoko);
  • Jm\frac{\raisebox{1pt}{$\partial J$}}{\raisebox{-1pt}{$\partial m$}} on tappiofunktion osittaisderivaatta muuttujan mm suhteen;
  • Jb\frac{\raisebox{1pt}{$\partial J$}}{\raisebox{-1pt}{$\partial b$}} on tappiofunktion osittaisderivaatta muuttujan bb suhteen.

Tehtäväsi:

  1. Täydennä alla oleva Python-koodi toteuttaaksesi gradienttimenetelmän vaiheet.
  2. Täydennä puuttuvat lausekkeet käyttämällä perus-Python-operaatioita.
  3. Seuraa, miten m ja b muuttuvat algoritmin edetessä.

Ratkaisu

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 11
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

close

Awesome!

Completion rate improved to 1.96

bookHaaste: Suoran Sovittaminen Gradienttilaskulla

Pyyhkäise näyttääksesi valikon

Tehtävä

Swipe to start coding

Opiskelija haluaa käyttää gradienttimenetelmää sovittaakseen suoran viivan aineistoon, jossa on esitetty vuosien työkokemus ja palkka (tuhansina). Tavoitteena on löytää parhaiten sopiva suora säätämällä kulmakerrointa (mm) ja vakiotermiä (bb) iteratiivisilla päivityksillä.

Tulee minimoida seuraava tappiofunktio:

1ni=1n(yi(mxi+b))2\frac{1}{n}\sum^n_{i=1}(y_i - (mx_i + b))^2

Gradienttimenetelmän päivityssäännöt ovat:

mmαJmbbαJbm \larr m - \alpha \frac{\partial J}{\partial m} \\[6 pt] b \larr b - \alpha \frac{\partial J}{\partial b}

Missä:

  • α\alpha on oppimisnopeus (askelkoko);
  • Jm\frac{\raisebox{1pt}{$\partial J$}}{\raisebox{-1pt}{$\partial m$}} on tappiofunktion osittaisderivaatta muuttujan mm suhteen;
  • Jb\frac{\raisebox{1pt}{$\partial J$}}{\raisebox{-1pt}{$\partial b$}} on tappiofunktion osittaisderivaatta muuttujan bb suhteen.

Tehtäväsi:

  1. Täydennä alla oleva Python-koodi toteuttaaksesi gradienttimenetelmän vaiheet.
  2. Täydennä puuttuvat lausekkeet käyttämällä perus-Python-operaatioita.
  3. Seuraa, miten m ja b muuttuvat algoritmin edetessä.

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 11
single

single

some-alt