[PYTHON] Summary of mathematical scope and learning resources required for machine learning and data science

In creating it, "Book for understanding mathematics for artificial intelligence programming", "Chainer Tutorial", "[Kikagaku style] Artificial intelligence / machine learning de-black box course-Beginner's edition" - ”was used as a reference.

Is Mathematics Essential for Practical Use and Introduction of Machine Learning?

From the perspective of "simply using machine learning," I don't think mathematics is essential. For example, in image posting SNS, consider harmful image detection by machine learning (a common use case). Now, if you use Google Cloud Vision API etc., you can easily incorporate the image filtering function (image detection function). You can use the trained model as it is, so you only need to incorporate the API to implement it.

Is Mathematics Essential for Machine Learning Engineers?

I think mathematics is indispensable if you call yourself a "machine learning engineer" rather than just using machine learning. The common AI programming school "No math!" Is just a catch phrase that feels good to the ear. It just gives the desired answer to the need to become an AI engineer if you are not good at math.

Machine learning and deep learning do not require so advanced programming skills, but I think that it is a world where mathematical backgrounds make a difference (React Native, Redux, TypeScript, etc. are much more difficult code. Then?).

The fact that mathematicians and physicists often turn into the field of machine learning and play an active role is proof of that.

List of mathematics for machine learning

Roughly speaking, ** "differentiation", "linear algebra", and "probability statistics" ** are required. And in order to understand them, we need ** "foundation of mathematics" ** such as sequences and trigonometric functions as prerequisite knowledge. In summary, about four items are required: "mathematical basics *", "differentiation", "linear algebra", and "probability statistics".

Foundations of mathematics

--Variables / constants --Order of expression --Function concept --Square root --Exponentiation and root --Exponential function / logarithmic function (log) --Natural logarithm (e/ln/exp) --Sigmoid function --Trigonometric function (sin/cos/tan) --Absolute value / Euclidean distance --Sequence --Elements and sets

differential

--Extreme (lim) --Differential foundation --Ordinary differential / partial differential --Graph description --Maximum and minimum values ​​of the graph --Elementary function / composite function differential calculus / product differential calculus --Differentiation of special functions

linear algebra

--What is a vector? --Vector addition / subtraction / scalar times --Directed line segment --Inner product --Direct conditions --Normal vector --Vector norm --Cosine similarity --Matrix addition / subtraction --Matrix multiplication --Inverse matrix --Linear transformation --Eigenvalues ​​and eigenvectors

Probability statistics

――What is probability? --Random variables and probability distributions --Join probability and conditional probability

Recommended books

"A book that understands mathematics for artificial intelligence programming" (Toshihiko Ishikawa)

"Written by President Ishikawa of Aidemy" "Recommended by Professor Yutaka Matsuo" Please do not refer to this area as it is just a catch phrase. Let's take a look at the contents. This book briefly summarizes the minimum mathematics required for artificial intelligence. ** The point to be evaluated is just enough coverage **, but ** on the other hand, the negative point is that the explanation of each item is thin **.

For those who have some background in mathematics, specifically those who are "not good at mathematics for university entrance exams" or "taken mathematics courses at university", efficiently use mathematics for artificial intelligence. It is a good book that you can review. However, on the contrary, it will be difficult to understand if it is only this book for those who are not, specifically those who "did not use mathematics in college entrance exams" and "have a weakness in high school mathematics".

Don't rush, let's review the basics of high school mathematics first. We recommend Massema's reference books and study supplements.

Massema "Mathematics from the beginning" series

