IT is IT.

空想イノベーション

Amazon RDSの自動化バックアップとDBスナップショット

期間内の特定時点から復旧を行った場合、新しいエンドポイントを持つ新しいDBインスタンスが生成される。

スポンサーリンク
 

ユーザやアプリケーションは、このエンドポイントに接続してRDSを利用することになる。

Amazon Web Services パターン別構築・運用ガイド  一番大切な知識と技術が身につく

Amazon Web Services パターン別構築・運用ガイド  一番大切な知識と技術が身につく

  • 作者: NRIネットコム株式会社,佐々木拓郎,林晋一郎,小西秀和,佐藤瞬
  • 出版社/メーカー: SBクリエイティブ
  • 発売日: 2015/03/25
  • メディア: Kindle版
  • この商品を含むブログを見る
なお、Amazon RDSの自動バックアップは、デフォルトで有効になっている。

また、DBインスタンス削除時には、自動バックアップ、手動スナップショットはそれぞれ保持されたままとなる。

VPCからインターネットに接続する方法

  1. サブネットを作成する
  2. インターネットゲートウェイにアタッチする
  3. カスタムルートテーブルを作成する
  4. セキュリティグループを更新する
  5. Elastic IPアドレスを追加する

スポンサーリンク
 

カスタムルートテーブルには、Destinationに「0.0.0.0/0」を設定するなどして、インターネットゲートウェイに適用する必要がある。 また、セキュリティグループの更新では、インバウンドトラフィックの一部を許可する必要がある。

徹底攻略 AWS認定 ソリューションアーキテクト ? アソシエイト教科書

徹底攻略 AWS認定 ソリューションアーキテクト ? アソシエイト教科書

  • 作者: ??部昭寛,宮?光平,菖蒲淳司,株式会社ソキウス・ジャパン
  • 出版社/メーカー: インプレス
  • 発売日: 2019/01/18
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログを見る

AWSでiSCSIテープデバイスへのバックアップを実現する方法

AWS Storage Gatewayを使用すればよい。

スポンサーリンク
 

AWS Storage Gatewayは、バックアップソフトと親和性の高いiSCSIテープデバイスとして扱うことができる。 保存先であるiSCSIイニシエーターの宛先をAWS Storage Gatewayに変更するだけで、AWSへのデータバックアップが可能となる。

AWS認定資格試験テキスト AWS認定 ソリューションアーキテクト-アソシエイト

AWS認定資格試験テキスト AWS認定 ソリューションアーキテクト-アソシエイト

  • 作者: NRIネットコム株式会社,佐々木拓郎,林晋一郎,金澤圭
  • 出版社/メーカー: SBクリエイティブ
  • 発売日: 2019/04/20
  • メディア: 単行本
  • この商品を含むブログを見る

情報セキュリティの定義3要素+4要素

f:id:itry:20190331105535j:plain
情報セキュリティについて、JIS Q 27000にて定義されている。

  • 機密性(Confidentiality)
    認可されていない個人、エンティティ又はプロセスに対して、情報を使用させず、また開示しない特性
    (暗号化や施錠などで情報を見られないように隠すなどの対策を施す)
  • 完全性(Integrity)
    正確さ、及び完全さの特性
    (Webページが改ざんされないようにサーバへのアクセスを制限するなどの対策を施す)
  • 可用性(Avalilability)
    認可されたエンティティが要求したときに、アクセス、及び使用が可能である特性
    (サーバが故障してデータが見られなくならないようサーバを二重化するなどの対策を施す)

スポンサーリンク
 

さらに、下記4特性についても情報セキュリティの要素に含めることがある。

  • 真正性(Authenticity)
    エンティティは、それが主張どおりであることを確実にする特性
  • 責任追跡性(Accountability)
    あるエンティティの動作が、その動作から動作主のエンティティまで一意に追跡できることを確実にする特性(JIS X 5004)
  • 否認防止(Non-Repudiation)
    主張された事象、又は処置の発生、及び、それを引き起こしたエンティティを証明する能力
  • 信頼性(Reliability)
    意図する行動と結果とが一貫しているという特性

情報セキュリティとは、上記のような特性を維持することをあらわす。

AI用語まとめ

人工知能とは

人工知能

  • Artifitial Intelligence
  • 1956年にアメリカで開催されたダートマス会議で、ジョン・マッカーシーが使った言葉
  • 持論・認識・判断など、人間と同じ処理能力を持つ機械
  • パターン処理、記号処理、知識の蓄積の順に研究が遍歴している

AI効果

  • 人工知能で何か新しいことが実現され、その原理がわかってしまうと、それは単純な自動化であり人工知能ではない、と結論付ける人間の心理
  • 文字認識技術(OCR)、検索エンジン、かな漢字変換システム、ロボット掃除機などがこれにあたる

エニアック

  • 1946年、アメリカのペンシルバニア大学で開発された計算機
  • 17,468本もの真空管が使われている

ダートマス会議

  • 1956年にアメリカで開催された
  • マーヴィン・ミンスキー、ジョン・マッカーシー、アレン・ニューウェル、ハーバード・サイモンなどが参加

ロジック・セオリスト

  • ダートマス会議でデモストレーションされた、世界初の人工知能プログラム

第一次AIブーム

  • 1950年代後半から1960年代
  • 推論・探索の時代
  • 英語-ロシア語の翻訳に注目が集まる
  • トイ・プロブレムに対する失望感によりブームが衰退

第二次AIブーム

  • 1980年代
  • エキスパートシステムがたくさん作られる
  • 日本では、第五世代コンピュータと呼ばれる大型プロジェクトが推進される
  • 知識を蓄積、管理する難しさからブームが衰退

第三次AIブーム

  • 2010年くらいから
  • ビッグデータを用いることで、コンピュータ自身が知識を獲得する機械学習が実用化された
  • 特徴量を人工知能自ら習得するディープラーニング(深層学習)が開発された

人口知能を巡る動向

探索木

  • 木のような構造(ツリー構造)
  • 特定のキーを特定するために使用される

幅優先探索

  • 最短距離でゴールにたどり着く解を見つけることができる
  • 多くのメモリを必要とする
  • 横型探索とも呼ばれている

深さ優先探索

  • 探索に時間がかかる場合がある
  • メモリはあまり必要ない
  • バックトラック法とも呼ばれている

プランニング

  • ロボットの行動計画として利用されている

STRIPS

  • Stanford Research Institute Problem Solver
  • 1971年、Richard Fikes と Nils Nilsson が開発した自動計画に関する人工知能の一種
  • 前提条件、行動、結果という3つで構成されるプランニング

SHRDLU

  • 1970年にスタンフォード大学のテリー・ウィノクラードによって開発されたシステム
  • プログラミング言語LispとPlannerを用いて記述されている
  • 積み木の世界に存在するさまざまな形状の積み木を動かすことができた

AlphaGo

  • DeepMind社によって開発されたコンピュータ囲碁プログラム
  • 2015年10月に、人間のプロ囲碁棋士をハンディキャップなしで破った初のコンピュータ囲碁プログラム
  • 2016年3月15日に、李世乭との五番勝負で3勝(最終的に4勝1敗)を挙げ、韓国棋院に(プロとしての)名誉九段を授与された
  • 2017年5月に、柯潔との三番勝負で3局全勝を挙げ、中国囲棋協会にプロの名誉九段を授与された
  • 行動の評価には畳み込みニューラルネットワークが用いられ、探索にはモンテカルロ木探索が用いられている

ヒューリスティックな知識

  • 探索に利用する経験的な知識をさす

Mini-Max法

  • 囲碁や将棋などのパズルゲームにおいて、自分の順番にスコアが最大で、相手の順番にスコアが最小になるような戦略をさす
  • 探索をできるだけ減らすために、αβ法が用いられる
  • 最大のスコアを探索する過程で、スコアが小さいノードが出現したら、その時点でノードを探索対象から除外する行為を、βカットと呼ぶ
  • 最小のスコアを探索する過程で、既に出現したスコアより大きいノードが出現したら、その先のノードを探索から除外する行為を、αカットと呼ぶ

モンテカルロ法

  • ゲームがある局面まで進んだところで、あらかじめ決められた方法で、ゲームの局面のスコアを評価する方法を放棄する
  • コンピュータが仮想プレーヤーを演じ、ランダムにゲームをシミュレーションを行い、ゲームを終局させる(プレイアウト)
  • プレイアウトを複数回実行し、最も勝率の高いかを計算する
  • カジノで有名なモナコのモンテカルロから名付けられた
  • ランダム法とも呼ばれる

人工無脳

  • チャットボットやおしゃべりボットをさす
  • 特定のルール、手順いんしたがって会話を機械的に行っているだけで、会話の内容は理解していない

イライザ

  • 1964年から1966年にかけて、ジョセフ・ワイゼンバウムによって開発された、人工無能の元祖
  • まるで人間と会話しているかのように錯覚することをイライザ効果と呼んでいる

エキスパートシステム

  • ある分野の知識を取り込み、その分野のエキスパートのように振る舞うプログラム
  • 1970年代に人工知能の研究者によって開発され、1980年代にわたって商業的に適用された

