Coursera machine Learning参加断念

Coursera machine Learning参加断念

次のような理由でコース参加をあきらめた。
様々な基本知識の欠落、時期尚早。
英語力不足。
基本数学知識の欠落。
オブジェクト指向言語の未収得。
5ヶ年計画で目標はAIのリテラシーが分かればよい。
大仰にする必要なしの結論からだ。
これで5年かけて徐々に計画を進めるとの方針が決まった。

↑人気ブログランキングに参加しています。よろしければ1票を!

数学ソフトウェアパッケージOCTAVEを使ってみた

この言語は線形代数が得意で行列、複素数、三角関数など数学の問題を解くのに便利である。50年前を思い出しながら行列演算をやってみた。

数学ソフトウェアパッケージOCTAVEを使ってみた

online seminar「機械学習」(Stanford U. Andrew Ng先生)で使っているといわれる、OCTAVEを使ってみた。
この言語は線形代数が得意で行列、複素数、三角関数など数学の問題を解くのに便利である。
関数をプロットするのも得意でアイキャッチ画像を見ていただければわかると思う。
このソフトウェアはMATLABとほぼ互換性があるということだ。
インストールも簡単である。
最新Versionは4.4.1でCLIとGUI版両方を持っている。
50年前を思い出しながら行列演算をやってみた。
簡単にできた。

plotした関数

行列演算の様子


↑人気ブログランキングに参加しています。よろしければ1票を!

5-Year Plan revise up (ver3.0)

Microsoft wordの翻訳システムを使いました。ご了承ください。5-Year Plan revise up (ver3.0)

Microsoft wordの翻訳システムを使いました。ご了承ください。

5-Year Plan revise up (ver3.0)

Since Qiita’s article was on the CEO Tani, he was able to revitalize the five-year plan to become an AI engineer.
Thank you for the article.

layout: “post”
Title: “Five-year plan ver3.0”
date: “2018-12-31 16:28”

Minimum knowledge required for AI engineers
First,I saw the minimum knowledge required by AI engineers in six parts.
Here, the future When doing business as an AI engineer, be sure to understand the overall picture of the basic knowledge of the six content.

(1) Programming skills
– Python
– numpy、pandas、matplotlib, Scikit. Translation-Learn TensorFlow and keras

Especially in this It is good to be proficient in pandas.
This is a convenient library for data preprocessing, although data preprocessing is essential for machine learning.

(2) Mathematics
– Differential、Linear algebra, vectors, matrices, probabilities, etc.

(3) Knowledge of statistics
– Stdev, Variance, probability distribution, estimation, test, etc.

(4) Basic knowledge of machine learning

Supervised learning and unsupervised learning
pretreatment, feature design, learning and evaluation
Single regression, multiple regression analysis, least squares method, Perceptron, logistic regression
Decision tree, random forest, support vector machine, K-means
Implementation skills and knowledge of deep learning
scikit-learn
Knowledge of frameworks such as TensorFlow and Keras.
The flow to make a model that has been studied in Scikit-learn.
1. Data collection and preprocessing of data completion of missing values and removal of outliers.
2. Feature design (selection of feature quantity)
3. Model development (model selection and learning)
4. Model evaluation… cross test, evaluation by mixing matrix, etc.
(5) Knowledge of working with databases using SQL。
-Select, insert, UPDATE, Delete, where, like, limit, SUM, AVG, Max, GROUP by, having, order by, table join, view, subquery, case, and so on.

(6) Cloud Knowledge
-Knowledge of cloud infrastructure such as AWS and GCP and Azure.

Large Although it may seem that there are many other than six, it is recommended to squeeze it into two (1) and (4) first of all at once.
The reason is that the program is actually written and visible, making it easier to learn.
Because it is self-taught and it is frustrated when entering from the theory first.

The recommended way to study artificial intelligence by yourself
I introduced the necessary knowledge in the previous section, but how do I learn them?
In order to learn from (1) to (6), we recommend that you acquire knowledge in the following sequence.

Phase1 python Learn about machine learning programming and artificial intelligence.
Phase2 machine learning programming.
Phase3 Challenge to Kaggle.
Phase4 SQL, scraping and cloud technologies.
Phase5 Use machine learning skills to produce products.
Phase6 Teach (maybe I don’t think this).

I believe that learning from each phase is the most rewarding and enjoyable way to learn.

Phase In 1, we refer to the programming beginners.
If you are new to programming, come to the phase Please read through the first.

Phase2, based on what we actually learned in Phase 1, we will explain how to study machine learning programming.
Already If you are doing machine learning programming using Scikit-learn, you may skip it.

Phase3 describes how to learn practical programming through competitions like Kaggle. (I don’t think so either)

