G検定をまとめる(2022.4.14～)

# 目的
G検定に合格することと、人工知能の社会的立ち位置を明確にする事です。

# 方法
本を読みながらまとめていく事をしたいです。初めはまっさらな状態から徐々に埋めていく形式を取りたいと思います。作業手順についてはこの章に追記していく予定です。

1. 目次を列挙する(2022.4.14)
1. 自分の思考を「メモ」に記しておく(2022.4.14)
1. 散発的にでも得た知識や思い出したことを、どこかの項目に記録しておく(2022.4.14)
1. 自分の経験を明文化する(2022.4.15)
1. 実社会の応用例を詳しく見ていきます。具体的には要素技術やその元となる理論まで調査・実装したいです。逆説的に人工知能で考えられている問題から、社会課題を考え、人工知能がどのように解決に寄与出来るか考えたいと思います。(2022.5.9)
1. まとめるのが間に合わず7月の試験は断念しました。次の試験で合格するように調整します。(2022.6.22)

# G検定のまとめ
G検定の範囲が大きいので、ざっくりと分けていきたいと思います。あくまで私の分け方の例になりますので、分かり難ければ申し訳ありません。その時は、「〇〇した方が良いですよ」など、教えて頂けると幸いです。
1. 人工知能の歴史
2. 各AIブームでの技術
3. 人工知能分野の問題
4. 機械学習の具体的手法
5. ディープラーニングの概要
6. ディープラーニングの実践

まず、これをざっくりまとめると、

A. 1～3で人工知能の概要を歴史的側面から学びます。
B. 4,5で人工知能の技術的な側面を学びます。
C. 最後6で人工知能をどのように社会実装するか学びます。

全体像はこのような形で十分かと思います。次にそれぞれを少し詳しく見ていきます。
## A. 人工知能の歴史的側面
人工知能（Artificial Intelligence）という言葉が生まれたのが、1956年のダートマス会議です。初期の人工知能研究の第一人者であるジョン・マッカーシーが提唱した事から使われ始めたようです。それから2022年現在までに3回のAIブームが起きています。技術の面から見ると、それぞれ「推論・探索」「知識表現（エキスパートシステム）」「機械学習・深層学習」という風に見れそうです。また、人工知能という分野での問題設定もいくつかあり、これをベースに研究・開発・社会実装が進んでいると考えられそうです。「トイプロブレム」の様に完全に解決したような問題もあれば「フレーム問題」や「チューリングテスト」の様に一部は解決したが未だ取り組んでいる問題も多くあります。
## B. 人工知能の技術的側面
Bの人工知能の技術的な側面ですが、まずは大きく「機械学習」と「深層学習」に分かれます。次にそれぞれ「手法」と「評価」に分かれます。例えば「機械学習」であれば、「教師あり学習」と「教師なし学習」の手法があります。注意して欲しいのが「教師あり学習」には評価するための方法がありますが、「教師なし学習」は特徴量を作るのに使われ評価はしないという事です。その評価方法は「回帰問題」と「分類問題」で違います。回帰問題であれば「二乗平均平方根誤差(RMSE)」「平均絶対誤差(MAE)」などが使われます。ただ、RMSEとMAEは公式のテキストに載っていませんし、問題集でも出ていない様です。分類問題では「混同行列」「ROC曲線」「AUC」などで評価するのが紹介されている様です。テキストではこれ以上のことは書かれていませんが、次は、これらの値がモデルの学習にどのように反映されているかや、それぞれの指標がどのように使い分けられているかについて書かせて頂きます。
## C. 人工知能の社会的側面
このセクションでは大きく「AI時代の社会の作り方」と「具体例」に分かれます。
「AI時代の社会の作り方」を簡単にまとめると、社会のサービスをMLOpsとして展開していく方法が書かれている様です。MLOpsとは「AIを本番環境で開発しながら運用するまでの概念」の事を言うようです。要はプロジェクトにAIを使いましょうくらいの認識で良いと思います。まずは、AIを使う事で発生する、法や倫理の問題・周辺分野との繋がりについて簡単に説明し、どのように実証実験(PoC)していくか、だったり、その際の注意事項等が書かれています。
「具体例」では製造業、モビリティ、医療、介護、インフラ、サービス・小売・物流、農林水産業、その他においての実用例を紹介しています。

