0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ディープラーニング備忘録

Last updated at Posted at 2024-11-04

目的

対象状況画像の前処理 ~ 分類 ~ 予測まで

ラズパイを用いて対象状況を 1time/1min 保存し
その画像を前処理おこない、特徴量から0,1分類する

懸念点

対象状況が一定ではないので、特徴量を上手に設定する必要があるだろう。
また予測はどのようにするか、これから勉強

事前準備(完了済)

ラズパイ4 4GB x 3台
ラズパイzero2 x 1台(テスト運用)

画像処理の平滑化処理

フィルタ一覧

フィルタ種類 特徴 主な使用場面 備考
平均フィルタ 単純なぼかし ・軽いノイズ除去
・画像全体をぼかす
最も基本的なフィルタ
ガウシアンフィルタ 自然なぼかし ・ノイズ除去
・エッジの自然な処理
バランスの取れた処理が可能
メディアンフィルタ エッジ保持 ・塩胡椒ノイズ除去
・エッジを保持したいとき
ノイズ除去に特化
バイラテラルフィルタ 高品質なエッジ保持 ・エッジ保持しつつノイズ除去 ・計算負荷が高め
・高品質な処理が可能
Boxフィルタ 周囲ピクセルの処理 エッジ処理に変化を持たせたいとき エッジ処理の差異を付けられる
平均フィルタ (Mean Filter)

特徴: 画像の各ピクセルを周囲のピクセルの平均値で置き換えることで、画像のノイズを減らします。均一なぼかし効果があり、ノイズ除去に適していますが、エッジがぼやけることがあります。

    import cv2
    import numpy as np
    
    # 画像を読み込む
    image = cv2.imread('input.jpg')
    
    # 平均フィルタ(カーネルサイズを指定)
    blurred_image = cv2.blur(image, (5, 5))
    
    # 結果を保存
    cv2.imwrite('mean_blur.jpg', blurred_image)
ガウシアンフィルタ (Gaussian Filter)

特徴: ガウス分布に基づいてピクセルの重みを設定し、ぼかし効果を自然にするフィルタです。中心に近いピクセルほど重みが高く、周辺のピクセルは重みが低くなります。エッジをある程度保ちながらノイズを除去するのに適しています。

# ガウシアンフィルタ(カーネルサイズと標準偏差を指定)
gaussian_blurred_image = cv2.GaussianBlur(image, (5, 5), 0)

# 結果を保存
cv2.imwrite('gaussian_blur.jpg', gaussian_blurred_image)
メディアンフィルタ (Median Filter)

特徴: 各ピクセルを周囲のピクセルの中央値で置き換えることで、特に「塩胡椒ノイズ」などに効果的なフィルタです。エッジを保ちながらノイズを除去しやすいという特徴があります。

# メディアンフィルタ(カーネルサイズを指定)
median_blurred_image = cv2.medianBlur(image, 5)

# 結果を保存
cv2.imwrite('median_blur.jpg', median_blurred_image)
バイラテラルフィルタ (Bilateral Filter)

特徴: 空間フィルタと色フィルタの両方を適用することで、エッジを保持しつつノイズを除去するフィルタです。ガウシアンフィルタと比べると、処理速度が遅いですが、エッジ保持性能が優れています。

# バイラテラルフィルタ(空間の標準偏差、色の標準偏差、カーネルサイズを指定)
bilateral_blurred_image = cv2.bilateralFilter(image, 9, 75, 75)

# 結果を保存
cv2.imwrite('bilateral_blur.jpg', bilateral_blurred_image)
Boxフィルタ

特徴: 平均フィルタと似た効果を持つが、画像の周辺部分を含むことができるため、境界条件でのエッジ処理に少し違いが出ます。

# Boxフィルタ(カーネルサイズを指定)
box_blurred_image = cv2.boxFilter(image, -1, (5, 5))

# 結果を保存
cv2.imwrite('box_blur.jpg', box_blurred_image)

その他:用語

学習(教師あり、なし、強化学習)

キーワード 学習手法 目的 課題 解決策
線形回帰 教師あり学習 入力変数と出力変数の線形関係を見つける - 非線形の関係を捉えることができない
- 外れ値の影響を受けやすい
- 変数変換により非線形関係を線形に近似する
- ロバスト回帰手法の利用
ロジスティック回帰 教師あり学習 二値分類問題において、入力変数から確率を予測する - 非線形の決定境界を捉えることができない
- 変数間の相関が高い場合に不安定になる
- 交互作用項の導入による非線形性の考慮
- 正則化手法の適用による変数選択
ランダムフォレスト 教師あり学習 複数の決定木を組み合わせて分類や回帰を行う - ハイパーパラメータの調整が必要
- 解釈が難しい場合がある
- グリッドサーチによるハイパーパラメータの調整
- 特徴重要度の算出による解釈性の向上
ブースティング 教師あり学習 弱学習器を組み合わせて強学習器を作成する - 過学習のリスクがある
- ノイズに敏感な場合がある
- 正則化手法の適用によるオーバーフィッティングの防止
- ロバストなロス関数の利用
サポートベクターマシン(SVM) 教師あり学習 データを分離する最適な超平面を見つける - カーネル関数の選択が重要
- 大規模データでは計算コストが高い
- グリッドサーチによるカーネル関数の選択
- 効率的な最適化手法の利用
ニューラルネットワーク 教師あり学習 複雑な非線形関係を学習できる柔軟なモデルを構築する - 過学習のリスクがある
- ハイパーパラメータの調整が難しい
- 正則化手法の適用によるオーバーフィッティングの防止
- ハイパーパラメータの自動最適化手法の利用
自己回帰モデル(AR) 教師あり学習 時系列データの過去の値から将来の値を予測する - 長期的な依存関係を捉えることが難しい
- 非定常なデータには適さない場合がある
- ラグの選択の工夫
- 差分化による非定常性の除去
分類問題 教師あり学習 カテゴリカルな目的変数を予測する - クラス不均衡の問題が生じる場合がある
- 評価指標の選択が重要
- 不均衡データに対する適切なサンプリング手法の適用
- 適切な評価指標(F1スコア、AUCなど)の選択
回帰問題 教師あり学習 連続的な目的変数を予測する - 外れ値の影響を受けやすい
- 変数間の多重共線性が問題となる場合がある
- ロバスト回帰手法の利用
- 正則化手法による変数選択
半教師あり学習 教師あり学習 ラベル付きデータとラベルなしデータを組み合わせて学習する - ラベルなしデータの品質が重要
- ラベルノイズの影響を受けやすい
- ラベルなしデータのクリーニング
- ノイズに頑健な手法の適用
ラッソ回帰 教師あり学習 L1正則化により変数選択を行いながら回帰係数を推定する - ハイパーパラメータの選択が重要
- グループ化された変数の選択が難しい
- 交差検証によるハイパーパラメータの選択
- グループラッソなどの拡張手法の利用
リッジ回帰 教師あり学習 L2正則化により回帰係数の大きさを制限しながら推定する - ハイパーパラメータの選択が重要
- 非スパースな解が得られる
- 交差検証によるハイパーパラメータの選択
- スパースな解が必要な場合はラッソ回帰の利用
決定木 教師あり学習 データを分割するルールを学習し、ツリー構造で表現する - 過学習のリスクがある
- 連続値の扱いが難しい
- 剪定による過学習の防止
- 連続値の離散化または閾値の最適化
アンサンブル学習 教師あり学習 複数の学習器を組み合わせて予測性能を向上させる - 個々の学習器の性能が重要
- 計算コストが高くなる場合がある
- 多様性のある学習器の組み合わせ
- 並列化による計算の高速化
バギング 教師あり学習 ブートストラップサンプリングにより複数の学習器を構築し、予測を平均化する - ランダムサンプリングによる予測のばらつき
- アンサンブルサイズの決定が難しい
- アンサンブルサイズの増加による安定性の向上
- アウトオブバッグサンプルを用いた評価
勾配ブースティング 教師あり学習 勾配降下法を用いてブースティングを行う - ハイパーパラメータの調整が重要
- 過学習のリスクがある
- グリッドサーチやベイズ最適化によるハイパーパラメータの調整
- 正則化手法の適用によるオーバーフィッティングの防止
マージン最大化 教師あり学習 クラス間の余白を最大化するように学習する - 非線形のデータには適さない場合がある
- サポートベクターの選択が重要
- カーネルトリックの利用による非線形分離
- 適切なカーネル関数の選択
カーネル法 教師あり学習 データを高次元空間に写像し、非線形の関係を捉える - カーネル関数の選択が重要
- 計算コストが高くなる場合がある
- 適切なカーネル関数の選択
- カーネルトリックによる計算の効率化
単純パーセプトロン 教師あり学習 シグモイド関数を用いた2クラス分類器 - 線形分離不可能なデータには適さない
- 収束が遅い場合がある
- 特徴量の変換による非線形分離の実現
- 学習率の適切な設定
多層パーセプトロン 教師あり学習 複数の層を持つニューラルネットワークによる分類や回帰 - 過学習のリスクがある
- ハイパーパラメータの調整が難しい
- 正則化手法の適用によるオーバーフィッティングの防止
- ハイパーパラメータの自動最適化手法の利用
誤差逆伝播法 教師あり学習 ニューラルネットワークの重みを勾配降下法で更新する - 局所最適解に陥る可能性がある
- 勾配消失問題が生じる場合がある
- 適切な重みの初期化
- ReLUなどの活性化関数の利用
ベクトル自己回帰モデル(VARモデル) 教師あり学習 複数の時系列変数間の関係を捉える - 変数間の因果関係の解釈が難しい
- 次数の選択が重要
- グレンジャー因果性の検定
- 情報量基準による次数の選択
疑似ラベリング 半教師あり学習 ラベルなしデータに対して予測を行い、疑似的なラベルを付与する - ノイズの蓄積が問題となる場合がある
- 初期モデルの性能が重要
- 確信度の高い予測結果のみを採用
- 反復的な学習による性能の向上
協調フィルタリング 教師なし学習 ユーザーやアイテムの類似性に基づいて推薦を行う - コールドスタート問題への対処が必要
- スパースなデータでは精度が低下する
- コンテンツベースのフィルタリングとの組み合わせ
- 次元削減手法の適用によるスパース性の緩和
k-means法 教師なし学習 データをk個のクラスタに分割する - クラスタ数の選択が難しい
- 初期値に依存する
- エルボー法などによるクラスタ数の選択
- 複数回の実行と結果の比較
主成分分析(PCA) 教師なし学習 データの次元を削減し、主要な特徴を抽出する - 解釈が難しい場合がある
- 非線形のデータに対して有効でない場合がある
- 結果の可視化と解釈
- カーネルPCAなどの非線形次元削減手法の利用
潜在的ディリクレ配分法(LDA) 教師なし学習 文書の潜在的なトピックを発見する - トピック数の選択が難しい
- 推定の収束が遅い場合がある
- 評価指標の活用によるトピック数の選択
- 変分推論などの近似手法の利用
t-SNE 教師なし学習 高次元データを低次元空間に埋め込み、可視化する - パープレキシティの選択が重要
- 大規模データでは計算コストが高い
- パープレキシティの適切な設定
- Barnes-Hutアルゴリズムなどの近似手法の利用
Q学習 強化学習 最適な行動価値関数を学習する - 収束が遅い場合がある
- 連続な状態空間では適用が難しい
- 学習率の適切な設定
- 関数近似の利用による連続状態空間への対応
方策勾配法 強化学習 方策のパラメータを直接更新し、期待報酬を最大化する - 方策の表現力が重要
- 局所最適解に収束する可能性がある
- ニューラルネットワークによる方策の表現
- エントロピー正則化項の導入による探索の促進
A3C 強化学習 複数のエージェントが並列に環境と相互作用し、方策を学習する - エージェント間の協調が必要
- 報酬設計が重要
- エージェント間の通信の実装
- 適切な報酬関数の設計

