学習すべき基礎技術を5つ順不同で並べる(まずは5つをピックアップ)
1.機械学習(Machine Learning)
コンピューターに大量のデータを読み込ませ、データ内に潜むパターンを学習させ
未知のデータを判断するためのルールを獲得しデータ解析を行う技術
コンピュータに試行錯誤を繰り返させ、アルゴリズムを自動で調整させ
正しい結果が出せるように徐々に近づけていく
3つの方式
・教師あり学習・・・問いに対する正解をあらかじめ用意して学習させる
・強化学習・・・・・問いに対する正解を返すのではなく
評価点を返すので試行錯誤し点数アップを図る
・教師なし学習・・・問いに対する正解も評価点も返さず
結果を判断し問いを分類する
似ているものを分類することで、どこに注目すれば
物事を識別できるかということを学習する
2.ニューラルネットワーク(Neural Networks)
脳の神経細胞の仕組みを数学的に表現する、機械学習の一種
画像認識、音声認識、自然言語処理などの分野で使われる
情報の伝わりやすさは神経細胞同士を結ぶ「伝達機構」の結合強度によって変化する
結合強度を「重み」と表現し、入力されたデータに対して重みを最適化していく
5つの種類
・ディープニューラルネットワーク(DNN:Deep Neural Network)
ニューラルネットワークを多層化したモデル
ディープラーニングに対応させて4層以上に層を深くしたもの
通常3層までなので4層以上に多層化する
・畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)
いくつかの個性的な層を持ち、主に画像認識に用いられる
データを学習することで入力画像から特徴量を抽出しそれらを区別する
「畳み込み層」や「プーリング層」と呼ばれる個性的な層を持つ
・再帰型ニューラルネットワーク(RNN:Recurrent Neural Network)
時系列データなどを扱うことができ、自然言語処理の分野で用いられる
順番に意味を把握しながら、前の単語や文章との関係を考える
中間層の演算結果を出力層に出力すると同時に、
同じ演算結果をもう一度自分自身(中間層)に入力して再演算を行う
中間層の演算結果をもう一度自分自身に代入することを繰り返す
同じ中間層が複数回使われることになり、
見かけ上、複数の中間層からなるニューラルネットワークに見える
・敵対的生成ネットワーク(GAN:Generative Adversarial Networks)
生成モデルの一種
データから特徴を学習することで、
実在しないデータを生成したり、
存在するデータの特徴に沿ってデータを変換する
データの真贋を見抜く「Discriminator」と、
データを生成する「Generator」によって構成され
両者のいたちごっこの繰り返しにより、データを作成する
自動着色アプリや画像を自動生成するAPIが公開されている
顔の画像データから、実際には存在しない人物の画像を作成する
・オートエンコーダ(自己符号化器:autoencoder)
生成モデルの一種
異常検知システム、ノイズ除去などに用いられる
入力層と出力層のデータが同じになるように処理が行われる
オートエンコーダをいくつも重ね合わせた構造がディープラーニング
入力したデータの次元数をいったん下げ、再び戻して出力する
入出力が一致するように各エッジの重みを調整していく
この学習を通して、
データの中から復元のために必要となる重要な情報だけを抽出する
それらから効率的に元のデータを生成するネットワークを形成する
前半部分(エンコーダ)は次元削減、特徴抽出の機能を有し
後半部分(デコーダ)は低次元の情報をソースとするデータ生成機能を有す
4つの種類
・積層オートエンコーダ(Stacked Autoencoder)
シンプルなオートエンコーダを多層化した構造
入力データはエンコーダにおいて段階的に次元を減らし、
デコーダで復元される
ニューラルネットの各層における学習を一層ずつ行って、
最後にすべて積み重ねる、という手順で構築する
積層オートエンコーダを事前学習に用いることはほぼ無い
・畳み込みオートエンコーダ(Convolutional Autoencoder)
エンコーダ、デコーダ部分に全結合層ではなく畳み込み層を使う
畳み込み層により空間的に意味のある特徴を抽出する
画像に対して用いられる
・変分オートエンコーダ(Variational Autoencoder)
生成モデル
N次元の潜在変数が、N次元正規分布に従うように学習する
正規分布という制約を設けることで
データの潜在空間上での分布に連続性が生じ、
似た潜在変数からは似たデータが生成される
・条件付き変分オートエンコーダ(Conditional Variational Autoencoder)
変分オートエンコーダを拡張したもの
指定したクラスのデータを生成できるようになっている
変分オートエンコーダでは
デコーダによるデータ生成の際、
潜在変数を指定することはできますが、
出力データのクラスを直接指定できない
条件付き変分オートエンコーダは
出力クラスを指定したうえで、
潜在変数も自由にコントロールすることができる
3.言語処理 (Natural Language Processing)
人間が使う自然コンピュータ言語を自然で処理するための技術
テキストの解析、機械翻訳、文書要約、質問応答などに利用される
4つの仕組み
・形態素解析
文章を「形態素」という単位ごとに分割し、
それぞれの形態素を品詞などの各種情報に振り分ける
※形態素・・・何らかの意味をもつ最小限の文字の集まりのこと
文章の中にある形態素の意味をデータとして抽出することができる
最小単位になった単語を、辞書などの情報と照らし合わせ、
それらの単語の品詞の種類、活用形の種類などを割り出す
・構文解析
単語同士の関係性から文の構造をいくつか推測する
文章の中で単語や字句で構成される文を、
文法にしたがって解釈していき、文の構造を確認した上で意味を調べる
・意味解析
推測された構文のうち正しい構文を1つに絞る
統計的な方法などを用いて単語同士の結びつきを見出したりして、
意味付けを行う
・文脈解析
複数の文について形態素解析と意味解析を実施し文同士の関係性を解析する
正しく解析するには、さまざまな領域の知識の学習が必要
4.コンピュータビジョン (Computer Vision)
デジタル画像を解析するための技術
画像認識、物体検出、セマンティックセグメンテーション、深層学習を組合せる
自動運転、監視カメラ、医療画像解析等の分野で利用されている
4つの領域
・画像セグメンテーション
画像をいくつかのオブジェクトに分割する
画像を「人」や「車」に分割する
自動車の自動運転で対象物との距離が認識される
・物体検出
画像内の特定の物体を識別する
製造業の不良品を見分ける外観検査
医療での画像の物体検知
・パターン検出
画像内に繰り返し現れる形状や色を認識する
産業用ロボットをラインの部品まで誘導する位置決め
・顔認識
人の顔を検出するだけでなく個人も特定できる
顔認証は目や鼻、口などの特徴点の位置を元に個人の照合を行う
顔認識技術は顔画像の加工や属性分析
顔認証技術は出退勤システム
5.ロボティクス (Robotics)
機械やロボットを制御するための技術
人工知能、センサー技術、モーター技術などを組み合わせて使用される
自律移動ロボット、産業用ロボット、介護ロボットなど
5つの技術
・制御理論
ロボットの動作を安定的かつ正確に制御する数学的な理論を開発する
・センサー技術
ロボットに搭載されるセンサーからの情報を解釈する技術
距離センサーやカメラ、LIDARなどのセンサー
・モーションプランニング
ロボットの動作を制御する技術
目的地までの最適な移動経路や、物体の掴み方や動き方などを計画する
・人工知能
ロボットの学習や意思決定能力を高めるために、
機械学習やニューラルネットワーク、深層学習が使用される
・メカトロニクス
機械工学、電気・電子工学、科学コンピュータなどの複合領域
ロボットの制御システムを設計・開発する
コメントを残す