Difference between revisions of "NUMPHYsandML"

From Wiki Cours
Jump to: navigation, search
(Schedule)
 
(95 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
= Numerical Physics and Machine Learning =
 
= Numerical Physics and Machine Learning =
 +
 +
  
 
== Course description ==  
 
== Course description ==  
 
<div>
 
  
 
We will cover many algothims used in many-body problems and complex systems: Monte Carlo methods, molecular dynamics and  optmization in complex landscapes. We shall also discuss the use of some machine learning algorithms (Boltzmann machines, Auto-encoder, Deep Learning) for physics problems.
 
We will cover many algothims used in many-body problems and complex systems: Monte Carlo methods, molecular dynamics and  optmization in complex landscapes. We shall also discuss the use of some machine learning algorithms (Boltzmann machines, Auto-encoder, Deep Learning) for physics problems.
 
We focus on algorithms and physics, not on programming and heavy numerics. The theoretical lecture is followed by a tutorial introducing concrete numerical exercises. You will have to hand in 3 homeworks.
 
We focus on algorithms and physics, not on programming and heavy numerics. The theoretical lecture is followed by a tutorial introducing concrete numerical exercises. You will have to hand in 3 homeworks.
  
</div>
+
'''Lectures on machine learning will be done remotely. You will be able to access them on https://epfl.zoom.us/my/krzakalaflorent Tutorials will take place as usual on the gotomeeting.'''
 +
 
  
 
== The Team ==
 
== The Team ==
  
* [http://lptms.u-psud.fr/alberto_rosso/ Alberto Rocco] (Numerical Physics)
+
* [http://lptms.u-psud.fr/alberto_rosso/ Alberto Rosso] (Numerical Physics)
 
* [https://florentkrzakala.com/ Florent Krzakala] (Machine Learning)
 
* [https://florentkrzakala.com/ Florent Krzakala] (Machine Learning)
Marco Medjnak (Tutorials)
+
Marko Medenjak (Tutorials)
  
= Where and When =
+
== Where and When ==
  
* Lectures on Fridays: 14.0-16.00
+
* Lectures on Fridays: 14:00-16:00
* Tutorials on Fridays: 16h00-18.00
+
* Tutorials on Fridays: 16:00-18:00
* ENS, 24 rue Lhomond, room Conf IV (2nd floor)
+
* ENS, 24 rue Lhomond, room L367 (third floor)
  
  
= Computer Requirements =
+
== Computer Requirements ==
 +
 
 
'''No previous experience in programming is required.''' <br>
 
'''No previous experience in programming is required.''' <br>
  
Programming Language: Python. For practical installation, we recommand (especially Anaconda. See [[Memento Python]] <br>
+
'''Programming Language: Python'''
Python notebooks on your computer are great. But another possibility, and quite good way to use powerful computer without buying one, is to use google colab, the Colaboratory platform from Google: It requires no specific hardware or software, and even allows you to use GPU computing for free, all by writting a jupyter notebook that you can then share.  
+
 
 +
For practical installation, we recommand either to use  Anaconda (See [[Memento Python]]) or use google colab. <br>
 +
The Colaboratory platform from Google is quite good way to use powerful computer without buying one: It requires no specific hardware or software, and even allows you to use GPU computing for free, all by writting a jupyter notebook that you can then share.
 +
 
 +
== Grading ==
 +
 
 +
Homeworks (50% of the mark) + 1 MCQ (50% of the final mark)
 +
 
 +
== Schedule ==
 +
 
 +
''' Project in Markox Chain Monte Carlo''' [https://drive.google.com/file/d/1YHERixzqAwGHeEHZYIZwHXl11Ezt_m3h/view?usp=sharing Manon Michel's Project]
 +
 
 +
 
 +
 
 +
'''Friday, September 4, 2020 '''
 +
 
 +
 +
* [https://drive.google.com/file/d/1X9h3lKD0OZLTKtxb7DWPfynY42rRuE7j/view?usp=sharing Lecture 1]  Introduction to Monte Carlo
 +
 
 +
* [https://drive.google.com/file/d/1sIv3qOdyE-XYkjYC-dkNsR72f4BgaQ_y/view?usp=sharing Tutorial 1] Markov Matrix
 +
 
 +
'''Friday, September 11, 2020'''
 +
 
 +
 
 +
 
 +
* [https://drive.google.com/file/d/15wrgivn6FSnuBUnMwjjhadmD-g1fkS7T/view?usp=sharing Lecture 2] Basic Sampling
 +
 
 +
* [https://colab.research.google.com/drive/1aMo4Ur-0_b4dGhdIfxAmCC2ci1rOda_v?usp=sharing Tutorial 2] Markov matrix [https://colab.research.google.com/drive/1Q5ajzxRGXBBorA9cQ9o8V5VUVJhUXpPS?usp=sharing problems]
 +
 
 +
 
 +
'''Friday, September 18, 2020'''
 +
 
 +
*  [https://drive.google.com/file/d/1ALR_QKLXdHby54xNux39NUOk4L-Ne1EW/view?usp=sharing  Lecture 3]: Errors and Precision
 +
 
 +
* [https://colab.research.google.com/drive/1k60-ChM3aUWjGsiRsf2Idx9jxHHtwyAb?usp=sharing Tutorial 3] Thumb rule [https://colab.research.google.com/drive/1fdKJlp0lD4k530oRuu50_Hm_T8t3jixa?usp=sharing problems]
 +
 
 +
Homework: [https://drive.google.com/file/d/1g7HXFUBQUBF0fhy5h2jYbfIAVBTqvb7-/view?usp=sharing  Download]
 +
 
 +
 
 +
'''Friday, September 25, 2020'''
 +
 
 +
 
 +
* [https://drive.google.com/file/d/1DijhG_856OAuj42WqY1UM47APmMy3A8B/view?usp=sharing Lecture 4]: Ising model and phase transitions
 +
 
 +
* [https://colab.research.google.com/drive/1nU4E_pFWjSFPNigzy8-LcJpef26IKY6x?usp=sharing Tutorial 4]: Ising model and phase transitions [https://colab.research.google.com/drive/1AEUX3U7hxDR_YYy8ld3knTEVR1KYa9SP?usp=sharing problems]
 +
 
 +
 
 +
 
 +
'''Friday, October 2, 2020'''
 +
 
 +
 
 +
[https://drive.google.com/file/d/1JY7PlB00hGpw1814lUyVor37E-um3xQj/view?usp=sharing Lecture 5]: Quantum particle
 +
 
 +
[https://colab.research.google.com/drive/1mYLzPTV79kpesX2ZR8LlQfdyGva45o9p?usp=sharing Tutorial 5]: Time evolution (quantum) [https://colab.research.google.com/drive/142acFqwTI91RZT_9gSb1-JHs9rd2PO_E?usp=sharing problems]
 +
 
 +
Homework 2: [https://drive.google.com/file/d/1lTgHlAvWAKhkZK13_yihmPxGzD3qo7ko/view?usp=sharing Download]
 +
 
 +
 
 +
 
 +
'''Friday, October 9, 2020'''
 +
 
 +
[https://drive.google.com/file/d/1eY5cuNcJqYw7df0PBkxq03tEnqzTOC-5/view?usp=sharing Lecture 6]: Importance sampling
 +
 
 +
[https://colab.research.google.com/drive/1KyT442vB4EuGKBy_Xj3j8cLtMMl4gbac?usp=sharing Tutorial 6]: Faster than the clock algorithms [https://colab.research.google.com/drive/1C-ieAwaAKwkX5MFm8aX2kNO2GNeO9CdY?usp=sharing problems]
 +
 
 +
 
 +
 
 +
''' Friday, October 16, 2020'''
 +
 
 +
'''GoToMeeting link''' [https://global.gotomeeting.com/join/854835733] (Room 1 M2 ICFP)
 +
 
 +
 
 +
[https://drive.google.com/file/d/1qAG8ARVuuXjMzQkU8I92KUEEPZxK5ynr/view?usp=sharing  Lecture 7]: Optimization & Dijkstra algorithm
 +
 
 +
[https://colab.research.google.com/drive/1p0ooWAXF9KNh-FztMHmVoA9yBzYOM8PC?usp=sharing Tutorial 7]: Simulated annealing [https://colab.research.google.com/drive/1txJGpzreHurWux7ev6sDsX8TjzpeQhZZ?usp=sharing problems]
 +
 
 +
 
 +
 
 +
 
 +
'''Friday, October 23, 2020'''
 +
 
 +
Lecture 8: Maximum Likelyhood estimation:
 +
 
 +
[https://colab.research.google.com/drive/1m2YBrQLfhVSMBpTEsfvOf4hXVZplp1D7?usp=sharing#scrollTo=-cLvGNzqh2Ah Tutorial 8]: Maximum Likelyhood estimation [https://colab.research.google.com/drive/1p2ZcgOUPcUS3LGP3k7-N8ZBbA2FM4qrs?usp=sharing problems]
 +
 
 +
''' Due: Homework 2  (send it to Marko)'''
 +
 
 +
 
 +
 
 +
'''Friday, November 06, 2020'''
 +
 
 +
Lecture 9: Restricted Boltzmann machines
 +
 
 +
[https://colab.research.google.com/drive/1pUeAtNXo-eLyTs9Kl6_fchsqsBxeEiKg?usp=sharing Tutorial 9]: Restricted Boltzmann machines [https://colab.research.google.com/drive/1rctxia3v3y_AMOXYIHh3hL6NuxmbL2CB?usp=sharing problems]
 +
 
 +
 
 +
 
 +
'''Friday, November 13, 2020'''
 +
 
 +
[https://colab.research.google.com/drive/1gpDaNKhg3vZqbsYPJqPSZCgboHfgki3F?usp=sharing Tutorial 10]: k-NN and regression [https://colab.research.google.com/drive/1d66oT7a5JuIHgHJjAbEsUQ9IccCrASsk?usp=sharing problems]
 +
 
 +
'''Homework 3''' Due by December 4, 2020
 +
[https://colab.research.google.com/drive/1NkJPKqkut-7Vbr-0jtiyi1tXarvxLUsU?usp=sharing Homework]
 +
[https://drive.google.com/file/d/1Nts8Dc06QjZ7E2uFPj4D6YHVZTTgJeih/view?usp=sharing Data]
 +
 
 +
 
 +
 
 +
'''Friday, November 27, 2020'''
 +
 
 +
Tomorrow Florent cannot really give the talk in direct live ... but never fear:
 +
* he can make a short Q/A tomorrow at, say, 15h or 15H30
 +
 
 +
* he registered the whole lecture in video, and put it here:
 +
 
 +
[https://www.dropbox.com/s/1yvmqbb5bb67w8n/video_lec4.mov?dl=0 Lecture 11]
 +
 
 +
[https://www.dropbox.com/s/dl31z2306y9salr/ML-lec4.pdf?dl=0 The notes]                   
 +
 
 +
 
 +
 
 +
[https://colab.research.google.com/drive/1OfxV5oL-9CVOxuhKgUF8AsboB89fm2xQ?usp=sharing Tutorial 11] Deep neural networks
 +
[https://colab.research.google.com/drive/1Zblg4v9RE-zcIgIHI3It9Kw8EmzcvwjR?usp=sharing problems]
 +
 
 +
 
 +
 
 +
'''Friday, December 4, 2020'''
 +
 
 +
[https://colab.research.google.com/drive/1yxct9k6f2BioBQ6OywN22yfeDtGH_SlJ?usp=sharing Tutorial 12] Convolutional neural networks and auto-encoders
 +
 
 +
'''Due: Homework 3''' (send it to me (Marko))
 +
 
 +
 
 +
 
 +
'''Friday, December 11, 2020'''
 +
 
 +
'''Multiple Choice Questions: '''
 +
 
 +
-------------
 +
'''The Solution''' [https://drive.google.com/file/d/1lMwtaAHerJ4uffZoE9egy7Pa_V2-cwOe/view?usp=sharing]
 +
 
 +
 
 +
 
 +
 
 +
'''The test'''
 +
 
 +
The MCQ is composed of 20 questions.  For each question you have 4 choices: 3 wrong and 1 correct.
 +
 
 +
* If you check the correct one you get a point.
 +
 
 +
* If you are wrong you loose 1/4 of a point.
 +
 
 +
* No answer given: zero points.
 +
 
 +
''' The Zoom link'''
 +
 
 +
Follow the link [https://zoom.us/j/4583355667?pwd=bUExNDJ1OU9IZEF6VUV5cmZKWDJ1dz09]. I will be there starting from 13h30, we will discuss the rules and I will be there to help you if you face a problem.
 +
 
 +
 
 +
'''Time schedule'''
 +
 
 +
* The exam starts at 14h00: you download your file of questions from that dropbox directory that brings your name.
 +
 
 +
* Name the file with your answers as familyname_name.txt.
 +
 
 +
* The answers shuld be presented in the following way:
 +
 
 +
1 A
 +
 
 +
2 B
 +
 
 +
4 C
 +
 
 +
(if some question is missing - as question 3 here - it  is not a problem)
 +
 
 +
* Send the file with your answers at numphys.icfp@gmail.com before  4 pm. 
 +
 
 +
'''Rules'''
 +
 
 +
* You are allowed to use all material you think useful.
 +
 
 +
* You are not allowed to communicate with other people. Questions will be randomised to make hard life of cheaters, but please do not be one of them!
  
  
Line 33: Line 215:
  
  
= Grading =
 
  
3 homeworks (10 points each) + 1 MCQ (20 points) + 1 oral exam (50 points)
 
  
= Forum =
+
'''GOOD LUCK!'''
 +
---------------
  
[http://numphys.forumactif.com/ here it is] please register
+
''' Here you can find a trial of the MCQ''' [https://drive.google.com/file/d/1ShlhE6PnR34SVGeT3aoJAuyg5n3QCUZl/view?usp=sharing  10 Questions about numerical physics]
  
 +
'''you can find a short presentation video of the MCQ on the Dropbox by  A. Rosso'''
  
 
== References ==
 
== References ==
 
* [http://www.lps.ens.fr/~krauth/index.php/SMAC SMAC W. Krauth Statistical Mechanics: Algorithms and Computations (Oxford: Oxford University Press) (2006)]
 
* [http://www.lps.ens.fr/~krauth/index.php/SMAC SMAC W. Krauth Statistical Mechanics: Algorithms and Computations (Oxford: Oxford University Press) (2006)]
 
* Other references are specified in each lectures
 
* Other references are specified in each lectures

Latest revision as of 18:02, 11 December 2020

Numerical Physics and Machine Learning

Course description

We will cover many algothims used in many-body problems and complex systems: Monte Carlo methods, molecular dynamics and optmization in complex landscapes. We shall also discuss the use of some machine learning algorithms (Boltzmann machines, Auto-encoder, Deep Learning) for physics problems. We focus on algorithms and physics, not on programming and heavy numerics. The theoretical lecture is followed by a tutorial introducing concrete numerical exercises. You will have to hand in 3 homeworks.

Lectures on machine learning will be done remotely. You will be able to access them on https://epfl.zoom.us/my/krzakalaflorent Tutorials will take place as usual on the gotomeeting.


The Team

Where and When

  • Lectures on Fridays: 14:00-16:00
  • Tutorials on Fridays: 16:00-18:00
  • ENS, 24 rue Lhomond, room L367 (third floor)


Computer Requirements

No previous experience in programming is required.

Programming Language: Python

For practical installation, we recommand either to use Anaconda (See Memento Python) or use google colab.
The Colaboratory platform from Google is quite good way to use powerful computer without buying one: It requires no specific hardware or software, and even allows you to use GPU computing for free, all by writting a jupyter notebook that you can then share.

Grading

Homeworks (50% of the mark) + 1 MCQ (50% of the final mark)

Schedule

Project in Markox Chain Monte Carlo Manon Michel's Project


Friday, September 4, 2020


Friday, September 11, 2020



Friday, September 18, 2020

Homework: Download


Friday, September 25, 2020


  • Lecture 4: Ising model and phase transitions


Friday, October 2, 2020


Lecture 5: Quantum particle

Tutorial 5: Time evolution (quantum) problems

Homework 2: Download


Friday, October 9, 2020

Lecture 6: Importance sampling

Tutorial 6: Faster than the clock algorithms problems


Friday, October 16, 2020

GoToMeeting link [1] (Room 1 M2 ICFP)


Lecture 7: Optimization & Dijkstra algorithm

Tutorial 7: Simulated annealing problems



Friday, October 23, 2020

Lecture 8: Maximum Likelyhood estimation:

Tutorial 8: Maximum Likelyhood estimation problems

Due: Homework 2 (send it to Marko)


Friday, November 06, 2020

Lecture 9: Restricted Boltzmann machines

Tutorial 9: Restricted Boltzmann machines problems


Friday, November 13, 2020

Tutorial 10: k-NN and regression problems

Homework 3 Due by December 4, 2020 Homework Data


Friday, November 27, 2020

Tomorrow Florent cannot really give the talk in direct live ... but never fear:

  • he can make a short Q/A tomorrow at, say, 15h or 15H30
  • he registered the whole lecture in video, and put it here:

Lecture 11

The notes


Tutorial 11 Deep neural networks problems


Friday, December 4, 2020

Tutorial 12 Convolutional neural networks and auto-encoders

Due: Homework 3 (send it to me (Marko))


Friday, December 11, 2020

Multiple Choice Questions:


The Solution [2]



The test

The MCQ is composed of 20 questions. For each question you have 4 choices: 3 wrong and 1 correct.

  • If you check the correct one you get a point.
  • If you are wrong you loose 1/4 of a point.
  • No answer given: zero points.

The Zoom link

Follow the link [3]. I will be there starting from 13h30, we will discuss the rules and I will be there to help you if you face a problem.


Time schedule

  • The exam starts at 14h00: you download your file of questions from that dropbox directory that brings your name.
  • Name the file with your answers as familyname_name.txt.
  • The answers shuld be presented in the following way:

1 A

2 B

4 C

(if some question is missing - as question 3 here - it is not a problem)

  • Send the file with your answers at numphys.icfp@gmail.com before 4 pm.

Rules

  • You are allowed to use all material you think useful.
  • You are not allowed to communicate with other people. Questions will be randomised to make hard life of cheaters, but please do not be one of them!




GOOD LUCK!


Here you can find a trial of the MCQ 10 Questions about numerical physics

you can find a short presentation video of the MCQ on the Dropbox by A. Rosso

References