主要な深層学習モデルの歴史

モデル 開発者 開発元 特徴 ベースとなる技術 問題 解決策
1943 ニューラルネットワーク ウォーレン・マカロック & ウォルター・ピッツ - 生物の神経細胞を模した数学モデル。機械学習の基礎概念 - 計算能力の限界 トランジスタと集積回路の発明
1958 パーセプトロン フランク・ローゼンブラット コーネル航空研究所 2層のシンプルなニューラルネットワーク。線形の判別問題を解ける ニューラルネットワーク XOR問題の解決不能 多層パーセプトロンとバックプロパゲーションの導入
1986 バックプロパゲーション デビッド・E・ルメルハート, ジェフリー・ヒントン, ロナルド・J・ウィリアムズ 複数の研究機関 誤差逆伝搬法によるディープニューラルネットワークの効率的な学習手法 多層ニューラルネットワーク 勾配消失問題 ReLU活性化関数の導入
1986 RNN ジョン・ホップフィールド, デビッド・E・ルメルハート 複数の研究機関 循環する構造を持つニューラルネットワーク。系列データ処理に適している ニューラルネットワーク 長期依存性の問題 LSTMの開発
1989 CNN ヤン・ルカン トロント大学 畳み込み演算を利用した画像認識に適した階層型ニューラルネットワーク ニューラルネットワーク、畳み込み演算 過学習 ドロップアウトとデータ拡張
1989 DNN ジェフリー・ヒントン 他 複数の研究機関 多層の階層構造を持つニューラルネットワーク ニューラルネットワーク 計算資源の制限 GPUの利用と並列計算
1997 LSTM セップ・ホッホライター, ユルゲン・シュミットフーバー ミュンヘン工科大学 長短期記憶を有するリカレントニューラルネットワーク。時系列データ処理に適している リカレントニューラルネットワーク 勾配爆発問題 勾配クリッピングと正則化
2006 ディープビリーフネット ジェフリー・ヒントン 他 トロント大学 多層ニューラルネットワークの効率的な事前学習手法 ニューラルネットワーク、事前学習 学習の遅さ 事前学習と微調整
2011 Siri Appleのチーム Apple 自然言語処理を活用した仮想アシスタントアプリ 言語モデル、音声認識、対話システム 自然言語の理解の限界 ディープラーニングによるNLPの進化
2012 AlexNet アレックス・クリゼフスキー, イリヤ・スツケヴァー, ジェフリー・ヒントン トロント大学 画像認識の大会で圧倒的な成績を収めたCNNモデル。DNNブームの火付け役 CNN ハードウェアの制約 高性能GPUと分散コンピューティング
2014 GAN イアン・グッドフェロー 他 モントリオール大学 生成モデルと識別モデルの対決によりデータ分布を学習する生成型ネットワーク ニューラルネットワーク、ゲーム理論 モード崩壊 WGANとスペクトル正規化
2014 GoogLeNet クリスチャン・シュレギーヴェ 他 グーグル 22層の深層畳み込みニューラルネットワーク 畳み込みニューラルネットワーク、Inceptionモジュール 深層ネットワークの学習の難しさ Inceptionモジュールの導入、中間層の追加
2014 VGG オックスフォード大学 オックスフォード大学 16-19層の深層畳み込みニューラルネットワーク 畳み込みニューラルネットワーク、プーリング 深層ネットワークの学習の難しさ 小さなフィルタサイズ(3x3)の使用、ネットワークの深層化
2016 WaveNet DeepMindチーム Google DeepMind 生の音声波形を直接モデル化し、自然な音声を生成する ディープニューラルネットワーク、畳み込み 自然な音声合成の難しさ 拡張因果畳み込みとゲート付き活性化関数
2017 Mask R-CNN カイミング・ヘー 他 Facebook AI Research 物体検出とインスタンスセグメンテーションを同時に行う深層学習モデル RPN、FPN、Mask Branch 高精度な物体検出とセグメンテーションの両立 精度の向上、処理速度の高速化
2017 Inception グーグルAI グーグル 畳み込みニューラルネットワークの効率化 畳み込みニューラルネットワーク 計算量の多さ 畳み込み層の分割、Inceptionモジュールの導入
2017 MobileNet グーグルAI グーグル モバイルデバイスでの効率的な物体認識を目的とした軽量なCNN 深層分離可能畳み込み モバイルデバイスでの計算リソースの制約 深層分離可能畳み込みの導入、ネットワークの軽量化
2018 ResNet ヘカイ・ザン 他 複数の研究機関 深層学習における残差接続の有効性を示したモデル 畳み込みニューラルネットワーク、残差接続 深層モデルにおける勾配消失問題 残差接続(skip connection)の導入、モデルの深層化
2018 Transformer アシシュ・ヴァスワニ 他 Google Brain 自己注目(Self-Attention)を利用した革新的な自然言語処理モデル 注目機構、Seq2Seqモデル 並列処理の困難さ 自己注意メカニズムの導入
2018 GPT OpenAIのチーム OpenAI Transformerベースの大規模言語モデル Transformer 一般化の問題 トランスファー学習と微調整
2018 DQN ヴォーランテス・ベレマン 他 ディープマインド 深層学習を用いた強化学習モデル Q学習、ニューラルネットワーク 試行錯誤の必要性 経験リプレイによる学習効率の向上
2018 Neural Architecture Search (NAS) バロッシュ・ゾルナ 他 グーグル ニューラルネットワークのアーキテクチャを自動探索する手法 強化学習、進化的アルゴリズム ニューラルアーキテクチャの設計の難しさ 強化学習や進化計算によるアーキテクチャ探索の自動化
2018 NASNet グーグルのチーム グーグル Neural Architecture Searchによって発見されたCNNアーキテクチャ NAS、畳み込みニューラルネットワーク ニューラルアーキテクチャの設計の難しさ NASによる自動アーキテクチャ探索、転移学習
2019 BERT ジェイコブ・デヴリン 他 Google AI 双方向Transformerによる大規模言語モデル Transformer 文脈理解の限界 双方向エンコーダ表現
2019 ErnieBot 百度のチーム Baidu マルチモーダル対話システム 多様なモーダリティの統合 マルチモーダルデータの統合の難しさ マルチモーダル学習アルゴリズムの開発
2019 MnasNet グーグルのチーム グーグル Neural Architecture Searchによって発見されたモバイル向けCNNアーキテクチャ NAS、モバイルデバイス モバイルデバイスでの計算リソースの制約 リソース制約を考慮したNASの適用
2019 EfficientNet グーグルのチーム グーグル 深さ、幅、解像度のバランスを取ったCNNアーキテクチャ 複合スケーリング、転移学習 ネットワークのスケーリングの難しさ 深さ、幅、解像度のバランスの取れたスケーリング手法
2020 Vision Transformers グーグルAI グーグル Transformerを画像認識に応用したモデル 注目機構、Transformer 画像認識におけるTransformerの活用 ViTの改良、ViTの派生モデルの開発
2021 Diffusion Models 複数の研究者 複数の研究機関 拡散と逆拡散のプロセスを利用した高品質な生成モデル 確率的グラディエント等 高品質な生成コンテンツの作成の難しさ 拡散モデルの導入による生成品質の向上
2021 Attention is All You Need オアシス・タナカン他 グーグルAI Transformerアーキテクチャを簡素化したモデル 注目機構、Transformer Transformerモデルの軽量化 ネットワークパラメータの削減、モデル構造の簡素化
2022 CLIP OpenAI OpenAI テキストと画像を関連付けるモデル Transformer、ViT テキストと画像の相互理解の難しさ マルチモーダル学習、プロンプトエンジニアリング
2022 GPT-3 OpenAIのチーム OpenAI 1750億パラメータを有する大規模言語モデル Transformer 自然言語理解の限界 トランスフォーマーと大規模データセットによる学習
2022 AlphaCode DeepMindのチーム DeepMind コードの生成と理解を行うAIシステム Transformer、コード処理 プログラミング言語の自動生成の難しさ ディープラーニングとプログラム合成技術の組み合わせ
2022 Flamingo DeepMindのチーム DeepMind マルチモーダル知覚と生成を行う統一されたAIモデル Transformer、マルチモーダル 複数のタスクを一つのモデルで処理する難しさ マルチタスク学習とトランスフォーマーの応用
2022 Gato DeepMindのチーム DeepMind 600以上のタスクを単一のモデルで実行するジェネラリストAI Transformer、マルチタスク ジェネラリストAIの開発の難しさ マルチタスク学習とデータ多様性の活用
2023 Claude Anthropicのチーム Anthropic 構成的な理解と説明能力を備えた対話AIシステム 言語モデル、論理推論 AIによる論理的な説明の生成の難しさ 構成的AIアプローチと論理推論の統合
2023 PaLM Googleのチーム Google 540億パラメータの大規模マルチモーダル言語モデル Transformer、マルチモーダル 大規模マルチモーダルモデルの学習の難しさ マルチモーダルトランスフォーマーと大規模データセット
2023 Kosmos-1 Anthropicのチーム Anthropic 取り組み中の大規模な構成的知能モデル 符号化ネットワーク 構成的知能の実現の難しさ 高度な符号化技術とネットワークアーキテクチャ
2023 Bard Googleのチーム Google 対話型の汎用AIアシスタント 大規模言語モデル、知識ベース 汎用AIアシスタントの開発の難しさ 知識ベースと言語モデルの統合
2023 GPT-4 OpenAIのチーム OpenAI マルチモーダル入出力対応の強化学習言語モデル 強化学習、マルチモーダル マルチモーダル入出力の統合の難しさ 強化学習とマルチモーダルアプローチの組み合わせ
2023 医療診断 Microsoftのチーム InnerEye Microsoft AIを活用した医療診断 医療診断における精度の問題 機械学習とコンピュータビジョンの進歩
2023 医療診断 IBMのチーム Watson for Oncology IBM AIを活用した医療診断 医療データの解釈の難しさ 自然言語処理と情報検索技術の進化
2023 医療画像診断 Googleのチーム BunkerHill Health Google AIを活用した医療画像診断 医療画像の解析の難しさ コンピュータビジョンとディープラーニングの進化
2023 総合診断 人工知能スタートアップのチーム Human Diagnosis Project 人工知能スタートアップ AIを活用した総合診断 医療データの総合的な解析の難しさ 深層学習と自然言語処理の組み合わせ
2023 証券取引 Renaissance Technologiesのチーム Renaissance Technologies ヘッジファンド AIを活用した証券取引 証券市場の予測の難しさ 機械学習とディープラーニングの進化
2024 サイバーセキュリティ DARPAのチーム ProjectX DARPA AIを活用したサイバーセキュリティ サイバーセキュリティの脅威の予測の難しさ 強化学習とニューラルネットワークの進化
2024 気象予報 NOAAのチーム ForecastX NOAA AIを活用した気象予報 正確な気象予報の生成の難しさ 数値モデルと機械学習の組み合わせ