MYCIN

  • 初期(1970年代)のエキスパートシステムとして大きな影響力をもっていた、スタンフォード大学が開発したプログラム
  • 血液中のバクテリアの診断支援を行う、ルールベースのプログラム
  • 69%の確率で正しい処方を行うことができた(専門医は80%程度であったが、専門医でない医師よりは高い確率であった)
  • 後述のDENDRALから派生したプログラムである

DENDRAL

  • 1960年代に、スタンフォード大学のエドワード・ファイゲンバウムによって開発されたエキスパートシステム
  • 世界初のエキスパートシステムと言われている
  • 2つのプログラム Heuristic Dendral と Meta-Dendral から構成されている
  • 未知の有機化合物を特定する
  • 派生したプログラムとして、MYCIN、MOLGEN、MACSYMA、PROSPECTOR、XCON、STEAMER などがある

意味ネットワーク

  • 認知心理学における長期記憶の構造モデル
  • 概念をラベルのついたノードであらわし、概念間の関係を、ラベルのついたリンク(矢印)で結んだネットワーク
  • 関係性には「is-a」や「part-of」の関係がある
  • is-aは、継承の関係をあらわし、part-ofは属性(一部)をあらわす

Cycプロジェクト

  • すべての一般常識をコンピュータに取り込むプロジェクト
  • 1984年にMCC 社のダグラス・レナートによって開始され、現在も続いている
  • 2001年からは知識ベースの一部が OpenCyc として公開されている

オントロジー

  • 概念化の明示的な仕様として定義

ヘビーウェイトオントロジー

  • 構成要素や意味的関係の正当性について哲学的な考察が必要
  • 人間が関わる必要があり、多くの時間とコストがかかる
  • Cycプロジェクトもこれに該当する

ライトウェイトオントロジー

  • 完全に正しくなくても使えるものであればよい、という考え方に基づいている
  • ウェブデータを取り出して解析するウェブマイニングや、ビッグデータを解析して有用な知識を取り出すデータマイニングなどに利用されている

ワトソン

  • IBMが開発したロボット
  • 2011年にクイズ番組「ジョパディー」で歴代のチャンピオンと対戦して勝利
  • Question-Answering(質問応答)という研究分野の成果
  • ウィキペディアの情報をもとにライトウェイトオントロジーを生成して解答

東ロボくん

  • 東大合格をめざして2011年から2016年まで、国立情報学研究所が開発したロボット
  • 模試で偏差値57.8を記録したが、読解力に問題があり、東大合格は不可能として2016年に開発が凍結された

機械学習

  • 人工知能のプログラム自身が学習する仕組み
  • サンプルデータの数が多いほど望ましい学習結果が得られる傾向にある
  • 2000年以降、インターネット上のビッグデータと共に注目を集めるようになった
  • レコメンデーションエンジンや、スパムフィルターなどに活用されている

統計的自然言語処理

  • 複数の単語をひとまとまりにした単位で用意された膨大な量の対訳語(コーパス)をもとに、最も正解である確率が高い訳を選択する仕組み
  • 確率論的あるいは統計学的手法を使っている
  • 統計的自然言語処理の起源は、人工知能の中でもデータからの学習を研究する分野である機械学習やデータマイニングといった分野である

ニューラルネットワーク

  • 機械学習の一つで、人間の神経回路を真似することで学習を実現する
  • フランク・ローゼンブラットが1958年に提案した、単純パーセプトロンが、ニューラルネットワークの元祖と言われている
  • マービン・ミンスキーによって、特定の条件下の単純パーセプトロンでは、直線で分離できるような単純な問題(線形分類)しか解けないことが指摘される
  • 隠れ層の数、活性化関数、学習率などのハイパーパラメータが存在する
  • ハイパーパラメータのチューニング方法としては、パラメータの候補値を指定し、それらの組み合わせを調べるグリッドサーチなどがある
  • ハイパーパラメータを含め最適化問題とするベイズ最適化が効率的なチューニング方法として注目をあびている

ディープラーニング

  • ニューラルネットワークを多層にしたものがディープラーニング(深層学習)である
  • バックプロパゲーション(誤差逆伝播学習法)によって、直線で分離できるような単純な問題しか解けない、という問題を克服した
  • 2006年頃からジェフリー・ヒントンが牽引して研究が進められた
  • 音声・画像・自然言語を対象とする問題に対し、他の手法を圧倒する高い性能を示し、2010年代に普及した
  • 特徴表現学習を行う機械学習である
  • ニューラルネットワーク自身が、複数ステップのコンピュータプログラムを学習できる
  • ニューラルネットワークを多層化したものであり、観測データから本質的な情報である特徴量を自動的に抽出できる
  • 従来の機械学習と比べて、「学習が必要なパラメータ数が多い」「計算量が多い」「より複雑な関数を近似できる」という性質を持っている

End to End Learning

  • かつては、まず用意したデータをある手法を用いて加工し、それが入力値となり、別の手法を用いて処理を行いといった、ステップバイステップの学習が必要だったが、処理を複数回に分けて行う必要がなくすための方法論

バックプロパゲーション

  • 人工ニューロン(またはノード)で使われる活性化関数が可微分でなければならない

自己符号化器

  • オートエンコーダとも呼ばれている
  • 2006年にジェフリー・ヒントンらが提案した、次元圧縮のためのアルゴリズム
  • 入力したものと同じものを出力するように学習する
  • ニューラルネットワークによる教師なし学習の代表的な応用
  • 出力が入力に近づくようにニューラルネットを学習させる
  • 主に次元削減のために利用され、このときの隠れ層が入力の特徴を抽出した表現となる
  • 活性化関数に恒等写像を用いた場合の3層の自己符号化器は、主成分分析と同様の結果を返す
  • 自己符号化器の代表的な応用例として「ノイズ除去」「ニューラルネットの事前学習」「異常検知」などがある

主成分分析

  • 相関のある多数の変数から相関のない少数で全体のばらつきを最もよく表す主成分と呼ばれる変数を合成する多変量解析の一手法
  • データの次元を削減するために用いられる
  • 特徴量の線形結合からデータ内の分散が大きくなるような特徴量を得る手法

異常検知

  • 正常な行為がどのようなものかを学習し、それと大きく異なるものを識別する手法
  • SVMというアルゴリズムを基に、セキュリティシステムなどに使用されている

SuperVision

  • ILSVRC(Imagenet Large Scale Visual Recognition Challenge)で、2012年に優勝したトロント大学が開発したプログラム
  • ディープラーニングを利用したもので、前年までの画像認識エラー率26%から、15.3%という驚異的な結果であった

人工知能分野の問題

トイ・プロブレム

  • 迷路や数学の定理の証明と言った簡単な問題は解けても、現実世界に存在する複雑な問題は解けないという、人工知能が直面した問題

フレーム問題

  • 1969年にジョン・マッカーシーとパトリック・ヘイズが提唱した人工知能における重要な問題
  • 今しようとしていることに関係のあることがらだけを選び出すことが、実は非常に難しい、という問題
  • いまだに本質的な解決策がなく、人工知能研究の最大の難問とされている

チューリングテスト

  • 人工知能ができたかどうかを判定する方法
  • イギリスのアラン・チューリングが1950年に提唱した
  • 別の場所にいる人間がコンピュータと会話し、相手がコンピュータと見抜けなければコンピュータに知能があるものとする
  • 2014年6月7日、ロンドンのテストに「13歳の少年」の設定で参加したロシアのチャットボットであるユージーン・グーツマン(英語版)が、30%以上の確率で審査員らに人間と間違われて史上初めての「合格者」となった

ローブナーコンテスト

  • チューリングテストに合格する会話プログラムを目指す大会
  • 毎年開催されている

強いAI

  • アメリカの哲学者、ジョン・サールが1980年にMind, Brains, and Programsという論文で発表した言葉
  • 適切にプログラムされたコンピュータは人間が心を持つのと同じ意味で心を持ち、プログラムそれ自身が人間の認知の説明である、とする考え
  • ジョン・サール自身は、強いAIは実現不可能と考えていた
  • 中国語の部屋、という思考実験を提案し、チューリングテストに合格したからといって本当に知能があるかどうかはわからない、というもの
  • 著名な数学者であるロジャー・ペンローズも同様に、強いAIは実現できないと主張している

弱いAI

  • 強いAI同様、アメリカの哲学者、ジョン・サールが1980年にMind, Brains, and Programsという論文で発表した言葉
  • コンピュータは人間の心を持つ必要はなく、有用な道具であればよい、という考え

シンボルグラウンディング問題

  • スティーブン・春なっどにより議論された人工知能における問題
  • 記号(シンボル)とその対象がいかに結びつくか、という問題
  • 記号接地問題とも言う

身体性

  • 知能が成立するためには、身体が不可欠である、という考え方
  • 身体性に着目したアプローチ、とも呼ばれている

ルールベース機械翻訳

  • 1970年代後半に用いられた機械翻訳手法
  • 翻訳のための文法規則や辞書を主に手作業で整備する方式
  • ルールを作成した人間が想定しなかった入力文には対応できない、という欠点がある
  • 翻訳ルールの記述や見直しには膨大な手間がかかるため、効率も悪い

