線形代数とは

– 行列とベクトルの性質を調べる学問
– 線形空間と線形変換を中心とした理論
– 行列、行列式、連立一次方程式の理論を含む

行列とは何か
数字を四角に並べたもの。あ、少し思い出してきた。。
1 4 8
2 3 8
7 5 4

線形代数の応用
→ 画像処理、3次元データ処理
→ PageRank
→ 統計学
→ 量子力学

連立方程式と行列
2x + 4 = 7
x + 3y = 6
係数が行列になる
2 4 x = 7
1 3 y = 6
→ 行列を使った方程式を解くことは、連立方程式を解くことと同じ

ベクトル
数字が縦横のどちらにしか並んでいないものをベクトルという

行列
記号、実数、複素数などを縦、横、長方形に並べたもの
-4 4.3
-1 3.5
5.7 12
横の並びを行、縦の並びを列
3 x 3行列 などと言ったりする
行列を構成する要素一つ一つを成分と呼ぶ
以下のようにi行j列の成分を表すことがある
a11 a12 a13
a21 a22 a23
a31 a32 a33
抽象的な行列は
A = [aij]
1行しかない行列を行ベクトル、1列しかない行列を列ベクトル

ベクトルの大きさ
||a|| = √x^2 + y^2

線形変換
scale, rotate, reflect, shearなど
なるほど、ベクトルだとこういうことができるのね。

微分の計算式

微分の関数とは

limb→a f(b)-f(a)/(b-a)

f(x)を微分するとf'(x)になる

(X^n)’ = nx^n-1
(sin x)’ = cos x
(tan x)’ = 1/cos^2x
(e^x)’ = e^x

うむ、微分の理論はなんとなくわかってきたか。

機械学習に必要な数学

数学基礎
→ 変数、定数、1次式、2次式、関数、平方根、累乗、累乗根、指数関数、対数関数、自然対数、シグモイド関数、三角関数、絶対値とユークリッド距離、数列、要素と集合

微分
→ 変数の微小な変化に対応する、関数の変化の割合の極限を求めること
→ 関数の各点の傾き
線形代数
確率・統計

センサー技術

震度センサー
圧力・気圧センサー
電流センサー
雨量・水位センサー
風量センサー
マイクロホン
人感センサー
開閉センサー
CCD/CMOSイメージセンサー
二酸化炭素センサー
GPS
電子コンパス
湿度・温度センサー
ジャイロセンサー
照度センサー

機械学習の利用用途

識別
情報の判別・仕分け・検索
音声、画像、動画の意味理解
異常検知・予知

予測
数値予測
ニーズ・意図予測
マッチング

実行
表現生成
デザイン
行動の最適化
行動の自動化

GPUメーカー

大手GPUメーカー
– Nvidia
– Intel
– AMD

まずNvidia

やべーなこれ、日本は全く相手にされてないな。

What we need to see:

BS or MS in Computer Science or equivalent program from an accredited University / College
10+ years of hands-on experiences building software and/or scalable cloud services
Strong self-initiative, passion, interpersonal skills, and agility working with new technology
Hands-on development of high quality distributed system features and/or cloud scale services, and RESTful web services
Experience with cloud system infrastructure, cloud-scale software, Continuous Integration and Continuous Delivery (CI/CD)
Demonstrated skills in wide variety of languages including: Java and Python
Deep understanding of cloud design in the areas of virtualization and global infrastructure, distributed systems, load balancing and security
Track record of crafting well-designed solutions and delivering high-quality software on time

Intel

AMD
REQUIREMENTS:

Advanced programming skills in C for operating system kernel & systems development
Experience with the GNU toolchain
Proficient use of git
Experience building and submitting patches on a mailing list and in general collaborative open source development
Excellent understanding of operating systems concepts, data structures, the x86-64 architecture, and virtualization
Experience with low level debug tools as well as emulators and simulators
Experience with open source software development
Experience working with external software partners
Experience running, analyzing, and tuning system performance benchmarks
Strong analysis and problem solving skills
Proven interpersonal skills, technical and team leadership and collaboration
Excellent written and verbal communication skills
Programming skills with Python and Bash
Preferred experience with Jenkins for CI/CT.

やべーなこれ。。

Azureのmachine learning

Microsoftの機械学習はどんな感じでしょうか?

– Bach AI
– Bot Service
– Cognitive Services
– Machine Learning service workspaces
– Machine Learning Studio web services
– Machine Learning Studio workspaces
– Genomics accounts
– Machine Learning Studio web service plan

Machine Learning Studio web services
必要なデータ、フィルタ、計算モデル等のロジックをドラック&ドロップで配置する

ん、ちょっと待てよ
Mean Absolute Error
Root Mean Squared Error
Relative Absolute Error
Relative Squared Error
Coefficient of Determination

これは別に機械学習でもなんでもないように思うんだが。。

GCPの機械学習サービス

どんなものがあるか見てみましょう

データラベル付け
AIプラットフォーム
Natural Language
テーブル
Talent Solution
翻訳
Vision
Video Intelligence

うーん、tutorialでもGCPだと金がかかりそうだなー
その前に、tensor flowを理解しろ、って言ってるな。
https://cloud.google.com/ml-engine/docs/tensorflow/getting-started-training-prediction

なんかやること多すぎないか。。

AWSの機械学習サービス

ざっと見ただけでも色々ありそうだ

Amazon SageMaker:データサイエンティスト、機械学習エンジニア向け
Amazon Comprehend:自然言語処理
AWS DeepLens
Amazon Lex:会話型インターフェイス、チャットボット
Machine Learning:線形回帰、ロジスティック回帰、多項ロジスティック回帰
Amazon Polly:テキストを音声変換
Rekognition:画像や動画を用意するだけで検出
Amazon Transcribe:文字起こしサービス
Amazon Translate
Amazon Personalize:パーソナライズ、レコメンデーション
Amazon Forecast:時系列予想
Amazon Textract:書類からテキストの抽出
AWS DeepRacer:自律走行

1.予測のみ行うサービス:Transcribe, Polly
2.ユーザーは学習データのみ用意し、サービス側でモデルをトレーニング:Comprehend, Machine Learning
3.インフラを気にせずモデルのトレーニング/評価/デプロイ:SageMaker

1と2は機械学習の知識がなくても利用できる。3はインフラ管理が減る。
つまり、AWSで機械学習サービスをやるならsageMakerってところか。。

amazon recognitionはサービスへの導入が比較的イメージしやすいかも。使ってみたい。