🔥

『ディープラーニングG検定公式テキスト』を読んだ

に公開

G検定取得のため『ディープラーニングG検定公式テキスト』を読んだので学習メモを残す。
ただし、第二版を読んだため、いまであれば最新の第三版を読まれるべし。

学習メモ

1. 人工知能(AI)とは

  • 人工知能(Artificial Intelligence)

    • 1956年にアメリカで開催されたダートマス会議において、ジョン・マッカーシーが初めて使った言葉。この会議以降「人工知能」が学術的な研究分野として認められる。
  • ロジックセオリスト

    • 世界初の人工知能プログラム。
    • AI研究の中核となる概念を生み出す
      • 探索としての推論: 探索木を探索する。根は初期の仮説であり、それぞれの分岐は論理規則に基づいた演繹を表している
      • ヒューリスティック: 探索木の指数的爆発を経験則を使って枝刈りする

https://ja.wikipedia.org/wiki/Logic_Theorist

2. 人工知能を巡る動向

  • 迷路をコンピュータを使って解く

    • 迷路の問題をコンピュータで処理できるような形式に変形する
    • 迷路の問題は探索木の構造で表現できる https://zero2one.jp/ai-word/search-tree/
    • 探索木とは場合分け。場合分けを続けていけば、いつか目的の条件に合致するものが出現する
      • 幅優先探索: 出発点に近いノード順に検索
      • 深さ優先探索: あるノードからいけるところまでいって、行き止まりになったら1つ手前のノードに戻って探索
  • ボードゲーム

    • ボードゲームをコンピュータで解く基本は探索だが、その組み合わせの数が天文学的な数字なるためすべてを探索しきれない
    • コスト
      • 効率よく探索するためにコストの概念を取りれる
      • Mini-Max法
        • 自分が指すときにスコアが最大(自分が有利)、相手が指す時にスコアが最小(つまり相手が有利=自分が不利)になるように手を打つはずであることを前提に戦略を立てる
    • モンテカルロ法
      • ゲームがある局面まで進んだら、ゲームの局面のスコアを評価するという方法を完全に破棄する
      • その代わり、コンピュータがランダムに指す方法でゲームを終局(プレイアウト)させて勝率を計算
      • 人間の思考方法とは違い、モンテカルロ法はブルートフォース(力任せ)で押し切る方法
    • AlphaGo
      • ブルートフォースの戦略ではなくディープラーニングを利用
  • エキスパートシステム

    • 専門分野の知識を取り込み、その分野のエキスパート(専門家)のように振る舞うプログラムをエキスパートシステムと呼ぶ
    • エキスパートシステムの限界
      • 人間の専門家からの知識獲得は暗黙的であるため困難
      • コンピュータで知識を扱うための方法論として、意味ネットワークやオントロジーの研究が行われる
  • 意味ネットワーク

    • 認知心理学において長期記憶の構造モデルとして考案
    • 「概念」をラベルの付いたノードで表し、概念間の関係をラベルのついたリンク(矢印)で結んだネットワークとして表す。
  • オントロジー

    • 意味ネットワークは概念と概念の関係は表現できるが、その記述をどのように行うべきなのかについては定まっていない
    • いろんな人が知識を表現しようとすると、その知識の記述レベルや語彙がばらばらになり、それらをつなげて利用することができない
    • 「言葉」や「その意味」、また「それらの関係性」を、他の人とも共有できるように、明確な約束事(仕様)として定義しておく
      • ヘビーウェイトオントロジー
        • 構成要素や意味的関係の正当性について哲学的な考察
        • Cycプロジェクト
      • ライトウェイトオントロジー
        • コンピュータが概念間の関係性を自動で見つける取り組み
  • 機械学習

    • 機械学習とは、人工知能のプログラム自身が学習する仕組み
    • ニューラルネットワーク
      • 機械学習の1つで、人間の神経回路を真似することで学習を実現
      • 単純パーセプトロン
        • 単純な問題しか解けない。
  • ディープラーニング

    • ニューラルネットワークを多層にしたものがディープラーニング(深層学習)
    • 「パーセプトロンの限界」は、ニューラルネットワークを多層にして、誤差逆伝播法(バックプロパゲーション)を用いて学習して克服

