AIの歴史・動向
人物
- アーサー・サミュエル
- Arthur Lee Samuel
- 機械学習の定義「明示的にプログラムしなくても学習する能力をコンピュータに与える研究分野」が有名。
- 機械学習の父。
- レイ・カーツワイル
- 「シンギュラリティは2045年に到来する」
- ヒューゴ・デ・ガリス
- シンギュラリティは21世紀後半に到来し、人工知能は人間の知能の1兆の1兆倍になると主張。
- イーロン・マスク
- シンギュラリティの到来に危機感を持ち、非営利のAI研究組織OpenAIを設立。
- オレン・エツィオーニ
- 「シンギュラリティの終末論的構想は馬鹿げている」
- ヴァーナー・ヴィンジ
- シンギュラリティを「機械が人間の役に立つふりをしなくなること」と定義。
- スティーブン・ホーキング
- 「AIの完成は人類の終焉を意味するかもしれない」
- ヨシュア・ベンジオ
- 観測データの説明要因をとらえることでき、また一見自明ではない共通点をとらえることができるものを「よい表現」とした。
- ディープラーニングの父。
- ジョン・サール
- 強いAI / 弱いAI という表現の提唱者。また「中国語の部屋」の提唱者。
AIブーム
- 第一次AIブーム
- 「推論と探索」による人工知能が台頭したが、チェスや迷路などのトイプロブレムに限られた。
- 第二次AIブーム
- 「エキスパートシステム」として専門家の知識を人工知能に移植しようとしたが、専門家の知識を定式化することは難しく、複雑な問題が解けるようにはならなかった。
- ナレッジエンジニアと呼ばれる専門の職業が生まれた。
- 第三次AIブーム
- 「深層学習(ディープラーニング)」がILSVRC画像コンペティションで高精度を誇り、脚光を浴びた。
- ILSVRC
- ImageNet Large Scale Visual Recognition Challenge
- ImageNetデータセットを用いた画像認識のコンペティション。
- ILSVRC2012:トロント大学ジェフリー・ヒントンが率いるチームのシステム「SuperVision」が、AlexNet(8層)で優勝、パラメータ数は6千万個ほど。
- ILSVRC2014:GoogLeNet(22層)がインセプションモジュールを搭載して優勝、オックスフォード大学のVGG16は準優勝。
- ILSVRC2015:Microsoft社のResNet(152層)が残差学習・スキップコネクションを搭載して優勝。
- ILSVRC2017:中国科学アカデミーのSENetがSqueeze-and-Excitationモデルを搭載して優勝。
- ELIZA
- 1966年に発表された自然言語処理プログラム。
- 簡単なルールベースによる心療法セラピストチャットボットだが、チューリングテストで30%の人間の審査員の判定を誤らせた。
- PARRY
- 偏執病的統合失調症患者をシミュレートする目的で作られたチャットボット。
- ELIZAとも会話し、その記録はRFC439・ICCC1972として残されている。
- ディープ・ブルー
- IBM社により開発されたチェスAI。
- 仕組みこそ「力任せの探索」であったが、1966年にチェスの世界チャンピオンを破り、話題になった。
- Tay
- Microsoft社が開発したおしゃべりボット。
- Twwiter上のユーザーから不適切な誘導を受け、不適切な言動を繰り返すようになり、即刻サービスが停止された。
- ローブナーコンテスト
- チューリングテストに合格する会話ソフトウェアを目指すコンテスト。1991年から開催されている。
定理・経験則・パラドックス
- フレーム問題
- 人間はなにか問題を解決する際、無意識にその問題に関連する範囲を抽出しているが、AIには難しい。
- 第三次AIブームではフレーム問題を打破できる強いAIに期待されている。
- バーニーおじさんのルール
- 学習時調整に必要なパラメータ数の10倍のデータが必要である、という経験則。
- ノーフリーランチ定理
- あらゆる問題に対して万能なアルゴリズムは存在しない、という定理。
- みにくいアヒルの子定理
- 機械学習における定式化によって「普通のアヒル」と「みにくいアヒル」の区別はできない、という定理。
- 仮定や事前知識がない場合には、分類性能が高くなるような“最良”の特徴表現も存在しない。
- モラベックのパラドックス
- 機械にとって、高度な推論より1才児レベルの知恵や運動スキルを身につけるほうが遥かに難しい、というパラドックス。
- シンボルグラウンディング問題
- 記号接地問題
- 人間は記号と実世界の意味を結び付けて言葉を理解している一方、AIでは必ずしも結び付いておらず、つまり言葉を理解しているわけではないという主張。
- 人間は「シマウマ」を見たことがなくても、「シマ」と「ウマ」という単語の意味を知っていれば、なんとなくどんなものか連想できるが、機械には難しい。
- AI効果
- 人工知能の原理を知ると「それは単純な自動化であって知能とは関係ない」と結論づけてしまう人間の心理。
- 身体性
- 知能が成立するためには身体が不可欠であるという考え方。
- 「外界と相互作用できる身体がないと概念は捉えられない」と考えること。
自動運転・ドローン
- SAE J3016
- 自動運転技術のレベルの定義。SAE Internationalという米国の団体が定めている。国内においては「官民ITS構想・ロードマップ2020」において自家用車が2025年までにレベル4に到達することを目指している。また、ホンダは2021年3月、自動運転レベル3の機能を搭載した新型LEGENDを発売した。
- レベル0:運転を人間がすべて行う(運転自動化なし)
- レベル1:自動化システムが人間を時々支援し、いくつかの運転タスクを実施することができる(運転支援)
- レベル2:自動化システムが運転タスクを実施することができる一方、人間が運転環境を監視する必要がある(部分運転自動化)
- レベル3:自動化システムが運転タスクを実施し、人間も必要に応じて制御を取り戻すことができる(条件付き運転自動化)
- レベル4:自動化システムが運転タスクを実施し、運転環境も監視する。ある環境・条件下のみ運行可能(高度運転自動化)
- レベル5:自動化システムは全ての運転タスクを実施することができる(完全運転自動化)
- 自動運転車の安全技術ガイドライン
- 国土交通省は自動運転車に関する初の安全基準を導入し、ドライバーがハンドルから65秒以上手を離すと手動運転に切り替える仕組みを搭載することを義務付けた。
- 作動状態記録装置
- 自動運行装置の作動状態の確認に必要な情報を記録する装置。道路運送車両法の改正により設置が義務付けられた。
- ドローン
- 国土交通大臣の許可が必要:空港上空と周辺、地面より150m以上の高度の空域、人口集中地区の上空
- 承認が必要:目視外飛行、夜間飛行、イベント会場上空での飛行、人や物との距離が30m未満での近距離飛行、危険物の輸送、物の投下
法令・政府方針・倫理
- 改正著作権法(30条の4)
- 「機械学習や深層学習のモデル作成のためであれば、著作物である生データ(文章、写真、静止画、動画など)を著作権者の承諾なく自由に記録や翻案ができる」ことが明記されている。また学習用データを第三者(例えば共同研究者)と共有したり、一般に販売したり、ネット上で公開したりすることも、一定の条件下では適法である。
- 不正競争防止法
- 改正により、営業秘密や著作物に該当しない「特定提供データ」も保護されることとなった。
- 人間中心のAI社会原則
- 2018年に内閣府によって制定された、AIをより良い形で社会実装し共有するための基本原則。社会(特に国などの立法・行政機関)が留意すべき原則をまとめたもの。基本理念は次の3つ。
- 人間の尊厳が尊重される社会(Dignity)
- 多様な背景を持つ人々が多様な幸せを追求できる社会(Diversity & Inclusion)
- 持続性ある社会(Sustainability)
- AI戦略2019
- 「人間中心のAI社会原則」において、Society5.0の実現を達成するために今後のAI利活用の環境整備・方策を示した戦略。
- 米国人工知能研究開発戦略計画
- National Artificial Intelligence R&D Strategic Plan
- AIにおけるリーダーシップの維持に関する大統領令をトランプ大統領が発出し、これを支援する目的で、大統領府の国家科学技術会議(NSTC)の人工知能特別委員会(Select Committee on Artificial Intelligence)がアップデートを発表した。
- 信頼性を備えたAIのための倫理ガイドライン
- Ethics guidelines for trustworthy AI
- 欧州委員会のAI高等専門家グループが2019年に発表。
- EAD
- Ethically Aligned Design、倫理的に調和された設計
- IEEEが作成した報告書。
- AIに対する恐怖や過度な期待を払拭すること、倫理的に調和や配慮された技術をつくることによってイノベーションを促進すること等のメッセージが示された。
- パートナーシップオンAI
- Partnership on AI、PAI
- Amazon・Google・Facebook・IBM・Microsoftの5社が共同で設立。AI技術のベストプラクティスを研究・形成し、AIとその社会的影響について議論するためのプラットフォームになることを目的としている。
- AppleやIntel、Sony、Salesforce、また電子フロンティア財団、国連児童基金などの非営利組織も加わった。
- AAAI
- Association for the Advancement of Artificial Intelligence、アメリカ人工知能学会
- AI技術を主題とする国際的な非営利の学術団体で、「思考と知性の根底にある機構を科学的に解明し、機械でそれを実現する」ことを使命とする。
- ELSI
- Ethical、Legal、Social、Implications / Issues、エルシー
- 倫理的・法的・社会的な課題。AI活用や医療研究の際に考慮すべき課題。
- エシカル・ウォッシュ
- Ethical Wash
- 倫理的消費を標榜しながら実際には倫理的消費に関連しない商品・サービスを行うこと。
- AI倫理委員会を組織する場合にも、実効性のない名ばかりの委員会とならないよう注意する必要がある。
- XAI
- Explainable AI、説明可能なAI
- アメリカ国防高等研究計画局(DARPA)による投資プログラムが発表されており、推論の根拠の可視化や文章化による説明が試みられている。
- LAWS
- Lethal Autonomous Weapon Systems、自立型致死性兵器
- 現段階では存在しないが専門家間で議論が続いている。
- 2017年2月、The Future of Life InstituteにおけるアシロマAI原則にて「AIによる軍拡競争は避けるべきである」と明示された。
- KAIST
- Korea Advanced Institute of Science and Technology
- 韓国の国立大学。
- 韓国の防衛関連企業ハンファシステムと共同で「国防人工知能融合研究センター」を設立し、人工知能を組み込んだ国防に関する研究を推進すると発表。これに対し世界中ののAI・ロボット研究者たちは“KAISTのような権威ある機関がAI兵器を開発し軍備競争を加速することは残念」と公開書簡で表明した。
情報・言語処理
- セマンティックウェブ
- 情報リソースに意味を付与することで、コンピュータで高度な意味処理を実現しようとすること。
- 意味ネットワーク
- is-a:Car → Vehicle、Ship → Vehicle
- part-of:Tire → Car、Tire → Bike
- instance-of:My-Car → Car
- function:Drive → Car
- LOD
- Linked Open Data
- ウェブ上でコンピュータ処理に適したデータを公開・共有するための手法。
- WikipediaをLOD化したDBpediaも作られている。
プラットフォーム・フレームワーク・ラッパー・データセット
- arXiv
- AI技術に関する研究論文の公開・閲覧ができるWebサイト。
- OpenAI Gym
- 自分で製作した強化学習用アルゴリズムを試験できるAIシミュレーションプラットフォーム。
- DistBelief
- 2012年に提案された分散並列技術で深層分散学習のフレームワーク名。
- Googleが開発し、Tensorflowの前身となった。
- Keras
- ケラス
- ディープラーニングに特化したTensorflowのラッパー。
- TPU
- Tensor Processing Unit
- 機械学習に特化したGoogleの自社開発プロセッサ。数万個のALU(Arithmetic Logic Units、演算装置)を備えている。
- GPGPU
- General-Purpose computing on Graphics Processing Units
- GPUの演算資源をグラフィック処理以外の汎用計算に応用する技術。
- PyCharm
- Pythonに特化した統合開発環境。
- JetBrainsが提供。
- CIFAR
- 一般物体認識のベンチマーク用データセット。
- 60,000枚(100種類×600枚)の画像データが含まれる。
- MNIST
- 数字認識のベンチマーク用データセット。
- 手書き数字画像60,000枚とテスト画像10,000枚に「0〜9」に正解ラベルが与えられたもの。
- 28ピクセル×28ピクセルのモノクロ画像として表現されている。
- Fashion-MNIST
- 衣類品画像のベンチマーク用データセット。
- 学習用の画像60,000枚とテスト画像10,000枚に、10種類のラベルが与えられたもの。
その他
- AlphaFold
- Alphabet傘下のDeepMindが開発したアルゴリズム。
- タンパク質構造予測のコンペティションCritical Assessment of protein Structure Prediction 13(CASP13)において史上最高精度で優勝した。
- レコメンデーションシステム
- 顧客の購買行動の促進のため、機械学習によってその顧客が好みそうな商品を推定し推薦するシステム。
- 協調ベースフィルタリング:ユーザーの購買履歴をもとにおすすめを提示
- 内容ベースフィルタリング:コンテンツベースフィルタリング、アイテムの特徴をもとにおすすめを提示
- センチメント分析
- 感情分析
- ブログやSNS上のテキストに込められた感情を分析すること。
- SoTA
- State of the Art
- もっとも高精度なアルゴリズム。
- STRIPS
- 自動計画(プラニング、ロボットの行動計画)に関する人工知能システム。
- 前提条件・行動・結果の3つの組み合わせで記述する。1971年にRichard FikesとNils Nilssonが開発した。
- DARQ
- アクセンチュアが「Accenture Technology Vision 2019」内で示したテクノロジートレンド。
- 分散型台帳技術(Distributed Ledger Technology:DLT)、人工知能(Artificial Intelligence:AI)、拡張現実(Extended Reality:XR)、および量子コンピューティング(Quantum Computing)を表す。
基礎数学
ライブラリ
- NumPy
- ナムパイ
- 線形代数用のライブラリ。
- scikit-learn
- サイキットラーン
- 機械学習用のライブラリ。
- SciPy
- サイパイ
- 確率統計用のライブラリ。
- seaborn
- シーボーン
- グラフを描くためのライブラリ。
統計
- 記述統計
- 代表値を計算したり傾向を分析したりし、手元のデータの分析を行うこと。
- 推計統計
- 手元のデータの背後にある母集団の性質を予測すること。
- 偏回帰係数
- 回帰分析において得られる回帰方程式の各説明変数の係数のこと。
- 偏相関係数
- 見かけ上の相関(疑似相関)が見られる場合に、他の変数の影響を除いて求める相関係数のこと。
- AIC
- Akaike’s Information Criteria、赤池の情報量規準
- 統計モデルの予測性能を観測値と理論値の差(残差)を用いて評価する。
- AIC = −2 × (最大対数尤度) + 2 × (パラメータの数)
- ベイズの定理
- 条件付き確率の公式。
- AのもとでBが起こる確率:P(Bi | A) = P(Bi) * P(A | Bi) / P(A)
精度・評価
- 正答率
- 全予測に対する正解率。
- 再現率
- recall
- 実際に正であるもののうち、正であると予測されたものの割合。
- 偽陽性を減らすことを重視したい場合に採用する。
- 適合率
- precision
- 正と予測したデータのうち、実際に正であるものの割合。精度。
- 偽陰性を減らすことを重視したい場合に採用する。
- F値
- 再現率と適合率の調和平均。
- 2 * 再現率 * 適合率 / (再現率 + 適合率)
- MAE
- 絶対値平均
- 大きな誤差を少なく見積もることができ、目的変数の外れ値に影響を受けにくい。
- RMSE
- 平均二乗誤差
- MARに比べて誤差を大きく見積もってしまう。
- 停留点
- 臨界点
- 局所最適解でも大域的最適解でもないが、勾配が0(関数の導関数が0)になる点。
- 鞍点は停留点の一つ。
- 鞍点
- ミニマックス点
- 停留点のうち極値を取らないもの。
- ある次元から見ると最小値であるが、別の次元から見ると最大値となるような点。
音声
- フーリエ変換
- 光や音のような波形データの周波数成分を抽出する解析に用いられる。
- 音声をフーリエ変換することで得られたスペクトルにはいくつかのピークが見られる。
- フォルマント周波数
- 声道で発生する複数の共鳴周波数に対応する周波数。
- メル尺度
- mel尺度
- 音高尺度の一種。
- メル尺度の差と人が感じる音高の差が同じになるという性質を持つ。人間が知覚する音声の周波数は実際の周波数とは比例関係にはないため、音声認識においてメル尺度が用いられることが多い。
- MFCC(メル周波数ケプストラム係数)はメル尺度を音声認識の特徴量として変換したもの。
- サンプリング定理
- 標本化定理、Sampling Theorem
- 音声データをアナログデジタル変換して標本化(サンプリング)を行う際、音声データの周波数の2倍を超える周波数でサンプリングをすれば完全復元が可能。
- 逆に、サンプリング周波数に対して1/2までなら再現が可能であり、サンプリング周波数の1/2の周波数のことをナイキスト周波数と呼ぶ。
その他
- カルマンフィルタ
- 状態空間モデルにおいて複数の不確実な情報からより正確な情報を推定する手法。
- カーナビゲーション等の位置更新アルゴリズムに用いられる。
- バイト単位
- ペタP、エクサE、ゼタZ、ヨタY
- IDCの調査によると、2017年の1年間に生成されたデジタルデータは23ZBであった。
機械学習
学習手法
- 教師あり学習
- 回帰:regression、線形回帰(単回帰、重回帰)、サポートベクター回帰
- 分類:classification、SVM、決定木、ランダムフォレスト、ロジスティック回帰、kNN法(k近傍法)
- 教師なし学習
- クラスタリング:k-means法
- 次元削減・次元圧縮:主成分分析
- 強化学習
- エージェントの目的は収益を最大化する方策を獲得すること。行動を選択し、それによって変化する状態の中で、最終的には最適な方策を獲得することを目指す。
- 方策反復法、価値反復法(Q学習、TD学習、SARSA)、モンテカルロ法など。
- SVM
- Support Vector Machine
- もともとは2クラス分類のアルゴリズムとして考案されたが、非常に性能が良く、多クラス分類や回帰問題(サポートベクター回帰)、異常検知にも応用されている。
- 「マージンの最大化」というコンセプトのもと、2クラスを線形分離する。
- スラック変数
- SVMにおいて、誤分類を許容しつつも、誤分類に対してはペナルティを科したく、評価関数にスラック変数を導入する。
- カーネル法
- SVMにおいて、高次元の空間にデータを写像し、高次元空間内で線形分離し、元の次元においては非線形の決定境界を得られるようにする手法。
- 膨大な計算量が必要となるが、この計算量を抑える数学的工夫を「カーネルトリック」と呼ぶ。
- ロジスティック回帰
- 線形回帰を分類問題に応用したアルゴリズム。
- 対数オッズ(log[p_i / (1 - p_i)]、p_iはデータがクラスiに属する確率)を線形回帰で予測し、ロジスティック関数(シグモイド関数)によってp_iの予測値を得る。
- 3種類以上の分類の際はソフトマックス関数を活性化関数に用いる。
- ロジット変換
- ロジスティック回帰において、確率p_iから対数オッズに変換すること。
- 対数オッズもまた0から1の値をとるため、正規化される。
- kNN法
- k Nearest Neighbor法
- 近い順にk個のデータを見て、多数決で所属クラスを決定する。クラス分類の代表的なアルゴリズム。
- 各クラスのデータ数に偏りがあると判定結果が不正確になる。
- k-means法
- k個のクラスタの中心をランダムに生成し、クラスタの中心を重心に移動させ、中心が変化しなくなるまで繰り返す。教師なし学習。
- 決定木
- 条件分岐を繰り返し、情報利得の最大化(=不純度の減少量の最大化)を実現することで、クラス分類や回帰を行うためのアルゴリズム。
- データのスケールを事前に揃えておく必要がなく、また特徴量を重要度順に並べられるため、分析結果の説明も容易である。
- ランダムフォレスト
- 複数の決定木を作成しクラス分類や回帰を行うためのアルゴリズム。教師あり学習の一種。
- 分類問題の場合は多数決を、回帰問題の場合は平均値を採用する。
- 過学習しやすいという決定木の欠点を解消した。
- バギングを用いる。
検証法・基礎集計
- 多重共線性
- multicollinearity、マルチコ
- 相関係数が高い特徴量の組を同時に説明変数に選ぶと予測がうまくいかなくなる現象。
- 特徴エンジニアリングにおいて、相関係数が1または-1に近い特徴量のペアを作らないように、うまく特徴量を取り除く。
- 線形分離可能
- 直線を使って完璧に2つのクラスに分類できる問題(2クラス分類)。パーセプトロンを使って解ける。
- 線形分離不可能な問題は、パーセプトロンを組み合わせた多層パーセプトロンを用いると解決できるようになる。
- 基礎集計
- 平均・分散を計算したり散布図行列や相関行列を算出したりし、データの傾向を事前に把握しておくこと。
- 正規化
- データを0から1に収まるようにスケーリングすること。
- 標準化
- 平均が0、分散が1になるように変換すること。
- 白色化
- 特徴量の相関関係を無効化するような線形変換を行い、標準化すること。
- 特徴量エンジニアリング
- モデルが認識しやすい特徴を作ること。
- one-hot-encoding、日付データの変換、多項式特徴量の生成など。
- one-hot-encoding
- カテゴリカル変数をたった一つの成分だけが1、残りの成分が0という形の特徴量に変換すること。
- LIMEやSHAP等のXAI(Explainable AI)であっても、one-hot-encodingは必須である。
- マッピング
- 順序を持つ文字列のカテゴリーデータについて、辞書型データに基づいてそれぞれの値に対応する数値に変化させる方法。
- アフィン変換
- 平行移動と線形変換を組み合わせた変換。平行移動・拡大縮小・回転・せん断が可能。
- データ拡張
- Data Augmentation、オーバーサンプリング、Oversampling
- データを水増ししてデータの不足を補うこと。
- SMOTE(Synthetic Minority Oversampling Technique)は分布の頻度が少数のクラスのデータ量を増やす。
- ホールドアウト法
- 教師データをすべて訓練に用いず、一部を「テストデータ」として分離しておき、残りの「訓練データ」を学習に用いること。
- テストデータ:未知データへの予測性能(汎化性能)を測るための教師データ
- 訓練データ:学習に用いる分の教師データ
- 交差検証
- クロスバリデーション
- データをいくつかに分割し、テストデータに用いるブロックを順に移動しながらホールドアウト法による検証を行い、その精度を平均する手法。
- 計算量は多くなるが、データ数が少ない場合にも信頼できる精度が得られる。
- グリッドサーチ
- ハイパーパラメータの各候補に対して交差検証で精度を測り、最も精度の高かったハイパーパラメータの組を採用するという手法。
- ステップワイズ法
- 重回帰分析において、有意な説明変数を1つずつ取り込んだり取り除いたりしながら、最終的に適合度の高いモデルを作成する手法。
- バリアンス
- 予測値の分散。バリアンスが大きければモデルは過学習を起こしている。
- バイアス
- 予測値の期待値と目的変数の期待値の差。この値が大きければモデルは未学習である。
- ノイズ
- データそのものに内容されている誤差。バリアンスやバイアスを小さくすることができても、ノイズを小さくすることはできない。
- アンサンブル学習
- 複数のモデルを作り、多数決(クラス分類)や平均(回帰)によって結果を採用する手法。バギング、ブースティング、スタッキングの3種類。
- バギングは各モデルを並列に学習させ、ブースティングは各モデルを直列に学習させる、と言える。一概にバギングの性能が高いわけではない。
- バギング
- Bootstrap Aggregating
- 学習データから復元抽出した複数のデータセットに対して、それぞれの弱学習器を構築・統合する学習手法。データセットに多様性をもたせることでモデルの予測値のバリアンスを下げる効果がある。
- ランダムフォレストはバギングを利用した代表的な決定木モデルである。
- ブートストラップ
- 復元抽出
- 重複を許して同じサイズのデータサンプルを抽出するサンプリング方式。バイアスを下げる効果がある。
- ブースティング
- 一つ前のモデルが誤った予測の重要度を高くし、次のモデルはその予測を外さないよう逐次更新していく学習方法。AdaBoost等。
- スタッキング
- モデルを積み上げ、バイアスとバリアンスをバランスよく調整する学習方法。
その他
- AutoML
- 高精度の危害学習モデルの構築を自動化するシステム。
- NAS(Neural Architecture Search)と呼ばれる最適化理論が使われており、方策勾配法といった強化学習のアーキテクチャを応用している。
- MAML
- Model-Agnostic Meta-Learning、マムル
- メタ学習(meta-learning、各タスクの学習プロセスを学習し汎用的な学習手法を得ること)の一種。
- 複数タスクで学習を行い、少量の学習データでテストを行う。バッチデータと全データに関しての大きく2段階のパラメータ更新を行う。
- マルチエージェント応用
- スケールアップ
- 強化学習における課題。2体のロボット同士で学習を開始させようとすると、お互いに初期状態であるタスクについての何も知識がない状態だと、学習過程の不安定化が見られること。
ディープラーニング
ディープラーニング概要
- ディープラーニング
- ILSVRCを契機に2010年代に入って脚光を浴びたが、アルゴリズム自体は1960年代には既に考案されていた。
- 層数を増やすと非常に複雑な関数も近似することができるが、次のような欠点を抱えている。
- 過学習を起こしやすい
- 調整するパラメータ数が多い
- 勾配消失問題が起こる
- また、確定的モデルと確率的モデルに分類される。
- 確定的モデル:深層信念ネットワークのような、多層パーセプトロン系の深層学習
- 確率的モデル:深層ボルツマンマシンのような、ボルツマンマシン系の統計的機械学習
- 勾配降下法
- SGD
- 損失関数の勾配を計算し勾配方向へ学習率に沿って進む手法。次のような応用手法に発展している。
- Momentum:速度と加速度により以前の勾配を残す
- NAG:Nesterov Accelerate Gradient、勾配の更新時に次のステップの近似値を適用する
- AdaGrad:勾配を2乗した値を蓄積し、学習率をパラメータに適用することで、過去に大きく動いたパラメータの学習率を小さくする
- RMSProp:指数移動平均を蓄積し、過去に大きく動いたパラメータの学習率も時間が経つと再度大きくする
- Adam:MomentumやAdaGrad、RMSPropの長所を合体させた手法で、勾配の平均と分散を推定し利用する
- 過学習
- 訓練誤差が小さいにも関わらず、汎化誤差が小さくならないこと。ディープラーニングでは特に過学習が起きやすい。
- 過学習を抑制する手法として、正則化やドロップアウトがある。
- 正則化
- 過学習(バリアンスの大きい状態)を防ぐため、パラメータやモデルに制約をかけること。
- L1正則化:LASSO、損失関数にL1ノルムを加え、スパースな解が得られるようにする。自動的に特徴量の選択が行われる。
- L2正則化:Ridge、荷重減衰(Weight Decay)。損失関数にL2ノルムを加えることで、パラメータのノルムにペナルティを課し、ノルムを小さく抑える。
- ドロップアウト
- 一定の割合のノードをランダムに消去して学習を行い、過学習を防ぐ手法。擬似的にバギングを実現する。
- 推論(評価時)は全てのノードを用いるため、出力には重みづけが必要。
- アーリーストッピング
- 早期終了
- 学習を途中で中断して過学習を防ぐこと。
- ノルムペナルティと同等の効果が得られる。
- 勾配消失問題
- 誤差の勾配を逆伝播する過程において、勾配の値が消失してしまい、入力層付近での学習が進まなくなる現象。
- 活性化関数が何度も作用することで勾配が小さくなりすぎてしまうことが原因のため、ReLUのような活性化関数を用いたり、スキップ接続(スキップコネクション)を導入したりすることで、勾配消失問題の回避が期待できる。
- 勾配爆発問題
- 勾配発散問題
- 勾配消失問題とは逆に、勾配が大きくなりすぎてアルゴリズムが発散してしまうこと。
- 勾配クリッピングによって勾配の上限値を定めておくことで、勾配爆発問題の回避が期待できる。
- 内部共変量シフト
- 入力の分布が学習途中で大きく変わってしまうこと。
- バッチ正規化により各層での出力を正規化することで、層が深くなっても入力の分布の変化を少なくできる。
- バッチ正規化
- DNNの各層において、活性化関数をかける前に伝播してきたデータを正規化する手法。
- 内部共変量シフトを防ぎ、過学習を抑制することができる。
- エポック
- 訓練データを学習に用いた回数。
- イテレーション
- 重みを更新した回数。
- オンライン学習
- 逐次学習、確率的勾配降下法
- 訓練データ1つに対して重みを1回更新する学習法。
- ミニバッチ学習
- ミニバッチに含まれるデータについて誤差の総和を計算し、その総和が小さくなるよう重みを更新する学習法。
- バッチ学習
- 最急降下法
- 訓練データすべてに対して誤差を計算し、その総和が小さくなるよう重みを1回更新する学習法。
- イテレーションとエポックが等しくなる。
- 蒸留
- Distillation
- 既に学習済みのモデルをそのまま単純なモデルに学習させること。小さくて軽量だが高精度なモデルを実現することができる。
- 新たにパラメータやネットワーク構造を設定する必要はない。
- 転移学習
- Transfer Learning
- 既に学習済みのモデルを別の領域の学習に利用すること。学習済みモデルを他のモデルに適用することができる。
- ファインチューニング
- Fine Tuning、統合学習
- 既に学習済みのモデルの一部を再利用して、新しいモデルを構築すること。
- 重みデータを一部再学習して微調整し、特徴量抽出機として利用することができる。
活性化関数
- ステップ関数
- f(u) = 1 (u>=0), 0 (u<0)
- 単純パーセプトロンを構成するが、u=0で微分できず実際には用いられない。
- シグモイド関数
- ロジスティックシグモイド関数
- 入力を正規化する性質を持つが、勾配消失問題を起こしやすい。
- 導関数の最大値は0.25。
- 重みの初期値にはXavierの初期値(前層のノード数をnとしたとき、平均0・標準偏差1/√nの正規分布を用いる)が良いとされている。
- ソフトマックス関数
- 出力を正規化して、確率として解釈する際に用いられる活性化関数。
- 分類問題で出力層付近で用いられる。
- ReLU
- Rectified Linear Unit、レル、ランプ関数、正規化線形関数
- 勾配消失問題が起きにくい活性化関数。入力が0以下の場合は出力が0、0より大きい場合は入力が出力と同じになり、正規化機能を持たない。双曲線正接関数(tanh、ハイパボリックタンジェント)に代わって活性化関数に用いられるようになった。
- 重みの初期値にはHeの初期値(前層のノード数をnとしたとき、平均0・標準偏差√(2/n)の正規分布を用いる)が良いとされている。
- Leaky ReLU
- ReLU関数の拡張関数。
- 入力が0以下のときもわずかに傾きをもつ。
オートエンコーダー・主成分分析
- 自己符号化器
- オートエンコーダー
- 入力層と出力層のノード数が同じで、中間層のノード数は入出力のノード数よりも少ない、砂時計型の構造を持つNN。入力側をエンコーダ、出力側をデコーダと呼ぶ。
- 出力を入力自身に近づけること(正解ラベルとして入力自身を用いること)を目指す。これにより中間層で情報を圧縮することができ、次元削減の効果が生まれる。音声処理の分野で非常に高い精度を記録している。
- 積層オートエンコーダー
- Stacked Autoencoder、SAE
- オートエンコーダーを何層もつなぎ合わせて構成したDNN。
- 初めに入力層に近い層から順に貪欲法(Greedy)で学習させる事前学習(Pre-training)を行い、最後にファインチューニングを行う。
- 主成分分析
- PCA、Principal Component Analysis
- 線形な次元削減の代表的手法の一つ。
- 寄与率を調べることで各成分の重要度を測ることができ、また主成分を調べることで各成分の意味を推測することができる。
- 活性化関数に恒等写像を用いた3層のオートエンコーダーと同様の結果を返す。
CNN
- CNN
- Convolutional Neural Network、畳み込みニューラルネットワーク
- 画像認識などの空間データに応用するために改良されたDNN。
- 画像全体に対して一定範囲の特徴量を抽出し、それを繰り返すことで、初めは単純な特徴を、より後の畳み込み層に行くにつれてより複雑な特徴を拾うことができる。
- 入力は左から右方向にのみ伝播する順伝播型で、音声認識や自然言語処理にも応用されている。
- 出力層に近い隠れ層の値をとることで次元削減の効果も得る。
- 入力画像は次の層を順に通る。
- 畳み込み層:積和演算+活性化関数により、特徴マップに変換する(畳み込み演算)
- プーリング層:さらに平均値や最大値を用いてプーリングを行い、さらに小さな画像に変換される(プーリング演算)
- 全結合層:①や②が何度か繰り返され、最後に出力値を得る
- 重み共有
- CNNの畳み込み層において、全ユニットで重みが同じになること。
- 有用な特徴量が画像の位置によって大きく変化しないようにする。
- 畳み込み層のパラメータ数は全結合層のパラメータ数と比べて減少するため、計算量が少なくなる。
- プーリング
- 画像内の物体の位置のズレに対する処理。
- 周りの平均値で圧縮する平均プーリング、周りの最大値で圧縮する最大プーリング、周りの値をp乗しその標準偏差をとるLpプーリングなどが存在する(p=1のときは平均プーリング、p=∞のときは最大プーリングと等価)。
- ストライド
- 畳み込み演算において、フィルタ(カーネル)を移動させる刻み。
- パディング
- 畳み込み演算において、画像の周囲に数ピクセル分値を付け足して画像サイズを大きくする処理のこと。
- ゼロパディングでは付け足し部分の値に0を使う。
- 特徴マップの幅 = (入力画像の幅 + パディング × 2 - フィルタの幅) / 2 + 1
セグメンテーション・物体検出
- セグメンテーション
- 画像中の物体をピクセルごとに領域予測やクラス分類すること。
- FCN(Fully Convolutional Network、完全畳み込みネットワーク)やFCNの改良版であるSegNetやU-Netが用いられる。
- 逆畳み込みによって「物体が何か」という出力から「物体がどこにあるか」という出力に変換している。
- セマンティックセグメンテーション:画像上の全ピクセルに対し「どのカテゴリーに属するか」についてクラス分類する。
- インスタンスセグメンテーション:「どのカテゴリーでどのインスタンスか」についてクラス分類する。全ピクセルにラベルが振られるわけではない。
- パノプティックセグメンテーション:セマンティック・セグメンテーションとインスタンス・セグメンテーションを組み合わせた手法。
- FCN
- Fully Convolutional Network、完全畳み込みネットワーク
- 全ての層が畳み込み層であるCNNで、入力画像の画素数だけ出力層が必要。セマンティックセグメンテーションに用いられているアルゴリズム。
- 全結合層であれば入力するマップのサイズは決まってしまうが、最終層を畳み込み層にすることでその制限が無くなる。
- U-Net
- セグメンテーションに用いられるFCNの一種。
- エンコーダ・デコーダ構造を採用していて、エンコーダ側で特徴マップを一定サイズにダウンサンプリングした後、対となるデコーダの特徴マップにアップサンプリングして連結する。
- 物体検出
- 画像中の物体やその位置を、短形の領域を用いて特定すること。
- R-CNNやYOLO、SSDが用いられる。
- R-CNN
- Region CNN
- セレクティブ・サーチ(Selective Search)によって初めにオブジェクト領域の候補を抽出し、領域候補の領域画像はCNNによって特徴量が計算され、その後SVMによってカテゴリの識別が行われる。
- Faster R-CNNやMask R-CNNなどに応用された。
- ROIプーリング
- 物体検出において、オブジェクト領域の候補(ROI、Region of Interest)に対し特徴量を抽出して、固定サイズに縮小してプーリングを行うこと。
- YOLO
- You Only Look Once
- あらかじめ画像全体をグリッド分割しておき、各領域ごとに物体のクラスとバウンディングボックス(bounding box)を求める物体検出アルゴリズム。
- CNNのアーキテクチャがシンプルになったため、超高速でリアルタイムで実行可能。
- OpenCVで実装可能。
- Bounding Boxの出力を出力層だけで行っている。
- SSD
- Single Short Detector
- 小さなフィルタサイズのCNNを特徴マップに適用する物体検出アルゴリズム。
- マルチスケール特徴マップを利用し、高精度の検出率を達成している。またYOLOよりも高速。
- 複数の層からBounding Boxの出力を行っている。
- EfficientNet
- 2019年5月にGoogle Brain社から発表された画像認識モデル。
- CNNにおける深さ・広さ・解像度(=入力画像の大きさ)をバランスよく調整できるよう、Compound Coefficient(複合係数)を導入した。これによりネットワーク構造がシンプルになり、パラメータは少なく、学習時間は短く済むため、転移学習にも向いている。
- HOG
- Histogram of Oriented Gradients
- 物体検出に用いられる特徴量の一種。局所的な輝度の勾配方向の強度分布を用いてセル単位でヒストグラム化し、ブロック単位で正規化する。
- 画像キャプション
- 画像を入力として与えると、出力として画像の内容を説明する短い文章を生成すること。
- CNNによって画像の特徴を抽出し、またLSTMで文章の特徴を抽出し、それらを結合させることで、画像の描写文を得ることができる。
- 画像ピラミッド
- もとの画像の解像度をどんどん小さくしていきをそれらを並べたもの。
- 縮小する過程でガウシアンぼかしを入れたものをガウシアンピラミッド、ガウシアンピラミッドにおいて解像度間の差を取ったものをラプラシアンピラミッドと呼ぶ。
- OpenCV
- 画像処理・画像解析に特化したオープンソースのライブラリ。
- 2006年当初はIntelが開発。2018年にはOpenCV 4.0がリリースされた。
- グレースケール化:3チャンネルのカラー情報をグレースケールに変換し、計算量を減らす
- 平滑化:ノイズを除去し、学習の精度を上げる
- ヒストグラム平坦化:画素値を全範囲にまんべんなく分布させ、画像のコントラストを改善する
- 局所コントラスト正規化:減算正規化や除算正規化により、濃淡の平均や分散を正規化する
- 特徴点抽出:画像の中で特徴的なポイントを抽出する、SIFT・SURF・FASTなどのアルゴリズムを用いる
RNN
- RNN
- Recurrent Neural Network、再帰型ニューラルネットワーク
- 内部に閉路(再帰構造)をもつNNで、過去の情報を保持しておくことができ、時系列データの解析や自然言語処理への応用に適している。
- 時系列方向に沿って誤差逆伝播を適用する通時的誤差逆伝播(BPTT、Back Propagation Through Time)が用いられる。
- LSTM
- Long Short-Term Memory
- RNNにおいて遠い過去の入力も現在の出力に反映できるようにする方法。勾配消失問題を解決する手法として提案された。時系列データの解析におけるデファクトスタンダードとなっている。
- セル(CEC、Constant Error Carousel、情報を記憶する構造)やゲート(input gate、output gate、forget gateの3つ)をそれぞれ最適化しなくてはならず、計算量を多く要する。忘却ゲート(forget gate)は1997年発表当時のオリジナルのモデルには含まれなかった。
- GRU
- Gated Recurrent Unit
- LSTMを簡略化して計算量を削減した手法。
- Memory Networks
- LSTM以上の長期記憶を実現し、国語の読解問題を解くことなどに応用できる。
- PassageとQuestionとAnswerのペアを学習させ、未知なるPassageとQuestionのペアを渡すと、そこからAnswerを返すことができる。
- 双方向RNN
- Bidirectional RNN、BiRNN
- LSTMを2つ組み合わせて、過去からと未来からの双方向で学習できるようにしたモデル。
- 教師強制
- Teacher forcing
- RNNの学習において1時刻前の正解データを現時点の入力として用いる手法。
- 教師データがあることで学習の収束が早くなる可能性があるが、過学習も起こしやすい。
自然言語処理
- 言語モデル
- 人間が用いている言語を、確率によって数学的に定義づけるモデル。
- 「こんにち→ひ」よりも「こんにち→は」のほうが出現確率が高い、等。
- NNによって近似されたニューラル言語モデルがよく用いられる。
- 形態素解析
- テキストデータを文法・単語に基づいて形態素に分割し、その形態素の品詞を判定する技術。
- 従来は音声認識に隠れマルコフモデル(HMM、Hidden Markov Model)が用いられていたが、現在ではディープラーニングに置き換えられ、飛躍的な精度向上が実現されている。
- 構文解析
- 形態素解析を基にして、その形態素間の構文的関係を解析すること。
- 含意関係解析
- 2つの文の間に含意関係が成立するかを判別すること。文1と文2が与えられ、文1が正しいとき、文2も正しいか否かを判定するタスク。
- 照応解析
- 代名詞などの指示対象や省略された名詞を推定・補完すること。
- 談話構造解析
- 文章中の文と文の関係や、話題の推移を明らかにすること。
- TF-IDF
- Term Frequency - Inverse Document Frequency
- 文章に含まれている単語の重要度を評価する手法。
- BoW
- Bag-of-Words
- 形態素解析を行ったデータをベクトルの形式に変換する手法。
- LDA
- Latent Dirichlt Allocation
- トピックを潜在変数として文中の単語からトピックを推定する機械学習手法。
- ディリクレ分布が用いられる。
- LSI
- Latent Semantic Indexing
- 文章ベクトルにおいて複数の文書に共通して現れる単語を解析することによって低次元の潜在意味空間を構成する方法。特異値分解が用いられる。
- 検索エンジン等で「車」と「自動車」を同じ意味として扱うための次元圧縮方法。
- word2vec
- 分散表現(単語埋め込み、可変長の単語を固定長のベクトルとして表現すること)により、単語動詞の近さや足し引きなどの演算を考慮できるようにする仕組み。
- 2013年にGoogle社によって開発された。
- 「周辺語の予測」というダミータスクを解くため、skip-gram法(Continuous Skip-Gram Model、スキップグラム、ある単語から周辺の単語を予測すること)やCBOW(Continuous Bow Model、周辺の単語からある単語を予測すること)が用いられる。
- seq2seq
- 系列変換モデル、機械翻訳に用いられる生成モデル。
- フリーテキストを入力としフリーテキストを出力する。
- エンコーダRNNとデコーダRNNを持つ。
- GNMT
- Google's Neural Machine Translation
- Googleが2016年に発表した自然言語処理モデル。Google翻訳に採用されていた。
- BERT
- Bidirectional Encoder Representations from Transformers
- Googleが2018年に発表した自然言語処理モデル。
- 双方向Transformer(bidirectional transformer)を採用していて、特徴的な事前学習により過去と未来の双方向からの文脈理解が可能になった。
- MLM:Masked Language Model、マスク言語モデル、文章の穴埋め問題を解くモデル
- NSP:Next Sentence Prediction、次文予測、2文が渡されたとき連続した文かどうかを判定するモデル
- Attention
- 注意機構
- BERTやTransformer等の自然言語処理で適用されるネットワークモデルで、効果的な文ベクトルを計算することができる。
- queryはkeyにより取得するmemoryを決定し、対応するvalueを取得する。
- XLNet
- 2019年6月にCarnegie Mellon大学とGoogle Brainの研究チームが発表された自然言語処理モデル。
- BERTと同じく双方向Transformerを用いつつ、MLMの代わりに単語の順番をバラバラにして学習する。
- GPT-3
- Generative Pretrained Transformer、文章生成言語モデル。OpenAIが開発。非常に高度なライティングが可能。
生成モデル
- GAN
- Generative Adversarial Network、敵対的生成ネットワーク
- イアン・グッドフェローにより考案され、生成ネットワークと識別ネットワークからなる教師なし学習手法。
- ヤン・ルカンは「GANは、機械学習において、この10年間で最もおそろしいアイデアである」と述べている。
- BigGAN-deep
- 最大512×512ピクセルの高解像度画像を条件付きで生成するモデル。歴史上最強のGANジェネレータと呼ばれている。
- 一方、DeepMind社はGANを使わず、VQ-VAEを使用した画像生成に取り組み成果を上げている。
- VAE
- Variational Autoencoder、変分自己符号化器・変分オートエンコーダー
- GANとともにディープラーニングによる生成モデル。
- オートエンコーダーの潜在変数に確率分布を導入し、平均と分散を表現するように学習する。
- Adversarial Example
- Adversarial Attack、Adversarial Perturbation
- 学習済みのモデルを欺くように人工的に作られたサンプル。
- 人の目には判別できないようなノイズを加えることで人為的に分類器の判断を誤らせてしまう。
深層強化学習
- 深層強化学習
- DNNを用いて行動価値関数の近似計算を行うアイデア。
- 特に、DeepMind社によって開発されたDQN(Deep Q-Network)が有名で、AlphaGoにも用いられた。価値ベース・方策ベース・モデルベースの全てのアプローチを取り入れたアルゴリズムはRainbowモデルと呼ばれる。
- 価値ベース:価値関数を最大化する。Q学習・TD学習・SARSA等が用いられる。任意の方策で探索できるが、行動空間が広いと学習が難しく、マシンパワーも必要。
- 方策ベース:方策関数を最大化する。Actor-Critic法・勾配降下法等が用いられる。行動空間が広くても学習できるが、モデル劣化後の復帰が難しい。
- モデルベース:A3C(Asynchronous Advantage Actor-Critic)など。
- REINFORCE
- 方策勾配にもとづく深層強化学習に用いられるアルゴリズム。
- 行動価値関数の値を即時報酬で近似する。
- SARSA
- State、Action、Reward、State、Action
- 深層強化学習に用いられるアルゴリズム。
- ε-greedy法に基づき一定の確率でランダムに行動し、それら一連の行動の結果から状態価値を学習する手法。Q学習が方策オフ型と呼ばれるのに対し、SARSAは方策オン型と呼ばれる。
- NAS
- Neural Architecture Search
- AutoMLの一種。CNNやRNNのアーキテクチャを方策勾配ベースの強化学習で探索し、最適化されたネットワークを実装する手法。
- Controller RNNの更新にはREINFORCEアルゴリズムが用いられる。
- NASNetやENAS等に応用されている。
- 表現学習
- データから低次元の特徴を獲得する学習。
- 一気通貫学習
- ロボティクス分野において、ロボットの一連の動作を1つのDNNで実現しようとする学習。
- ロボットが持つカメラ・マイク・圧力センサなどの様々なセンサ情報を組み合わせて処理することをマルチモーダル情報処理と呼ぶ。
その他
- t-SNE
- t-distributed Stochastic Neighbor Embedding、t分布型確率的近傍埋め込み
- データ視覚化・次元削減アルゴリズムの一つ。
- 「近さ」の指標を確率分布によって表現する。
- ベイズ最適化
- 有力なBlack-box関数最適化手法の1つ。
- ハイパーパラメータ最適化に利用され、グリッドサーチやランダムサーチと比較して効率よく優れた解が求められることが報告されているが、計算時間がかかる。
- インセプションモジュール
- Inceptionモジュール
- ILSVRC2014で優勝したGoogLeNetが採用していたモデル。
- 畳み込み層やプーリング層から構成される小さなネットワークをモジュールとして定義し、ネットワークを分岐させた並列構造を持つブロックを用いてサイズの異なる畳み込みを行った。
- WaveNet
- DeepMindが開発した音声合成・認識モデル。
- 音声合成(Speech Synthesis)と音声認識(Speech Recognition)の両方を行う。
- ネオコグニトロン
- Neocognitron
- 1980年代に福島邦彦によって提唱。CNNの原型となっている。
- 人間が持つ視覚野の神経細胞を模しており、特徴抽出を行う「S細胞層」と位置ズレを許容する「C細胞層」を交互に接続した多層構造となっている。
- 制限付きボルツマンマシン
- RBM、Restricted Boltzmann Machine
- 「可視層(入力層)」と「隠れ層」の2層からなるNNで、無向グラフで表現される確率モデル。
- FFNN
- Feed Forward Neural Network
- NNの分野で最初に考案され、入力ノード→中間ノード→出力ノードというように単一方向へのみ信号が伝播する順伝播型。
- 自然言語処理などに用いられていた。
- CapsNet
- カプセルネットワーク
- ジェフリー・ヒントンが開発。
- 特徴をスカラーではなくベクトルで捉える、新しい深層学習アルゴリズム。
- Reservoir Computing
- レザバー(リザバー)コンピューティング
- 物理の複雑系力学における時空間パターンを活用したモデル。RNNの学習手法として提案された。中間層にReservoir(溜め池)を採用することで、少量データによるリアルタイム学習が可能となった。
- Define-and-Run
- 静的にニューラルネットワークを構築する方法。
- ニューラルネットワークを構築してからデータを流す。TensorflowやCaffe、CNTK等が採用している。
- Define-by-Run
- 動的にニューラルネットワークを構築する方法。
- データを流しながらニューラルネットワークを構築する。ChainerやPyTorch等が採用している。
0 コメント