Phase4 In doing machine learning, retrieving data from the database is often done. SQL Knowledge is mandatory. In addition to SQL, this section introduces techniques such as scraping (data collection) and cloud technology. (First from Access)

Phase5 Use machine learning skills to get your product production. Those who reach this level often learn through the product.

Phase6 Teaching six people may clarify what you didn’t know. So it is also a good idea to teach your friends about machine learning and deepen your understanding.

Since then, I will explain how to tackle these in each of the six phases, while introducing the recommended books.

# Development Environment Construction
・Ipython, Python, atom settings on your PC
・Atom debugging with Python alone
・Copy and paste the Web practice problem in WSL and Emacs
・Design and develop a Web top page
・Under the top page (index.html) developed demo.py demo.html Demo.css demo.js
・each demoxx.py design, demoxx.html design, Representative .css design
Standardized module names
Create a module list

2. Git, GitHub configuration-selection of collaborators
・Learning GitHub (Binder stuff)

3. Document Planning
・Create a module list
・Python Program Journal Organization
・HTML Journal Organization
・JS Program and Journal Organization

4. Development plan

1. Python acquisition plan
2. Actual Practice
3. Python Programming (Command prompt and on WSL)
4. Debugging
5. Model Building
6. Ipyton Debug (Jupyternotebook on WSL) developed it under Atom Environment (NumPy, pandas Acquisition)

Ipython, Pyton, atom settings on PC

– Toshiba Dynabook Satellite B554/K use
-Documentation
-Test in development environment
– Blog up

# Git, GitHub configuration-selection of collaborators

-GitHub Learning
-Request for collaborators

# Document Plan formulation

– Five-year Plan
-One year schedule
-Three-year schedule
-Final Plan

# reading Plan

-Qiita document conning (in progress)
-Why make object-oriented (purchased)
-New Linux textbooks (purchased-read after referring to the actual machine)
-Everyone’s python (purchased-in-progress, early)
-Nikkei Linux (purchase)
-Making from scratch deep Learning-theory and implementation of learning in Python (pre-purchased)
-Access Learning (create Address Book and learn about MySQL query)
-Copy and paste in Qiita document study (in progress)
-(Programming (Python), Statistical machine learning, deep learning (deep Learning), Mathematics for machine learning, probability and statistics)
-Easy to learn mathematics for understanding machine learning
-Ipython Interactive Computing and Visualization Cookbook (purchased-last)
-Other

↑人気ブログランキングに参加しています。よろしければ1票を!

5ヶ年計画Revise up(ver3.0)

Qiitaに谷CEOの記事が載ったのでそれを参考にAIエンジニアになるための道程表をリバイズアップした。有用な記事、感謝いたします。

5ヶ年計画Revise up(ver3.0)

Qiitaに谷CEOの記事が載ったのでAIエンジニアになるための道程表(5ヶ年計画)をリバイズアップした。
有用な記事感謝いたします。

layout: “post”
title: “5ヶ年計画ver3.0”
date: “2018-12-18 13:38”

AIエンジニアに最低限必要な知識
まずは、AIエンジニアに最低限必要な知識を大きく6つに分けて見ました。
ここでは、将来AIエンジニアとして業務を行うにあたり、大きく分けて6つの内容の基礎知識の全体像を把握してください。

①プログラミングスキル
– Python
– numpy、pandas、matplotlib、scikit-learn、TensorFlowやkeras

この中で特にpandasを使いこなせると良いです。
機械学習を行う上で、データ前処理が必須なのですが、データ前処理を行う上で便利なライブラリです。

②数学
– 微分、線形代数、ベクトル、行列、確率など

③統計の知識
– 標準偏差、分散、確率分布、推定、検定などなど

④機械学習の基礎知識

教師あり学習と教師なし学習
前処理、特徴量設計、学習と評価
単回帰、重回帰分析、最小二乗法、パーセプトロン、ロジスティック回帰
決定木、ランダムフォレスト、サポートベクトルマシン、K-means
ディープラーニングの実装スキル及び知識
scikit-learn
TensorFlowやKerasなどのフレームワークの知識。
scikit-learnで学習済みモデルを作るまでの流れなど。
1.データの収集とデータの前処理欠損値の補完や外れ値の削除。
2.特徴量の設計(特徴量の選択)
3.モデル開発(モデルの選択と学習)
4.モデル評価・・・交差検定、混合行列で評価など。
⑤SQLを使ってデータベースを操作する知識。
– select、insert、update、delete、where、like、limit、sum、avg、max、group by、having、order by、テーブル結合、ビュー、サブクエリ、caseなどなど。

⓺クラウドの知識
– AWSやGCPやAzureなどのクラウドインフラ回りの知識。

