CoDaDri: Difference between revisions

From Wiki Cours
Jump to navigation Jump to search
No edit summary
 
(116 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<!--  =Breaking news:=
* Homework 1 has been evaluated and sent to you. If you did not receive it, please contact us.
* Here you find the MCQ proposed last year
[https://colab.research.google.com/drive/1Ru_-IQ001XEJd9VAn4nvbBNI_3XA9QSK?usp=sharing The Quiz]
'''The Solution''' [https://colab.research.google.com/drive/1Faovrt0q5kRVtVsF9afr4iMXww_Wk53_?usp=sharing]  -->
= Computational and Data Driven Physics =
= Computational and Data Driven Physics =


Modern physics is characterized by an increasing complexity of systems under investigation, in
Modern physics is characterized by an increasing complexity of systems under investigation, in
Line 7: Line 16:


== Course description ==
== Course description ==
We will first cover many algorithms used in many-body problems and complex systems, with special emphasis on Monte Carlo methods, molecular dynamics, and optimization in complex landscapes.  
We will first cover many algorithms used in many-body problems and complex systems, with special emphasis on Monte Carlo methods, molecular dynamics, and optimization in complex landscapes.  


Second, we will provide statistical inference and machine learning tools to harness the growing availability of experimental data to design accurate models of the underlying, complex, strongly non-homogeneous and interacting systems.  
Second, we will provide statistical inference and machine learning tools to harness the growing availability of experimental data to design accurate models of the underlying, complex, strongly non-homogeneous and interacting systems.  


Each theoretical lecture will be followed by a tutorial illustrating the concepts with practical applications
Each theoretical lecture will be followed by a tutorial illustrating the concepts with practical applications
Line 16: Line 25:
on programming and heavy numerics!  You will have to hand in 3 homeworks.
on programming and heavy numerics!  You will have to hand in 3 homeworks.


 
*[https://drive.google.com/file/d/11w7KI5Pi59VWLX1mqiQ8ZyY8YQHRUeMz/view?usp=sharing Preliminary version of the book: Information, Inference, Networks: From statistical physics to big biological data]


== The Team ==
== The Team ==
Line 30: Line 39:
* ENS, 29 rue D'Ulm, salle Borel + Djebar
* ENS, 29 rue D'Ulm, salle Borel + Djebar


== Slack ==


 
If you have questions or want to discuss topics related to the lecture, to the exercises or to the homeworks, you can use the
 
[http://computational-ozw2847.slack.com Computational and Data Driven Physics Slack]. In order to join the Slack
use the following [https://join.slack.com/t/computational-ozw2847/shared_invite/zt-vegija8y-cx_vbF2BI6FJewx4W6coSA invitation link].


== Computer Requirements ==
== Computer Requirements ==
Line 44: Line 55:


== Grading ==
== Grading ==
'''Computational Physics:'''
'''Computational Physics:'''
* Homework 1: 5 points  
* Homework 1: 5 points  
* Homework 2: 5 points
* Homework 2: 5 points
* Multiple Choice Questions in November: 10 points
* Multiple Choice Questions in November: 10 points




Line 54: Line 69:
* Final exam in January: 20 points
* Final exam in January: 20 points


== Schedule ==
  == Schedule ==




'''Friday, September 3, 2021 '''
<!-- '''Friday, September 3, 2021 '''


* [https://drive.google.com/file/d/1X9h3lKD0OZLTKtxb7DWPfynY42rRuE7j/view?usp=sharing Lecture 1]  Introduction to Monte Carlo
* [https://drive.google.com/file/d/1X9h3lKD0OZLTKtxb7DWPfynY42rRuE7j/view?usp=sharing Lecture 1]  Introduction to Monte Carlo
Line 66: Line 81:
'''Friday, September 10, 2021'''
'''Friday, September 10, 2021'''


* [https://colab.research.google.com/drive/1Q5ajzxRGXBBorA9cQ9o8V5VUVJhUXpPS?usp=sharing Tutorial 2] Markov matrix
* Introductory notebooks: [https://colab.research.google.com/drive/1Ovrh1JjLzMMnxtasDgR1j84CHGU6hMxA python], [https://colab.research.google.com/drive/14PWu-C171pYhV8ven-Txc4wz5Tv1DCsK numpy] and [https://colab.research.google.com/drive/1fPjwrdxQPSyfXniyAHmyOcF_gK2fqjts matplotlib]
 
* [https://colab.research.google.com/drive/1gf7oRQIpvSvMScyJa5hexB9CCZvdozPs#scrollTo=lDznlLouvlFx Tutorial 2] - Markov matrices ([https://colab.research.google.com/drive/1x9iEHG_F522uFCvD_jGdvHaMETAHfO6-#scrollTo=eSu-nLZ6vm8X solutions])


* [https://colab.research.google.com/drive/1fdKJlp0lD4k530oRuu50_Hm_T8t3jixa?usp=sharing Tutorial 3] Thumb rule
* [https://colab.research.google.com/drive/1tjqbjAi50C4qOqVRtTxEkTeTb10qpTms#scrollTo=uYpaubGkvogU Tutorial 3] - Thumb rule ([https://colab.research.google.com/drive/1aWVtz4ZGcpIarWiRVAnxrp1t0GDOqZxu#scrollTo=f7ohlMuZvqTr solutions])


* Homework 1
* [https://colab.research.google.com/drive/1g7HXFUBQUBF0fhy5h2jYbfIAVBTqvb7-#scrollTo=U9LFX8OFhHOG Homework 1] (deadline October 1) -->


<!--
<!--
Line 77: Line 94:
-->
-->


'''Friday, September 17, 2021'''
 
<!-- '''Friday, September 17, 2021'''


* [https://drive.google.com/file/d/15wrgivn6FSnuBUnMwjjhadmD-g1fkS7T/view?usp=sharing Lecture 2] Basic Sampling
* [https://drive.google.com/file/d/15wrgivn6FSnuBUnMwjjhadmD-g1fkS7T/view?usp=sharing Lecture 2] Basic Sampling
Line 88: Line 106:
* [https://drive.google.com/file/d/1DijhG_856OAuj42WqY1UM47APmMy3A8B/view?usp=sharing Lecture 4]: Ising model and phase transitions  
* [https://drive.google.com/file/d/1DijhG_856OAuj42WqY1UM47APmMy3A8B/view?usp=sharing Lecture 4]: Ising model and phase transitions  


* [https://colab.research.google.com/drive/1sRUEs768Z6PKdJ3k7MixYeFGlufgjFrG Tutorial 4]: Ising model and phase transitions ([https://colab.research.google.com/drive/1KAQRog_YlAjKZ_hL1FMYurWdPBLNUocI solutions]) -->
<!--
* [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]  
* [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 1, 2021'''


* [https://drive.google.com/file/d/1eY5cuNcJqYw7df0PBkxq03tEnqzTOC-5/view?usp=sharing Lecture 6]: Importance sampling
<!--'''Friday, October 1, 2021'''
 
* [https://colab.research.google.com/drive/1PTya42ZS2kU87A-BxQFFIUDTs_k47men?usp=sharing Lecture 5]: Optimization & Dijkstra algorithm
 
* [https://colab.research.google.com/drive/1ieT5BlfJsOehsa8r-LHGsFsn1dwYnawT Tutorial 5]: Simulated annealing ([https://colab.research.google.com/drive/1JNVl42KNASZiwTtqYo71z_vggjbGfKul solutions]) -->
 
<!--
* [https://colab.research.google.com/drive/1p0ooWAXF9KNh-FztMHmVoA9yBzYOM8PC?usp=sharing Tutorial 5]: Simulated annealing [https://colab.research.google.com/drive/1txJGpzreHurWux7ev6sDsX8TjzpeQhZZ?usp=sharing problems]
-->


* [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]
<!-- * Send your copy of Homework 1 to numphys.icfp  at  gmail.com Thanks!


* Homework 2
* [https://colab.research.google.com/drive/1EPgj3la7vxDIqSQYNlOFz4rR0vHXAeae Homework 2] (deadline October 22)




'''Friday, October 8, 2021'''
'''Friday, October 8, 2021'''


* [https://drive.google.com/file/d/1qAG8ARVuuXjMzQkU8I92KUEEPZxK5ynr/view?usp=sharing  Lecture 7]: Optimization & Dijkstra algorithm
* Lecture 6: Introduction to Bayesian inference


* [https://colab.research.google.com/drive/1p0ooWAXF9KNh-FztMHmVoA9yBzYOM8PC?usp=sharing Tutorial 7]: Simulated annealing [https://colab.research.google.com/drive/1txJGpzreHurWux7ev6sDsX8TjzpeQhZZ?usp=sharing problems]
* Tutorial 6: Bayesian inference and single-particle tracking. [https://drive.google.com/file/d/1q9Quq5mvJ4Avv2qWgzTocU-DVIxJIVWi/view?usp=sharing Questions]. [https://drive.google.com/file/d/1xYb4wfNBysse6Q7frTw_V9TPdUQU5lUx/view?usp=sharing Data]. [https://drive.google.com/file/d/1Ba_kRo3_XMIaDLNYZlbZEw-wGXKS-29I/view?usp=sharing Starting Notebook]. [https://colab.research.google.com/drive/1VePL9X1JT6yl8LmROeZyMyf4Epcu3yOL#scrollTo=1XQNGa_fyEkJ Google colab version]. Solutions [https://drive.google.com/file/d/1Q9IjVUeL7AA8uWk8DX9Vy9vuUQ21RYh2/view?usp=sharing]. Notebook [https://drive.google.com/file/d/1ZJmpdaTQVUttEaaI1ch-reFfZGI93454/view?usp=sharing]




'''Friday, October 15, 2021'''
'''Friday, October 15, 2021'''


* Lecture 8: Introduction to Bayesian inference
* [https://drive.google.com/file/d/1eY5cuNcJqYw7df0PBkxq03tEnqzTOC-5/view?usp=sharing Lecture 7]: Importance sampling
 
* [https://colab.research.google.com/drive/1iaOGxdVgk--kWUFcMDHs0zvPhsOyhB_c Tutorial 7]: Faster than the clock algorithms ([https://colab.research.google.com/drive/1bHPnJpBd5ExqKF4G5BuV_FHPE4r0_AY2#scrollTo=fQnz_gOeq40e solutions]) -->


* Tutorial 8:
<!--
* [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 22, 2021'''
<!--  '''Friday, October 22, 2021'''


* Lecture 9: Asymptotic inference and information
* Lecture 8: Asymptotic inference and information. Extra material: Proof of Cramer-Rao bound [https://drive.google.com/file/d/10Ph_iP6AIQ3ps9v3FwRBO9j6-qV7oKV9/view?usp=sharing]


* Tutorial 9:
* Tutorial 8: [https://drive.google.com/file/d/12cG4HBvzs9Oe1mbfuEYyRDmTEamW71pR/view?usp=sharing Questions]. [https://drive.google.com/file/d/1AL8sRtnqYUI8NbubfglgLazknaVIUJEo/view?usp=sharing Data ] [https://drive.google.com/file/d/1DTLzXLZUEPzoU2SsDMcAe8GaoYX8E5gH/view?usp=sharing Starting Notebook]. [https://drive.google.com/file/d/1QpMaM5ACmKUlFAyGvRnHvFVtQoEAF7-9/view?usp=sharing Bibliography] [https://drive.google.com/file/d/1p9v1PkJhwS8Ofg4RiC1nsFJAe8Mb_6WF/view?usp=sharing Solutions].  [https://drive.google.com/file/d/19erJJ4Gjw77n57VrnqaQPCxIh_-NScYT/view?usp=sharing Notebook].
 
* Send your copy of Homework 2 to numphys.icfp  at  gmail.com  Thanks!




'''Friday, October 29, 2021'''
'''Friday, October 29, 2021'''


* Lecture 10: High-dimensional inference and Principal Component Analysis
* Lecture 9: High-dimensional inference and Principal Component Analysis. Extra material: Handwritten notes on the derivation of Marcenko-Pastur spectral density [https://drive.google.com/file/d/10Yytv9itdWDDHTsM2lQHwQDMbcf-oVnd/view?usp=sharing]
 
* Tutorial 9: [https://drive.google.com/file/d/10y7m1mPf5R5zZN6661Eei92IUNhBL_Zu/view?usp=sharing  Replay of the neuronal activity during sleep after a task].[https://drive.google.com/file/d/11fO26XB6Ri3HDVBvtdBkYxcTRLk1iv5F/view?usp=sharing Data ]. [https://drive.google.com/file/d/1-MFN2ERs_eNs4w6XnLjfzsu2F9REluSt/view?usp=sharing Initial Notebook]. [https://drive.google.com/file/d/11ev4Zwn6DPYLwhMsLyp8S0aQFVu77Ou3/view?usp=sharing Biblio].
[https://drive.google.com/file/d/11E75QwrJgDKrutGj9t5NJTRkGtuRgoBI/view?usp=sharing Solutions]. [https://drive.google.com/file/d/1-39oZNNB-35zM4V2tLWtubQnZTdMLtIz/view?usp=sharing Notebook]
 
 
 
'''Friday, November 12, 2021, 2 pm: The Quiz.'''
 
The MCQ is composed of 19 questions (one of them counts for two).  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.


* Tutorial 10:
 
MCQ Solution (correct answers in bold):[https://drive.google.com/file/d/1WWcqxFzmCJp2ZXC02a70a1o17pGupdyZ/view?usp=sharing]




'''Friday, November 26, 2021'''
'''Friday, November 26, 2021'''


* Lecture 11: Priors, regularisation, sparsity
* Lecture 10: Priors, regularisation, sparsity
 
* Tutorial 10: [https://drive.google.com/file/d/14kaGKRm7uciT7uLVMW_Vqzr8ha-V-Ra2/view?usp=sharing Bayesian Inference and Priors for the analysis of gravitational waves]. [https://drive.google.com/file/d/16UTmpwKm-7UMcIbca8IIGsO-aCmcwKuD/view?usp=sharing Starting notebook on artificial data]. [https://drive.google.com/file/d/1CyiDlXs6ez9-7gnyeBU0YRgV7Nt5ibkn/view?usp=sharing Biblio][https://colab.research.google.com/drive/1pFMOawozlYOIpy0jQWkTfoq-tFp3uvhw?usp=sharing#scrollTo=6picRNBipcYN Notebook on real data]
[https://drive.google.com/file/d/161ZLuq5s2RpHDJWELFSKXqlf-qwrVrxA/view?usp=sharing Notebook on Artificial data] [https://drive.google.com/file/d/17qhYN8EFpcoCUHOM_juBvEGpu61GgJRx/view?usp=sharing Corrections ]
 


* Tutorial 11:




'''Friday, December 3, 2021'''
'''Friday, December 3, 2021'''


* Lecture 12: Network inference
* Lecture 11: Probabilistic graphical models


* Tutorial 12:
* Tutorial 11:[https://drive.google.com/file/d/1A5pcJICHkmHZYoa2uoAGSAWp-_ZOaIEf/view?usp=sharing Analysis of protein sequence data to infer protein structure] [https://drive.google.com/file/d/1COKr5pNoBRFwwnj7TWPQSU8mEWKvsLud/view?usp=sharing Starting notebook and data] [https://drive.google.com/file/d/1CQw1PQ6RSS6nuGxhkwOqe7LJHpOPIaVp/view?usp=sharing Biblio][https://drive.google.com/file/d/1CslX27bTp5gyhXV4ciFE8s1zMnBgJ-1O/view?usp=sharing Solutions] [https://drive.google.com/file/d/19X59x3TdIsJaccTZE71gCbZxFbOzlhj4/view?usp=sharing Final notebook]




'''Friday, December 10, 2021'''
'''Friday, December 10, 2021'''


* Lecture 13: Supervised learning and phase transitions
* Lecture 12: Hidden Markov Models. Extra material: Pedagogical introduction to Kalman filters [https://drive.google.com/file/d/0B4HvoS7Zt11LZUxVLTkyVXRQRUE/view?usp=sharing&resourcekey=0-CzsYaRIrPP2sN-UmwfiLHQ]
 
* Tutorial 12:
[https://drive.google.com/file/d/1FLbWZRWJ1JILZV41RjwVKR7mOhNMhLV9/view?usp=sharing Hidden Markov Models Hidden  for identification of recombinations in SARS-CoV-2 viral genomes] [https://drive.google.com/file/d/1FCAg0ihMWoAk-_dtt5ORncjVjkVu-m4D/view?usp=sharing Starting Notebook and Data][https://drive.google.com/file/d/1HMREe6ge7_K-lOKC4f2FwL7vnEa1_8Yf/view?usp=sharing Bibliography] [https://drive.google.com/file/d/1FLDBJmNtXogHiO5VfScGiePTCxMFy1KZ/view?usp=sharing Final Notebook] [https://drive.google.com/file/d/1FBQaNJ2RhjwW_VSut2oC7mZYl5F8RWfS/view?usp=sharing Solutions]


* Tutorial 13:




'''Friday, December 17, 2021'''
'''Friday, December 17, 2021'''


* Lecture 14: Unsupervised learning and representations
* Lecture 13: Unsupervised learning and representations


* Tutorial 14:
* [https://colab.research.google.com/drive/1p2c35gHMr4_Ptdmwsh3jGJz__9NNIgLw Tutorial 13]: How restricted Boltzmann machines learn ([https://colab.research.google.com/drive/1gnaK_vmTESTV3Ex_A1gqcee6Q58iKyld solutions])
 
 
'''Final examination of the data-driven course (January 7, 2022)'''
 
* Example of exam: On-line Principal Component Analysis [https://drive.google.com/file/d/1BbRY4b3OCVYAtYH4m6ry19KcA2gkp3pH/view?usp=sharing]
 
* On-line version of the book [https://drive.google.com/file/d/161YHZA7i2YU-8emy6IPUFhsOXzFRxSRS/view?usp=sharing]
 
* Examination repository [https://drive.google.com/file/d/19DNkNBed0Ir5a9N048ZFV4_xF0KG3kcy/view?usp=sharing]
-->

Latest revision as of 11:34, 2 September 2022


Computational and Data Driven Physics

Modern physics is characterized by an increasing complexity of systems under investigation, in domains as diverse as condensed matter, astrophysics, biophysics, etc. Establishing adequate models to describe these systems and being able to make quantitative predictions from those models is extremely challenging. The goal of the course is to provide the tools and concepts necessary to tackle those systems.

Course description

We will first cover many algorithms used in many-body problems and complex systems, with special emphasis on Monte Carlo methods, molecular dynamics, and optimization in complex landscapes.

Second, we will provide statistical inference and machine learning tools to harness the growing availability of experimental data to design accurate models of the underlying, complex, strongly non-homogeneous and interacting systems.

Each theoretical lecture will be followed by a tutorial illustrating the concepts with practical applications borrowed from various domains of physics. We will focus on methods and algorithms and physics, not on programming and heavy numerics! You will have to hand in 3 homeworks.

The Team

Where and When

  • Lectures on Fridays: 14:00-16:00
  • Tutorials on Fridays: 16:00-18:00
  • ENS, 29 rue D'Ulm, salle Borel + Djebar

Slack

If you have questions or want to discuss topics related to the lecture, to the exercises or to the homeworks, you can use the Computational and Data Driven Physics Slack. In order to join the Slack use the following invitation link.

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 Collaboratory 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

Computational Physics:

  • Homework 1: 5 points
  • Homework 2: 5 points
  • Multiple Choice Questions in November: 10 points



Data Driven Physics:

  • Final exam in January: 20 points
 == Schedule ==