It is a masterpiece of high school mathematics familiar with the catch phrase "The University of Tokyo students' most used mathematics reference book" (as an aside, the university mathematics reference book of Massema is often seen at the University of Tokyo Cooperative Bookstore, so it is credible. I think it's expensive).

The easy-to-speak style makes you understand the essence of mathematics carefully. To understand high school mathematics, junior high school mathematics is required as a prerequisite knowledge, but Massema looks back on the contents of junior high school mathematics and explains it.

I think that a proper review of high school mathematics as a whole seems to be a detour and is the shortest route after all.

As an aside, "Mathematics starting from the beginning" only explains the basic concept, so if you are going to take a university entrance exam, you can use "Math that gives you energy", "Mathematics that grows well", or "Chart formula". You need to do it. This time, all you have to do is acquire the mathematics necessary to understand machine learning, so it's okay if you understand the basic concepts properly. Doesn't it seem a lot easier when you think about it?

"Mathematics I Revised 8 Starting from the Beginning" (Takayuki Baba) "Mathematics A from the beginning A revision 8" (Takayuki Baba) "Mathematics II from the beginning revision 8" (Takayuki Baba) "Mathematics B Revised 8 Starting from the Beginning" (Takayuki Baba) "Mathematics III Part 1 Revised 7 from the beginning" (Takayuki Baba) "Mathematics from the beginning III Part2 Revised 7" (Takayuki Baba)

Massema University Mathematics "Campus Seminar" Series

Massema's College Mathematics Series. Ideally, if you can afford it, you should also study university mathematics. I feel that mathematical background is more important than programming skills in data science. For example, tuning parameters tends to waste time, but if you have a mathematical sense, it will go smoothly.

As an aside, Mr. Gochi, the founder of UTEC (Bunichi, University of Tokyo ⇨ enrolled in the Doctor of Engineering at the University of Tokyo after working at the Ministry of International Trade and Industry), also reviewed mathematics at Massema when he re-entered the research institute.

"I decided to take the exam in October of the year before last, and did my best in math after work and on holidays. I haven't done mathematics at university, so I couldn't do family services at all on Saturdays, Sundays, and summer vacations. I was lucky

Source: * Approaching Mr. Goji, the president of UTEC, who is investing in a venture from the University of Tokyo! !! *

"Linear Algebra Campus Seminar Revised 8" (Takayuki Baba) "Differential Integral Campus Seminar Revised 6" (Takayuki Baba) "Probability Statistics Campus Seminar Revised 6" (Takayuki Baba)

Recommended video-style teaching materials

We also recommend using videos, especially Youtube. Even if it is difficult to understand a book, it is often easy to understand a video. As an aside, it seems that the boy who passed the first grade of math test at the youngest age (4th grade) also studied math on Youtube. University graduate level Suken 1st grade, 9 years old is the youngest pass video as teaching material

"University Mathematics / Physics" Learned at Preparatory School

This is Youtube by Yobinori, a graduate student of the University of Tokyo and a former lecturer at a preparatory school. The more recommended by Aidemy, the easier it is to explain high-level mathematics. It's just like a lecture at a prep school, and it's a lot of fun.

Trigonometric functions starting from junior high school mathematics

Differential calculus starting from junior high school mathematics

Probability statistics starting from junior high school mathematics

Introduction to mathematics for AI (artificial intelligence) starting from junior high school mathematics

Linear Algebra (Playlist)

Stardy-Gento Kono's God Class

Youtube by an active University of Tokyo medical student. This is closer to taking an examination, but it will be helpful to see because you can trace the thinking circuit of "a person who is good at mathematics".

Study Plus

It is an educational app from Recruit. It's a study version of Netflix. You can receive unlimited videos by top-class prep school teachers for about 1000 yen a month. Especially the reputation of mathematics is good. For those who just can't think of self-study of books, Stasup is also a good option (in fact, there are many working users).

At the end

If you have the basic skills in mathematics, you don't need to do anything special. Especially if you can study properly at the level of university mathematics at Massema, you will be able to read mathematical formulas in machine learning and deep learning books and treatises.

Also, since providing a place for output is an effective learning technique, I think it is good to take a number test or a statistical test.

Reference material

"Book for understanding mathematics for artificial intelligence programming" Chainer Tutorial [Kikagaku style] Artificial intelligence / machine learning de-black box course --Beginner-

"Mathematics I Revised 8 Starting from the Beginning" (Takayuki Baba) "Mathematics A from the beginning A revision 8" (Takayuki Baba) "Mathematics II from the beginning revision 8" (Takayuki Baba) "Mathematics B Revised 8 Starting from the Beginning" (Takayuki Baba) "Mathematics III Part1 Revised 7 Starting from the Beginning" (Takayuki Baba) "Mathematics from the beginning III Part2 Revised 7" (Takayuki Baba)

"Linear Algebra Campus Seminar Revised 8" (Takayuki Baba) "Differential Integral Campus Seminar Revised 6" (Takayuki Baba) "Probability Statistics Campus Seminar Revised 6" (Takayuki Baba)

Recommended Posts

Summary of mathematical scope and learning resources required for machine learning and data science
[Summary of books and online courses used for programming and data science learning]
Summary of recommended APIs for artificial intelligence, machine learning, and AI
Data set for machine learning
Machine learning and mathematical optimization
Performance verification of data preprocessing for machine learning (numerical data) (Part 2)
Performance verification of data preprocessing for machine learning (numerical data) (Part 1)
Significance of machine learning and mini-batch learning
Machine learning ③ Summary of decision tree
Machine learning algorithm classification and implementation summary
[Machine learning] Summary and execution of model evaluation / indicators (w / Titanic dataset)
Quickly build a python environment for deep learning and data science (Windows)
Python: Preprocessing in machine learning: Handling of missing, outlier, and imbalanced data
Feature engineering for machine learning starting with the 1st Google Colaboratory --Binarization and discretization of count data
Study machine learning and computer science. Resource list
Numerai Tournament-Fusion of Traditional Quants and Machine Learning-
Summary of evaluation functions used in machine learning
I tried to process and transform the image and expand the data for machine learning
Align the number of samples between classes of data for machine learning with Python
Machine Learning with docker (40) with anaconda (40) "Hands-On Data Science and Python Machine Learning" By Frank Kane
Predicting offensive and defensive attributes from the Yu-Gi-Oh! Card name --Yu-Gi-Oh! Data Science 3. Machine Learning
[Recommended tagging for machine learning # 2] Extension of scraping script
List of Python libraries for data scientists and data engineers
Knowledge and study methods required for future data analysts
Python learning memo for machine learning by Chainer Chapters 1 and 2
Statistical hypothesis test of A/B test and required number of data
Summary of the basic flow of machine learning with Python
xgboost: A valid machine learning model for table data
Numerical summary of data
Machine learning tutorial summary
Machine learning ⑤ AdaBoost Summary
Summary for learning RAPIDS
[Recommended tagging for machine learning # 1] Scraping of Hatena blog articles
Made icrawler easier to use for machine learning data collection
Site summary where you can learn machine learning for free
Pre-processing in machine learning 3 Missing values, outliers, and imbalanced data
Summary of Hash (Dictionary) operation support for Ruby and Python
Summary of yum packages required for pip install on EC2
Japanese preprocessing for machine learning
Machine learning ② Naive Bayes Summary
Machine learning article summary (self-authored)
Importance of machine learning datasets
Machine learning ④ K-nearest neighbor Summary
Summary of articles posted so far (statistics / machine learning / mathematics etc.)
[Python machine learning] Recommendation of using Spyder for beginners (as of August 2020)
[Machine learning] Check the performance of the classifier with handwritten character data
Before the introduction to machine learning. ~ Technology required for machine learning other than machine learning ~
Summary of pages useful for studying the deep learning framework Chainer
[For beginners] Summary of suffering from kaggle's EDA and its struggle