ILSVRC優勝

モデル 開発者 開発元 特徴 ベースとなる技術 問題 解決策
2012 AlexNet アレックス・クリゼフスキー, イリヤ・スツケヴァー, ジェフリー・ヒントン トロント大学 CNNを用いた画像認識モデルで、ILSVRCでの優勝によりDNNブームを牽引 CNN ハードウェアの制約 高性能GPUと分散コンピューティング
2013 ZFNet マシュー・D・ジーラー, ロブ・ファーガス ニューヨーク大学 AlexNetの問題点を改善したCNNモデルで、ILSVRCで優勝 CNN 過学習 データ拡張と正則化
2014 GoogLeNet クリスチャン・シェガディー他 Google Inceptionモジュールを導入した深層CNNで、ILSVRCで優勝 CNN 計算資源の制限 層数と層間の結合数の増加
2014 VGGNet カレン・シモニャン, アンドリュー・ジスマン オックスフォード大学 層数を増やした深層CNNで、ILSVRCで準優勝 CNN 過学習 ドロップアウトとデータ拡張
2015 ResNet ケーミング・ヒー他 Microsoft Research 残差学習を導入した深層CNNで、ILSVRCで優勝 CNN 勾配消失問題 スキップ接続とバッチ正規化
2017 SENet ジエ・フー他 モメンタム Squeeze-and-Excitationブロックを導入したCNNで、ILSVRCで優勝 CNN モデルの複雑さ チャネル間の関係性の強化
2018 NASNet バーレット・ジョープ他 Google Brain Neural Architecture Searchを用いたCNNで、ILSVRCで高精度を達成 CNN 最適なアーキテクチャの探索 強化学習によるアーキテクチャ探索
2019 EfficientNet ミンシン・タン, クエンティン・V・レ Google Research 幅、深さ、解像度のスケーリングを組み合わせたCNNで、ILSVRCで高精度かつ高効率を達成 CNN モデルのスケーラビリティ Compound Scaling
2020 Vision Transformer (ViT) アレクセイ・ドソビツキー他 Google Research Transformerアーキテクチャを画像分類に適用し、CNNに匹敵する性能を達成 Transformer 画像への適用 画像をパッチに分割し、シーケンスとして処理
2021 CoAtNet ジン・ダイ他 Google Research CNNとTransformerを組み合わせたアーキテクチャで、ImageNetで高精度を達成 CNN, Transformer 両者の長所の組み合わせ 相対的位置符号化とグローバル対応

ゲーム(それによる、VS人)

分野 AIの名前 開発元 勝者 使用技術
1997 チェス Deep Blue IBM AI ミニマックス探索、アルファベータ枝刈り、専門家の知識を組み込んだ評価関数
2011 クイズ Watson IBM AI 自然言語処理、情報検索、知識表現、機械学習
2012 将棋 Bonanza 保木邦仁(個人開発) AI ミニマックス探索、アルファベータ枝刈り、深層学習を用いた評価関数
2015 囲碁 AlphaGo DeepMind(Google) AI ディープニューラルネットワーク、モンテカルロ木探索、強化学習
2017 ポーカー Libratus カーネギーメロン大学 AI インプットによる戦略計算、ゲーム理論
2018 リアルタイムストラテジー AlphaStar DeepMind AI 強化学習、ディープニューラルネットワーク、探索アルゴリズム
2020 自然言語処理 GPT-3 OpenAI AI 大規模言語モデル、ディープラーニング
2022 チェス Chessとか DeepMind AI 強化学習、モンテカルロ木探索、ニューラルネットワーク

名前 貢献
1950 アラン・チューリング 人工知能の判定テストであるチューリングテストを考案
1956 ジョン・マッカーシー 人工知能という言葉を初めて使用し、フレーム問題を提唱
1959 アーサー・サミュエル 機械学習を「明示的にプログラムしなくても学習する能力をコンピュータに与える研究分野」と定義
1956 アレン・ニューウェル、ハーバード・サイモン 世界初の人工知能プログラムであるロジック・セオリストを開発
1966 ジョゼフ・ワイゼンバウム 世界初のチャットボット、ELIZAを制作
1980 ジョン・サール 強いAI・弱いAIという言葉を作った
1987 スティーブン・ハルナッド シンボルグラウンディング問題を提唱
1997 ダニエル・デネット フレーム問題を考えすぎるロボットの例で説明
2012 ジェフリー・ヒントン ILSVRC2012でディープラーニングを使って優勝
2012 アンドリュー・ン Courseraの設立に携わる
2014 イアン・グッドフェロー GANを考案
2015 ヤン・ルカン GANを「機械学習において、この10年間で最も面白いアイデア」と形容
2015 ヨシュア・ベンジオ ディープラーニングの父と呼ばれる
2015 イーロン・マスク OpenAIを設立
2029 レイ・カーツワイル 人工知能が人間より賢くなると予想
2045 レイ・カーツワイル シンギュラリティが起きると予想

