Pyhton's Full Hechend Study Method (1) ... A confusion factor when machine learning beginners start studying Python

Anecdote that appears at the beginning of Dutch studies (Fulhechend)

It is said that this anecdote does not actually exist ... I think that the situation when a beginner who is not a programmer suddenly starts studying Python for machine learning is the same situation as when Genpaku Sugita and others translated the Dutch word Anatomische Tabell into Japanese and made a Kaitai Shinsho. I am.

I will write the reason and the full-hechend study method when studying python.

What is the full-hechend anecdote?

It appears at the beginning of Dutch studies on wikipedia. Quote there

I didn't understand the meaning of the word "full-hechend" in the sentence "the nose is a full-hechend thing in the face", and as a result of thinking from "If you sweep the garden, dust gathers and full-hechend" The process of inferring the meaning of "i" was used in education together with the education of "guessing the meaning without easily looking up a dictionary" in language education. [1]

What's wrong with studying Python for machine learning for beginners?

There are many problems, but the company has created a python machine learning education textbook for beginners. At that time, write down what you felt when you saw various textbooks, websites, and online courses.

1) Surprisingly, there are few that explain the flow of the program properly.

You can understand the flow of the program by reading all the books, but why don't you show it like this at first? ?? I) Load the required libraries (ʻimport) Ii) Read data with pandas Iii) Separate feature quantities and objective variables withpandas Iv) Usetrain_test_spilitto divide the data into training data and test data. V) Select the algorithm inscikit-learn to learn (fit) and predict (predict`) Ⅵ) Check the accuracy There is only one explanation of this kind of flow, which makes it much easier to understand, but surprisingly there is no such thing. In other words, it's not clear at first where and what to use. Summarizing this way, you can also understand the commands that must be remembered at the minimum necessary.

2) When I bought a book, the version of Python has already changed and it doesn't work.

If you put it in now, you'll put in the latest Python. This is confusing because the version is different from the book I refer to. Although the difference between Pyhton2 and Python3 is out of the question, Scikit-Learn has been slightly improved and changed. Beginners get confused if even one does not work. Be especially careful to borrow books at the library. Surprisingly old books remain in the library. So python books are expensive, but most beginners get dented if they look at the books they bought and don't work.

3) When I asked someone I knew, I was told that I should look on the internet, and I imitated it, but it didn't work.

If you ask someone you know, there is a lot of information on the Internet, so if you look at it, you can make a program! It is said, but beginners cannot program even if they look at the information on the net. Actually, this is the biggest problem, and I think that we will fall into the same situation as Genpaku Sugita and others. When Genpaku Sugita and others translated Anatomische Tabell, there was only a Dutch dictionary (Ranran dictionary). In other words, I had a hard time trying to translate a Dutch book I didn't understand using a Dutch dictionary. The anecdote here is Full Hechend.

If you replace this with a beginner's study of Python, you'll end up with something like this.

Information on the net (Qiita and blogs) is like an encyclopedia. Studying python for beginners is actually like being told to read English with reference to an English encyclopedia. For beginners, the first thing they need at this time is an English-Japanese dictionary.

Since there is no such thing as a python dictionary that is easily organized, I am confused by the huge amount of information and it is difficult to proceed. Also, if it doesn't work well, even if you read the information (encyclopedia) on the Internet, you can't easily reach the place you want to know.

4) If you study in an online course, you will get tired by the end because it will give you almost unnecessary information.

Probably necessary for programming, but beginners don't use tuples. I even look at the dictionary once in a while. Except for scikit-learn, I only need a list and a slice of the list, a part of pandas and a part of matplotlib, but the online course teaches various things endlessly, so I get tired.

5) There are various information on the net, and I don't know which one is correct.

Encyclopedias and Japanese dictionaries have the same basic contents no matter what you look at, but there are various information on the Internet, and beginners do not know which one to refer to. I was told that it would be good to install anaconda, and the person who installed anaconda just said that the installation is pip on another page, but those who do not understand do not know.

6) There is a big misunderstanding that if you understand python, you can understand machine learning.

The misunderstanding here is also great. In other words, many people do not understand that they must understand the theory of machine learning at the same time as python. Why separate learning data and test data? If you don't know, you can't understand how to separate the data with train_test_split. Well, this is a rudimentary beginning, so I don't think this is the case ... However, if you want to do standardization properly, or if you want to start doing it a little, you can't do correct calculations without studying the theory of machine learning in the first place.

7) Beginners think everyone is using windwos

The beginner's PC is windows. The smartphone is an iPhone. There are times when I think that there are only windows in the world, but in articles and books on the net, I write on the premise of linux or mac. This is not understood by beginners.

Workflow software

I wrote a lot, but at a big company, I was asked to consider artificial intelligence (machine learning), and I was forced to study python, but is it really necessary to do machine learning using python? You can use ordinary workflow software separately! Is there anyone in the company who calmly points out? Workflow software is also free. This is the cheapest way to get started, right? ..

KNIME Orange NNC There are many other things! !!

at the end

In (1), I first wrote about the stumbling blocks for beginners when studying with Python. In the next study method (2), I will write my full-hechend study method for those who still start doing python.

Recommended Posts

Pyhton's Full Hechend Study Method (1) ... A confusion factor when machine learning beginners start studying Python
Build a python machine learning study environment on macOS sierra
A beginner's summary of Python machine learning is super concise.
Machine learning summary by Python beginners
<For beginners> python library <For machine learning>
Python & Machine Learning Study Memo: Environment Preparation
I installed Python 3.5.1 to study machine learning
[Python] When an amateur starts machine learning
Python & Machine Learning Study Memo ③: Neural Network
Python & Machine Learning Study Memo ④: Machine Learning by Backpropagation
Python & Machine Learning Study Memo ⑥: Number Recognition
Machine learning beginners tried to make a horse racing prediction model with python
A memorandum of method often used in machine learning using scikit-learn (for beginners)
Recommended study order for machine learning / deep learning beginners
Python & Machine Learning Study Memo ②: Introduction of Library
[Note] Python, when starting machine learning / deep learning [Links]
Get a glimpse of machine learning in Python
Python & Machine Learning Study Memo ⑦: Stock Price Forecast
Build a Python machine learning environment with a container
Predicting the goal time of a full marathon with machine learning-③: Visualizing data with Python-