統計的機械翻訳

  • 1990年代以降、主流となった、統計的な手法を用いた機械翻訳
  • パラレルコーパスと呼ばれる複数の言語で文同士の対応が付いたコーパスを利用し、翻訳のルールを自動的に獲得し、各ルールの重要度を統計的に推定する
  • 各言語に翻訳された特許や、Webページのクローリングデータなどを利用する

ニューラル機械翻訳

  • 2016年11月に発表されたGoogle翻訳で利用されている
  • ディープラーニングを使用している
  • 人間が言葉を理解するのと同じような構造で訳文を出力できる
  • TOEIC900点以上の人間と同等の訳文が生成可能といわれている

特徴量

  • 注目すべきデータの特徴を量的にあらわしたもの
  • 特徴量は人間が選択するものであるが、機械学習自身が特徴量を発見する、特徴表現学習、というアプローチも存在する
  • ディープラーニングは、特徴表現学習を行う機械学習である
  • 特徴表現学習における特徴量は、入力データとは無関係で、与えられた問題を解くために必要な処理に役立つ情報である

リストワイズ法

  • 全ての欠損値が完全に生じている場合には、様々な手法を使ってこれに対処することができるが、欠損があるサンプルをそのまま削除してしまう手法
  • 欠損に偏りがあった場合には、データ全体の傾向を大きく変えてしまうことになるので使用する際には欠損に特定の偏りがないかを確認して使用することが肝要である

回帰補完

  • 欠損しているある特徴量と相関が強い他の特徴量が存在している場合にとる手法

表現学習

  • ディープラーニングを抽象化した概念で、画像、音、自然言語などの要素を、予測問題として解くことで分散表現(ベクトル)を得て、各々の要素を抽象化する手法
  • 特徴表現は、通常は 人間の知識によって定義されるが、それによって機械学習の性能が大きく異なってしまう
  • ディープラーニングは観測データの説明要因を捉え、人間の知識では気がつくことができない共通点を捉えることができるが、この共通点のことをよい表現という
  • ヨシュ ア・ベンジオ氏は良い表現に共通する、世界に関する多くの一般的な事前知識として、いくつかを提唱している
    • 複数の説明変数の存在
    • 時間的空間的一貫性
    • スパース性

シンギュラリティー

  • 技術点特異点と呼ばれている
  • レイ・カーツワイルによって主張された
  • 人工知能が十分に賢くなり、自分自身よりも賢い人工知能を作るようになった瞬間、無限に知能の高い存在を作る、という仮説
  • シンギュラリティーは2045年である、とレイ・カーツワイルによって主張されている
  • 人工知能が人間より賢くなるのは、2029年頃と予想されている
  • スティーブン・ホーキンス、イーロン・マスク、ビル・ゲイツなど、多くの著名人が、人工知能に対する懸念を唱えており、Googleも社内に倫理委員会を設置している
  • 日本では2014年に人工知能学会において、倫理委員会が設置されている

スポンサーリンク
 

機械学習の具体的手法

教師あり学習

  • 与えられたデータ(入力)をもとに、そのデータがどんなパターン(出力)になるのかを識別、予測する
  • 連続値(主に数値)を予測する回帰問題と、離散値(主にカテゴリーなど)を予測する分類問題がある

教師なし学習

  • 入力データそのものが持つ、構造、特徴を識別する
  • 出力データはない
  • クラスター分析、主成分分析、ベクトル量子化、自己組織化マップなどがある

線形回帰

  • 統計でも用いられる手法で、最もシンプルなモデルの一つ
  • データの分布があった場合、そのデータに最も当てはまる直線を考える、というもの

ラッソ回帰

  • 直線回帰に正則化項の概念を加えた回帰分析
  • 最小二乗法の式に正則化項(L1ノルム)を加え、その最小を求めることでモデル関数を発見する
  • 不要なパラメータ(次元・特徴量)を削ることができる
  • 過学習を起こしやすい

リッジ回帰

  • 直線回帰に正則化項の概念を加えた回帰分析
  • 最小二乗法の式に正則化項(L2ノルム)を加え、その最小を求めることでモデル関数を発見する
  • 過学習を抑えることができる

ロジスティック回帰

  • ベルヌーイ分布に従う変数の統計的回帰モデルの一種
  • 確率の回帰であり、統計学の分類に主に使われる
  • 医学や社会科学でもよく使われる
  • シグモイド関数という関数をモデルの出力に用いる
  • 2種類の分類だけでなく、もっと複数の分類を行う場合は、ソフトマックス関数を用いる

重回帰

  • 説明変数が2つ以上のモデル
  • 各項の係数パラメータを偏回帰係数と呼ぶ
  • モデルによって出力された値と実際の測定値の誤差を残差という

線形モデル

  • 説明変数を含む項の線形結合で、説明変数を含んだ数式の出力値は被説明変数と呼ばれる
  • 被説明変数が連続の値を取り扱う場合、回帰と呼ばれる

最小二乗法

  • モデルの予測値と実データのが最小になるような係数パラメータを求める方法
  • 符号を考えなくてよくなり、計算がしやすくなる
  • サンプル中に大きく外れた異常値が混じっている場合、この異常値が大きく引っ張られるので、異常値を考慮する必要がある

最尤推定法

  • ある係数パラメータが与えられたときに、モデルが実データを予測する確率(尤度)を最大化するような係数パラメータを求める方法

ランダムフォレスト

  • 2001年に Leo Breiman によって提案された
  • 分類、回帰、クラスタリングに用いられる
  • 決定木を用いる手法で、特徴量をランダムに選び出す
  • 全てのデータを使うのではなく、それぞれの決定木に対してランダムに一部のデータを取り出して学習を行うことを、ブートストラップサンプリングと呼ぶ
  • ランダムに複数の決定木を作成し、それぞれの結果の多数決によってモデルの最終的な出力を決定する
  • 複数のモデルで学習するアンサンブル学習を用いている

クラスタリング

  • 教師なし学習の一つで、未知の集合を、いくつかの集まりに分類させる手法
  • K-meansというアルゴリズムを使用して顧客の分類分けによるDM配信やレコメンドを行う

バギング

  • ブートストラップ・アグリゲーティングとも呼ぶ
  • 全体から一部のデータを用いて複数のモデルを用いて学習する方法
  • 統計的分類および回帰で使われる機械学習アルゴリズムの安定性と精度を改善するために設計された、機械学習アンサンブルメタアルゴリズムである
  • ランダムフォレストは、バギングの中で決定木を用いる手法という位置付け

ブースティング

  • 一部のデータを繰り返し抽出し、複数のモデルを学習させるアプローチ
  • 「一連の弱い学習機をまとめることで強い学習機を生成できるか?」という疑問に基づいている
  • 逐次的にモデルを作成するため、学習にかかる時間が多くなる
  • AdaBoostや勾配ブースティング、XgBoostが有名

サポートベクターマシーン

  • 高度な数学的理論に支えられた手法で、ディープラーニングが登場するまでは、機械学習において最も人気のあった手法の一つである
  • 各データ点との距離が最も最大となる(マージン最大化)ような境界線を求めることで、パターン分類を行う
  • サポートベクターマシンが優れた認識性能を発揮することができる理由は、未学習データに対して高い識別性能を得るための工夫があるためである
  • 扱うデータが高次元、データが線形分類できない、などの問題点がある
  • 高次元に写像するアプローチをとることで、問題点に対処している
  • 高次元の写像に用いる関数をカーネル関数と呼び、写像することをカーネルトリックと呼ぶ

単純パーセプトロン

  • 単純なニューラルネットワークのモデルで、複数の特徴量(入力)を受け取り、1つの出力を行う
  • 入力を受け取る部分である入力層と、出力する部分である出力層で表現される
  • 入力層における各ニューロンと、出力層における各ニューロンの間のつながりを、重みで表現する

多層パーセプトロン

  • 入力層と出力層の間に、隠れ層を追加したもので、入力と出力の関係性が、隠れ層に重みとして表現されるもの
  • 隠れ層は、入力と出力を対応づけるための関数のようなもの
  • 非線形分類も行うことができる
  • 学習のために誤差逆伝播法(バックプロパゲーション)と呼ばれる教師あり学習手法を利用する

シグモイド関数

  • 活性化関数の一つ
  • ニューラルネットワークにおいて、0から1の間をとるようにする場合に使われる関数
  • 微分の最大値は0.25となる
  • 重みの初期値を工夫するうえで、Xavier(シャビエル)の初期値を用いる
  • 正規化の機能を持つ
  • 中間層の活性化関数として一般的に利用される

活性化関数

  • ステップ関数(形式ニューロン)
  • 線形結合(単純パーセプトロン)
  • シグモイド関数
  • ソフトサイン
  • ソフトプラス
  • ReLU(ランプ関数)
  • 切断冪関数
  • 多項式
  • 絶対値
  • 動径基底関数
  • ウェーブレット
  • maxout

ステップ関数

  • 単純パーセプトロンの出力層で用いられる活性化関数

ソフトマックス関数

  • 出力層では出力の総和が1になるため確率的な解釈が可能になる
  • 多クラス分類で一般的に利用される

恒等関数

  • 回帰で一般的に利用される活性化関数

双曲線正接関数

  • 中間層の活性化関数として一般的に利用される