ディープラーニングの基本的な流れ

データ収集: ディープラーニングモデルを訓練するためには、大量のデータが必要です。このデータは、モデルが学習するための「経験」となります。
データ前処理: 収集したデータをモデルが処理しやすい形式に変換します。例えば、画像データのサイズを統一したり、テキストデータから不要な情報を削除したりします。
モデルの設計: ニューラルネットワークの構造を設計します。これには、入力層、隠れ層(中間層)、出力層が含まれます。
モデルの訓練: 訓練データを使用してモデルを訓練します。この過程で、モデルはデータからパターンを学習します。
評価: テストデータセットを使用してモデルの性能を評価します。これにより、モデルが未知のデータに対してどの程度正確に予測できるかを測定します。
チューニング: モデルの性能を向上させるために、パラメータの調整や構造の変更を行います。
デプロイメント: モデルが満足のいく性能に達したら、実際のアプリケーションやサービスに組み込みます。
主要な用語:
ニューラルネットワーク: 人間の脳の神経回路を模倣した数学的モデルです。層状のネットワークで構成されています。
入力層: モデルにデータを供給する層です。
隠れ層: 入力層と出力層の間にある層で、データの複雑な特徴を抽出します。
出力層: モデルの最終的な予測や分類結果を出力する層です。
活性化関数: ニューラルネットワークの各ノード(ニューロン)の出力を決定する関数です。
損失関数: モデルの予測が正解からどれだけ離れているかを測定する関数です。
オプティマイザ: モデルの重みを調整し、損失関数の値を最小化するためのアルゴリズムです。
過学習: モデルが訓練データに過剰に適合し、新しいデータに対してうまく一般化できない状態です。
バッチサイズ: モデルの訓練時に一度に処理するデータの数です。
エポック: 訓練データセット全体を一通りモデルに学習させることです。
ディープラーニングは、画像認識、自然言語処理、音声認識など、多くの分野で応用されています。モデルの設計や訓練方法には多様な手法があり、それぞれのタスクに最適なアプローチを選択する必要があります。

ディープラーニング技術

正規化

バッチ正規化(Batch Normalization)
学習途中でデータの分布が偏ってしまう内部共変量シフトの問題を改善するために行う正規化。2015年に考案された。

局所コントラスト正規化
減算正規化、除算正規化を使ってCNNの画像に対して局所的にコントラストをスケーリングすること。その名の通り。

正則化手法

LASSO
Least Absolute Shrinkage and Selection Operator。L1ノルムという制約条件を与える正則化手法。パラメータのスパース推定を行う。

Ridge正則化
L2正則化項を使って説明変数の影響が大きくなり過ぎないようにする正則化。

正規化は入力データや特徴量の前処理手法であり、データの尺度や分布を変換してモデルの学習を効率化する。
正則化はモデル自体の学習アルゴリズムに対する手法であり、モデルの複雑さを制御して過学習を防ぐ。

データの前処理

欠損値の扱い
リストワイズ法
欠損値があるサンプルをそのまま削除してしまう方法。

回帰補完
欠損しているある特徴量と相関が強い他の特徴量が存在している場合に、回帰を利用して欠損値を埋める方法。
リストワイズ法だとデータが減ってしまうので、データが少ない時に有効。

学習方法

転移学習
別のタスクで学習しておき、学習済みの特徴やパラメータを利用すること。少ないデータ、短時間で学習することができる。学習済モデルの最終出力層のみを付け替えて、新しいデータで学習するが、事前に学習していたパラメータは重み更新しない。

友達のノートを借りて自分で勉強するイメージ。

ファインチューニング
転移学習では出力層以外を再学習させないのに対し、ファインチューニングは他の層もチューニングの意味で学習させる。1から学習させるよりかは効率的。

蒸留
別のモデルでトレーニングした知識を、別の軽量なモデルに継承させて使うこと。元のモデルを教師モデル、継承先のモデルを生徒モデルと呼ぶ。

蒸留(Distillation)は、大きなモデルの知識を小さなモデルに移す技術です。教師モデルの予測結果を使って、小さな生徒モデルを訓練します。
ファインチューニングは、あるタスクで学習したモデルを別のタスクに適用する技術です。モデルの一部を新しいデータで再学習させます。

End to End Learning
入力から出力まで一括で学習すること。コンピュータの性能が乏しい時は分割して学習させるしかなかった。

DQN
ディープラーニングを使った強化学習(Deep Q-Network)。ルールを教わることなく、ランダムな操作からハイスコアを狙っていくことができる。

最適化手法や関連用語

勾配降下法
勾配情報を利用して重みを増加させるか減少させるかを決める。学習率がハイパーパラメータ。逐次学習(オンライン学習)の場合は確率的勾配降下法(SGD)、ミニバッチ学習の場合はミニバッチ勾配降下法と呼ぶ。

Momentum
勾配降下法に慣性項を追加し、急激に学習進捗が遅くなることを防いだ手法。

AdaGrad
学習率をパラメータに適応させる方法。重みベクトルの勾配毎に学習率を変える。学習率が大きいと収束は速いが最適な解を得ることが難しい。逆に学習率が小さいと計算時間が長いという問題を解決しようと考えられた。

RMSprop
AdaGradの発展。Adagradでは一度勾配が緩くなると学習率は小さくなるため、その先に急な勾配がある場合に対応できない。RMSpropは十分過去の勾配情報の影響を小さくすることで勾配の変化に対応しようと考えられた。

AdaDelta
RMSpropの次元数の不一致による問題を解決しようと考えられた。ニュートン法の応用となっている。

Adam
RMSpropの発展。パラメータ毎に適切なスケールで重みが更新される。AdaGradとMomentumの特徴を持つ。
勾配の平均と分散をオンラインで推定し利用する。

Adabound
2019年に発表。Adamに学習率の上限と下限(クリッピング)を設定したもの。最初はAdamのように動作し、学習後半からSGDのように動くように設計されている。

プラトー
最適化計算中に鞍点や停留点にとまってしまい、学習が停滞していること。

自然言語処理

音声処理と言語 の時系列データをNNモデル

キーワード 説明 関連ワード
RNN 時系列データを扱うためのニューラルネットワークモデル LSTM、GRU、BPTT、時系列予測
Transformer 自然言語処理タスクで広く使用されるニューラルネットワークアーキテクチャ Self-Attention、Encoder-Decoder、BERT、GPT
Pre-trained Models 大規模なデータセットで事前学習されたモデル BERT、GPT、ELMo、Transfer Learning
LSTM 勾配消失問題を解決するために設計されたRNNの一種 長期依存性、ゲート機構、時系列予測
GRU LSTMと同様の機能を持つが、よりシンプルな構造のRNN 長期依存性、ゲート機構、時系列予測
双方向RNN 順方向と逆方向の両方向から系列データを処理するRNN 文脈考慮、系列ラベリング、Bi-LSTM
RNN Encoder-Decoder 系列データを別の系列データに変換するためのモデル Seq2Seq、機械翻訳、要約、対話システム
BPTT RNNの学習アルゴリズム 勾配消失問題、勾配爆発問題、Truncated BPTT
Attention Encoder-Decoderモデルで、Decoderが注目すべきEncoder出力を動的に選択するメカニズム Alignment、Source-Target Attention、Self-Attention
A-D変換 アナログ信号をデジタル信号に変換するプロセス サンプリング、量子化、符号化、PCM(パルス符号変調)
PCM アナログ信号をデジタル信号に変換する装置 量子化、符号化、ボイスコーデック
FFT 信号を時間領域から周波数領域に変換するアルゴリズム 周波数分析、スペクトログラム、短時間フーリエ変換
スペクトル包絡 音声信号の周波数特性を表す包絡線 フォルマント、MFCC、音声分析
MFCC 音声認識で広く使用される音響特徴量 音声分析、特徴抽出、音響モデル
フォルマント 音声の共鳴周波数 母音、音声分析、音声合成
音韻 言語の音の体系 音素、音声学、言語学
音素 言語の最小の音の単位 音韻、音声認識、音響モデル
音声認識エンジン 音声信号をテキストに変換するシステム 音響モデル、言語モデル、デコーディング
隠れマルコフモデル 音声認識で使用される確率的モデル 音響モデル、Viterbiアルゴリズム、Baum-Welchアルゴリズム
WaveNet 音声合成に使用されるディープラーニングモデル 音声合成、オートリグレッシブモデル、畳み込みニューラルネットワーク
メル尺度 人間の聴覚特性を考慮した周波数スケール 音声分析、MFCC、聴覚心理学
N-gram 連続するN個の単語の組み合わせ 言語モデル、Smoothing、Perplexity
BoW 文書を単語の出現頻度のベクトルで表現する手法 文書分類、情報検索、TF-IDF
ワンホットベクトル 単語を表現するベクトル 単語埋め込み、分散表現、word2vec
TF-IDF 単語の重要度を表す指標 文書分類、情報検索、BoW
単語埋め込み 単語をベクトル空間上の点として表現する手法 分散表現、word2vec、fastText、ELMo
局所表現 単語をそれ自体で表現する手法 BoW、ワンホットベクトル、TF-IDF
分散表現 単語を周囲の単語との関係性で表現する手法 単語埋め込み、word2vec、fastText、ELMo
word2vec 単語の分散表現を学習するためのアルゴリズム 単語埋め込み、スキップグラム、CBOW
スキップグラム word2vecの学習方式の一種 単語埋め込み、分散表現、word2vec
CBOW word2vecの学習方式の一種 単語埋め込み、分散表現、word2vec
fastText 単語を部分文字列に分解して処理するword2vecの拡張モデル 単語埋め込み、Sub-word情報、未知語対応
ELMo 文脈を考慮した単語埋め込みを生成するモデル 文脈考慮、単語埋め込み、言語モデル
言語モデル 単語の出現確率を予測するモデル N-gram、Perplexity、Smoothing
CTC 系列データのアラインメントを必要としない学習アルゴリズム 音声認識、手書き文字認識、系列ラベリング
Seq2Seq 系列データを別の系列データに変換するモデル RNN Encoder-Decoder、Attention、機械翻訳
Source-Target Attention Encoder-Decoderモデルで、EncoderとDecoderの間でAttentionを行う Seq2Seq、Alignment、機械翻訳
Encoder-Decoder Attention Encoder-Decoderモデルで、Decoderの各ステップでAttentionを行う Seq2Seq、Alignment、機械翻訳
Self-Attention 系列データ内の要素間の関係性を捉えるAttentionメカニズム Transformer、BERT、GPT
位置エンコーディング 系列データ内の位置情報を埋め込む手法 Transformer、Self-Attention、位置情報
GPT 大規模な言語モデル Pre-trained Models、言語生成、Zero-shot Learning
BERT 双方向のTransformerを用いた言語モデル Pre-trained Models、自然言語理解、Fine-tuning
GLUE 自然言語理解タスクのベンチマークデータセット 自然言語理解、ベンチマーク、評価指標
Vision Transformer 画像処理にTransformerアーキテクチャを適用したモデル 画像分類、物体検出、セマンティックセグメンテーション
構文解析 文の文法構造を解析するタスク 自然言語処理、依存構造解析、構文木
形態要素解析 文を単語や形態素に分割するタスク 自然言語処理、単語分割、品詞タグ付け