3. 人工知能分野の問題

  • フレーム問題
    • 複雑な現実世界で行動する際に、考慮すべき事柄が無限に存在し、その中から行動に必要な情報だけを効率的に選択することが困難になるという問題
    • 例. 洞窟からバッテリーを持ち出すロボット
  • チューリングテスト
    • コンピュータが人間のような知性を持つかどうか判定するテスト
  • シンボルグラウンディング問題
    • 記号(シンボル)とその対象がいかに結びつくかという問題
    • 例. 「シマ(Stripe)」、「ウマ(Horse)」、「シマウマ(Zebra)」
  • 特徴量
    • 注目すべきデータの特徴を量的に表したものを、特徴量と呼ぶ
    • 例. ビールメーカーが真夏のビールの売上を予測する場合、「気温」を特徴として選ぶ
    • 人間が特徴量を見つけ出すのが難しいのであれば、特徴量を機械学習自身に発見させればよいアプローチは特徴量表現学習と呼ばれる
    • ディープラーニングは特徴量表現学習を行う機械学習アルゴリズムの1つ。
  • シンギュラリティ(技術的特異点)
    • 人工知能が十分に賢くなり、自分自身よりも賢い人工知能を作るようになった瞬間、無限に知能の高い存在を作るようになり、人間の想像力が及ばない超越的な知性が誕生するという仮説

4. 機械学習の具体的手法

4-1. 代表的な手法

  • 教師あり学習
    • 与えられたデータ(入力)を元に、そのデータがどんなパターン(出力)になるのかを識別・予測する手法
      • 例. 過去の売上から、将来の売上を予測したい
      • 例. 与えられた動物の画像が、何の動物化を識別したい
    • なにを予測したいかの2種類
      • 回帰問題は出力が連続値であり、売上のように連続値そのものを予測したい時に利用
      • 分類問題は出力が離散値であり、動物の画像のようにカテゴリを予測したい時に利用
    • 手法
      • 線形回帰
      • ロジスティック回帰
      • ランダムフォレスト
      • ブースティング
      • サポートベクターマシン
      • ニューラルネットワーク
      • 自己回帰モデル
  • 教師なし学習
    • (入力)データのみから、データそのものがもつ構造・特徴を見つけ出す手法
      • 例. ECサイトの売上データから、どういった顧客層があるのかを識別したい
      • 例. 入力データの各項目間にある関係性を把握したい
    • 手法
      • 階層なしクラスタリング(k-means法)
      • 階層ありクラスタリング(ウォード法)
      • 主成分分析
      • 強調フィルタリング
      • トピックモデル
  • 強化学習
    • 行動を学習する仕組み。ある環境下で、目的とする報酬(スコア)を最大化するためにはどのような行動をとっていけばいいかを学習していくこと
      • 例. 車の自動運転技術
    • バンディットアルゴリズム
      • 活用(exploitation)と探索(exploration)
        • 活用とは、「現在知っている情報の中から報酬が最大となるような行動を選ぶ」こと
          • 報酬が高かった行動を積極的に選択する
        • 探索とは、「現在知っている情報以外の情報を獲得するために行動を選ぶ」こと。
          • 他にもっと報酬が高い行動があるのではと別の行動を選択する
      • ε-greedy方策
      • UCB方策
      • 方策(policy)
        • 「ある状態からとりうる行動の選択肢、およびその選択肢をどう決定するかの戦略」のことで、各行動を選択する確率表現