ReLU

  • 入力が0を超えていれば入力をそのまま出力に渡し、0未満であれば出力を0とする活性化関数

Maxout

  • 複数の線形関数の中での最大値を利用する活性化関数

損失関数

  • 回帰問題には平均二乗誤差関数を用いる
  • 分類問題には交差エントロピー誤差関数を用いる
  • 分布を直接学習する際にはKLダイバージェンスが用いられる
  • 損失関数にパラメータの二乗ノルムを加えるとL2正則化となる

誤差逆伝搬法

  • backpropagationと呼ばれている
  • 1986年にデビッド・ラメルハートらによって命名された
  • 予測値と、実際の値の誤差をネットワークにフィードバックするアルゴリズム
  • 人工ニューロン(または「ノード」)で使われる活性化関数が可微分でなければならない
  • 1980年代は、
    • 出力層における誤差を入力層に向けて伝播させる間に、誤差情報が徐々に拡散し、入力層に近い層では勾配の値が小さくなって学習がうまく進まないという問題
    • 層の数が多いニューラルネットワークの学習の目的関数は多くの極小値を持ち、適切な結合の重みの初期値の設定が難しかった

    などの理由で現在ほど多くの層を持った学習をすることはできなかった

k-means

  • k平均法とも呼ばれる
  • 教師なし学習の一つで、元のデータからグループ構造を見つけ出し、k個のグループ(クラスタ)に分類する手法
  • k-meansを用いた分析を、クラスタ分析と呼ぶ

k近傍法

  • 教師あり学習の一つ
  • 特徴空間における最も近い訓練例に基づいた分類の手法であり、パターン認識でよく使われる
  • 回帰分析にも使われる

主成分分析

  • Principal Component Analysis(PCA)とも呼ばれている
  • データの特徴量の関係性(相関)を分析することで、データの構造をつかむ手法
  • 相関をもつ多数の特徴量から、相関のない少数の特徴量(主成分)へ次元削片することを目的とする
  • 次元削減することで、学習にかかる時間の短縮や、データの可視化に役立てる

訓練データ

  • 機械学習を行ううえで、学習用に使用するデータ
  • 訓練データを更に分割したものを、検証データと呼ぶ

テストデータ

  • 機械学習を行ううえで、評価用に使用するデータ
  • 評価データとも呼ぶ
  • 学習に用いないデータを用意し、いくつかの学習モデルの評価を行うためのデータ

交差検証

  • データを、訓練データ、テストデータのように分割し、その一部をまず解析して、残る部分でその解析のテストを行い、解析自身の妥当性の検証・確認に当てる手法
  • 事前にデータを訓練データとテストデータを無作為に分割する方法を、ホールドアウト検証と呼ぶ
  • 訓練データ、検証データの分割を複数回行い、それぞれで学習、評価を行う方法を、k-分割交差検証と呼ぶ

混同行列

  • 真陽性(True Positive:TP)
  • 偽陽性(False Negative:PN)
  • 偽陽性(False Positive:FP)
  • 真陽性(True Negative:TN)

正解率

  • 全データ中、どれだけ予測が当たったかの割合
  • 正解率(accuracy)= \frac{TP+TN}{TP+TN+FP+FN}

適合率

  • 予測が正の中で、実際に正であったものの割合
  • 適合率(precision)= \frac{TP}{TP+FP}

再現率

  • 実際に正であるものの中で、正だと予測できた割合
  • 再現率(recall)= \frac{TP}{TP+FN}

F値

  • 適合率と再現率の調和平均
  • F値(F measure)= \frac{2 \times precision \times recall}{precision+recall}

オーバーフィッティング

  • 訓練データにのみ最適化されてしまい、テストデータに対する正解率が低くなってしまってい、汎化性能が失われている状態
  • 過学習とも呼ぶ

アンダーフィッティング

  • オーバーフィッティングの対策として正則化を行いすぎた結果、汎化性能が低下してしまっている状態

正則化

  • 機械学習においては過学習(オーバーフィッティング)を避けるために、訓練誤差ではなく汎化誤差を可能なかぎり小さくする手法
  • 学習の際に用いる式に項を追加することによって、取りうる重みの値の範囲を制限し、過度に重みは訓練データに対してのみ調整されるのを防ぐ
  • いくつかのパラメータをスパースにするLassoなどがある
  • ディープニューラルネットワークの学習で一般に用いられる正則化の手法に荷重減衰があり、誤差関数に重みのL2ノルムを加えることで重みの発散を抑えることができる

L1正則化

  • 一部のパラメータの値をゼロにすることで、特徴選択を行うことができるようになる
  • L1正則化を適用した手法を、ラッソ回帰と呼ぶ

L2正則化

  • パラメータの大きさに応じてゼロに近づけることで、汎化された滑らかなモデルを得ることができる
  • L2正則化を適用した手法を、リッジ回帰と呼ぶ
  • L1正則化、L2正則化の両方を適用した手法を、Elastic Netと呼ぶ
  • ニューラルネットワークは高い表現力を持つ反面、過学習をしやすいという性質を持つため、それを改善させるために、学習の際にパラメータのノルムにペナルティを課す

スパース正則化

  • L2ノルムの代わりにL1ノルムを用いるL1正則化
  • 重要でないパラメータを0に近づけることができる

蒸留

  • 大きなニューラルネットワークなどの入出力をより小さなネットワークに学習させる技術
  • すでに学習されているモデル(教師モデル)を利用して、より小さくシンプルなモデル(生徒モデル)を学習させる手法
  • 生徒モデルを単独で学習させる場合よりも過学習を緩和させることができる

ディープラーニングの概要

ディープラーニング

  • 隠れ層を増やしたニューラルネットワークをさし、ディープラーニング自体は、ニューラルネットワークを応用した手法である
  • 近年、ヒントンらによる多層ニューラルネットワークの学習の研究や、学習に必要な計算機の能力向上、および、Webの発達による訓練データ調達の容易化によって、十分学習させられるようになった
  • 音声・画像・自然言語を対象とする問題に対し、他の手法を圧倒する高い性能を示し、2010年代に普及した
  • ディープラーニングのアプローチは「説明要因の階層的構造」「タスク間の共通要因」「要因の依存の単純性」に着目している
  • 「説明要因の階層的構造」「タスク間の共通要因」「要因の依存の単純性」の事前知識を適切に活用できるなら、表現学習は必 ずしも層の数が多いニューラルネットワークの形をしていなくてもよいことになる

勾配消失問題

  • ディープニューラルネットワークにおいて、多くの隠れ層があると、入力層付近の隠れ層まで誤差逆伝播が到達できなくなってしまう問題 *勾配消失は、 誤差逆伝播法において、入力層に近づくにつれて、誤差が急速に小さくなってしまうことによって生じるとされている
  • あらかじめ良い重みの初期値を計算する事前学習や、活性化関数にReLUを利用するなどがある

オートエンコーダ

  • 自己符号化器とも呼ばれている
  • 教師なし学習の一つ
  • 機械学習において、ニューラルネットワークを使用した次元圧縮のためのアルゴリズムである
  • 2006年にトロント大学のジェフリー・ヒントンが提唱した手法
  • 3層ニューラルネットにおいて、入力層と出力層に同じデータを用いて教師あり学習させたものである
  • 可視層(入力層、出力層)と隠れ層の2層からなるネットワークである
  • 可視層(入力層)→隠れ層→可視層(出力層)の順に伝播し出力される
  • 隠れ層には入力の情報が圧縮されたものが反映されている
  • 入力層の次元よりも、隠れ層の次元を小さくしておく必要がある
  • 入力層から隠れ層への処理をエンコードと呼ぶ
  • 隠れ層から出力層への処理をデコードと呼ぶ

積層オートエンコーダ

  • オートエンコーダを順に学習させ積み重ねていく、という手法
  • 入力層に近い層から順番に学習させる、逐次的な方法で処理を行なっていく
  • オートエンコーダの隠れ層が、次のオートエンコーダの可視層(入力層)となる
  • 事前学習とファインチューニングによって構成されている
  • 単層の自己符号化器に分割し入力層から繰り返し学習させる層ごとの貪欲法を積層自己符号化器に適用することで、汎用的な自己符号化器の利用を可能とした

事前学習

  • オートエンコーダを順番に学習していく手順
  • 勾配消失問題に対処するために、あらかじめ良い重みの初期値を計算する手法

ファインチューニング

  • 積層オートエンコーダにおいて、逐次的に処理を行なったあとで、最後に仕上げとして一気に学習を行うこと

深層信念ネットワーク

  • deep belief networks(DBN)とも呼ばれている
  • 教師なし学習(オートエンコーダに相当する層)に制限付きボルツマンマシン(Restricted Boltzmann machine:RBM)という手法を用いる
  • 深層学習のモデルにおける、確定的モデル

One-Hotエンコーディング

  • 順序を持たない名義特徴量のカテゴリーデータについて有効
  • 各変数に対応したダミー変数を新たに作り出す

深層ボルツマシン

  • 深層学習のモデルにおける、確率的モデル

ムーアの法則

  • インテル社の創業者のひとりであるゴードン・ムーアが1965年に自らの論文上に示した
  • 「半導体の性能と集積は、18ヶ月ごとに2倍になる」という経験則に基づく法則