流れと用語

①形態素解析で文章を最小単位(単語等)に分ける。
②データクレンジングで不要な文字列を除去する。
③Bag-of-Words等でベクトル化する。
④TF-IDF等で単語の重要度評価をする。

Bag of Words(BoW)
文章に単語が含まれているかどうかを考えてテキストデータを数値化すること。
形態素解析を行ったデータをベクトルの形式に変換する。

TF-IDF
文章に含まれる単語の重要度を特徴量とする。

Word2Vec
単語をベクトルとして表現するGoogleによって2013年に開発された手法。単語同士の意味の近さをベクトルの足し算引き算で計算することができる。
例)王様-男+女=女王

LLM(Large Language Model)生成AI使用

要素技術 説明 関連手法・アルゴリズム
Transformer 自己注意機構を用いたニューラルネットワークアーキテクチャ Multi-Head Attention, Positional Encoding
Self-Attention 系列データの各要素間の関係性を学習する機構 Scaled Dot-Product Attention, Multi-Head Attention
Positional Encoding 系列データの位置情報を埋め込む手法 Sinusoidal Positional Encoding, Learned Positional Encoding
Byte Pair Encoding (BPE) サブワード単位でテキストを分割するトークナイゼーション手法 Wordpiece, SentencePiece
Layer Normalization 層ごとに活性化関数の入力を正規化する手法 -
Residual Connection 層の入力を出力に直接接続することで、勾配の流れを改善する手法 -
Masked Language Modeling (MLM) 入力テキストの一部をマスクし、そのマスクされた単語を予測するタスクによる事前学習 BERT, RoBERTa, ALBERT
Next Sentence Prediction (NSP) 2つの文が連続する文であるかを予測するタスクによる事前学習 BERT
Permutation Language Modeling (PLM) 文中の単語をランダムに並び替え、元の順序を予測するタスクによる事前学習 XLNet
Generative Pre-Training (GPT) 言語モデルによる単方向の事前学習 GPT, GPT-2, GPT-3
Contrastive Learning 類似した表現を近づけ、異なる表現を遠ざけるように学習する手法 SimCLR, CLIP
Knowledge Distillation 大規模モデルの知識を小規模モデルに蒸留する手法 DistilBERT, TinyBERT
Quantization モデルの重みやアクティベーションを低ビット化することで、モデルを圧縮・高速化する手法 INT8 Quantization, Quantization-Aware Training
Pruning モデルの重要度の低い重みを削除することで、モデルを圧縮・高速化する手法 Magnitude Pruning, Lottery Ticket Hypothesis

画像認識モデル

音声認識モデル(ディープラーニング)

モデル名 概要 特徴
DeepSpeech Mozillaが開発したオープンソースの音声認識システム CTCを用いたRNNベースのモデル
Wav2Letter Facebookが開発した音声認識システム CNNとCTCを組み合わせたモデル
Listen, Attend and Spell (LAS) GoogleのAttention-based音声認識モデル Encoder-Decoderアーキテクチャを採用
Jasper NVIDIAが開発したEnd-to-Endの音声認識モデル 1Dの深いCNNを使用
Conformer Googleが提案したTransformerベースのモデル CNNとTransformerを組み合わせたアーキテクチャ
Quartznet NVIDIAが開発したCTCベースの音声認識モデル 1D Time-Channel Separable Convolutionを使用
Transformer Transducer RNN-Transducerの拡張モデル Transformerエンコーダとprediction networkを組み合わせたモデル
ContextNet Googleが提案したコンパクトな音声認識モデル Depth-wise Separable Convolutionを使用
Citrinet Googleが開発した軽量な音声認識モデル Squeeze-and-Excitationを取り入れたアーキテクチャ

これらのモデルは、音声認識タスクにおいて高い性能を示しており、多くの研究や実際のアプリケーションで使用されています。モデルの選択は、タスクの要件、利用可能なリソース、および推論速度とメモリ使用量のトレードオフによって決まります。

表現学習の用語と説明、使用例の一覧表

用語 説明 使用例
表現学習 (Representation Learning) 生のデータから、タスクに適した特徴表現を自動的に学習する機械学習の手法。ディープラーニングは表現学習の一種。 画像認識、音声認識、自然言語処理など
自己教師あり学習 (Self-Supervised Learning) ラベル付けされていないデータから、モデル自身が教師信号を生成し、特徴表現を学習する手法。 画像の色空間変換、音声のマスキングなど
オートエンコーダ (Autoencoder) 入力データを潜在表現に圧縮し、再構成するニューラルネットワーク。データの低次元表現を学習できる。 画像の特徴抽出、異常検知など
変分オートエンコーダ (Variational Autoencoder, VAE) 確率的な潜在変数を用いたオートエンコーダ。生成モデルとしても使用可能。 画像生成、音声合成など
敵対的生成ネットワーク (Generative Adversarial Network, GAN) 生成器と識別器が競合的に学習を行い、生成器が真のデータ分布を学習する。 高解像度画像生成、音声変換など
潜在意味解析 (Latent Semantic Analysis, LSA) 単語-文書行列に特異値分解を適用し、単語の潜在的な意味表現を学習する手法。 文書分類、情報検索など
単語埋め込み (Word Embedding) 単語をベクトル空間上の点として表現する手法。単語の意味的な関係を捉えることができる。 自然言語処理、感情分析など
Word2Vec 単語の文脈情報からニューラルネットワークを用いて単語埋め込みを学習する手法。 単語の類似度計算、文章の分散表現など
GloVe (Global Vectors for Word Representation) 単語の共起情報に基づいて単語埋め込みを学習する手法。 単語の類似度計算、文章の分散表現など
BERT (Bidirectional Encoder Representations from Transformers) Transformerを用いた両方向の言語モデル。文脈を考慮した単語の表現を学習できる。 文章分類、質問応答、要約など

マルチアームバンディット問題(意思決定問題)において使用される最適化手法

アルゴリズム 概要
ε-greedy εの確率でランダムな選択(探索)、1-εの確率で最も報酬の高い選択(活用)を行う。
UCB (Upper Confidence Bound) 各アームの信頼区間を計算し、信頼区間の上限が最大のアームを活用し、それ以外の場合は探索を行う。
Thompson Sampling ベイズ的なアプローチを用いて、各アームの報酬分布を事後確率分布としてモデリングし、サンプリングを行って次のアームを選択する。
Softmax Action Selection アームの選択確率を報酬の期待値に比例させる確率分布を使ってアームを選択する。高い報酬を持つアームがより高い確率で選択されるが、低い報酬を持つアームも一定の確率で選択される。
EXP3 (Exponential-weight algorithm for Exploration and Exploitation) 指数関数的に報酬の期待値に応じてアームを選択し、選択されたアームの報酬に基づいて重みを更新する。リグレット(Regret)を最小化するように設計されている。
ε-first 最初のε回の試行で探索し、その後は最も報酬の高いアームを活用する。
ε-decreasing εを徐々に減少させ、探索から活用への移行を促す。

