diff --git a/doc/Projects/2018/Project3/html/._Project3-bs000.html b/doc/Projects/2018/Project3/html/._Project3-bs000.html index e61184600..59d2c57ac 100644 --- a/doc/Projects/2018/Project3/html/._Project3-bs000.html +++ b/doc/Projects/2018/Project3/html/._Project3-bs000.html @@ -6,9 +6,9 @@ Automatically generated HTML file from DocOnce source
- + -@@ -123,12 +154,14 @@ MathJax.Hub.Config({
-
For project 3, you can propose own data sets that relate to your research interests or just use existing data sets from say @@ -136,7 +169,8 @@ For project 3, you can propose own data sets that relate to your research intere
This is a field with a large interest recently, spanning from studies of turbulence in meteorology to the solution of quantum mechanical systems. -
+We include this data set as an example on how one could study new data sets with the algorithms we have discussed during the lectures, using either your own codes or the functionality of scikit-learn, tensorflow or other Python packages. + +
+The data set is presented at the site of UCI. It is particularly interesting since it is also analyzed using ML methods in a recent scientific article. + +
+The authors apply several ML methods, from nearest neighbors via logistic regression to neural networks and Bayesian analysis (not covered much in our course). +Here follows a set up on how to analyze these data. + +
+Perform a logistic regression analysis and see if you can reproduce the results of figure 3 of the above article. + +
+The next step is to use either your own code for neural networks from project 2 or the functionality provided by tensorflow/keras or scikit-learn's MLP method. Compare and discuss again your results with those from the above article. + +
+The above article does not study random forests or support vector machine algorithms. Try to apply one of these methods or both to the credit card data and see if these methods provide a better description of the data. Can you outperform the authors of the article? + +
+Finally, here you should present a critical assessment of the methods you have studied and link your results with the existing literature. + +
+For this variant of project 3, we will assume that you have some background in the solution of partial differential equations using finite difference schemes. We will study the solution of the diffusion equation in one dimension using a standard explicit scheme and neural networks to solve the same equations. + +
+For the explicit scheme, you can study for example chapter 10 of the lecture notes in Computational Physics or alternative sources. For the solution of ordinary and partial differential equations using neural networks, the lectures by Kristine Baluka Hein at this course are highly recommended. + +
+For the machine learning part you can use your own code from project 2 or the functionality of for example tensorflow/Keras. + +
+The physical problem can be that of the temperature gradient in a rod of length \( L=1 \) at \( x=0 \) and \( x=1 \). +We are looking at a one-dimensional +problem + +$$ +\begin{equation*} + \frac{\partial^2 u(x,t)}{\partial x^2} =\frac{\partial u(x,t)}{\partial t}, t> 0, x\in [0,L] +\end{equation*} +$$ + +or + +$$ +\begin{equation*} +u_{xx} = u_t, +\end{equation*} +$$ + +with initial conditions, i.e., the conditions at \( t=0 \), +$$ +\begin{equation*} +u(x,0)= \sin{(\pi x)} \hspace{0.5cm} 0 < x < L, +\end{equation*} +$$ + +with \( L=1 \) the length of the \( x \)-region of interest. The +boundary conditions are + +$$ +\begin{equation*} +u(0,t)= 0 \hspace{0.5cm} t \ge 0, +\end{equation*} +$$ + +and + +$$ +\begin{equation*} +u(L,t)= 0 \hspace{0.5cm} t \ge 0. +\end{equation*} +$$ + +The function \( u(x,t) \) can be the temperature gradient of a rod. +As time increases, the velocity approaches a linear variation with \( x \). + +
+We will limit ourselves to the so-called explicit forward Euler algorithm with discretized versions of time given by a forward formula and a centered difference in space resulting in +$$ +\begin{equation*} +u_t\approx \frac{u(x,t+\Delta t)-u(x,t)}{\Delta t}=\frac{u(x_i,t_j+\Delta t)-u(x_i,t_j)}{\Delta t} +\end{equation*} +$$ + +and + +$$ +\begin{equation*} +u_{xx}\approx \frac{u(x+\Delta x,t)-2u(x,t)+u(x-\Delta x,t)}{\Delta x^2}, +\end{equation*} +$$ + +or + +$$ +\begin{equation*} +u_{xx}\approx \frac{u(x_i+\Delta x,t_j)-2u(x_i,t_j)+u(x_i-\Delta x,t_j)}{\Delta x^2}. +\end{equation*} +$$ + +
+Write down the algorithm and the equations you need to implement. +Find also the analytic solution to the problem. + +
+Implement the explicit scheme algorithm and perform tests of the solution +for \( \Delta x=1/10 \), \( \Delta x=1/100 \) using \( \Delta t \) as dictated by the stability limit of the explicit scheme. This stability scheme requires that \( \Delta t/\Delta x^2 \leq 1/2 \). + +
+Study the solutions at two time points \( t_1 \) and \( t_2 \) where \( u(x,t_1) \) is smooth but still significantly curved +and \( u(x,t_2) \) is almost linear, close to the stationary state. + +
+Study now the lecture notes on solving ODEs and PDEs with neural network and use either your own code from project 2 or the functionality of tensorflow/keras to solve the same equation as in part b). +Discuss your results and compare them with the standard explicit scheme. Include also the analytical solution and compare with that. + +
+Finally, present a critical assessment of the methods you have studied and discuss the potential for the solving differential equations with machine learning methods. + +
Here follows a brief recipe and recommendation on how to write a report for each @@ -177,7 +353,7 @@ project.
The preferred format for the report is a PDF file. You can also use DOC or postscript formats or as an ipython notebook file. As programming language we prefer that you choose between C/C++, Fortran2008 or Python. The following prescription should be followed when preparing the report: @@ -194,7 +370,7 @@ Finally, we encourage you to collaborate. Optimal working groups consist of 2-3 students. You can then hand in a common report. -
If you have Python installed (we recommend Python3) and you feel pretty familiar with installing different packages, diff --git a/doc/Projects/2018/Project3/html/Project3-bs.html b/doc/Projects/2018/Project3/html/Project3-bs.html index e61184600..59d2c57ac 100644 --- a/doc/Projects/2018/Project3/html/Project3-bs.html +++ b/doc/Projects/2018/Project3/html/Project3-bs.html @@ -6,9 +6,9 @@ Automatically generated HTML file from DocOnce source
- + -@@ -123,12 +154,14 @@ MathJax.Hub.Config({
-
For project 3, you can propose own data sets that relate to your research interests or just use existing data sets from say @@ -136,7 +169,8 @@ For project 3, you can propose own data sets that relate to your research intere
This is a field with a large interest recently, spanning from studies of turbulence in meteorology to the solution of quantum mechanical systems. -
+We include this data set as an example on how one could study new data sets with the algorithms we have discussed during the lectures, using either your own codes or the functionality of scikit-learn, tensorflow or other Python packages. + +
+The data set is presented at the site of UCI. It is particularly interesting since it is also analyzed using ML methods in a recent scientific article. + +
+The authors apply several ML methods, from nearest neighbors via logistic regression to neural networks and Bayesian analysis (not covered much in our course). +Here follows a set up on how to analyze these data. + +
+Perform a logistic regression analysis and see if you can reproduce the results of figure 3 of the above article. + +
+The next step is to use either your own code for neural networks from project 2 or the functionality provided by tensorflow/keras or scikit-learn's MLP method. Compare and discuss again your results with those from the above article. + +
+The above article does not study random forests or support vector machine algorithms. Try to apply one of these methods or both to the credit card data and see if these methods provide a better description of the data. Can you outperform the authors of the article? + +
+Finally, here you should present a critical assessment of the methods you have studied and link your results with the existing literature. + +
+For this variant of project 3, we will assume that you have some background in the solution of partial differential equations using finite difference schemes. We will study the solution of the diffusion equation in one dimension using a standard explicit scheme and neural networks to solve the same equations. + +
+For the explicit scheme, you can study for example chapter 10 of the lecture notes in Computational Physics or alternative sources. For the solution of ordinary and partial differential equations using neural networks, the lectures by Kristine Baluka Hein at this course are highly recommended. + +
+For the machine learning part you can use your own code from project 2 or the functionality of for example tensorflow/Keras. + +
+The physical problem can be that of the temperature gradient in a rod of length \( L=1 \) at \( x=0 \) and \( x=1 \). +We are looking at a one-dimensional +problem + +$$ +\begin{equation*} + \frac{\partial^2 u(x,t)}{\partial x^2} =\frac{\partial u(x,t)}{\partial t}, t> 0, x\in [0,L] +\end{equation*} +$$ + +or + +$$ +\begin{equation*} +u_{xx} = u_t, +\end{equation*} +$$ + +with initial conditions, i.e., the conditions at \( t=0 \), +$$ +\begin{equation*} +u(x,0)= \sin{(\pi x)} \hspace{0.5cm} 0 < x < L, +\end{equation*} +$$ + +with \( L=1 \) the length of the \( x \)-region of interest. The +boundary conditions are + +$$ +\begin{equation*} +u(0,t)= 0 \hspace{0.5cm} t \ge 0, +\end{equation*} +$$ + +and + +$$ +\begin{equation*} +u(L,t)= 0 \hspace{0.5cm} t \ge 0. +\end{equation*} +$$ + +The function \( u(x,t) \) can be the temperature gradient of a rod. +As time increases, the velocity approaches a linear variation with \( x \). + +
+We will limit ourselves to the so-called explicit forward Euler algorithm with discretized versions of time given by a forward formula and a centered difference in space resulting in +$$ +\begin{equation*} +u_t\approx \frac{u(x,t+\Delta t)-u(x,t)}{\Delta t}=\frac{u(x_i,t_j+\Delta t)-u(x_i,t_j)}{\Delta t} +\end{equation*} +$$ + +and + +$$ +\begin{equation*} +u_{xx}\approx \frac{u(x+\Delta x,t)-2u(x,t)+u(x-\Delta x,t)}{\Delta x^2}, +\end{equation*} +$$ + +or + +$$ +\begin{equation*} +u_{xx}\approx \frac{u(x_i+\Delta x,t_j)-2u(x_i,t_j)+u(x_i-\Delta x,t_j)}{\Delta x^2}. +\end{equation*} +$$ + +
+Write down the algorithm and the equations you need to implement. +Find also the analytic solution to the problem. + +
+Implement the explicit scheme algorithm and perform tests of the solution +for \( \Delta x=1/10 \), \( \Delta x=1/100 \) using \( \Delta t \) as dictated by the stability limit of the explicit scheme. This stability scheme requires that \( \Delta t/\Delta x^2 \leq 1/2 \). + +
+Study the solutions at two time points \( t_1 \) and \( t_2 \) where \( u(x,t_1) \) is smooth but still significantly curved +and \( u(x,t_2) \) is almost linear, close to the stationary state. + +
+Study now the lecture notes on solving ODEs and PDEs with neural network and use either your own code from project 2 or the functionality of tensorflow/keras to solve the same equation as in part b). +Discuss your results and compare them with the standard explicit scheme. Include also the analytical solution and compare with that. + +
+Finally, present a critical assessment of the methods you have studied and discuss the potential for the solving differential equations with machine learning methods. + +
Here follows a brief recipe and recommendation on how to write a report for each @@ -177,7 +353,7 @@ project.
The preferred format for the report is a PDF file. You can also use DOC or postscript formats or as an ipython notebook file. As programming language we prefer that you choose between C/C++, Fortran2008 or Python. The following prescription should be followed when preparing the report: @@ -194,7 +370,7 @@ Finally, we encourage you to collaborate. Optimal working groups consist of 2-3 students. You can then hand in a common report. -
If you have Python installed (we recommend Python3) and you feel pretty familiar with installing different packages, diff --git a/doc/Projects/2018/Project3/html/Project3.html b/doc/Projects/2018/Project3/html/Project3.html index 2b69640c5..c9dfe72ee 100644 --- a/doc/Projects/2018/Project3/html/Project3.html +++ b/doc/Projects/2018/Project3/html/Project3.html @@ -6,9 +6,9 @@ Automatically generated HTML file from DocOnce source
- + -