CPU

  • Central Processiong Unit
  • 演算処理装置で、様々なタスクを順に処理することに長けている

GPU

  • Graphics Processing Unit
  • 画像処理に関する演算に長けている
  • 映像や3DCGなど、同一画像に同じ演算を一挙に行う性質が求められるため、大規模な並列演算処理をこなすことができる
  • 機械学習においては、特性上、GPUの方が適している

GPGPU

  • General-Purpose computing on GPU
  • GPU自体は、画像演算向けに最適化されているため、画像以外の計算にも使えるように改良されたもの
  • NVIDIA社がGPGPUの開発をリードしている
  • 多くの機械学習ライブラリが、NVIDIA社製GPUをサポートしており、NVIDIA社製以外は未サポートというライブラリも多数存在する

TPU

  • Tensor Processing Unit
  • Google社が開発した、テンソル計算処理に最適化した演算処理装置

醜いアヒルの子ルール

  • 認知できる全ての客観的な特徴に基づくと全ての対象は同程度に類似している、つまり特徴を選択しなければ表現の類似度に基づく分類は不可能であることを示す考え方

バーニーおじさんのルール

  • 機械学習におけるモデルがもつパラメータの最適化において、モデルのパラメータ数の10倍のデータ数が必要、という目安

ディープラーニングの手法

tanh関数

  • 隠れ層の活性化関数の一つ
  • ハイパボリックタンジェント関数とも呼ぶ
  • 微分の最大値は1となり、シグモイド関数(0.25)に比べ勾配の消失が起きにくくなっている
  • ただし、最大が1であり1より小さくなるケースが大半であるため、勾配の消失は防ぎきることができない

ReLU関数

  • Rectified Linear Unit関数
  • 一般的にはこれはランプ関数と呼ばれている
  • xが0より大きい場合、微分値は常に最大値である1となり、ピーク値が1になるtanh関数より、更に勾配の消失が起きにくい
  • 重みの初期値を工夫するうえで、Heの初期値を用いる
  • 勾配消失問題に対処するための活性化関数

Leaky ReLU関数

  • ReLU関数の派生系
  • xが0より小さい場合に、わずかな傾きを持っているため、微分が0になることがない
  • ReLU関数よりも、勾配が消失しにくい

Parametric ReLU

  • Leaky ReLU関数のx<0時の傾きを学習によって最適化する手法

Randmized ReLU

  • Leaky ReLU関数のx<0時の傾きをランダムに試す手法

勾配降下法

  • 勾配に沿って降りていくことで解を探索する手法
  • 勾配は微分値を意味し、微分は接線の傾きを表す
  • ディープニューラルネットワークにおけるパラメータの最適化手法として、最急降下法(Gradient Descent)、確率的勾配降下法(Stochastic Gradient Descent - SDG)、バッチ勾配降下法、ミニバッチ(確率的)勾配降下法(Minibatch SGD - MSGD)などがある
  • 損失関数、コスト関数、誤差関数を最小化するための最適化法として、勾配降下法が利用されている
  • 勾配降下法にはパラメータの勾配を数値的に求めると、計算量が膨大になるという問題がある
  • パラメータの更新量を決める学習率の決定が、とても重要である
  • 谷での振動、プラトーへのトラップ、局所的最適解への収束などの問題がある
  • 以下の順序で実施される

    1. 重みとバイアスを初期化する
    2. データ(ミニバッチ)をネットワークに入力し出力を得る
    3. ネットワークの出力と正解ラベルとの誤差を計算する
    4. 誤差を減らすように重み(バイアス)を修正する
    5. 最適な重みやバイアスになるなるまで繰り返す

SGD

  • 損失関数の値をできるだけ小さくするパラメータを見つけるアルゴリズム
  • 対象の関数の形がある分布や方向に依存すると非効率な経路でパラメータを探索してしまい、学習に時間がかかってしまうというデメリットがある
  • 現在ではAdamどのアルゴリズムが使用されている

イテレーション

  • 重み更新に関わる単位
  • 重みが更新された回数
  • 一回のイテレーションに用いるサンプル数はバッチサイズと呼ばれる

エポック

  • 勾配降下法における数式で、それまでに何回繰り返し計算を行なったか、を表す数値

学習率

  • 勾配に沿って一度にどれだけ降りていくか、を決めるパラメータ
  • 学習率は人間が設定するもので、この設定値は最適解を得るうえで非常に重要なものである
  • 学習率が過度に小さいとコスト関数の高い局所的最適解から抜け出せなくなることがある
  • 大域的最適解に向かって収束している場合でも、学習率が大きいと、収束は速いがコスト関数の最終的な値が高くなる
  • 学習率を小さくすると収束は遅いが最終的にはより最適解に近いパラメータになるため、コスト関数は小さな値に収束する
  • 学習率の調整手法として、Adam、RMSprop、モーメンタム、などがある

局所最適解

  • 勾配降下法における、見せかけの最適解
  • 実際の最適解よりも先に、勾配がゼロを探索してしまうため、特に工夫をしないと勾配降下法では局所最適解の状態に陥ってしまう
  • 学習率の値を大きく設定することで防げるようになることがある
  • ただし、適切なタイミングで学習率の値を小さくしないと、最適解を超えて探索を続けてしまう、という状態に陥ってしまう

大域最適解

  • 本当の最適解(局所最適解の対語)

鞍点

  • 3次元において、ある次元から見れば極小であるものの、別の次元から見ると極大になってしまっている状態
  • どの方向に向かって勾配を進んでいるときに学習率を大きく、あるいは小さくするかを考慮することで、鞍点に陥る確率を減らすことができる

プラトー

  • 鞍点付近に陥り、そこから抜け出せずに停留状態にあること

アンサンブル学習

  • 複数のモデルの予測結果の平均を利用する

モーメンタム

  • 1990年代に提唱された手法で、最適化の進行方向に学習を加速させることで、学習の停滞を防ぐ、学習率の調整手法
  • 物理の慣性の考え方を適用した手法
  • 以前に適用した勾配の方向を現在のパラメータ更新にも影響させる手法
  • 同様の手法として、Adagrad、Adadelta、RMSprop、Adamなどがある
  • 現在では、RMSprop、Adamが用いられるケースが殆どである

Adagrad

  • 学習率をパラメータに適応させることで自動的に学習率を調整することができる手法
  • 勾配を2乗した値を蓄積し、すでに大きく更新されたパラメータほど更新量(学習率)を小さくする

RMSprop

  • Adagradにおける一度更新量が飽和した重みはもう更新されないという欠点を、指数移動平均を蓄積することにより解決する手法

Adam

  • 学習率をパラメータに適応させることで自動的に学習率を調整することができる手法

ドロップアウト

  • 学習の際に、ランダムにニューロンを除外することで、毎回形の異なるネットワークで学習を行う手法
  • 形の異なるネットワークを複数学習することで、オーバーフィッティングのリスクを回避する
  • ただし、完全にオーバーフィッティングを回避することはできない
  • アンサンブル学習を行なっている
  • ニューラルネットワークは高い表現力を持つ反面、過学習をしやすいという性質を持つため、それを改善させるために、学習の際に一部のノードを無効化する
  • ディープニューラルネットワークに対しては、ランダムに一定の割合のノードを削除して学習を行う

early stopping

  • 学習が進むにつれ、誤差関数の値が右肩あがりになってしまうが、その上がり始めをオーバーフィッティングの始まりと考え、その時点で学習をストップさせる、というアプローチ
  • どんなモデルにも適用できる
  • ジェフリー・ヒントンによって、Beautiful FREE LUNCH(ノーフリーランチ定理)と称されている
  • ノーフリーランチ定理:全てのタスクに対して常に他よりすぐれている万能的なアルゴリズムは存在しない、という考え方

正規化

  • 学習を行う前に、データのスケールを調整する処理
  • 方法はいくつかあるが、最も簡単な方法として、各特徴量を0から1の範囲に変換する処理が用いられている
  • 各特徴量を、その特徴量の最大値で割ることで変換が行える(画像では画素値の最大値である255で割ることで正規化が行える)

標準化

  • 各特徴量の平均を0、分散を1にし、特徴量を標準正規分布に従うように変換する処理
  • 機械学習とは入力のそれぞれの特徴量がどう動いたら、どう出力されるかを見ることなので、各特徴量の分散をそろえることで、特徴量の動きに対する感度が平等になる、という考え方

グレースケール

  • カラー画像を白黒画像に変換して計算量を削減する手法

白色化

  • 各特徴量を無相関化したうえで標準化する手法
  • 計算コストが非常に高いため、通常の標準化を用いるケースが一般的である

平滑化

  • 画像における細かいノイズの影響を除去する手法

ヒストグラム平均

  • 画素ごとの明るさをスケーリングする手法

バッチ正規化

  • 各層に伝わってきたデータを、各層において活性化関数をかける前に伝播してきたデータを正規化する手法
  • 正規化を行ううえでデータを調整するかは、ネットワーク自身が学習を行う
  • オーバーフィッティングしにくくなる特徴があげられる
  • ニューラルネットワークは高い表現力を持つ反面、過学習をしやすいという性質を持つため、それを改善させるために、学習の際に一部の層の出力を正規化する
  • 内部共変量シフトを防ぐために出力値の分布の偏りを抑制するバッチ正規化が2015年に提案されている

