[PYTHON] A story about a 40-year-old engineer manager passing "Deep Learning for ENGINEER"

What is Deep Learning for ENGINEER (E qualification)?

Please note that this article is current as of January 2020. Currently, the following are the official qualifications that prove AI skills in Japan.

--JDLA Deep Learning for GENERAL (G-test) --JDLA Deep Learning for ENGINEER (E qualification)

is.

As a position, the G test is a test that asks general education about AI-related technology. E qualification is a test that asks the skill to understand the theory about AI related technology and implement AI. It is an understanding. Please refer to the Japan Deep Learning Association (JDLA) site for details or the exact definition.

How to take the E qualification and JDLA certification program

So, from here on, I would like to focus on the E qualification. You have the opportunity to take the E qualification twice a year, which takes place in February and August. However, in order to take the E qualification, it is necessary to take the JDLA certification program and qualify for the exam, which is a high hurdle both in terms of skill and money. Since this test itself is all selective, it is not a test that requires practical ability. Therefore, if you have the courage to pay for the certification program and make an effort to complete the certification program, I think that you can reach about 80% of the way to obtain the E qualification.

Flow until E qualification examination

The E qualification requires a qualification to take the exam, so we will introduce the process leading up to the exam.

  1. Participate in the certification program briefing session. (Not required if already decided)
  2. Decide which certification program to take.
  3. Apply for a certification program. (Need the courage to pay)
  4. Take a course in the certification program.
  5. ** Pass the assignments given in the certification program course. ** (Requires knowledge of Python)
  6. ** Pass the basic ability confirmation test in the certification program. ** **
  7. ** Submit your own product assignments within the certification program. ** **
  8. ** Pass the completion exam within the certification program. ** (Question format is selectable, exam time is 180 minutes)
  9. Apply for this exam.
  10. Take this exam. (Question format is selectable, exam time is 120 minutes)

*** The parts in bold ** are the parts that must be achieved within the certification program.

Case Study

In my case, I took the AVILEN certification program, so I will explain it using that as an example. AVILEN is taken as an example here, but please look for a certification program that suits you.

1. Participate in the certification program briefing session.

Again, in order to take the E qualification, you must take the JDLA certification program and get a certificate of completion. Currently, there seem to be 12 types of certification programs approved by JDLA. (As of June 2019, there were 6 species.) I learned about AVILEN's briefing session from the guidance from TECH PLAY. The briefing itself was free. In the information about the briefing session, there was a description such as 100,000 yen and tens of thousands of yen, so I wondered if the briefing session also required a participation fee, but that is not the case. was.

2. Decide which certification program to take.

Participate in the briefing session and identify the following.

――How much is it? ――Which is better, classroom attendance or online course? -Isn't the frequency of the lectures reasonable? ――Is it possible that your learning support style will be dealt with immediately? ――Is the schedule from the end of all courses to the completion exam reasonable?

Amount of money

AVILEN costs 136,000 yen if the required course is online. The basic course for voluntary courses is 100,000 yen. The basic course was a style in which a link to a video of a past classroom lesson was sent to me and I learned by myself.

Do you go to the classroom? online?

I think it is better to go to the classroom even if you pay a slight difference if you can go there. Since I lived in a rural area, I had no choice but to take online courses.

Frequency of courses

I had this exam at the end of August. The certification program courses start in June and July, and I took the courses in July. There was a class every Sunday from July 7th (Sun) to August 11th (Sun) (6 times in total), and it was necessary to submit assignments for that class. Since the last class was on August 11th (Sunday), the deadline for submitting all assignments was practically August 13th (Tuesday), which was an overcrowded schedule. If the course starts in June, there is plenty of time for a month, so I think that was better.

Learning support

It was a style of Q & A support in Slack. I was able to answer the question accurately, but I was a little dissatisfied with the immediacy. In that respect as well, I think there is an advantage in going to the classroom.

Schedule until the completion exam

The deadline for completing the completion exam was 23:59:59 on Wednesday, August 14th. As with the above, I took the exam at the last minute because there was no day since the last course.

3. Apply for a certification program.

You just have the courage to pay. I paid 236,000 yen.

--Any basic course: 100,000 yen --Take required courses online: 136,000 yen

4. Take a course in the certification program.