# 1. 人工知能の歴史
詳細はこちらにお任せします。

https://ainow.ai/2019/11/29/180898/

ざっくりと起きた事を記載すると以下の様になります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2496939/70de5f88-cd24-e868-d806-7c83caa8895e.png)
参考：https://ainow.ai/2019/11/29/180898/

私としては3回のAIブームとその前後に関心がありますので、その3回について、「背景、目的、方法、結果、考察、課題」に分けて見ていきたいと思います。ただ、素人に毛が生えた(少し濃いです)くらいですので、間違え・勘違い等ありましたら教えて頂けると幸いです。

## 1-1. 第1次AIブーム(1956～)
1. 背景：圧倒的な計算力を持つ汎用電子式コンピュータ(エニアック)が開発された
1. 目的：コンピュータが出来る事の模索？
1. 方法：推論・探索
1. 結果：迷路や数学の定理の証明などの問題に対して解を提示できる様になった
1. 課題：現実に起こる様な複雑な問題は解けない


## 1-2. 第2次AIブーム(1980代)
1. 背景：コンピュータによりトイプロブレムは解ける事が分かったが、同人に現実に起こる様な複雑な問題は解けない事も分かった。
1. 目的：専門知識の実社会活用
1. 方法：データベースに大量の専門知識を溜め込んだ「エキスパートシステム」を構築
1. 結果：人間の専門家に匹敵するパフォーマンスを発揮する。[ELIZA](https://ja.m.wikipedia.org/wiki/ELIZA#:~:text=ELIZA%EF%BC%88%E3%82%A4%E3%83%A9%E3%82%A4%E3%82%B6%EF%BC%89%E3%81%AF%E3%80%81%E5%88%9D%E6%9C%9F,%E3%82%92%E3%81%99%E3%82%8B%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E3%81%A7%E3%81%AF%E3%81%AA%E3%81%84%E3%80%82)、[MYCINE](https://ja.m.wikipedia.org/wiki/Mycin)、DENDRAL、DeepBlue(IBM)
1. 課題：知識を蓄積・管理する事による問題


## 1-3. 第3次AIブーム(2010～)
1. 背景：コンピュータで知識(情報)を蓄積・管理する事による問題を認識した。
1. 目的：複雑な情報を上手く処理する
1. 方法：機械学習・深層学習
1. 結果：機械によって人間の能力を超える。画像認識、将棋、囲碁、など
1. 課題：どこにどのよな技術が適用できるか分かっていない

# 2. 各ブームでの技術
歴史で振り返った技術について少し見ていきたいと思います。詳細は別の記事で書く予定です。

## 2-1. 探索・推論
詳しくは「探索・推論(G検定)(仮)」に記載します。
ここでの基本的な技術は探索木(決定木？)のように思えます。学習？推論？をするためにMin-Max法やモンテカルロ法が使われた様です。この時代のコンピュータはBrute-force方式を採用しています。というか、Brute-force方式が出てきたのはDeep Blueが出て来てからだと思っていました。後で調べて修正するかもしれません。

## 2-2. 知識表現
詳しくは「知識表現(G検定)(仮)」に記載します。
ここでは、人間の感じ方による「人工無能」という概念が出来たり、知識をベースに実用的にコンピュータリソースを使うエキスパートシステムが構築されました。同時に、コンピュータが知識を獲得する限界も見えてきました。そこから知識よりメタな意味やオントロジーなどの概念体系を記述するための方法が考えられてきました。この時代のAIの代名詞として「ルールベース」と言われていた気がしますが、この言葉も使われなくなってきている様です。

## 2-3. 機械学習・深層学習
詳しくは「機械学習・深層学習(G検定)(仮)」に記載します。
この時代で「インターネットの発明」「計算機リソースの発展」が寄与する部分が大きいと聞いたことがあります。ただ、G検定の公式テキストには記載がないみたいですね。見落としであることを願いたいです。
テキスト的には機械学習と深層学習がメインに書かれていますので、環境やハードを思い切って落としてソフト的な部分を書いているのかもしれません。もともと文字認識などのパターン認識から機械学習、深層学習に発展していっている様です。また、インターネット上のウェブページの爆発的な増加が統計的自然言語処理という分野の研究の促進に寄与したようです。

# 3. 人工知能分野の問題
ここでは人工知能分野の本質的な問題について見ていきます。哲学的と言って良いかもしれません。先程の様に技術の流れの中で起きる問題とは分けて考えた方が良いかもしれません。

## 3-1. トイプロブレム

## 3-2. フレーム問題

## 3-3. チューリングテスト

## 3-4. 強いAIと弱いAI

## 3-5. シンボルグラウンディング問題

## 3-6. 知識獲得のボトルネック

## 3-7. 特徴量設計

## 3-8. シンギュラリティ―

# 4. 機械学習の具体的手法
# 5. ディープラーニングの概論
## 5-1. ディープラーニングの概要
単純パーセプトロンと多層パーセプトロンを比べて、ディープラーニングの構造や実際にどのような計算をしているのか見ていきます。

https://qiita.com/tan0ry0shiny/items/f7108123b45db324e3d5

## 5-2. ディープラーニングの手法
CNN,RNN,Attension,生成モデル、強化学習、画像分野での応用、音声処理と自然言語処理、モデルの解釈性、
1. [畳み込みニューラルネットワークについて(2022.6.29)](https://qiita.com/tan0ry0shiny/items/661989f59f3948eba2a2)
# 5. ディープラーニングの実践
ディープラーニングの実社会応用
## 5-1. ディープラーニングの研究分野
実社会で使う為の
## 5-2. ディープラーニングの応用産業
具体的な事例
## 5-3. ディープラーニングの応用法律・倫理
今回のAIブームは、社会活動を変える可能性があります。そんなことを言ったら何でもそうなんですが、今回の大きな変化は「言語革命」「農業革命」「産業革命」「情報革命」にあったように、社会を一新すると考えらえている様です。科学技術基本計画ではそれらの社会を5段階に分けSociety1.0～5.0と定義しています。それだけの大きな変化となると、当然いろんな問題も起きます。この章ではAI技術を問題なく全世界に普及するための事を書いている様です。

<b>以上が目次を一新した物です。以下には今まで書いてあるものがありますので、今後こちらの情報も参考にしながら、上の目次に沿って修正していこうと考えています。</b>

# 以下、メモ
## オントロジーの構築
知識をどう入れるかの問題。セマンティックweb
## 機械学習と深層学習
<b>参考</b>
1. 田之畑(2022.4)、[なぜディープラーニングするのか](https://qiita.com/tan0ry0shiny/items/e0d4233de1e59c4d4c03)、Qiita
1. [浅川ら(2020.7.15, "ディープラーニングG検定公式テキスト", 加藤文明社)](https://www.amazon.co.jp/dp/4798157554/ref=cm_sw_r_tw_dp_1A5SW6TPY7GY98QR4TXH)
# 人工知能分野の問題
# 機械学習の具体的手法
大まかに回帰問題と分類問題、強化学習に分けられます。更に、深層学習を用いて解く問題に画像認識、自然言語処理、音声認識があります。また、教師あり学習と教師なし学習に分けられ、教師なし学習の代表的な問題が強化学習です。
## 教師あり学習
1. 線形回帰
1. ロジスティック回帰
1. ランダムフォレスト([決定木]())
1. ブースティング
1. サポートベクターマシン
1. ニューラルネットワーク
## 教師なし学習
1. k-means
1. 主成分分析
# ディープラーニングの概要
## 多層パーセプトロン
## ディープラーニング
## オートエンコーダー
[AutoEncoderを理解する。(2022.4.12)](https://qiita.com/tan0ry0shiny/items/fa10bcdd92676db32737)
## 積層オートエンコーダー
## ファインチューニング
## 深層信念ネットワーク
# ディープラーニングの手法
## CNN：畳み込みニューラルネットワーク
CNN, AlexNet, VGG, GoogLeNet, ResNet, MobileNet, NASNet, MnasNet, EfficientNet,
## RNN：リカレントニューラルネットワーク
RNN,LSTM,RNNの発展(BiRNN, seq2seq, Encoder-Decoder),
## Attention：注意機構
これを使った物にTransformerがあります。これは画像分類・自然言語処理・物体検出など様々な分野で使われています。G検定の公式テキストでも1つの項目として扱われている様です。詳しくは「」で書きます。ここでは軽く用語について触れておきます。
# ディープラーニングの社会実装に向けて
## きゅうりの農家が個人で導入した例
ディープラーニングを日本で勉強していると必ずと言って良いほど目にする実例の一つだと思います。詳細は「[Ryo Tanohata(2020.5),きゅうりの仕分けから始めるAI, Qiita](https://qiita.com/drafts/55d245768be875e316b2/edit)」で紹介します。
## 戸籍電子書籍AI検索サービス（富士通）
住民情報ソリューション - MICJET（ミックジェット）の事例です。
自然言語処理により、戸籍だけでなく様々な書類のスムーズな活用が可能になります。これには自然言語処理を使っている様です。詳細は「AI検索サービスの例」で紹介します。
# 産業への応用
本書にある業種は8つに分かれています。
個別の応用としては27に分かれています。
これらの基本方針は「ディープラーニングの社会実装に向けて」の章で書かれていると思いますが、まずは自分の興味の一番強い物から見ていきたいと思います。
## 自動車ギヤ不良検出
概要：不良品が発生する頻度が少ない。まずは、良品データのみから特徴を抽出します。次に抽出した特徴との差分により不良品を検出します。
主要技術：AutoEncoder
達成した事：人による目視検査に近い精度を実現。人に頼らざるを得なかった検査工程を自動化する事により、生産効率の大幅な向上を目指す。
[tan0(2020.4),AutoEncoderを理解する。(2022.4.12)](https://qiita.com/tan0ry0shiny/items/fa10bcdd92676db32737)

## 予防保全
目的：逆流防止弁の摩耗状態ならびに交換時期を推測。
訓練データ：逆流状況のデータ波形形状
主要技術：テーブルデータのディープラーニング
[ファナック×PFN、ディープラーニングによる射出成形機の予防保全機能](https://news.mynavi.jp/techplus/article/20171030-a048/)

## バラ積みピッキング
1. ファナック/Preferred Networks
目的：バラ積み取り出し
方法：ディープラーニング
結果：「既存手法における熟練者チューニングに匹敵する精度」を達成（熟練を要するチューニングのプロセスの自動化に成功）、5,000データ（約8時間）で90%の取得率
1. 安川電機/クロスコンパス(2017.11)
目的：対象物の認識、把持動作の生成、多様な掴み方
目標：目標となる把持点を推定
主要技術：Faster R-CNN([ImR0305(2020),Faster R-CNNをpytorchでサクッと動かしてみた,Qiita](https://qiita.com/ImR0305/items/22c199f85c44890e0ff8))

## 不良品検出（食品工場）
1. キューピー/ブレインパッド(2016.10)
目的：異物混入や不良品を検知
方法：製造ラインに流れる約1㎝角のジャガイモをコンベア上に並べ、カメラで撮影して解析
主要技術：異常検知アプローチ
結果：生産性が2倍に向上。

## A-4-2.予防ヘルスケア
# ディープラーニングの応用に向けて
## 法律・倫理・現行の議論
## 1.プロダクトを考える
## 2.データを集める
## 3.データを加工・分析・学習させる
## 4.実装・運用・評価する
## 5.クライシス・マネジメントをする
# メモ
## 社会について
1. [【ひろゆき】権利と恩の違いがわからない人達](https://www.youtube.com/watch?v=DCLWznKidSM&t=3542s)
フレーム問題、情報の部分性と処理の部分性、身体性の問題、自由と制限の問題、社会主義と自由民主主義、バランス、多様性、
人間は環境に依存せず生存できる環境を構築してきました。現在はその最先端です。
主な依存先としては、環境・人の能力が考え易いです。これらを排除しても生存できる環境（システム）を整えてきたと考えます。
1. Society5.0から考える
第5次科学技術基本計画で、Society1.0～5.0まで定義されました。その定義に沿ってG検定で書かれている事を考えて行こうと思います。具体的には、それぞれの社会で生活がどのように変化したかを技術的な観点から考察したいと思います。
1. Web3(ウェブスリー)から考える
web3とは、パブリック型のブロックチェーンを基盤としたインターネットの概念だそうです。これと関連してDAO(分散型自律組織)という用語が良く使われます。これはブロックチェーンでスマートコントラクトを実現する事で可能になっているという認識です。AIでどのように社会を作っていくか考える際に併せて考えておくと良さそうです。

1.