局所コントラスト正規化

  • 画像処理の分野において、減算正規化と除算正規化の処理を行うための前処理
  • OpenCVなどの、画像処理に特化したライブラリで行うことができる

畳み込みニューラルネットワーク

  • Convolutional Neural Network(CNN)
  • 順伝播型人工ディープニューラルネットワークの一種
  • 画像や動画認識に広く使われているモデルで、画像をそのまま2次元で入力することができる
  • 画像・動画認識やレコメンダシステム、自然言語処理に応用されている
  • 人間が持つ視覚野の神経細胞の2つの動き(単純型細胞:S細胞、複雑型細胞:C細胞)を模すアプローチをとる
  • 単純型細胞は、画像の濃淡のパターンを検出する
  • 複雑型細胞は、物体の位置が変わっても同じ物体であることを認識する
  • 通常のニューラルネットワーク同様、誤差逆伝播法を用いられることが多い
  • 画像データを用いた場合、畳み込み層では、出力画像のサイズを調整するために元の画像の周りを固定の値で埋めるパディングを行う

物体検出

  • 対象物がどこにあるかをボックスに切り分けて、対象物を推定するタスク
  • 物体検出で有名なアルゴリズムは、2014年に考案されたR-CNN、2015に考案されたFaster R-CNN、2016年に 考案されたYOLOで、全てのアルゴリCNNの技術が内部で使用されている

物体セグメンテーション

  • 対象物体と背景をピクセルごとに詳細に切り分けて、そのピクセルごとが示す意味を推定するタスク

プーリング層

  • 畳み込み層の出力を圧縮するプーリングを行うものとして「最大プーリング」「平均プーリング」「Lpプーリング」がある
  • プーリングの逆操作として、アンプーリング層がある

ネオコグニトロン

  • 1980年代に福島邦彦によって提唱された階層的、多層化された人工ニューラルネットワーク
  • S細胞、C細胞の2つの動きを最初に組み込んだモデルで、S細胞層とC細胞層を交互に複数組み合わせた構造になっている
  • 手書き文字認識やその他のパターン認識の課題に用いられており、畳み込みニューラルネットワークの発想の元となっている
  • 微分(勾配計算)を行い、add-if silentと呼ばれる学習方法を用いる

LeNet

  • 1998年にヤン・ルカンによって考案された畳み込みニューラルネットワークのモデル
  • 初めて多層CNNに誤差逆伝播法を適用した手法である
  • 畳み込み層とプーリング層(サブサンプリング層)の2種類の層を交互に複数組み合わせた構造
  • 構造上はネオコグニトロンと同等で、S細胞が畳み込み層、C細胞がプーリング層に対応する
  • 微分(勾配計算)ではなく、誤差逆伝播法を用いる

畳み込み

  • カーネルと呼ばれるフィルタを用いて、画像から特徴を抽出する操作のこと
  • 通常、フィルタは画像のサイズよりも小さい
  • フィルタを画像の左上から順に重ねていき、画像とフィルタの値をそれぞれかけ合わせたものの総和を求める処理を行う
  • 位置のズレに強いモデルができる

特徴マップ

  • 畳み込みによって生成される2次元データ

プーリング

  • ダウンサンプリング、サブサンプリングとも呼ばれている
  • 画像サイズを決められたルールに従って演算を行い、小さくする
  • 画像の特徴マップの最大値を抽出して新しいダウンサンプリングを抽出する方法を、maxプーリングと呼ぶ
  • 画像の特徴マップの平均値を抽出して新しいダウンサンプリングを抽出する方法を、avgプーリングと呼ぶ

全結合層

  • 畳み込みニューラルネットワークにおいて、畳み込みとプーリングを繰り返した後に、隠れ層、出力層へと接続する層
  • 最近の畳み込みニューラルネットワークではあまり使われない傾向にある
  • 畳み込み層のパラメータ数は、重み共有によって有用な特徴量を画像の位置によって大きく変化させないため、全結合層に比べて極めて少ない

Global Average Pooling(GAP)

  • 畳み込みニューラルネットワークにおいて、1つの特徴マップを1つのクラスに対応することで分類を行う処理
  • 最近の畳み込みニューラルネットワークでの主流的な手法である

データ拡張

  • data augmentationと呼ばれ、あらゆる状態の画像データを用意するかわりに、擬似的に画像データを作り出す手法
  • 上下左右をずらす、上下左右を反転、拡大・縮小、回転、斜めにゆがめる、一部を切り取る、コンストラストを変える、などの処理を行う
  • ニューラルネットワークは高い表現力を持つ反面、過学習をしやすいという性質を持つため、それを改善させるために、学習の際にデータの水増しをしてデータの不足を補う

AlexNet

  • 2012年にImageNet Large Scale Visual Recognition Challenge(ILSVRC)で圧倒的な精度で優勝した畳み込みニューラルネットワーク
  • 畳み込み層とプーリング層を複数繰り返し、最後に全結合層を持つ構造になっている

VGG

  • 教師あり学習の一つ
  • オックスフォード大学が開発したもので、2014年のILSVRCで2位の成績を収めている
  • VGG16やVGG19(それぞれ16層、19層)と重みがある層によって、いくつかの種類が存在する

GoogLeNet

  • Googleのチームが開発したもので、2014年のILSVRCで優勝しているモデル
  • 複数の畳み込み層やプーリング層で構成されるInceptionモジュールというブロックを構成することで、並列計算を行いやすくするような工夫がとられている
  • 層があまりにも深くなりすぎると、性能の低下や、誤差が逆伝播しにくいといった問題が起きることが判明したため、Skip connectionと呼ばれる、層を飛び越えた結合を加えることで、この問題を回避している。

ResNet

  • Residual Network
  • ILSVRC2015において多くの部門でトップの成績を収めた
  • Skip connectionを導入したネットワーク
  • 層が深くなっても、層を飛び越える部分は伝播しやすい
  • 様々な形のネットワークのアンサンブル学習になっている
  • 沢山の層を重ねた結果、学習に用いられるパラメータの数が膨大となり、学習が上手く進まないという問題が生じていた問題を解決するために提案された
  • 出力を入力と入力からの差分の和で表現したニューラルネットワークモデルである
  • 求めたい関数と入力との差である残差を学習するようにしたことで深いネットワークの学習を容易にした

転移学習

  • データが少量しかないなどの理由で、対象のタスクを学習させることが困難なときに、関連する別のタスクで学習し、その学習済みの特徴やパラメータなどを利用することで効率的に対象のタスクを学習すること

リカレントニューラルネットワーク

  • Recurrent Neural Network(RNN)
  • 通常のニューラルネットワークに対し、過去の隠れ層が追加され、その中で時間情報を保持している
  • 自然言語処理などの系列データによく用いられる
  • 内部にループ構造を持つため、中間層が1層であっても、勾配消失問題が起きやすいという特徴を持っている
  • 音声認識ではリカレントニューラルネットワークの一種である、エルマン・ネットワークが利用されてきた
  • 音響特徴量から音素、文字列、更には単語列に直接変換するEnd to Endモデルというアプローチを取ることが可能

BPTT

  • BackPropagation Through-Time
  • リカレントニューラルネットワークにおける誤差逆伝播で、時間軸に沿って誤差を反映していく

LSTM

  • Long Short Term Memory
  • ケプラー大学のゼップ・ホフレイター氏が提案し、必要な文脈情報の長さを適応的に制御することで、時間を遡る誤差逆伝播の可能性向上させ、画像からの説明文の生成や機械翻訳など、多くの課題に適用されている
  • リカレントニューラルネットワークの一種で、抽出ゲートを含むLSTMブロックを組み込むことで、長期間の系列情報に対しても勾配消失せずに学習を行うことができる
  • 長期的な依存関係を学習することができる
  • セルやゲートを最適化するために、多量の計算を必要とする
  • 機械翻訳や画像からのキャプション生成などに応用できる
  • 2016年秋に、GoogleはGoogle翻訳に取り入れてアップデートし、非常に高精度な翻訳を提供することが可能になった

画像キャプション

  • ある画像からそこに写っているものの説明を生成する、画像処理と自然言語処理の融合分野である
  • キャプションは、対象となる画像を畳み込みニューラルネットワークに入力し、そこから得られた特徴をLSTMに入力することで生成することが可能である

LSTMブロック

  • 時系列情報をネットワークに保持することを可能とする機構
  • 誤差を内部にとどまらせるためのセルと、必要な情報を必要なタイミングで保持・焼却されるためのゲートの2つで構成されている

セル

  • CEC(Constant Error Carousel)とも呼ばれている
  • 誤差を内部にとどめ、勾配消失を防ぐためのもの

ゲート

  • 入力ゲート、出力ゲート、忘却ゲートで構成されている
  • 入力ゲート、出力ゲートはそれぞれ、入力重み衝突、出力重み衝突のためのゲート機構である
  • 忘却ゲートは、誤差が過剰にセルに停留するのを防ぐためにリセットの役割を果たす機構である

GRU

  • Gated Recurrent Unit
  • リセットゲート、更新ゲートで構成されているLSTMを簡略化した手法