大きく6つもあり以外と多いなと思われたかもしれませんが、一度に全てやるのではなく、まずは①と④の2つに絞ることをお勧めします。
理由は、実際にプログラムを書き、目に見える形にすることで継続して学びやすくなるからです。
はじめに理論から入ると独学だと挫折してしまうので。

人工知能を独学で勉強するオススメの方法
必要な知識は前の節で紹介しましたが、どのようにそれらを学べば良いのでしょうか。
①から⑥を学ぶ上で、以下のような順で知識を身につけていくことをお勧めしています。

フェーズ1 pythonによる機械学習プログラミングと人工知能概論を学ぶ。
フェーズ2 機械学習プログラミング。
フェーズ3 Kaggleに挑戦。
フェーズ4 SQL、スクレイピング、クラウドなどの技術も身につける。
フェーズ5 機械学習スキルを活用してプロダクト制作をする。
フェーズ6 教える(多分これはしないと思う)。

このフェーズごとに学んでいくことがもっとも自分自身に負荷をかけず、楽しく学ぶことができると考えています。

フェーズ1ではプログラミング初学者の方を指しております。
もし、プログラミングを初めてという方は是非フェーズ1から目を通してください。

フェーズ2では実際にフェーズ1で学んだ内容をベースに、機械学習プログラミングに関する勉強方法を説明して参ります。
既にscikit-learnを使った機械学習プログラミングを行なっている方は飛ばして頂いても構いません。

フェーズ3ではKaggleといったコンペティションを通じて実践的なプログラミングを学ぶ方法を記述しています。(これもしないと思います)

フェーズ4 機械学習をやる上で、データベースからデータを取り出すことは頻繁に行われますので、SQLの知識は必須です。ここでは、SQLの他にスクレイピング(データ収集用)、クラウドなどの技術の身につけ方を紹介します。(まずはAccessから)

フェーズ5 機械学習スキルを活用してプロダクト制作に取り掛かりましょう。このレベルまで到達した方は、プロダクトを通じて学ぶことが多いです。

フェーズ6 人に教えることで自分の分かっていなかったことが明確になることがあります。なので、友人などに機械学習を教えて自分の理解を深めることもよいでしょう。

以降、6つのフェーズごとに、どのようにこれらに取り組めば良いのか、お勧めの書籍などを紹介しながら説明していきます。

# 開発環境構築

1. PCにIpython、Python、Atom設定
・AtomではPython単体でデバッグ
・WSLとemacsでWebの練習問題をコピペで開発
・WEBのTopページをデザインおよび開発
・Topページ(index.html)の下でdemo.py demo.html demo.css demo.jsを開発
・各demoxx.pyデザイン、demoxx.htmlデザイン、代表.cssデザイン
・モジュール名を標準化
・モジュール一覧表を作成

2. Git、GitHub設定ー協力者選定
・GitHubを勉強(バインダーのもの)

3. ドキュメント計画策定
・モジュール一覧表を作成
・Pythonプログラム・ジャーナル整理
・HTMLジャーナル整理
・JSプログラム・ジャーナル整理

4. 開発計画

1. Python習得計画
2. 実機練習
3. Pythonプログラミング(コマンドプロンプトとWSL上で)
4. デバッグ
5. モデル構築
6. Ipytonデバッグ(WSL上でJupyternotebook)それをAtom環境下で開発(numpy,pandasの習得)

PCにIpython、Pyton、Atom設定

– Toshiba dynabook Satellite B554/K 使用
– ドキュメンテーション
– 開発環境下でテスト
– 逐一ブログアップ

# Git、GitHub設定ー協力者選定

– GiTHub学習
– 協力者要請

# ドキュメント計画策定

– 5ヶ年計画
– 1年間のスケジュール
– 3年間のスケジュール
– 最終計画

# 読書計画

– Qiita掲載中のドキュメント精読(仕掛中)
– オブジェクト指向で何故作るのか(購入済み)
– 新しいLinuxの教科書(購入済みー実機で参照したのち熟読)
– みんなのPython(購入済みー仕掛中、早めに)
– 日経Linux(購入)
– ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装(購入済みー熟読)
– Access学習(住所録作成・MySQL Queryを中心に学習)
– Qiitaでコピペしたドキュメント勉強(仕掛中)
– (プログラミング(Python)、統計的機械学習、深層学習(Deep Learning)、機械学習のための数学、確率・統計)
– やさしく学ぶ 機械学習を理解するための数学のきほん
– Ipython Interactive Computing and Visualization Cookbook(購入済みー最後に)
– その他

↑人気ブログランキングに参加しています。よろしければ1票を!

四則演算の他、余り、べき乗の計算を追加した

ブラウザーのアドレスフィールドから「+」の文字を入力するとoperatorとして認識されない。

四則演算の他余りべき乗の計算を追加した