マルチアームバンディット問題は、複数の選択肢(アーム)から一つを選び、最大の報酬を得ることを目的とした意思決定問題です。この問題は、探索(exploration)と活用(exploitation)のバランスを取ることが重要で、以下のような応用例があります:
オンライン広告:どの広告がユーザーにとって最も関心が高いかを判断する。
ウェブサイトのA/Bテスト:異なるデザインや機能がユーザーのエンゲージメントにどのように影響するかを評価する。
臨床試験:複数の治療法の中から最も効果的なものを見つける。
レコメンデーションシステム:ユーザーが気に入る可能性のあるアイテムを推薦する。
ポートフォリオ管理:投資のリターンを最大化するための資産配分を決定する。

深層強化学習

キーワード 説明 関連ワード
深層強化学習 強化学習にディープラーニングを組み込んだ手法 強化学習、ディープラーニング、意思決定
DQN Deep Q-Networkの略称。Q学習にディープニューラルネットワークを組み合わせた手法/強化学習における基本的な手法 Q学習、ニューラルネットワーク、経験再生
ダブルDQN DQNの過大評価問題を抑制するための手法 DQN、過大評価問題、ターゲットネットワーク
デュエリングネットワーク 状態価値関数と行動価値関数を分離して学習する手法 DQN、状態価値関数、行動価値関数
ノイジーネットワーク ニューラルネットワークの重みにノイズを加えることで探索を促進する手法 探索と利用のトレードオフ、ノイズ、パラメータ空間での探索
Rainbow DQNの拡張手法を組み合わせたアルゴリズム(7つ) DQN、ダブルDQN、デュエリングネットワーク、ノイジーネットワーク
モンテカルロ木探索 ゲーム木探索の一種で、シミュレーションを用いて最適な手を選択する手法 ゲーム木探索、シミュレーション、探索と利用のトレードオフ
アルファ碁 (AlphaGo) 深層強化学習とモンテカルロ木探索を組み合わせた囲碁AI 深層強化学習、モンテカルロ木探索、囲碁
アルファ碁ゼロ (AlphaGo Zero) 人間の知識を使わずに自己対局のみで学習する囲碁AI 深層強化学習、モンテカルロ木探索、自己対局
アルファゼロ (Alpha Zero) アルファ碁ゼロの一般化版。様々なゲームに適用可能 深層強化学習、モンテカルロ木探索、ゲーム
マルチエージェント強化学習 複数のエージェントが協調・競争しながら学習する枠組み 強化学習、ゲーム理論、協調と競争
OpenAI Five Dota 2というゲームにおいて人間のプロチームに勝利したAI 深層強化学習、マルチエージェント強化学習、Dota 2
アルファスター (AlphaStar) StarCraftというゲームにおいて人間のトッププレイヤーに勝利したAI 深層強化学習、マルチエージェント強化学習、StarCraft
状態表現学習 強化学習における状態の表現を学習する手法 特徴抽出、オートエンコーダ、半教師あり学習
連続値制御 連続的な行動空間を持つタスクにおける強化学習 行動空間、方策勾配法、確率的方策
報酬成形 タスクの達成につながる中間的な行動に報酬を与える手法 報酬設計、スパース報酬問題、探索の促進
オフライン強化学習 事前に収集されたデータを用いて方策を学習する手法 データ効率性、方策の安全性、バッチ強化学習
sim2real シミュレーション環境で学習した方策を実環境に転移する手法 シミュレーション、ドメイン適応、転移学習
ドメインランダマイゼーション シミュレーション環境のパラメータをランダムに変化させることで汎化性能を向上させる手法 sim2real、データ拡張、ドメイン適応
残差強化学習 既存の方策に対する残差を学習することで方策を改善する手法 方策の微調整、ファインチューニング、転移学習

エッジAI

技術 目的 課題 解決策 関連技術・キーワード
プルーニング モデルのサイズ削減と推論速度向上 重要でないニューロンや接続の特定 不要なパラメータを削除してネットワークを簡素化 スパース性、重みの枝刈り、ネットワークの簡素化
量子化 計算効率とモデルサイズの改善 高ビット数の重みと活性化関数 低ビット表現への変換によるメモリと計算の削減 ビット幅削減、量子化アウェアトレーニング(QAT)
蒸留 小型モデルへの知識伝達 大きなモデルからの重要情報の抽出 教師モデルから生徒モデルへの知識の転移 知識蒸留、ソフトターゲット、教師-生徒アーキテクチャ

AI実装

データ収集

キーワード 説明 目的と課題 解決策 関連技術
オープンデータセット 公開されているデータセット データアクセスの容易さと品質の保証 ライセンスの確認、データの検証 データクレンジング、データ加工
個人情報保護法 個人情報の取扱いを規制する法律 個人情報の保護と適切な利用 コンプライアンスの遵守、匿名化処理 暗号化、アクセス制御
不正競争防止法 競争上の不正行為を防止する法律 知的財産の保護と公正な競争 法令遵守、知的財産管理 特許分析、商標管理
著作権法 著作物の権利を保護する法律 著作権の尊重と合法的な利用 ライセンス契約、著作権表示 DRM、コンテンツ管理
特許法 発明の権利を保護する法律 発明の促進と保護 特許出願、特許権の行使 特許データベース、特許戦略
データの網羅性 収集データの包括性 バイアスのないデータセットの構築 多様なデータソースの活用 データマイニング、統計分析
転移学習 ある領域で学習した知識を別の領域に適用 学習効率の向上と汎用性の確保 事前学習モデルの利用 ニューラルネットワーク、NLP
サンプリング・バイアス データサンプリングにおける偏り 正確な分析結果の確保 偏りのないサンプリング手法 層化抽出、ランダムサンプリング
産学連携 企業と学術機関の協力 新技術の開発と実用化 共同研究プロジェクト R&D、イノベーションマネジメント
オープン・イノベーション 外部のアイデアや技術を活用(企業連携) 革新的な製品やサービスの開発 パートナーシップの構築 クラウドソーシング、アクセラレータ
AI・データの利用に関する契約ガイドライン AIとデータ利用のための契約の枠組み 法的リスクの管理と透明性の確保 ガイドラインに基づく契約作成 法務、契約管理

データ収集手法

標本化(Sampling):

概要:

標本化は、連続時間信号から離散時間信号を取得するプロセスです。一定の時間間隔でアナログ信号の瞬時値を測定し、離散時間信号を生成します。

目的と必要性:

デジタル処理を可能にする:連続時間信号をそのままデジタル処理することは困難です。標本化により、離散時間信号を得ることで、デジタル処理が可能になります。
情報の保存:標本化定理(ナイキスト定理)に基づき、適切な標本化周波数を選択することで、アナログ信号の情報を失うことなく保存できます。

注意点:

エイリアシング:標本化周波数が不十分な場合、高周波成分が低周波成分として現れる現象が発生します。これを防ぐため、アナログ信号の最高周波数の2倍以上の標本化周波数が必要です。

量子化(Quantization):

概要:

量子化は、標本化された信号の振幅値を離散的な値に変換するプロセスです。各サンプルの振幅値を、あらかじめ定義された量子化レベルに割り当てます。

目的と必要性:

デジタル表現の実現:量子化により、連続的な振幅値を離散的な値に変換することで、デジタル表現が可能になります。
データ量の削減:量子化レベルを適切に選択することで、データ量を削減できます。ただし、量子化誤差が発生するため、音質とデータ量のトレードオフを考慮する必要があります。

注意点:

量子化誤差:量子化プロセスでは、元の信号と量子化された信号の間に誤差が生じます。この誤差を最小限に抑えるため、適切な量子化ビット数を選択する必要があります。

符号化(Encoding):

概要:

符号化は、量子化された信号をビット列に変換するプロセスです。量子化レベルに対応するビット列を割り当てることで、デジタルデータを生成します。

目的と必要性:

データの保存と伝送:符号化されたビット列は、デジタル記憶媒体に保存したり、通信チャネルを介して伝送したりすることができます。
データ圧縮の実現:符号化の過程で、データ圧縮技術を適用することで、データ量をさらに削減できます。

注意点:

符号化方式の選択:用途や要件に応じて、適切な符号化方式を選択する必要があります。代表的な符号化方式として、PCM、ADPCM、MP3、AACなどがあります。

データ加工・分析・学習