Bidirectional RNN

  • BiRNN
  • 過去の情報だけでなく、過去と未来の両方の情報を使って学習する場合に、LSTMを2つ組み合わせて学習できるようにしたモデル

RNN Encoder-Decoder

  • 入力と出力も時系列で予測したいとするsequence-to -sequenceという問題に対応するためのモデル
  • 2つのLSTMを組み合わせ、入力と出力、それぞれにLSTMを対応させる手法
  • エンコーダは入力データを処理する
  • デコーダは出力データを処理し、次のステップの入力となる

Attention

  • 過去の時点それぞれの重みを学習することで、時間の重みを考慮したモデル
  • タスクによっては直近の過去しか重み付けできないのではないかという指摘もある

強化学習

  • 教師あり学習、教師なし学習と同レベルに分類分けされる学習分野
  • 機械が試行錯誤することで、取るべき最善の行動を決定する問題を扱うことができる学習方法
  • ある環境内におけるエージェントが、現在の状態を観測し、取るべき行動を決定する問題を扱う機械学習の一種で、行動そのものを学習する
  • 一連の行動系列の結果としてのスコア(報酬)を最大とするように学習する
  • 代表的な手法としてTD学習やQ学習が知られている
  • 改善手法としては、方策(ポリシー)ベース、行動価値関数ベース、モデルベースなどがある
  • 性能を改善する手法としては、方策ベース、状態価値関数ベース、モデルベースなどがあり、全てを取り入れたものとして、Rainbowがある
  • 正解データ付きの訓練データを用意する必要がない
  • 一般的には学習に時間がかかる
  • 状態遷移を考慮することができる
  • ボードゲームや自動運転、またロボットの歩行動作などに活用されている

深層強化学習

  • DQN
  • Double DQN
  • Dueling Network
  • Categorical DQN
  • Rainbow

Q学習

  • 機械学習手法の方策オフ型TD学習の一つ

DQN

  • Googleの子会社、DeepMind社が開発した人工知能
  • 深層学習と強化学習(Q学習)を組み合わせたアルゴリズムにより動作
  • 深層強化学習アルゴリズムを利用したもので、一部の電子ゲームにおいて人間以上のスコアを獲得できている
  • 強化学習において、行動価値関数の関数近似に畳み込みニューラルネットワークを用いた手法

AlphaGo Zero

  • 2017年10月19日に学術誌Natureの論文でAlphaGo Zeroを発表
  • 従来のバージョンとは大きく異なり、棋譜やビッグデータを必要とせず自己対局によって強化される
  • 全くの初心者の状態から3日間の学習でAlphago Lee(2代目AlphaGo)のレベルに到達
  • 21日目にAlphago Master(3代目AlphaGo)と肩を並べる
  • 40日間の学習後、AlphaGo Lee(2代目AlphaGo)には100戦全勝
  • AlphaGo Master(2代目AlphaGo)には100戦して89勝11敗と過去のバージョンを圧倒するレベルとなった

AlphaZero

  • AlphaGoの最新世代版で、2017年12月に発表された
  • AlphaGo Zeroのアプローチを汎用化させ、2時間で将棋、4時間でチェスの最高峰のAIに勝利
  • AlphaGo Zeroも8時間で上回った

生成モデル

  • 元データがどのような分布になっているかを推測し、その分布に基づいて、元データと同じようなデータを生成(サンプルング)することを目的としたモデル

深層生成モデル

  • ディープラーニングを取り入れた生成モデル

変分オートエンコーダ

  • Variational AutoEncoder(VAE)
  • オートエンコーダを活用する画像生成モデルであるが、入力を固定された表現に圧縮するのではなく、統計分布に変換する
  • 自己符号化器の潜在変数に確率分布を導入している
  • 平均と分散を表現するうように学習する
  • 統計分布に変換した情報から、ランダムにサンプリングした点をデコーダによって復元することで、新しいデータを生成する

敵対的生成ネットワーク

  • Generative Adversarial Network:GAN)
  • 2014年にイアン・グッドフェローらによって発表された教師なし学習で使用される人工知能アルゴリズムの一種
  • ジェネレータと、ディスクリミネータの2つのネットワークで構成されている
  • ジェネレータ(画像生成器)は、入力として潜在空間のランダムベクトルを受け取り、画像を生成して出力する
  • ディスクリミネータ(画像識別器)は、入力した画像が本物か、ジェネレータによって生成された画像をを予測して出力する
  • ジェネレータは画像分類器が間違うような画像を生成するよう学習する
  • ディスクリミネータはジェネレータが生成した画像であることを見抜けるよう学習する
  • 生成モデルの一つであり、生成ネットワークと識別ネットワークの2つのネットワークを対抗させるように学習させることで、得られる生成モデル

DCGAN

  • Deep Convolutional GAN
  • GANの各ネットワークに畳み込みニューラルネットワークを用いて行動な画像を生成する画像生成モデル
  • あるランダムな数値の入力値をもとに画像生成を行う

Attention GAN

  • ある文章から画像を生成するモデル

ディープラーニングの研究分野

ILSVRCの歴代優勝チーム

  • 2012 AlexNet エラー率 0.16
  • 2013 ZF net エラー率 0.12
  • 2014 GoogLeNet、VGG エラー率 0.07
  • 2015 ResNet エラー率 0.036
  • 2016 ensembled networks エラー率 0.030
  • 2017 Squeeze and Excitation Network エラー率 0.023

R-CNN

  • Regional CNN
  • 画像における関心領域(Region on Interest:ROI)(位置)の切り出しに用いる

fast RCNN

  • 高速RCNN
  • 各入力画像の関心領域を切り出しと、切り出した領域の物体認識を同時に行うことを可能にしたモデル

faster RCNN

  • fastRCNNの改良版
  • ほぼ実時(1秒間で16フレーム程度)間で入力した画像から関心領域の切り出しと認識が可能になったモデル
  • 更に発展したモデルとして、YOLO(You Only Look One)やSSD(Single Shot Detector)などのモデルもある

セマンティックセグメンテーション

  • 一般画像認識の手法の一つで、R-CNNのように矩形を切り出すのではなく、より詳細な領域分割を得るモデル
  • 各画素がどのカテゴリーに属するかを求める
  • イメージの各ピクセルをクラスラベル(花、人物、道路、空、海洋、自動車など) に関連付けるプロセスを表す
  • 自動運転、工業検査、衛星画像に表示される地形の分類、医用画像解析などに応用されている

完全畳み込みネットワーク

  • Fully Convolutional Network:FCN)
  • 全ての層が畳み込み層であるモデル
  • 入力画像の画素数だけ、出力層が必要となり、縦画素数×横画素数×カテゴリー数の出力ニューロンが用意される

インスタンスセグメンテーション

  • 個々の物体ごとに物体識別を行う手法

bag-of-words

  • 自然言語処理の分野においては、文章に単語が含まれているかどうかを考えてテキストデータを数値化する手法

word2vec

  • 文章中の単語を、記号の集まりとした場合、その記号をベクトルとして表現することによって、ベクトル間の距離や関係として単語の意味を表現するモデル
  • ベクトル空間モデル、単語埋め込みモデルとも呼ばれている
  • 「単語の意味は、その周辺の単語によって決まる」という言語学の主張をニュラルネットワークで実現したものと考えられている

TF-IDF

  • 文章に含まれる単語の重要度を特徴量とする

スキップグラム

  • word2vecの手法の一つ
  • ある単語を与えて、周辺の単語を予測するモデル

CBOW

  • word2vecの手法の一つ
  • 周辺の単語を与えて、ある単語を予測するモデル

fastText

  • word2vecの後継で、2013年にトマス・ミコロフらによって開発された、自然言語処理(natural language processing:NLP)のモデル
  • 単語の表現に、文字の情報を含めることができる
  • 文字データを援用することで、訓練データに存在しない単語(Out Of Vocabulary:OOV)を表現することが可能
  • 学習に要する時間が短い、という特徴がある

ELMo

  • アレインスティチュートによって開発された、文章表現をするモデル
  • 2層の双方向リカレントニューラルネットワーク言語モデルの内部状態から計算される
  • 文字ベースの単語表現を作るため、学習データに存在しない単語(OOV)であっても意味表現を得ることが可能

マルチタスク言語モデル

  • 次文あるいは前文予測、機械翻訳、構文解析、自然言語推論などが行える、文章ベクトルモデル
  • 1対多のマルチタスク学習により、複数課題間に共通の普遍的な文章埋め込み表現を学習することができる普遍埋め込みモデルなどがある

ニューラル画像脚注付け

  • Natural Image Captioning(NIC)
  • 2014年に注目を集めた技術で、画像認識を実行する畳み込みニューラルネットワークと言語モデル(Language Model:LM)としてリカレントニューラルネットワークを組み合わせることで実現可能
  • 畳み込みニューラルネットワークの最終層の出力ではなく、全結合層の直下である、畳み込み層の最上位層をリカレントニューラルネットワークで構成される文章生成ネットワークの入力にしている
  • リカレントニューラルネットワークの出力が、1対多、多対多、多対1、などいろいろな入出力が可能であるため実現できる