4-2. モデルの評価

  • モデルの評価
    • 未知のデータに対しての予測能力を見る
    • 交差検証: 手元にある全データを学習用のデータ(訓練データ)と評価用のデータ(テストデータ)にランダムに分割して評価
      • 過学習とは、学習に使ったデータに過剰に適合してしまい、その結果、新しい未知のデータに対してうまく予測できなくなってしまう状態
        • テスト勉強で、問題と答えの丸暗記をしている状態
      • 過学習の検出: 学習用のデータでの性能が高いが、交差検証での性能が低い場合、過学習が起きていると検出できる。
  • 混同行列
    • 二値分類問題(例えば「陽性(Positive)」か「陰性(Negative)」かを予測する)
      • TP (True Positive): 実際に「陽性」であり、予測も「陽性」だった数。(正しく陽性と予測できた)
      • TN (True Negative): 実際に「陰性」であり、予測も「陰性」だった数。(正しく陰性と予測できた)
      • FP (False Positive): 実際は「陰性」なのに、予測は「陽性」だった数。(誤って陽性と予測した。「偽陽性」)
      • FN (False Negative): 実際は「陽性」なのに、予測は「陰性」だった数。(誤って陰性と予測した。「偽陰性」)
    • 評価指標
      • 正解率(accuracy):
        • `accuracy = (TP + TN) / (TP + TN + FP + FN)`
        • 全データ中、どれだけ予測があたったかの割合。
        • データが不均衡だと役に立たないこともある
          • たとえば、99%が陰性で1%が陽性のデータセットで、全てのデータを「陰性」と予測するモデルの場合。このモデルの正解率は99%だが、全てのデータは「陰性」と判断するため「陽性」を全く見つけられていない。
      • 適合率(precision):
        • `precision = TP / (TP + FP)`
        • 予測が正の中で、実際に正で合ったものの割合。
        • FPを減らしたい場合に重要
          • 例. 迷惑メールフィルタ
      • 再現率(recall):
        • `recall = TP / (TP + FN)`
        • 実際に正であるものの中で、正だと予測できた割合。
        • FNを減らしたい場合に重要
          • 例. 病気の診断システム
          • 例. 不良品の検出
      • F値(F measure):
        • `F measure = 2 × precision × recall / (precision + recall)`
        • 適合率と再現率の調和平均。

分類: 精度、再現率、適合率、関連する指標
https://developers.google.com/machine-learning/crash-course/classification/accuracy-precision-recall?hl=ja

迷惑メールフィルタのシナリオ

迷惑メールフィルタのシナリオで評価指標を検討する。
迷惑メールフィルタを開発し、1000件のメール(迷惑メールと通常メールが混在)で性能をテストする。

予測: 迷惑メール 予測: 通常のメール 合計(実際)
実際: 迷惑メール TP = 180 FN = 20 200
実際: 通常のメール FP = 10 TN = 790 800
合計(予測) 190 810 1000
  • TP (True Positive): 実際に迷惑メールで、フィルタも正しく「迷惑メール」と判定した数 = 180件
  • TN (True Negative): 実際に通常のメールで、フィルタも正しく「通常のメール」と判定した数 = 790件
  • FP (False Positive): 実際は通常のメールなのに、フィルタが間違って「迷惑メール」と判定した数 = 10件 (← 重要なメールが迷惑メールフォルダに行ってしまう誤判定)
  • FN (False Negative): 実際は迷惑メールなのに、フィルタが間違って「通常のメール」と判定した数 = 20件 (← 迷惑メールの見逃し)

これらの数値を使って評価指標を計算する。

  • 正解率: 970/1000=0.97
    • 全体1000件のうち、フィルタが正しく分類できた割合は97%
  • 適合率: 180/180+10=0.947
    • フィルタが迷惑メールと判断したもの(190件)のうち、本当に迷惑メール(180件)だった割合は94.7%
    • フィルタの迷惑メール判定がどれだけ合っていたかを示す。
    • 迷惑メールフォルダに入っているメール190件のうち、そのうち10件は通常メールの可能性がある。FP(通常メールの誤判定)が少ないと高い数値となる。
  • 再現率: 180/180+20=0.90
    • 実際に存在したすべての迷惑メール(200件)のうち、フィルタが正しく迷惑メール(180件)として検知できた割合は90%
    • 残りの10%にあたる20件の迷惑メールは、フィルタをすり抜けてしまい、通常のメールとして受信トレイに届く。
    • 全ての迷惑メールのうち、フィルタがどれだけを正しく検出(捕獲)できたかの割合で迷惑メールの検出率となる。
  • F値: 20×0.947×0.9/0.047+0.9=0.923