キーワード 目的 課題 解決策 関連技術/キーワード
データの加工 生データを分析可能な形式に変換 データの品質、整合性の確保 データクレンジングツールの使用 ETL、データクレンジング
プライバシーの配慮 個人情報の保護 データ漏洩のリスク 匿名化、暗号化技術の適用 GDPR、匿名加工情報
開発・学習環境の準備 効率的な機械学習モデルの開発 環境構築の複雑さ コンテナ技術の利用 Docker、Jupyter Notebook
アルゴリズムの設計・調整 最適なモデルの選定と調整 モデルの過学習や不十分な学習 ハイパーパラメータチューニング 機械学習、ニューラルネットワーク
アセスメント モデルの性能評価 正確な評価指標の選定 性能評価指標の適用 精度、再現率、F1スコア
アノテーション データにラベル付け 一貫性のあるラベル付け クラウドソーシング データラベリング
カメラ画像利活用ガイドブック 画像データの有効活用 プライバシーとセキュリティの確保 ガイドラインの遵守 画像認識、コンピュータビジョン
ELSI 倫理的、法的、社会的課題への対応 AIの倫理的な使用 倫理ガイドラインの策定 倫理的AI、XAI
Python プログラミングとデータ分析 学習曲線 教育資源の提供 データサイエンス、AI
Docker 開発環境の標準化 環境依存性の排除 コンテナ技術の採用 コンテナオーケストレーション
Jupyter Notebook 対話型開発環境の提供 コードの共有と再現性 ノートブック形式の採用 データ可視化、対話型プログラミング
説明可能AI (XAI) AIの判断根拠の透明化 AIのブラックボックス問題 XAI技術の開発 AIの倫理、AIガバナンス
フィルターバブル 情報のパーソナライズ 情報の偏り 情報源の多様化 エコーチェンバー、情報リテラシー
FAT 公平性、透明性、説明可能性の確保 AIのバイアス 公平性評価ツールの使用 AI倫理、アルゴリズム監査
PoC 概念実証 実用化への橋渡し プロトタイプの開発 MVP、プロトタイピング

日本の内閣府策定:人間中心のAI社会原則

人間中心の原則: AIは人間の尊厳と自由を尊重し、人間の利益のために利用されるべきです。
教育・リテラシーの原則: すべての人がAIを理解し、利用できるように教育とリテラシーを向上させる必要があります。
プライバシー確保の原則: 個人のプライバシーを守り、個人情報の慎重な管理が求められます。
セキュリティ確保の原則: AIシステムの安全性を確保し、セキュリティ対策を講じる必要があります。
公正競争確保の原則: 公正な競争を促進し、独占や不公平な利用を防ぐための措置が必要です。
公平性、説明責任及び透明性の原則: AIの決定過程は公平であり、その理由は説明可能で透明であるべきです。
イノベーションの原則: AIの発展はイノベーションを促進し、社会全体の利益に寄与するよう努めるべきです。

Google規則

Googleの人工知能に関する規則
Googleは、人工知能(AI)の開発と使用において、以下の原則を遵守するよう定めています。

1. 社会的に有益であること AIは、社会にとって有益で、人々の生活を豊かにするために使用されるべきです。差別や偏見を助長したり、人権を侵害したりするような使用は避けなければなりません。
2. 人々に責任を負うこと AIシステムは、透明性と説明責任を備え、開発者とユーザーに対して責任を負うべきです。どのようなデータに基づいてどのように判断しているのかを説明できるよう、AIシステムは設計されるべきです。
3. プライバシーを保護すること AIシステムは、ユーザーのプライバシーを尊重し、個人データを保護するよう設計されるべきです。データ収集と使用に関する透明性を確保し、ユーザーにデータへのアクセスと制御を提供する必要があります。
4. 高い科学基準を維持すること AIシステムは、高い科学基準に基づいて開発され、検証されるべきです。安全性と信頼性を確保するため、適切なテストと評価が行われる必要があります。
5. 人とAIの協働を促進すること AIは、人間に取って代わるのではなく、人間と協働して能力を補完するために使用されるべきです。人間とAIが効果的に協働できるよう、人材育成と教育が重要になります。
6. 安全性を確保すること AIシステムは、安全で信頼できるものであるように設計され、運用されるべきです。悪意のある利用や予期せぬ結果を防ぐための保護手段を講じる必要があります。
7. 説明責任を果たすこと AIシステムの開発と使用において、説明責任を果たすことが重要です。倫理的な問題や懸念事項に対処するための仕組みを構築し、ステークホルダーとの積極的な関与を図る必要があります。
8. 包摂性を確保すること AIシステムは、多様な人々のニーズと価値観を反映するように設計されるべきです。差別や偏見を助長するようなシステムは避けなければなりません。
9. 継続的に改善すること AI技術は急速に進化しているため、AIシステムは継続的に改善され、更新されるべきです。新しい知見や技術を取り入れ、倫理的な問題に対処し続けることが重要です。
10. 公共の議論を促進すること AIの開発と使用に関する公共の議論を促進することが重要です。様々なステークホルダーが参加できる場を設け、AIの未来について建設的な議論を行う必要があります。

これらの原則は、GoogleのAI倫理チームによって策定され、定期的に見直されています。詳細は、以下の資料をご覧ください。

その他の情報
上記以外にも、GoogleはAIに関する様々な規則を設けています。例えば、以下のようなものがあります。

AI原則の適用:Googleは、AI原則をすべてのGoogle製品とサービスに適用することを約束しています。
AI倫理チーム:Googleは、AI倫理チームを設置し、AI原則の遵守を監督しています。
外部レビュー:Googleは、AIシステムを外部の専門家によるレビューに受けることを約束しています。
ユーザーコントロール:Googleは、ユーザーが自分のデータとAIシステムとのやり取りを制御できるようにするツールを提供しています。
これらの規則は、GoogleがAIを責任ある倫理的な方法で開発と使用することを約束するものです。

注意事項
上記の情報は、2024年5月8日時点のものであり、今後変更される可能性があります。最新の情報については、Googleの公式ウェブサイトをご確認ください。

Microsoft規則

Microsoftの人工知能ガイドライン
Microsoftは、AIシステムがどのように振る舞うべきかについてのベストプラクティスを提供しています。これらは、「人間とAIのインタラクションのガイドライン」として知られており、以下のような内容を含んでいます:

初期の対話: AIはユーザーとの最初の対話でポジティブな印象を与えるべきです。
定期的な対話: AIは一貫性のある対話を維持し、ユーザーの期待に応えるべきです。
間違いが発生した場合: AIは間違いを認め、正しい情報を提供することで信頼を築くべきです。
時間とともに: AIは進化し、ユーザーのニーズに適応するべきです。
これらのガイドラインは、Aether、Microsoft Research、Officeとの協力のもと開発されました。

責任あるAIの実践
Microsoftは、AIシステムの開発において以下の原則を重視しています:

公正性: AIは偏見なく公平な決定を下すべきです。
信頼性と安全性: AIは信頼でき、安全に使用できるべきです。
プライバシーとセキュリティ: AIはユーザーのプライバシーを尊重し、セキュリティを確保するべきです。
包摂性: AIは多様なユーザーとそのニーズを考慮するべきです。
透明性: AIはその動作が理解しやすいものであるべきです。
説明責任: AIはその決定に対して説明責任を持つべきです。
これらの原則は、「責任あるAIの標準」としてまとめられており、AI技術が人々の利益を最大化し、リスクを最小限に抑えるように設計されています。

Microsoftは、これらの原則をAIシステムの設計、開発、デプロイメントの各段階で考慮し、実践しています。責任あるAIの実践は、技術の進歩とともに進化し続ける分野であり、Microsoftはこの分野におけるリーダーシップを維持し、AIの安全で信頼できる使用を促進するために努力しています。

: 人間とAIのインタラクションのガイドラインに関する詳細は、Microsoftの公式文書で確認できます。 : 責任あるAIの実践に関する詳細は、Microsoftの公式声明で確認できます。 : 責任あるAIの標準に関する詳細は、Microsoftの公式リソースで確認できます。

法律系

法改正一覧

国/地域 改正内容
日本 2022 個人情報保護法の改正: オプトアウト規定の厳格化
法令違反ペナルティの強化
情報類型に個人関連情報、仮名加工情報が追加
著作権法の改正: AIが生成したコンテンツの著作物性に関する議論が進行。
EU 2023 AI法規制: AIを包括的に規制する「Artificial Intelligence Act」に暫定的に合意。
ドイツ 2024 欧州AI法: 欧州議会が最終案を可決し、施行予定。
イギリス 2023 第1回AI安全サミット開催。独自のAI規制を進める。
アメリカ 2022 「AI権利章典のための草案」公表: AIの開発に当たり考慮すべき原則をまとめたもの。
中国 2022 「AI(人工知能)倫理ガバナンスの強化に関する中国の立場文書」提出。

GDPR 頻出問題

###(日本)AIと著作権に関する考え方

不正競争防止法

下記3つの要件をすべて満たすものを営業秘密として認める

  1. 秘密管理性: 秘密として管理されている
  2. 有用性: 生産方法、販売方法その他の事業活動に有用な技術または営業上の情報
  3. 非公知性: 公然と知られていないもの
個人情報保護法

個人情報の有用性に配慮しつつ、個人の権利・利益を保護することを目的とした個人情報の取り扱いに関する法律

個人情報保護法改正
2022年4月の改正

  • オプトアウト規定の厳格化
  • 法令違反ペナルティ強化
  • 情報類型に個人関連情報、仮名加工情報が追加

