[{"command":"insert","method":null,"selector":".course-modal-ajax-placeholder-958551","data":"\u003Cdiv class=\u0022container content-rte\u0022\u003E\n  \u003Cdiv class=\u0022row\u0022\u003E\n    \u003Cdiv class=\u0022box col-md-6 bg-primary text-white\u0022\u003E\n      \u003Ch2 class=\u0022h1 text-left\u0022\u003E  Object Oriented  Programming for Machine Learning\n\u003C\/h2\u003E\n                  \u003Cdiv class=\u0022field-spacing\u0022\u003E\n        \u003Cdiv class=\u0022field__label h3 dash\u0022\u003EECTS :\n          3\n        \u003C\/div\u003E\n      \u003C\/div\u003E\n                  \u003Cdiv class=\u0022field-spacing\u0022\u003E\n        \u003Cdiv class=\u0022field__label h3 dash\u0022\u003ESemester:\n          Semestre 1\n        \u003C\/div\u003E\n      \u003C\/div\u003E\n            \u003Cdiv class=\u0022field-spacing\u0022\u003E\n      \u003Cdiv class=\u0022field__label h3 dash\u0022\u003ED\u00e9tail du volume horaire\u003C\/div\u003E\n                        \u003Cdiv class=\u0022mt-5 text-justify\u0022\u003E\n                          \u003Cspan class=\u0022field__label h4 mt-5 \u0022\u003ELecture:\u003C\/span\u003E\n                                      \u003Cspan\u003E9\u003C\/span\u003E\n                      \u003C\/div\u003E\n                                              \u003Cdiv class=\u0022mt-5 text-justify\u0022\u003E\n                          \u003Cspan class=\u0022field__label h4 mt-5 \u0022\u003EDirected study:\u003C\/span\u003E\n                                      \u003Cspan\u003E13.5\u003C\/span\u003E\n                      \u003C\/div\u003E\n                                                            \u003C\/div\u003E\n        \u003Cdiv class=\u0022field-spacing\u0022\u003E\n      \u003Cdiv class=\u0022field__label h3 dash\u0022\u003ELangue d\u0026#039;enseignement\u003C\/div\u003E\n                        \u003Cdiv class=\u0022mt-5 text-justify\u0022\u003E\n                                      \u003Cspan\u003EAnglais\u003C\/span\u003E\n                      \u003C\/div\u003E\n                  \u003C\/div\u003E\n        \u003Cdiv class=\u0022field-spacing\u0022\u003E\n      \u003Cdiv class=\u0022field__label h3 dash\u0022\u003EEnseignement \u00e0 distance\u003C\/div\u003E\n                        \u003Cdiv class=\u0022mt-5 text-justify\u0022\u003E\n                                      \u003Cspan\u003Enon\u003C\/span\u003E\n                      \u003C\/div\u003E\n                  \u003C\/div\u003E\n      \u003C\/div\u003E\n    \u003Cdiv class=\u0022box col-md-6\u0022\u003E\n            \u003Cdiv class=\u0022field-spacing\u0022\u003E\n      \u003Cdiv class=\u0022field__label h3 dash\u0022\u003EPr\u00e9requis\u003C\/div\u003E\n                        \u003Cdiv class=\u0022mt-5 text-justify\u0022\u003E\n                                      \u003Cspan\u003E\u003Cp\u003EPython\u003Cbr\u003E\nAlgorithms\u003C\/p\u003E\u003C\/span\u003E\n                      \u003C\/div\u003E\n                  \u003C\/div\u003E\n        \u003Cdiv class=\u0022field-spacing\u0022\u003E\n      \u003Cdiv class=\u0022field__label h3 dash\u0022\u003EProgramme \/ plan \/ contenus\u003C\/div\u003E\n                        \u003Cdiv class=\u0022mt-5 text-justify\u0022\u003E\n                                      \u003Cspan\u003E\u003Cp\u003E- Introduction to software design and development methods\u003Cbr\u003E\n- Machine learning frameworks and the design of libraries\u003Cbr\u003E\n- POO principles\u003Cbr\u003E\n- Classes in UML\u003Cbr\u003E\n- Class, object, methods, attributes, etc.\u003Cbr\u003E\n- Abstraction, Inheritance, Mixins, Interfaces\u003Cbr\u003E\n- Dunder methods\u003Cbr\u003E\n- Class decorators\u003C\/p\u003E\u003C\/span\u003E\n                      \u003C\/div\u003E\n                  \u003C\/div\u003E\n        \u003Cdiv class=\u0022field-spacing\u0022\u003E\n      \u003Cdiv class=\u0022field__label h3 dash\u0022\u003EObjectifs d\u0026#039;apprentissage\u003C\/div\u003E\n                        \u003Cdiv class=\u0022mt-5 text-justify\u0022\u003E\n                                      \u003Cspan\u003E\u003Cp\u003EThis course introduces students to object-oriented programming principles through software modeling activities using UML and extensive Python programming. Throughout the course, students will have the opportunity to study concrete use cases from machine learning frameworks and libraries. This will provide an opportunity to become familiar with the design philosophy of these frameworks. As a final project, students will have the opportunity to work on the modeling, design, and implementation of a machine learning library from scratch, with many features similar to those in the scikit-learn library.\u003C\/p\u003E\n\u003Cp\u003EBy following this course, the students will be able to:\u003Cbr\u003E\n- Express software specifications in UML\u003Cbr\u003E\n- Implement specifications in Python\u003Cbr\u003E\n- Write clean, readable, and elegant code\u003Cbr\u003E\n- Write extensible and easily maintainable code\u003Cbr\u003E\n- Write code that complies with principles of reproducible research\u003Cbr\u003E\n- Write libraries that can be shared and used by others\u003Cbr\u003E\n- Use OOP principles to understand and become familiar with machine learning frameworks\u003C\/p\u003E\u003C\/span\u003E\n                      \u003C\/div\u003E\n                  \u003C\/div\u003E\n                        \u003Cdiv class=\u0022field-spacing\u0022\u003E\n      \u003Cdiv class=\u0022field__label h3 dash\u0022\u003EComp\u00e9tences\u003C\/div\u003E\n                        \u003Cdiv class=\u0022mt-5 text-justify\u0022\u003E\n                                      \u003Cspan\u003E\u003Cp\u003EC1.2. Concevoir une d\u00e9marche exp\u00e9rimentale.\u003C\/p\u003E\n\u003Cp\u003EC2.3. Se former \u00e0 de nouveaux outils technologiques.\u003C\/p\u003E\n\u003Cp\u003EC3.1. Structurer et pr\u00e9senter des donn\u00e9es et concepts scientifiques \u00e0 des sp\u00e9cialistes ou \u00e0 des n\u00e9ophytes.\u003C\/p\u003E\n\u003Cp\u003EC4.1. Travailler en autonomie et collaborer avec les membres d\u2019une \u00e9quipe afin d\u2019atteindre des objectifs communs.\u003C\/p\u003E\n\u003Cp\u003EC4.3. Organiser et planifier son temps de travail de fa\u00e7on \u00e0 respecter des deadlines.\u003C\/p\u003E\u003C\/span\u003E\n                      \u003C\/div\u003E\n                  \u003C\/div\u003E\n        \u003Cdiv class=\u0022field-spacing\u0022\u003E\n      \u003Cdiv class=\u0022field__label h3 dash\u0022\u003EBibliographie\u003C\/div\u003E\n                        \u003Cdiv class=\u0022mt-5 text-justify\u0022\u003E\n                                      \u003Cspan\u003E\u003Cul\u003E\n\u003Cli\u003EMartin Fowler et al., Refactoring: Improving the Design of Existing Code\u003C\/li\u003E\n\u003Cli\u003EEric Freeman and Elisabeth Freeman, Head First Design Patterns\u003C\/li\u003E\n\u003Cli\u003EErich Gamma et al., Design Patterns: Elements of Reusable Object-Oriented Software\u003C\/li\u003E\n\u003C\/ul\u003E\u003C\/span\u003E\n                      \u003C\/div\u003E\n                  \u003C\/div\u003E\n        \u003Cdiv class=\u0022field-spacing\u0022\u003E\n      \u003Cdiv class=\u0022field__label h3 dash\u0022\u003ENature de l\u0026#039;\u00e9valuation\u003C\/div\u003E\n                        \u003Cdiv class=\u0022mt-5 text-justify\u0022\u003E\n                                      \u003Cspan\u003EEvaluation Continue non Int\u00e9grale\u003C\/span\u003E\n                      \u003C\/div\u003E\n                  \u003C\/div\u003E\n      \u003C\/div\u003E\n  \u003C\/div\u003E\n\u003C\/div\u003E\n","settings":null}]