迷惑メールフィルタにおいては適合率を重視する。

  • FP(通常のメールの誤判定)は、メールを見逃すリスクにつながるため絶対に避けたい
  • FN(迷惑メールの見逃し)は、検知できなくてもユーザーが手動で迷惑メールを削除できる。
    • 再現率向上は、フィルタに「少しでも怪しいメールは、とりあえず迷惑メールと判定しよう」と指示するため、迷惑メールの見逃し(FN)は減るが、誤判定(FP)が増えるトレードオフの関係にある

適合率 (Precision) が高いということは、「このフィルタが『迷惑メールだ』と判定したメールは、迷惑メールですよ」という信頼性が高いことを意味する。

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

  • ディープラーニングとは?
    • 隠れ層を増やしたニューラルネットワーク
  • 誤差逆伝播法
    • モデルの予測結果と実際の正解値との誤差をネットワークの出力層から入力層にかけて逆向きにフィードバックさせる形でネットワークの重みを更新
    • 課題:
      • 多層にしても学習精度が上がらない。隠れ層を増やすと誤差のフィードバックがうまくいかず、モデルの精度が下がってしまう。
      • ニューラルネットワークの活性化関数としてシグモイド関数が使われていたが、シグモイド関数の微分は最大値は0.25にしかならないため隠れ層を遡る毎に伝播していく誤差はどんどん小さくなっていく
      • その結果、多くの隠れ層があると、入力層付近の隠れ層に到達するまでにはフィードバックすべき誤差が0になってしまう。「勾配消失問題」と呼ばれる
  • オートエンコーダ(自己符号化器)
    • 入力と出力が同じになるように学習する
      • 例. 手書き文字"3"という画像データを入力したら、同じく"3"という数字画像を出力する
      • 入力されたデータを圧縮(エンコード)し、その圧縮された情報から復元(デコード)する
      • より次元の低い隠れ層に変換するため、復元するための大事な情報だけが隠れ層に反映していく
  • 積層オートエンコーダ
    • オートエンコーダを順番に学習させ、それを積み重ねていくアプローチ。ネットワーク全体を一度に学習するのではなく、入力層に近い層から段階的に学習を進める。
    • 順番に学習することでそれぞれで隠れ層の重みが調整されるので、全体で見ても重みが調整されたネットワークができる。
    • オートエンコーダを順番に学習していく手順のことを事前学習(pre-traning)と言う
  • ファインチューニング
    • 事前学習に用いたオートエンコーダは教師なし学習であり、そのままでは分類などのタスクに必要なラベルを出力できない
      • 例えば、オートエンコーダに「これは犬の画像だよ」「これは猫の画像だよ」という正解ラベルは与えていない(これが「教師なし学習」)ため、入力された画像が「犬」というカテゴリなのか、「猫」というカテゴリなのかを区別は学習していないためラベル出力できない。
    • オートエンコーダを積み重ねていった最後にロジスティクス回帰層(シグモイド関数あるいはソフトマックス関数による出力層)を足すことで教師あり学習を行う
    • これにより、ネットワーク全体は隠れ層が複数あるディープニューラルネットワークが実現できる
    • 最後にロジスティクス回帰層も重みの調整が必要になる。事前学習を終え、ロジスティクス回帰層を足したら、最後にディープニューラルネットワーク全体で学習を行う。これを「ファインチューニング」と呼ぶ。
  • 事前学習なしのアプローチ
    • 現在では、事前学習を行わず、ネットワーク全体を一度に学習させる直接的なアプローチが主流となっている。
    • 事前学習は層ごとに順々に学習をしていくため、全体の学習に必要な計算コストが非常に高い。
    • 勾配消失問題の原因であった活性化関数を工夫する
    • 活性化関数
      • tanh(ハイパボリックタンジェント)関数
      • ReLU(Rectified Linear Unit)関数など
  • ディープラーニングのデータ量
    • 学習とはモデルがもつパラメータの最適化
    • 例. 畳み込みニューラルネットワークの手法の1つである AlexNetと呼ばれるモデルのパラメータ数は、約6000万個。

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