扱う情報は以下の4つに分類される

  1. 個人情報: 情報に含まれる記述により、特定の個人を識別できるもの(ほかの情報と容易に照合可能)や、個人識別符号が含まれるもの
    ※ (匿名加工し、個人特定できないようにする)
    例: 氏名、生年月日、連絡先、防犯カメラの識別可能映像、マイナンバー、DNA情報など

    例外もある

    刑事訴訟法
    生命、身体、財産の保護に必要であり、本人の同意が必要なとき

  1. 仮名加工情報: ほかの情報と称しない限り特定の個人を識別できないように個人情報を加工したもの
    加工例: 加工前の個人情報「佐藤 一, 男性, 25歳, 視力:0.2」
    加工後の仮名加工情報「(匿名ID), 男性, 25歳, 視力:0.2」(匿名IDと別資料により氏名を参照可能)

  2. 匿名加工情報: 特定の個人を識別できないように、個人情報を復元不可能に加工した個人に関する情報
    加工例: 加工前の個人情報「佐藤 一, 男性, 25歳, 視力:0.2」
    加工後の匿名加工情報「(氏名削除), 男性, 25歳, 視力:0.2」

個人情報の匿名加工

  1. 定義

個人情報を特定の個人を識別できないように加工すること
元の個人情報を復元できないようにすること

  1. 匿名加工情報の作成方法

個人識別符号の削除
特定の個人を識別できる記述の削除または他の記述への置換
個人情報と他の情報の照合による識別リスクへの対応
匿名加工情報の安全管理措置

  1. 匿名加工情報の利用

作成者は、匿名加工情報を第三者に提供できる
提供先は、匿名加工情報を元の個人情報に復元してはならない
提供先は、匿名加工情報の安全管理措置を講じなければならない

  1. 匿名加工情報の公表義務

作成者は、匿名加工情報を作成したときは、以下の事項をインターネットなどで公表しなければならない

匿名加工情報の項目
作成の方法
第三者提供の有無
第三者に提供される匿名加工情報の項目
第三者への提供の方法

  1. 匿名加工情報の注意点

完全な匿名化は困難であり、リスクが残る可能性がある
匿名加工情報の作成には高度な技術と専門知識が必要
匿名加工情報の取り扱いには十分な注意と管理が求められる

  1. 個人関連情報: 生存する個人に関する情報かつ上記3つのどれにも該当しない情報
    例: Cookie、IPアドレス、位置情報、閲覧履歴、購買履歴など
自動運転関連
レベル別の分類
レベル 大別 詳細
レベル0 自動運転なし 運転者がすべて操作する
レベル1 運転支援など アクセル、ブレーキ、ハンドル操作のいずれかを特定の条件下で部分的にシステムが実行
レベル2 部分自動運転化 アクセル、ブレーキ、ハンドル操作のすべてを特定の条件下で部分的にシステムが実行
レベル3 条件付き自動運転化 一定の条件下で運転操作のすべてをシステムが実行、継続不可の場合に運転者が対応する必要がある(2021/3に販売開始)
レベル4 高度運転自動化 運転操作のすべてをシステムが実行、継続不可の場合の対応も一定の条件下でシステムが対応
レベル5 完全運転自動化 運転操作のすべてをシステムが実行、継続不可の場合の対応も無条件でシステムが対応

道路交通法(日本)の現状

  • 2020年4月にレベル3の自動運転での行動の走行が解禁

ドローン関連

航空法

国土交通大臣の許可が必要となる空域

  • 空港などの周辺上空の空域
  • 緊急用務空域
  • 150m以上の高さの空域
  • 人口集中地区の上空

禁止・遵守が求められる規制

  • 飲酒時の操縦禁止
  • 飛行前点検の遵守
  • 衝突予防の遵守
  • 危険な飛行の禁止

その他国土交通大臣の許可が必要となる場合

  • 夜間の飛行
  • 目視外の飛行
  • 人または物との距離が30m未満の飛行
  • 催し場所での飛行
  • 危険物輸送
  • 物件投下

レベル別の分類

レベル 分類 例など
レベル1 無人・有人地帯の目視内での操縦飛行 農薬散布や空撮、送電線などのインフラ点検が該当
レベル2 無人・有人地帯の目視内での自立飛行可能 空中写真測量、ソーラーパネルの設備点検などが該当
レベル3 無人地帯の目視外での操縦による飛行と自立飛行 離島や山間部への荷物配送、行方不明者の捜索、河川測量などが該当
レベル4 無人地帯の目視外での操縦による飛行と自立飛行 市街地などを含めた都市の物流や警備、インフラ点検、避難誘導、消火活動などが該当

定理・経験則・他

ノーフリーランチ定理

  • あらゆる問題を効率よく溶ける万能なアルゴリズムはないこと
  • 人物: ジェフリー・ヒントン

みにくいアヒルの子定理

  • 仮定がないと分類することは不可能であること

オッカムの剃刀

  • 現象を説明する際に必要以上に多くのことを仮定すべきではないという意味
  • 機械学習においてその考え方が採用

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

  • ニューラルネットワークの重みパラメータの数に対して、その10倍以上の訓練データ量が最低限必要とする経験則

その他

各種計算 モデル評価 正解率 

※計算は正答率(TP+TN/ ALL) + otherで考える
 すぐ計算できる+他の選択肢で取捨選択

image.png

image.png

2段階検出とFast RNNについて説明します。

2段階検出(Two-stage detection):
2段階検出は、物体検出(Object Detection)におけるアプローチの一つです。このアプローチでは、物体検出を2つのステージに分割します。

第1段階: Region Proposal(領域提案)
画像から、物体が存在する可能性の高い領域(Region of Interest, ROI)を抽出します。代表的な手法としては、Selective Search、EdgeBoxes、Region Proposal Network(RPN)などがあります。
第2段階: Classification and Bounding Box Refinement(分類と境界ボックスの調整)
第1段階で得られたROIに対して、CNNなどを用いて特徴抽出を行い、物体のクラス分類と境界ボックスの位置調整を行います。

代表的な2段階検出手法としては、R-CNN、Fast R-CNN、Faster R-CNNなどがあります。

Fast RNN:
Fast RNNは、リカレントニューラルネットワーク(RNN)の高速化手法の一つです。RNNは、時系列データや文章などの系列データを扱うことができるニューラルネットワークですが、長い系列を処理する際に勾配消失(Vanishing Gradient)や勾配爆発(Exploding Gradient)といった問題が生じることがあります。

Fast RNNは、これらの問題に対処するために提案された手法で、以下の特徴があります。

Gated Recurrent Unit(GRU)やLong Short-Term Memory(LSTM)などのゲート付きRNNアーキテクチャを使用し、勾配の流れを制御します。
RNNの重みを分解し、行列の積を効率的に計算することで、計算速度を向上させます。
バッチ正規化(Batch Normalization)を適用し、内部共変量シフト(Internal Covariate Shift)を軽減します。

SMOTE

不均衡データ分類において、任意の点を人工的なデータとして生成する手法は、データ拡張(Data Augmentation)の一種であり、オーバーサンプリング(Oversampling)と呼ばれています。
オーバーサンプリングは、少数クラスのサンプル数を増やすことで、クラス間の不均衡を緩和する手法です。代表的なオーバーサンプリング手法の一つが、SMOTE(Synthetic Minority Over-sampling Technique)です。

###制限つきボルツマンマシン (RBM)
深層ネットワークにおける、 RBMで事前学習できる

image.png

XAI

説明の種類 説明の内容 代表的な手法
グローバル説明 モデル全体の動作や意思決定プロセスを説明 - 特徴重要度(Feature Importance)
- 部分依存性プロット(Partial Dependence Plot)
- 累積局所効果(Accumulated Local Effects)
ローカル説明 個々の予測結果に対する説明を提供 - LIME(Local Interpretable Model-agnostic Explanations)
- SHAP(SHapley Additive exPlanations)
- Anchor
反事実的説明 「もしこの特徴量の値が異なっていたら、モデルの出力はどうなっていたか」という観点から説明 - Contrastive Explanation
- Counterfactual Feature Importance

Deeplab

特徴 説明
畳み込みニューラルネットワーク(CNN)ベース ResNetやXceptionなどの深層CNNをバックボーンネットワークとして使用し、画像の特徴抽出を行う
Atrous Convolution(拡張畳み込み) フィルタの適用間隔を拡張することで、より広い受容野を持つことができ、画像のコンテキスト情報を効果的に捉えることができる
Atrous Spatial Pyramid Pooling(ASPP) 複数のAtrous Convolutionを並列に適用し、それらの出力を結合することで、マルチスケールでの特徴抽出を可能にする
Conditional Random Fields(CRF)の統合 初期のDeepLabでは、CNNの出力に対してCRFを適用することで、セグメンテーション結果の空間的な整合性を向上させていた。最新のDeepLabでは、CRFの概念をニューラルネットワークに組み込むことで、エンドツーエンドの学習を可能にしている
エンコーダ-デコーダアーキテクチャ DeepLabv3+で導入。エンコーダ部分でマルチスケールの特徴抽出を行い、デコーダ部分で特徴マップを元の画像サイズに復元することで、より高解像度のセグメンテーション結果を得ることができる

Mask R-CNN

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?