adding project updates
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "5831c36a",
|
||||
"id": "32bbc99a",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -14,7 +14,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "2d774c8b",
|
||||
"id": "21397747",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -22,14 +22,14 @@
|
||||
"# Project 3 on Machine Learning, deadline December 18 (midnight), 2023\n",
|
||||
"**[Data Analysis and Machine Learning FYS-STK3155/FYS4155](http://www.uio.no/studier/emner/matnat/fys/FYS3155/index-eng.html)**, Department of Physics, University of Oslo, Norway\n",
|
||||
"\n",
|
||||
"Date: **Nov 12, 2023**\n",
|
||||
"Date: **Nov 13, 2023**\n",
|
||||
"\n",
|
||||
"Copyright 1999-2023, [Data Analysis and Machine Learning FYS-STK3155/FYS4155](http://www.uio.no/studier/emner/matnat/fys/FYS3155/index-eng.html). Released under CC Attribution-NonCommercial 4.0 license"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "5cbde03b",
|
||||
"id": "a13debcc",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -39,7 +39,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "5170403b",
|
||||
"id": "9d1f1220",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -54,11 +54,15 @@
|
||||
"3. Or other sources.\n",
|
||||
"\n",
|
||||
"The approach to the analysis of these new data sets should follow to a large extent what you did in projects 1 and 2. That is:\n",
|
||||
"1. Whether you end up with a regression or a classification problem, you should employ at least two of the methods we have discussed among **linear regression (including Ridge and Lasso)**, **Logistic Regression**, **Neural Networks**, **Convolution Neural Networks**, **Recurrent Neural Networks**, and **Decision Trees, Random Forests, Bagging and Boosting**. You could for example explore all of the approaches from decision trees, via bagging and voting classifiers, to random forests, boosting and finally XGboost. If you wish to venture into **convolutional neural networks** or **recurrent neural networks**, or extensions of neural networkds, feel free to do so. You can also study unsupervised methods, although we in this course have mainly paid attention to supervised learning. \n",
|
||||
"1. Whether you end up with a regression or a classification problem, you should employ at least two of the methods we have discussed among **linear regression (including Ridge and Lasso)**, **Logistic Regression**, **Neural Networks**, **Convolution Neural Networks**, **Recurrent Neural Networks**, and **Decision Trees, Random Forests, Bagging and Boosting**.\n",
|
||||
"\n",
|
||||
"Feel also free to use support vector machines, $k$-means and principal components analysis, although the latter have not been covered during the lectures. This material can be found in the lecture notes.\n",
|
||||
"\n",
|
||||
"You could for example explore all of the approaches from decision trees, via bagging and voting classifiers, to random forests, boosting and finally XGboost. If you wish to venture into **convolutional neural networks** or **recurrent neural networks**, or extensions of neural networkds, feel free to do so. You can also study unsupervised methods, although we in this course have mainly paid attention to supervised learning. \n",
|
||||
"\n",
|
||||
"For Boosting, feel also free to write your own codes.\n",
|
||||
"\n",
|
||||
"1. For project 3, you should feel free to use your own codes from projects 1 and 2, eventually write your own for Decision trees/random forests/bagging/boosting' or use the available functionality of **Scikit-Learn**, **Tensorflow**, etc. \n",
|
||||
"1. For project 3, you should feel free to use your own codes from projects 1 and 2, eventually write your own for Decision trees/random forests/bagging/boosting' or use the available functionality of **Scikit-Learn**, **Tensorflow**, PyTorch etc. \n",
|
||||
"\n",
|
||||
"2. The estimates you used and tested in projects 1 and 2 should also be included, that is the $R2$-score, **MSE**, confusion matrix, accuracy score, information gain, ROC and Cumulative gains curves and other, cross-validation and/or bootstrap if these are relevant.\n",
|
||||
"\n",
|
||||
@@ -72,12 +76,12 @@
|
||||
"\n",
|
||||
"We propose also an alternative to the above. This is a project on using machine learning methods (neural networks mainly) to the solution of ordinary differential equations and partial differential equations, with a final twist on how to diagonalize a symmetric matrix with neural networks.\n",
|
||||
"\n",
|
||||
"This is a field with a large interest recently, spanning from studies of turbulence in fluid mechanics and meteorology to the solution of quantum mechanical systems. As reading background you can use the slides [from week 43](https://compphysics.github.io/MachineLearning/doc/pub/week43/html/week42.html) and/or the textbook by [Yadav et al](https://www.springer.com/gp/book/9789401798150)."
|
||||
"This is a field with large scientific interest, spanning from studies of turbulence in fluid mechanics and meteorology to the solution of quantum mechanical systems. As reading background you can use the slides [from week 43](https://compphysics.github.io/MachineLearning/doc/pub/week43/html/week42.html) and/or the textbook by [Yadav et al](https://www.springer.com/gp/book/9789401798150)."
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "e9fc8e8e",
|
||||
"id": "6416060c",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -89,7 +93,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "ce8b52a3",
|
||||
"id": "18827262",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -101,7 +105,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "eb943f7a",
|
||||
"id": "bcee53f4",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -113,7 +117,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "17447dcc",
|
||||
"id": "83ec8275",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -125,7 +129,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "d9bea856",
|
||||
"id": "2be62c8e",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -137,7 +141,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "5b74282b",
|
||||
"id": "385e0b16",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -149,7 +153,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "28f082d7",
|
||||
"id": "fbf49165",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -162,14 +166,27 @@
|
||||
"equation in one dimension using a standard explicit scheme and neural\n",
|
||||
"networks to solve the same equations.\n",
|
||||
"\n",
|
||||
"For the explicit scheme, you can study for example chapter 10 of the lecture notes in [Computational Physics](https://github.com/CompPhysics/ComputationalPhysics/blob/master/doc/Lectures/lectures2015.pdf) or alternative sources. For the solution of ordinary and partial differential equations using neural networks, the lectures by [Kristine Baluka Hein and included in the lectures of week 43](https://compphysics.github.io/MachineLearning/doc/pub/week42/html/week43.html) at this course are highly recommended.\n",
|
||||
"For the explicit scheme, you can study for example chapter 10 of the lecture notes in [Computational Physics, FYS3150/4150](https://github.com/CompPhysics/ComputationalPhysics/blob/master/doc/Lectures/lectures2015.pdf) or alternative sources from courses like [MAT-MEK4270](https://www.uio.no/studier/emner/matnat/math/MAT-MEK4270/index.html). For the solution of ordinary and partial differential equations using neural networks, the lectures by [included in the lectures of week 43](https://compphysics.github.io/MachineLearning/doc/pub/week42/html/week43.html) at this course are highly recommended.\n",
|
||||
"\n",
|
||||
"For the machine learning part you can use your own code from project 2 or the functionality of for example **Tensorflow/Keras**.."
|
||||
"For the machine learning part you can use your own code from project 2 or the functionality of for example **Tensorflow/Keras**, **PyTorch** or other libraries such [Physics informed machine learning](https://maziarraissi.github.io/PINNs/)."
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "5e855e7f",
|
||||
"id": "c97df4f9",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
"source": [
|
||||
"### Alternative differential equations\n",
|
||||
"\n",
|
||||
"Note that you can replace the one-dimensional diffusion equation discussed below with other sets of either ordinary differential equations or partial differential equations.\n",
|
||||
"Please discuss such a change with us at the lab."
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "ecde0a0e",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -183,7 +200,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "bc4be75f",
|
||||
"id": "56429d7e",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -195,7 +212,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "caa1eca4",
|
||||
"id": "c2e49662",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -205,7 +222,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "98a2bd5b",
|
||||
"id": "fd661d63",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -217,7 +234,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "980b949d",
|
||||
"id": "a1d77183",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -227,7 +244,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "7401e9ec",
|
||||
"id": "73d187ef",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -239,7 +256,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "e953662e",
|
||||
"id": "b9b49da0",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -250,7 +267,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "52122eb7",
|
||||
"id": "aee685e3",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -262,7 +279,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "ab71a383",
|
||||
"id": "96ec18ae",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -272,7 +289,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "4f886681",
|
||||
"id": "57c542b7",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -284,7 +301,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "83f8d12e",
|
||||
"id": "b6e8e863",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -297,7 +314,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "4bcf494f",
|
||||
"id": "76ae9476",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -309,7 +326,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "7f95982b",
|
||||
"id": "95e239a3",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -319,7 +336,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "1ee81ac0",
|
||||
"id": "63fb1417",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -331,7 +348,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "bae7898a",
|
||||
"id": "e1c77709",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -341,7 +358,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "5de23ea9",
|
||||
"id": "2631e4bd",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -353,7 +370,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "4d5d56e3",
|
||||
"id": "0fa54ca3",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -364,7 +381,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "e52523ef",
|
||||
"id": "7579152d",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -380,7 +397,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "678607d0",
|
||||
"id": "e8ceb962",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -397,21 +414,34 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "61d51d93",
|
||||
"id": "fe5c3f2f",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
"source": [
|
||||
"### Part d)\n",
|
||||
"### Part d) Neural network complexity\n",
|
||||
"\n",
|
||||
"Finally, present a critical assessment of the methods you have studied\n",
|
||||
"and discuss the potential for the solving differential equations and\n",
|
||||
"eigenvalue problems with machine learning methods."
|
||||
"Here we study the stability of the results of the results as functions of the number of hidden nodes, layers and activation functions for the hidden layers.\n",
|
||||
"Increase the number of hidden nodes and layers in order to see if this improves your results. Try also different activation functions for the hidden layers, such as the **tanh**, **ReLU**, and other activation functions. \n",
|
||||
"Discuss your results."
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "d2163034",
|
||||
"id": "3b2adf3a",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
"source": [
|
||||
"### Part e)\n",
|
||||
"\n",
|
||||
"Finally, present a critical assessment of the methods you have studied\n",
|
||||
"and discuss the potential for the solving differential equations with machine learning methods."
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "c2ed7243",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -442,7 +472,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "e31290fd",
|
||||
"id": "e9f450e7",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
@@ -464,7 +494,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "99e78b73",
|
||||
"id": "4ec24e55",
|
||||
"metadata": {
|
||||
"editable": true
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user