NUMPHYsandML: Difference between revisions
(47 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
= Numerical Physics and Machine Learning = | = Numerical Physics and Machine Learning = | ||
Line 19: | Line 7: | ||
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. | ||
'''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.''' | |||
Line 45: | Line 35: | ||
== Grading == | == Grading == | ||
Homeworks ( | Homeworks (50% of the mark) + 1 MCQ (50% of the final mark) | ||
== Schedule == | == Schedule == | ||
Line 86: | Line 79: | ||
'''Friday, October 2, 2020''' | '''Friday, October 2, 2020''' | ||
[https://drive.google.com/file/d/1JY7PlB00hGpw1814lUyVor37E-um3xQj/view?usp=sharing Lecture 5]: Quantum particle | [https://drive.google.com/file/d/1JY7PlB00hGpw1814lUyVor37E-um3xQj/view?usp=sharing Lecture 5]: Quantum particle | ||
Line 104: | Line 90: | ||
'''Friday, October 9, 2020''' | '''Friday, October 9, 2020''' | ||
Lecture 6: Importance sampling | [https://drive.google.com/file/d/1eY5cuNcJqYw7df0PBkxq03tEnqzTOC-5/view?usp=sharing Lecture 6]: Importance sampling | ||
Tutorial 6: Faster than the clock algorithms | [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] | ||
Line 112: | Line 98: | ||
''' Friday, October 16, 2020''' | ''' Friday, October 16, 2020''' | ||
Lecture 7: Optimization & Dijkstra algorithm | '''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 | |||
Tutorial 7: Simulated annealing | [https://colab.research.google.com/drive/1p0ooWAXF9KNh-FztMHmVoA9yBzYOM8PC?usp=sharing Tutorial 7]: Simulated annealing [https://colab.research.google.com/drive/1txJGpzreHurWux7ev6sDsX8TjzpeQhZZ?usp=sharing problems] | ||
Line 122: | Line 110: | ||
'''Friday, October 23, 2020''' | '''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''' | '''Friday, December 11, 2020''' | ||
'''Multiple Choice Questions: the | '''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! | |||
'''GOOD LUCK!''' | |||
== 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 12:33, 4 November 2021
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
- Alberto Rosso (Numerical Physics)
- Florent Krzakala (Machine Learning)
- Marko Medenjak (Tutorials)
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
Friday, September 4, 2020
- Lecture 1 Introduction to Monte Carlo
- Tutorial 1 Markov Matrix
Friday, September 11, 2020
- Lecture 2 Basic Sampling
- Tutorial 2 Markov matrix problems
Friday, September 18, 2020
- Lecture 3: Errors and Precision
- Tutorial 3 Thumb rule problems
Homework: Download
Friday, September 25, 2020
- Lecture 4: Ising model and phase transitions
- Tutorial 4: Ising model and phase transitions problems
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:
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!
References
- SMAC W. Krauth Statistical Mechanics: Algorithms and Computations (Oxford: Oxford University Press) (2006)
- Other references are specified in each lectures