6-1. 畳み込みニューラルネットワーク(CNN)

  • ニューラルネットワーク
    • 通常のニューラルネットワークでも画像データを扱うことはできるが、縦横にならんでいる画像データを分解して縦一列に変換する。
    • 画像データは縦横の位置関係が重要な意味を持つ。1次元ベクトルにしてしまうと、隣り合っていたピクセルが離れた要素になる可能性がある。
  • CNN
    • 画像データを2次元のまま入力として扱う
    • 畳み込み層
      • フィルタを用いて特徴を抽出する操作
      • フィルタを入力画像の上でスライドさせながら畳み込み演算を行い、そのフィルタが反応する場所をまとめた特徴マップを作成する処理
      • 畳み込み層によって「位置のズレ」に強いモデルができる
    • プーリング層
      • 画像サイズを決められたルールに従って小さくする(ダウンサンプリング)
      • 平均値や最大値などを用いて特徴マップから一つの値を取り出す処理
      • 位置のズレに対する頑健性を持つ
    • 全結合層
      • 畳み込み層、プーリング層も出力は画像のような2次元の特徴マップのため、特徴を2次元から1次元に変換する必要がある
      • 特徴マップを1列に並べる処理
    • 転移学習
      • 学習済みのモデルの最終層を、新しいデータセットに併せて入れ替え最終層の重みのみを再学習する
      • ファインチューニングは全層の結合を学習する

CNN
https://atmarkit.itmedia.co.jp/ait/articles/1804/23/news138.html
https://developers.google.com/machine-learning/practica/image-classification/convolutional-neural-networks?hl=ja

6-2. 深層生成モデル

  • 生成モデル
    • 元画像と似たような画像データを生成することを目的
  • 深層生成モデル
    • ディープラーニングを取り入れた生成モデル
  • 変分オートエンコーダ(Variational AutoEncoder、VAE)
    • 従来のオートエンコーダは、入力と出力を同じにするような学習を行う。隠れ層は入力データの特徴をうまく圧縮した表現となる
    • VAEは入力データを、統計分布に変換する。
  • 敵対的生成ネットワーク(Generative Adversarial Network、GAN)
    • ジェネレーター(間違えるような偽物画像をつくるように学習)とディスクリミネータ(偽物をきちんと見抜けるように学習)という2つのネットワークを競わせることで学習する

6-3. 画像認識分野での応用

  • 画像認識タスク
    • 入力画像に対してその画像に写る代表的な物体クラスの名称を出力するタスク
      • AlexNet
      • GoogLeNet: Inceptionモジュールというカーネルサイズの異なる複数の畳み込み層から構成される小さなネットワークを積層
      • VGG
      • ResNet: SkipConnectionという「層を飛び越えた結合」を加えたネットワーク
  • 物体認識タスク
    • 入力画像に写る物体クラスの識別とその物体の位置を特定するタスク
    • 2段階モデル: 大まかな物体の位置を特定した後、その物体クラスを識別する
      • R-CNN: Selective Search
      • FPN
    • 1段階モデル: 位置の特定とクラスの識別を同時に行う
      • YOLO
      • SSD
  • セグメンテーションタスク
    • 画像の画素ごとに識別を行うタスク
      • FCN: 畳み込み層とプーリング層を繰り返して得た特徴マップを画像サイズまで一度に拡大する
      • SegNet: エンコーダで得た特徴マップをデコーダで画像サイズまで徐々に拡大する
      • U-Net: エンコーダで得た特徴マップの一部を切り出してデコーダでも用いる