I think that I will take the course about once a week. At AVILEN, one course lasted 4 hours. Depending on the time, it did not end in 4 hours, but it was extended by about 30 minutes, and the latter half of the lecture materials was quite rushing. Those who took the course in the classroom seemed to be asking questions after the course, so I think the end time was even later.

5. Pass the assignments given in the certification program course.

Programming tasks are imposed in each course. You will be asked to resubmit until you are doing the right thing. In the case of AVILEN, 6 tasks for all 6 courses were imposed. The programming language was all Python.

6. Pass the basic ability confirmation test in the certification program.

The subjects of the basic ability confirmation test are

--Python basics --Machine learning basics --Information theory

is. You can take the exam online at home. The question format is a selection type, and there is no time limit for the exam, but I think that the passing criteria were 80% or more correct answers or strict. (I'm sorry, I remember it.) Video links of past courses will be sent to you, so you can study by watching them. After self-study, you must pass the test for each subject before taking the completion exam. I wasn't asked anything more than what was explained in the course, so I was able to clear it unexpectedly. However, in information theory, entropy and such stories came up, and I had a hard time because I had almost no prerequisite knowledge. Linear algebra and statistics are at the level of high school to 1st and 2nd year of university, but there are no tricky questions like entrance exams. It's just a confirmation of the basics, so if you look at the course properly, it's pretty good.

7. Submit your own product assignments within the certification program.

Create some software that uses a neural network. I modified the handwriting recognition of "Deep Learning from scratch" and created a handwriting recognition program of 26 letters of the alphabet. Some of the other students were creating products of another dimension, such as using LSTMs to forecast stock prices.

8. Pass the completion exam within the certification program.

――Issues imposed in the weekly course --Self-made product issues --Basic ability confirmation test

If you pass all of these, you will be able to take the completion exam. The question format is optional and the exam time is 180 minutes. You can take the exam online at home. There were a total of 6 certification programs, but 1 course = 1 subject, which is the allocation of exam subjects, and the exam time for one subject was 30 minutes. (30 minutes x 6 subjects = 180 minutes) It is necessary to take 30 minutes x 6 subjects in a row, which is quite physically demanding. My butt hurts a lot after taking the exam. In addition, more than 60% of correct answers are required for each subject, and although it is an extreme example, even if one subject does not reach 60%, it will be rejected. You are only allowed to retake the exam once, so if possible, you should have enough time to take the first exam one week before the exam deadline. Even if you fail the first exam, you will have time to study for the retake.

9. Apply for the E qualification exam.

If you pass the completion exam, the organizer of the certification program (AVILEN in my case) will send you an application code. Enter the code at some point when you apply for this exam. In addition, an examination fee of 30,000 yen (excluding tax) is required.

10. Take the E qualification exam.

This exam must be taken at the designated exam venue. Many people take the exam in Tokyo, and it seems that the exam venue was full and it was not possible to book the exam. I was in a rural area, so I didn't have any trouble in that area. The examination venue is a computer school, and the designated computer will be used. Basically, I couldn't bring my personal belongings, and I was instructed to use the pen and memo paper provided on the side of the computer. I have the impression that machine learning-related questions were given in the exam questions for this exam. In programming, it seems that im2col, col2im, and the optimization algorithm of the gradient descent method were set. Unexpectedly, I think that the question related to reinforcement learning was also given. You should also check carefully which is the total value for each column and which is the total value for each row in numpy.sum (). As for the exam preparation, I mainly studied the materials distributed in the certification program, the completion exam questions (3 types), the examples of this exam, and the 1st and 2nd volumes of "Make from scratch". For the last week, I repeated the exam questions and the examples of this exam.

Reference book

-[Deep Learning](https://www.amazon.co.jp/ Deep Learning-Ian-Goodfellow/dp/4048930621/ref=sr_1_1?__mk_ja_JP=Katakana & keywords = Deep Learning & qid = 1580534278 & sr = 8-1) (Published Company: KADOKAWA) To be honest, I haven't learned much about this book, but since it is treated as a textbook in the certification program, it is used to refer to the necessary parts as appropriate.

-[Deep Learning from scratch](https://www.amazon.co.jp/ Deep-Learning from scratch --- The theory and implementation of deep learning learned from Python-Saito-Yasutake / dp / 4873117585 / ref = sr_1_1 ? __ mk_ja_JP = Katakana & keywords = Make from scratch & qid = 1580534435 & sr = 8-1) (Publisher: O'Reilly Japan) You should definitely buy this book. I read a lot and used it as a countermeasure for various issues. It was also super useful for understanding error back propagation. I feel like I spent 50% of my total study time on this book.

-[Deep Learning 2 from scratch](https://www.amazon.co.jp/ Deep-Learning from scratch-Natural language processing-Saito-Yasutake / dp / 4873118360 / ref = sr_1_2 ? __ mk_ja_JP = Katakana & keywords = Make from scratch & qid = 1580534435 & sr = 8-2) (Publisher: O'Reilly Japan) You should definitely buy this book as well. It is better to suppress forward and back propagation of LSTM and GRU, and it will help you to understand them. I studied natural language processing almost exclusively in this book.

--Certification program lecture materials This is not a book, but I used it when studying for this exam, so I have listed it. I think it's a good idea to check various calculation formulas and how to derive functions with explanations in the video.

--Certification program completion exam questions and explanatory materials (3 types each) This is also not a book, but I used it when studying for this exam, so I will list it. If you check the derivation methods of various calculation formulas and functions while solving the problems, it will take root quickly.

--Examples of this exam This is also not a book, but I used it for studying for this exam. It was distributed around the 4th course of the certification program.

Author's specifications before attending the certification program

――I was developing embedded software in C language. ――I bought Deep Learning from scratch immediately after its release (around October 2016), but I was frustrated by the forward propagation. ――Since I participated in several seminars related to object recognition, I knew somehow the mechanism of object recognition. --Since I had already obtained the G test, I knew the terms such as CNN and LSTM. --Knowledge of machine learning is almost zero. --Python is about to understand the basic grammar, and numpy and pandas are about to bite. ――What is information theory? ――Linear algebra is enough to understand matrix multiplication. What are eigenvalues and eigenvectors? ――I knew that statistics could calculate high school level probabilities, and that the formulas for variance and standard deviation were calculated. What's wrong with college-level stories such as Bayesian statistics?

Impressions after taking the E qualification exam

It is not natural that "a scout from GAFA immediately after getting the E qualification!" (Lol) However, it gave me confidence that I had cleared a good range of exams and a good number of assignments. It also proves that there is not a little knowledge about AI. I enjoyed the certification program class. I was very excited to learn new things from smart people. The start of the certification program was late and the schedule was very close, but fortunately in 2019, the Obon holiday was 9 consecutive holidays. During the 9 consecutive holidays, I was able to secure more than 10 hours of study time a day, which I think was a factor in my passing. I think I did my best, and the experience that led to the results became my greatest asset. If you are wondering whether to take the exam, please attend the certification program briefing session first.

Reference site

-Japan Deep Learning Association

Recommended Posts

A story about a 40-year-old engineer manager passing "Deep Learning for ENGINEER"
A story about predicting exchange rates with Deep Learning
A story about machine learning with Kyasuket
About data expansion processing for deep learning
A story about a student who does not know the machine learning machine learned machine learning (deep learning) for half a year
A story about simple machine learning using TensorFlow
A story about data analysis by machine learning
I installed Chainer, a framework for deep learning
A story about a Linux beginner passing LPIC101 in a week
A scene where GPU is useful for deep learning?
A story about trying to automate a chot when cooking for yourself
How about Anaconda for building a machine learning environment in Python?
I searched for a similar card of Hearthstone with Deep Learning
A refreshing story about Python's Slice
A sloppy story about Python's Slice
About Deep Learning (DNN) Project Management
A story about using Python's reduce
[AI] Deep Learning for Image Denoising
A story about automating online mahjong (Mahjong Soul) with OpenCV and machine learning
A story of a deep learning beginner trying to classify guitars on CNN
Quickly build a python environment for deep learning and data science (Windows)
Easy to try! A story about making a deep learning Othello and strengthening it until you beat yourself (Part 1)
A story about remodeling Lubuntu into a Chromebook
Make your own PC for deep learning
A story about Python pop and append
A story about a 503 error on Heroku open
Creating a development environment for machine learning
[Deep Learning from scratch] About hyperparameter optimization
A story about achieving a horse racing recovery rate of over 100% through machine learning
A story about a liberal arts programming amateur getting a Python 3 engineer certification basic exam
A story about cross-compiling a python package for AWS Lambda and deploying it serverless