Neuroverkkojen hyödyntäminen differentiaaliyhtälöiden ratkaisemisessa
Suvanto, Mette (2024)
Kandidaatintyö
Suvanto, Mette
2024
School of Engineering Science, Laskennallinen tekniikka
Kaikki oikeudet pidätetään.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe2024031511422
https://urn.fi/URN:NBN:fi-fe2024031511422
Tiivistelmä
Differentiaaliyhtälöitä voidaan hyödyntää monien oikean elämän ongelmien, kuten radioaktiivisen hajoamisen ja aaltoyhtälön, mallintamisessa. Täten niiden ratkaisemiseen on tärkeää löytää tehokkaita ratkaisutapoja. Neuroverkkoja hyödynnetään monien ongelmien ratkaisemisessa, kuten kääntäjässä, puheentunnistuksessa ja differentiaaliyhtälöissä. Eteenpäin kytketyt neuroverkot ovat erityisen käyttökelpoisia koneoppimisessa.
Työn tavoitteena on esitellä, kuinka neuroverkkoja voidaan hyödyntää differentiaaliyhtälöiden ratkaisemisessa. Menetelmää havainnollistetaan ratkaisemalla ensimmäisen kertaluvun differentiaaliyhtälö y′ = −2xy + x alkuarvolla y(0) = 1 Matlab-ympäristössä. Työssä käytettävä neuroverkko on MLP (multilayer perceptron) yhdellä piilokerroksella, jossa on kymmenen piilokerroksen neuronia. Differentiaaliyhtälön ratkaisemiseen käytettävä neuroverkko luotiin Matlabin Deep Learning -työkalun avulla. Neuroverkon antama tulos on luotettava, kun opetusdataa annetaan tarpeeksi monta kappaletta ja tarpeeksi pitkältä väliltä. Esimerkin tapauksessa neuroverkon antama tulos oli luotettava välillä [0, 4], kun opetusdataa annettiin välillä [0, 3] ja opetusdatapisteitä oli 1000 kappaletta. Neuroverkot on siis tehokas tapa ratkaista differentiaaliyhtälöitä hyvällä tarkkuudella.
Työn tavoitteena on esitellä, kuinka neuroverkkoja voidaan hyödyntää differentiaaliyhtälöiden ratkaisemisessa. Menetelmää havainnollistetaan ratkaisemalla ensimmäisen kertaluvun differentiaaliyhtälö y′ = −2xy + x alkuarvolla y(0) = 1 Matlab-ympäristössä. Työssä käytettävä neuroverkko on MLP (multilayer perceptron) yhdellä piilokerroksella, jossa on kymmenen piilokerroksen neuronia. Differentiaaliyhtälön ratkaisemiseen käytettävä neuroverkko luotiin Matlabin Deep Learning -työkalun avulla. Neuroverkon antama tulos on luotettava, kun opetusdataa annetaan tarpeeksi monta kappaletta ja tarpeeksi pitkältä väliltä. Esimerkin tapauksessa neuroverkon antama tulos oli luotettava välillä [0, 4], kun opetusdataa annettiin välillä [0, 3] ja opetusdatapisteitä oli 1000 kappaletta. Neuroverkot on siis tehokas tapa ratkaista differentiaaliyhtälöitä hyvällä tarkkuudella.