6-4. 音声処理と自然言語処理分野

RNN

  • RNN(リカレントニューラルネットワーク)
    • RNNを使ってできることの代表例として、言語モデル(LanguageModel)
      • 過去に入力された単語列から次に来る単語を予測する
    • 通常のニューラルネットワークに過去の隠れ層を追加し、時間依存性を学習。
    • 時間軸に沿って誤差を反映することを「BackPropagation Through-Time(BPTT)」と呼ぶ
  • LSTM
    • RNNの課題
      • ①勾配消失問題: 誤差を逆伝播する際に、過去に遡るにつれて勾配が消えていってしまう
      • ②入力重み衝突、出力重み衝突: 時系列データを扱う際は「今の時点では関係ないけれど、将来の時点では関係ある」という入力が与えれた際、重みは大きくスべきであり、同時に小さくすべきであるという矛盾を抱える
    • LSTM(Long Short-Term Memory)
      • LSTMブロックと呼ばれる機構を導入し、時系列情報をうまくネットワーク内に保持する
        • ①誤差を内部にとどめ、勾配消失を防ぐ
        • ②必要な情報を必要なタイミングで保持・消却させるためのゲート
  • BiRNN(Bidirectional RNN)
    • RNNを2つ組み合わせることで、過去の情報だけでなく未来の情報を使って予測
    • 例えば単語の品詞を推定したい場合などは、過去の単語だけではなく未来の単語の情報も用いる方が精度がよい
  • Attention
    • RNNとは、
      • 1つ前の状態と新たな入力から次の状態を計算する
      • 過去のどの時刻の状態がどれだけ次の状態に影響するかは求めていない
    • Attention
      • 過去の各時刻(各単語)での隠れ層の状態を保持しておき、それぞれの重みを求め、出力を計算する際に隠れ層の状態の重み付き和を利用
    • 日本語の文を英語に翻訳するタスクの例
      • 入力文 (Source): 「猫 が マット の 上 に 座った」
      • 出力文 (Target): 「The cat sat on the mat」
      • RNNのみ: 日本語「猫 が マット の 上 に 座った」を読み込み、最後に得られた隠れ層の状態だけを使って英語「The cat sat on the mat」を生成
      • Attention: 入力文「猫 が マット の 上 に 座った」の各単語(各時刻の入力)に対して、「"sat"を生成するためにどれだけ重要か」という「出力から見た時の各入力の貢献度(重み)」を計算。出力文の「sat」と入力文の「座った」の関係など

トランスフォーマー

  • トランスフォーマー
    • RNNの欠点
      • 並列計算ができず、処理速度が遅い
      • 先頭に読み込んだデータの影響が時間の経過とともに薄れてしまうため、遠く離れた単語間の関係が捉えきれない
    • トランスフォーマー登場前の機械翻訳モデル
      • RNNで構成されたエンコーダとデコーダ、Attention機構(Source-Target Attention)
    • トランスフォーマーの機械翻訳モデル
      • Self-Attention(自己注意機構)、Attention機構(Source-Target Attention)
    • Self-Attention
      • Source-Target Attentionは、入力文と出力文の単語間の関連度を計算したもの。
      • Self-Attentionは、入力文内の単語間または出力文内の単語間の関連度を計算したもの
      • 日本語の文を英語に翻訳するタスクの例
        • 入力文 (Source): 「猫 が マット の 上 に 座った」
        • 出力文 (Target): 「The cat sat on the mat」
        • Source-Target Attentionは、入力文「猫がマットの上に座った」と出力文「The cat sat on the mat」の関連度を計算。出力文の「sat」と入力文の「座った」の関係など
        • Self-Attentionは、入力文「猫 が マット の 上 に 座った」の中の文中の他の単語の関連性を計算。「座った」と「猫」の関係。「座った」と「マット」の関係など。
    • 位置エンコーディング
      • Self-Attentionにより文中の単語間の関係を直接計算できるが、語順の情報が失われている。
      • 位置エンコーディングと呼ばれる単語の出現位置に固有の情報を入力に付与する。