シーケンス2シーケンス

  • Seq2Seq
  • 自動翻訳技術が用いられた画像脚注付けの手法

ニューラルチューリングマシン

  • Neural Turing Machines(NTM)
  • チューリングマシーン、つまり、コンピュータのモデルとなる仮想的な機械をニューラルネットワークで実編する試み

WaveNet

  • リカレントニューラルネットワークを利用した、音声合成、音声認識を行うモデル
  • 発音の評価を5点満点とした場合、英語では、人間4.55に対しWaveNet4.21、中国語では、人間4.21に対しWaveNet4.08と、非常に高い水準の発音が可能になったことがわかる

隠れマルコフモデル

  • HMM
  • 1990年代の音声認識モデルで、音自体を判別するための音響モデル

Nグラム法

  • 語と語のつながりを判別する言語モデル

DistBelief

  • 大規模なディープニューラルネットワークの学習では学習するべきパラメータ数が膨大となるため、処理を高速化するために、2012年に提案された分散並列技術

内部共変量シフト

  • 大規模なニューラルネットワークの学習が困難となる原因の一つ
  • 入力の分布が学習の途中で大きく変わってくる問題で、ある層の入力がそれより下層の学習が進むにつれて変化する現象
  • 内部共変量シフトを防ぐために出力値の分布の偏りを抑制するバッチ正規化が2015年に提案されている

adversarial example

  • 深層学習における重要な課題の一つであり、学習済みのディープニューラルネットモデルを欺くように人工的に作られたサンプル
  • サンプルに対して微小な摂動を加えることで、作為的にモデルの誤認識を引き起こすことができる

TensorFlow

  • Google社提供のディープラーニングのフレームワーク
  • 2015年11月9日にベータ版が公開され、2017年2月15日には正式版となるTensorFlow 1.0がリリースされた
  • プログラムによってネットワークを記述する
  • プログラムでは、一度書き方を覚えてしまば、複雑なモデルでも比較的簡単に記述することが出来るが、モデルは、それぞれのフレームワーク固有のソースコードで出来上がるため、モデルが使用しているソフトウェアに依存してしまうという問題がある

Keras

  • TensorFlowのラッパーとして機能する

Chainer

  • 国内企業であるPreferredNetworksで開発されたディープラーニングのフレームワーク
  • バックプロパゲーションに必要なデータ構造をプログラムの実行時に動的に生成する特徴があり、複雑なニューラルネットワークの構築を必要とする深層学習で主に用いられる
  • Define-by-Run方式を用いており、同様の方式を用いるフレームワークとして、PyTorchがある
  • 設定ファイルプログラムによってネットワークを記述する
  • 設定ファイルでは、
    • モデルの定義がテキストで設定でき、簡単に学習を開始開始させることが出来るというメリットがある
    • ループ構造をもつようなリカレントニューラルネットワークなど、複雑なモデルを扱う際には、モデルの定義を記述することは難しくなる傾向にある

    という特徴がある

  • プログラムでは、一度書き方を覚えてしまば、複雑なモデルでも比較的簡単に記述することが出来るが、モデルは、それぞれのフレームワーク固有のソースコードで出来上がるため、モデルが使用しているソフトウェアに依存してしまうという問題がある

Caffe

  • 設定ファイルによってネットワークを記述する
  • 設定ファイルでは、
    • モデルの定義がテキストで設定でき、簡単に学習を開始開始させることが出来るというメリットがある
    • ループ構造をもつようなリカレントニューラルネットワークなど、複雑なモデルを扱う際には、モデルの定義を記述することは難しくなる傾向にある

    という特徴がある

自動運転レベル

  • レベル0 ドライバーがすべてを操作
  • レベル1 システムがステアリング操作、加減速のどちらかをサポート
  • レベル2 システムがステアリング操作、加減速のどちらもサポート
  • レベル3 特定の場所でシステムが全てを操作、緊急時はドライバーが操作
  • レベル4 特定の場所でシステムが全てを操作
  • レベル5 場所の限定なくシステムが全てを操作
  • レベル3以上のアプローチを採る企業として著名なのは、Google 傘下のWaymoである

自動運転

  • 米国ネバダ州では自動運転の走行や運転免許が許可制にて認められている

ドローンの空域許可

  • ドローンを飛行させる際、以下の場所では許可が必要となる

    • 15mm以上の高さの空域
    • 人口集中地域の空域
    • 空港等の周辺の空域

ドローンの飛行規制

  • ドローンを飛行させる際、以下の利用方法は禁止されており、事前承認が必要となる

    • 夜間飛行
    • イベントなど大勢の人が集まる場所での飛行
    • 物の投下
    • 人、モノから30m未満の飛行

PREPARING FOR THE FUTURE OF ARTIFICIAL INTELLIGENCE

  • 2016年10月に米国政府が発行
  • AI実務家や学生に倫理観が必要であることを主張している

THE NATIONAL INTELLIGENCE RESEARCH AND DEVELOPMENT STRATEGIC PLAN

  • 2016年10月に「PREPARING FOR THE FUTURE OF ARTIFICIAL INTELLIGENCE」に続いて米国政府が発行

ARTIFICIAL INTELLIGENCE AUTOMATION, AND THE ECONOMY

  • 2016年12月に米国政府が発行
  • AIの普及が最大で300万超えの雇用に影響を与える可能性があることを説いている

技術者不足問題

  • 経済産業省が定めた先端IT人材がどのような人材需給状況にあるかの推定によると、2020年には需給ギャップが広がり人材の不足は48,000人に及ぶと言われている
  • AI研究の第一人者で、2014年から2017年にかけて Baidu の AI 研究所所長を務めたAndrew Ngが創業した Coursera などは入門から上級まで様々なレベルの AI 講義が開かれており、多くの受講者を惹きつけるに至っている

AIと経済成長

  • 日本:新産業構造ビジョン
  • 英国:RAS 2020 戦略
  • ドイツ:デジタル戦略2025
  • 中国:インターネットプラスAI3年行動実施法案

MNIST

  • アメリカの国立標準技術研究所によって提供されている手書き数字のデータベース

ImageNet

  • スタンフォード大学がインターネット上から画像を集めて分類したデータセット
  • 約1400万枚の自然画像を有しており、画像認識の様々なタスクに利用される

福祉業界におけるディープラーニングの活用事例

介護サポート

高齢化社会になり、介護士側の負担も大きくなってきている。
そんな中で、介護コミュニケーションの支援が注目されている。
熟練の介護士の能力を、初心者の介護士にコーチングする過程で、ディープラーニングが活用されている。

スポンサーリンク
 

  • 初心者の介護士が実際にケアしている様子を動画で撮影し、熟練介護士が、被介護者が拒否を起こしやすいコミュニケーションをとっていないか、指導実施(指導内容を教師データ化)
  • 初心者介護士が、メガネ型カメラを装着し、指導内容から学習したデータを基に、解析、評価
  • 介護の拒否を起こしにくくするアプローチをとることで、介護士の負担が軽減
  • 実証実験において、介護者側の心理負担も28%軽減される結果に

医療業界におけるディープラーニングの活用事例

f:id:itry:20190228233608j:plain

診断支援

ディープラーニングは医療の世界でも活躍をはじめている。
特に、画像による診断などで、病気の早期発見などに役立っている。

例(胃がん)

  • 畳み込みニューラルを活用し、内視鏡画像から胃がんを検出
  • 1画像の診断に0.02秒であり、人間の解析速度を遥かに凌駕

例(大腸がん)

  • 大腸の内視鏡検査時の画像を解析することで、大腸がん、および前がん病変を自動検知
  • 前がん病変としてのポリープと早期がんの発見率は98%
  • 2019年度以降の実用化を目指している最中

例(網膜剥離)

  • 広角眼底画像を解析することで、網膜剥離判定で98%の精度
  • 診察見落としを防ぐ二重チェックへの応用、眼科医過疎地に対する遠隔診断への応用、検診による早期発見への応用を想定

スポンサーリンク
 

創薬

製薬会社において、新薬に関わる開発プロセスの大幅な効率化により、新薬開発のコスト増大を抑止する。

  • ディープラーニングを用いた学習モデル、**Graph Convolutional Network:GCN)をベースとして開発
  • 化合物の構造から、タンパク質への活性を学習し予測することで、創薬候補化合物のスクリーニングを効率化
  • 化合物中の活性発現に効果的な部分、効果的ではない部分を可視化
  • 既存の化合物から、創薬に適した化合物を多様かつ大量に提案することが可能

ゲノム

遺伝子の役割と病気の関係を学習することで、患者の体質や病気の特性にあわせた治療を目指すアプローチ。
2017年12月に、Google社がDeepVariantと呼ばれる、ゲノム配列や、個人を特定するほどの詳細なレベルの遺伝子相違点を解析するツールを発表した。

  • 公開データベースや公開文献を用いた学習データとナレッジグラフを利用し、関係性が部分的にしか知られていないような事象に関して、裏付けとなる根拠を探し、紐付け可能であるかを検証
  • 遺伝子変異に関して、推定結果に大きく影響した複数の因子と医療文献などから、学術的な裏付けとなる根拠、および、疾患の候補を抽出
  • がんのゲノム医療判断期間を、2週間から1日に短縮