ML book#

We are drowning in information and starving for knowledge.

—Rutherford D. Roger

The amount of information is enormous nowadays and it is continuously growing. See resources to observe only a tiny fraction of machine learning content available on the Web. Isn’t it enough? Why should we create one more piece of content?

There were a lot of Holy Wars about education and all around it. Leaving them aside, I personally formulate the main purpose of education as follows:

The Fundamental Goal of Education

Create conditions allowing students to acquire knowldedge and skills at the desired level in the shortest possible period of time.

https://slideplayer.com/7520891/24/images/slide_1.jpg

Our attempt will technically rely on Jupyter book, an open-source tool for building publication-quality books and documents from computational material.

Jupyter-book demo#

To introduce the capabilities of Jupyter book along with some methodological ideas I wrote the e_book. For now it consists only of one chapter devoted to the Euler number.

The main features:

  • interactive quizzes (taken “as is” from here);

  • mix of narrative and executable content as it is usually done via markdown and code cells in Jupyter notebook;

  • pictures and visualizations (sometimes interactive);

  • available online on any device.

Hopefully, during this course we’ll write something similar about machine learning.

Course assessment#

Activity

Final scores

Attendance

\(10\%\)

Practice

\(10\%\)

Midterm

\(10\%\)

Jupyter book project

\(30\%\)

Final exam

\(40\%\)

Project team construction#

Successive completion of the project requires effective team collaboration. The team should consist of several students with different roles:

  • technical writer

  • author of executable content

  • designer of interactive plots

  • designer of quizzes

  • the most useless… project manager

The goal of every team is to create a nicely looking section in the ML book.

Technical writer#

  • writes clear and neat narrative content in Markdown

  • looks for consistency with all other types of content

  • translates some Russian texts into English if necessary

Author of executable content#

  • writes executable content in Jupyter notebook

  • suggests ideas of python calculations and static plots which would enrich the narrative content

  • searches for existing datasets and visualizations

  • tries different models of machine learning

Designer of interactive plots#

  • uses plotly or pywidgets or something else to create interactive visualizations

  • searches for places where it would be quite beneficial to insert interactive elements

  • suggests ideas of quizzes which could be solved by investigating of interactive content

Designer of quizzes#

  • searches for ideas of single/multiple choice and numeric quizzes

  • writes quizzes using Jupyterquiz in a separate Jupyter notebook

  • encodes the quiz bodies and inserts them into main content

Project manager#

  • tracks the progress of each member of the team

  • checks for consistency of all types of content, notations and cross-references to other parts of the book

  • searches for different sources of information

  • communicates with PMs of teams which work on related topics

  • communicates with BDFL

The main tool#

_images/chatGPT.png