ブラウザーのアドレスフィールドから「+」の文字を入力するとoperatorとして認識されなくて「Illeagal operator」となるため英字一文字の入力することにした。ついでに余りとべき乗も追加した。
a:add
s:subtract
m:multiply
d:divide
r:reminder
p:power
である。
アイキャッチ画像は10の2乗を計算しているところ。

↑人気ブログランキングに参加しています。よろしければ1票を!

ApacheとNginx(エンジンエックス)、どちらを使うべき?

負荷が高い場合や静的ページに同時アクセスされることが多い場合はNginx(エンジンエックス)を使うと良いでしょう。

ApacheとNginx(エンジンエックス)、どちらを使うべき? ApacheとNginxについて、どちらもシェアが高く信頼できるWebサーバーであることは間違いありません。 それでは結局のところ、どちらを使うべきなのでしょうか。 負荷が高い場合や静的ページに同時アクセスされることが多い場合はNginxを使うと良いでしょう。 反対に、負荷が高くなく同時アクセスが少ない場合や早期セットアップが必要な場合はApacheが良いでしょう。 Nginxは処理が早く、消費メモリが少ないという良い事ずくめですが、1つの処理が長すぎるとシステムコールキューにリクエストがたまってしまいパフォーマンスが低下してしまいます。 その為、動的処理や動画コンテンツの配信やデータベース処理等の重い処理をする場合にはApcheが良いとされています。 Nginxについてあとがき: NginxはApacheに引けを取らない、とてもパワフルなWebサーバーです。日本語での情報も増えてきましたし、開発にかかる工数も少ない部類に入ります。 インストールも難しくないので、気になった方はまずはダウンロードして使ってみてはいかがでしょうか?

いま話題のWebサーバー「Nginx」とは?

を参照させていただきました。

スキルセットのFlaskとは?

【Python】フレームワークFlaskの基本をマスター

を参照させていただきました。

↑人気ブログランキングに参加しています。よろしければ1票を!

AI(機械学習)の納品

検証とは、検証データに対する結果をみることではなく、仮運用をはじめた後に得られる結果を見ることである。

AI(機械学習)の納品

「検証とは、検証データに対する結果をみることではなく、仮運用をはじめた後に得られる結果を見ることである」
そのため、お客様と考えていくべき納品フローはこのようになります。

機械学習案件を納品するのは、そんなに簡単な話じゃないから気をつけて
を参照。

↑人気ブログランキングに参加しています。よろしければ1票を!

AI(機械学習)スキルセット

このうち既習のもの及び仕掛中のものはLinux,MySQL,HTML,CSS,JavaScript,Apache,Pythonである。ほかのものは5ヶ年計画には含まれていない。

AI(機械学習)スキルセット

機械学習によるシステム開発のスキルセットは次のようになると書いてあった。

スキルセットとしては、以下のようなものがあります。
• サーバーでの環境構築(LinuxやDocker等)
• データベース(MySQL)
• Webアプリケーション(Ruby on Rails, HTML, CSS, JavaScriptなど)
• Web API(Python)
• Cron(定期実行)
• Webサーバー(NginxやApache)
このうち既習のもの及び仕掛中のものは
Linux,MySQL,HTML,CSS,JavaScript,Apache,Pythonである。
ほかのものは5ヶ年計画には含まれていない。
スキルセットは以下のURLの記事を参照した。
機械学習案件を納品するのは、そんなに簡単な話じゃないから気をつけて
https://qiita.com/yoshizaki_kkgk/items/fa8b45918445bb3e6dc3

↑人気ブログランキングに参加しています。よろしければ1票を!

numpyを使ってAND条件を印書する

アイキャッチ画像はライブラリーnumpyを使ってAND条件を印書したところです。

numpyを使ってAND条件を印書する

numpyを使ってAND条件を印書する。

アイキャッチ画像はライブラリーnumpyを使ってAND条件を印書したところです。

ブーリアンのAND演算でそれぞれがどうなるかがハッキリ分かります。

↑人気ブログランキングに参加しています。よろしければ1票を!

白黒PNGファイルの呼び込み

「Deep Learning」の教科書よりの再掲だけど「else:」の「:」がなかったり私自身の間違いもあったので修正した。青みがかったり、黄色みがかったり「白黒」じゃないよね?

白黒PNGファイルの呼び込み

「Deep Learning」の教科書よりの再掲だけど「else:」の「:」がなかったり私自身の間違いもあったので修正した。
青みがかったり、黄色みがかったり「白黒」じゃないよね?
「Access」の勉強が進んでない、「手順」だけ述べているだけでそうする理由が書かれていない。
覚えにくいわけだよ!ゆっくりやろうっと!

↑人気ブログランキングに参加しています。よろしければ1票を!