トランスフォーマーおよびSelf-Attention
https://developers.google.com/machine-learning/crash-course/llm/transformers?hl=ja

7. ディープラーニングの社会実装に向けて

7.1 AIと社会

  • ビジネスにおいてAIを利活用する本質は、AIによって経営課題を解決し、利益を創出する

    • AI利活用によるビジネスインパクトを最大化するために、「5分が1分になること」ではなく、「5日が1分になること」に焦点を当てること
    • 人が行っているプロセスを一足飛びにAIに置き換えようとするのは誤った方法論
      • アナログ空間で実行されてきたプロセスは、人の頭の中でしか記録されず、結果としての、データはどこにも残っていない
  • AIシステムを開発するプロセス

      1. AIプロジェクトを計画する
      • AIを適用するべきかを検討する
      • AIを適用した場合のプロセスを再設計する
        • デジタル空間にデータを記録しながら実行する業務内容に変えること。これは「同時に教師データを作成していること」と同義。
      • AIシステムの提供方法を決める
      • 開発計画を策定する
      • プロジェクト体制を構築する
      1. データを集める
      • データの収集方法および利用条件の確認
        • オープンデータセット
          • コンピュータビジョン: ImageNet、PascalVOC、MS COCO
          • 自然言語処理: WordNet、SQuAD、DBPedia
          • 音声分野: LibriSpeeech
      • データの利用条件の確認
      • 学習可能なデータを集める
      • データセットの偏りに注意する
      • 役割と責任を明確にして外部と連携する
      1. データを加工・分析・学習させる
      • データを加工する
        • 教師あり学習の場合は、正解データを作成する。「アノテーション」と呼ばれる。
          • マニュアルを作成することで、アノテーション作業者がその要件を理解できるようにする。
      • プライバシー等に配慮してデータを加工する
      • 開発・学習環境を準備する
      • アルゴリズムを設計・調整する
      • アセスメントによる次フェーズ以降の実施可否を検討する
        • アセスメントフェーズにおいて、ビジネス的な価値を明確にしたうえで、データの収集およびモデルの検討を中心に行う
          • データの収集に関しては、まず開発計画段階において計画しておいたデータの収集可否を確認
          • モデル構築方法の検討段階においては、解こうとする問題に対し、同様の問題を解いている事例や文献の有無を調査
        • アセスメントフェーズが完了した後に、具体的に達成が見込めそうな精度、「AIを適用するべきかを検討する」にて作成したシミュレーションにアップデート
      • 現場でのコンセプト検証(PoC)を行う
        • アセスメントフェーズにおいて策定した価値を検証することが目的
      1. 実装・運用・評価する
      • 本番環境での実装・運用を行う
      • 成果物を知的財産として守る
      • 利用者・データ保持者を保護する
      • 「悪用」へのセキュリティ対策を行う
      • 予期しない振る舞いへの対処
      • インセンティブを設計し多様な人材を巻き込む
      1. クライシス・マネジメントをする
      • 体制を整備する
      • 有事に対応する
      • 社会と対話し対応をアピールする
      • 指針を作成し議論を継続する
      • プロジェクトの計画に反映する

ラップアップ

正解率、適合率、再現率の指標がわからなかったが、迷惑メールフィルタのシナリオをAIと検討して学習することができた。
ファインチューニングなど昨今のAI界隈で聞く単語について理解を含めることができた。

機械翻訳の背後にある技術として、トランスフォーマーについて知ることができた。

https://ja.wikipedia.org/wiki/Attention_Is_All_You_Need
https://aws.amazon.com/jp/what-is/transformers-in-artificial-intelligence/

Discussion