AWS Certified AI Practitioner (AIF-C01) 認定勉強

## :muscle: はじめに
 AWS Certified AI Practitioner合格に向けての勉強内容をまとめていきます。
 AIを深く理解というよりかは浅くイメージをつかむという感じで勉強してまいります。
 自分の理解度向上のためのoutput/これから受験される方、AIを学ばれる方の少しでも役に立てれば幸いです。 
## :beginner: 対象購読者
- AWS Certified AI Practitioner勉強中の方
- AIに興味あるけどい難しい用語が多くて心が折れそうになっている方
- AIのビッグウェーブに乗ろうと思ってるけどなかなか一歩踏み出せない方
- RPGが好きな方!!
## :sun_with_face: 試験概要
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3788032/2b1876f9-07a8-8c51-3602-ff1f1de05173.png)
**公式サイト**

https://aws.amazon.com/jp/certification/certified-ai-practitioner/

**AWS Certified AI Practitioner (AIF-C01) 試験ガイド**

https://d1.awsstatic.com/ja_JP/training-and-certification/docs-ai-practitioner/AWS-Certified-AI-Practitioner_Exam-Guide.pdf
2024年に新たに追加されたAI系のAWS資格になります。
## :pencil: 無料模擬試験(英語版)
https://explore.skillbuilder.aws/learn/course/external/view/elearning/19790/exam-prep-official-practice-question-set-aws-certified-ai-practitioner-aif-c01-english
- skillbuilderのIDが必要になります。
- 英語版ですがブラウザの翻訳機能で問題なく受講することが可能
※一部翻訳が怪しい部分もあります

## :zero: 序章
受験対象は非エンジニアとのことですが、AI基礎スキルからAWSサービスの内容も問われるためしっかり勉強しなきゃエンジニアでも油断は出来なさそうですな…:eyes:
「この資格を取得したらいいことあるの？」と思ったそこのあなた:point_up:

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3788032/da35b9d5-e979-cb83-21ae-f03f6b1421ed.png)
いいこと尽くしでございます:open_hands:キャリアアップ/転職にも有利に働きますし、
今後AIの発展に伴いAIスキルはメールやエクセルを使うに等しいくらい必須スキルとなってきます。この資格を取得してAIを手足のごとく使い倒しちゃいましょう:nerd:

とはいえ・・・

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3788032/da8c9278-3219-167f-7326-7c23ae4a4837.png)
試験ガイドを見たところ大きく3つかなという印象

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/6b60121d-5933-b7e1-be26-fee0c37fbcd4.png)
AWSの基本的なサービスは AWS Certified Cloud Practitionerレベルがあれば大丈夫かなと思っております。一般的なAIの基礎知識については「G検定」や「生成AIパスポート」レベルでも通用するのではという印象でした。

## :one: 第一章 ~ AI基礎編 ~
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/6db7478a-62fc-920f-0a40-0643ffc1ac4a.png)

## :crossed_swords: モデルの学習方法
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/2781133c-4faa-e499-933e-e8c923d9723b.png)
フムフム…3種類の学習方法があって…なるほど…わからん...
こんなんでわかるかボケ～！こういう時はRPG風に考えてみよう！
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/3fe541b8-5f6b-392a-bedd-09eb5dce9ae2.png)
ちょこちょこ出てくるこの謎キャラはプチ解説してくれるので箸休めに見てもらえれば:ok_hand:

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/3a0a71f4-687d-278e-562b-83c763e1ec8c.png)
なるほど...犬か猫か教えてもらいながら学習していくんだな…赤ちゃんのようだな…:baby:

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/05a4f7a0-3adb-d300-3dc4-ab7677ad9155.png)
教師なしの方は答えは教えてくれないってわけか、自分の力で答えを導き出せってか…

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/bfc34c8e-061d-760d-36e1-ad6b620b35c6.png)
半教師ありってのは一部だけ正解データを与えてくれるらしい。そんなケチケチしないで全部正解データ教えてくれよ。と思ったんだが、正解データを準備するにも労力とお金がかかるらしくコスト削減という点ではこの手法が優れているらしい…半というのは一部という意味で反面教師的な意味ではないのねｗ

## :crossed_swords: 生成AIのパラメータ(Top-p/Top-k/温度)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/8bd164bf-c8ba-6f13-1583-d82dc324506f.png)
フムフム…パラメータが3種類あってそれぞれ…ってわかるかボケ～～～！！
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/53e1dd3d-cf80-e388-c0b3-6d950bf2bd0d.png)
それではRPG風解説
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/69894ad5-6a7c-6e50-967a-953121580fb6.png)
生成AIはゲームの村人のように同じメッセージではなくて、毎回変わるんだな。
その中で**よりまともな回答だけ**させるように調整するのがTop-p/Top-kパラメータというわけか…「魔王は宿屋の2階」て:skull:…AIが嘘をつくことを**ハルシネーション**というらしい

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/75713772-98de-db05-17dc-ab8853a3868e.png)
次は温度…といっても0~1までの範囲らしく...範囲狭いな人間界の気温の概念とは違うんだろうな。
温度0はゲームの村人っぽいな。ほぼ同じことを言い続けるのか:robot:
温度1は自由だなー。確かに人間と会話しているようだ。:family_mwg:
温度を上げると自由な感じになるけど、嘘（ハルシネーション）が起きやすくなるらしい…

## :crossed_swords: モデルの過学習/不適合
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/f63045e3-9424-3989-91fe-8110a7626d68.png)
ハイわかりませーん。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/ada35600-cf51-009f-eb83-71bb208e3187.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/7504b1da-95f0-5f88-a843-a0fd71872642.png)
ふむ。この弟子は犬ばっかり勉強させられて、犬専門家になってしまったのか:dog:
犬は詳しいけど、猫は学習してないので、猫のことも犬と言ってしまったのね。:sweat_smile:
まぁ学習してないからしゃーないか。対策としてはいろんな動物の学習しましょうってことか:writing_hand:

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/507824f6-372e-821c-c704-b6b2ddad6578.png)
これは単純に勉強不足のバカ弟子。ってことか。
対策としてもっと勉強しなさいってことね。:writing_hand:

## :crossed_swords: 特徴量エンジニアリング
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/471861ba-8d86-6bbf-8feb-902a4766c0e7.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/f21d090f-3c81-4c3c-252f-d2574b0ecb4e.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/066a99c4-f05c-92ae-fc85-f5ec7c4bfd2b.png)
聞きなれない言葉で想像がしづらいけど、要はデータの整理整頓しましょうってことね:wastebasket:

## :crossed_swords: プロンプトの種類
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/43b8c3a3-ead0-1ad7-6e6c-8e75441fed89.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/14229dc9-0889-bd69-e12d-e5d287db0566.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/a40ece54-b68f-9457-84f6-788b9d3d9fe6.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/b8371753-2987-7e4b-7057-46cee37349f6.png)
武器屋のおっちゃんにちゃんと自分の欲しい情報をしっかり伝えることで、本当に求めている回答（武器）を紹介してくれるってことか。

## :crossed_swords: 学習データの種類
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/dad0d041-94d8-ff80-6dba-e1905ab2cd5c.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/5ae2d38b-6d9d-c483-d91d-f12f40ed952f.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/59164d9b-1022-a046-0bb6-83adccdc10a1.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/aed921bf-d04f-42db-3624-df2ccce8bc9d.png)
訓練データで学習して、検証データで実力を試して微調整して、テストデータで最終試験って流れか。  
検証とテストが似てるからきっちり覚えておこう:writing_hand:  
ちなみに、検証データはオプションらしくなくてもよいみたい:scales:

## :crossed_swords: プロンプト攻撃
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/1a1e9e9e-ff9b-b0cb-041a-bc28e09c6603.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/6ee1fa78-9df4-7cc3-42a4-45412371ca44.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/bb5f62ae-fe99-8684-edbf-63b1f6bfc18c.png)
AIに変な指示を出して、本来の意図に反する脱法的な手法だな:spy:
卑猥なこと言わせようとするのは誰もが1度は通る道だよな:thumbsup_tone1:

## :crossed_swords: 基盤モデル（FM）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/ad130606-0610-c078-9b3e-e6d18780d9fc.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/984b1c4b-27d6-bec2-fb48-46095e8b1ee1.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/4f640b21-58a9-b2f7-9dc0-c1651841a7a1.png)

とりあえずこのFMモデルをベースにすれば1から色々学習させなくても最初からすごい能力が備わっていて、そこから特化させる学習（ファインチューニングという）をしていけばコストと効率よくモデルの作成ができるというわけか:raised_hands:

## :two: 第２章 ~ AWS AIサービス編 ~
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/0d066dc4-1dcf-b6ab-1d1e-85cf57ce2eae.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/fa86a4e9-dd0a-c32c-2d8b-12e3c2e6674e.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/b455f471-2429-5934-3fe1-f99c9840e334.png)


## :crossed_swords: AWSのAI関連サービス イメージ図
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/25bb5456-b6bd-df7a-915d-50ad98397973.png)

まずは〇〇するやつという雰囲気レベルで覚えよう!!
ニックネームなんかつけちゃったりして…:kissing:
## :crossed_swords: AmazonQ関連サービス
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/734af7f7-1950-d97e-39e9-c26b32d51589.png)
AmazonQは誰が使うか？というところでサービスが分かれているみたいだ。
利用者ベースで覚えていこう:point_up:
## :crossed_swords: Bedrock関連機能
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/972cf536-b630-3ebb-cfd0-662b0708a2db.png)
ウォーターマークはいわゆる透かしってやつだな。
生成AIの仕組みを簡単に作ってくれる機能が色々あるのね。
直感的な名称のイメージで大体あってるから覚えやすいな:ok_hand:

## :crossed_swords: Sagemaker関連サービス
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/034ea0b8-ee8e-cf72-2f76-b9c6ae42b505.png)
多いなぁ…基本的には何かの管理や作業を楽にしてくれるサービスっぽいので、
何が楽になるかという部分を中心に覚えていこう:point_up:



## :three: 第３章 ~ AWS セキュリティ編 ~
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/f6dd9d63-6d0d-fdec-e003-b8b6c837cbe2.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2933489/33a79956-feb2-be02-8af7-6700d401a6b8.png)
セキュリティはいまいちテンション上がんないんだよなー:fearful:
ん～暗記だな。暗記。好きなニックネームをつけながら暗記ｗ

## :alarm_clock: ToBeContinue
学習情報は随時アップデート予定です:writing_hand_tone1:
このサービスわからん！この用語がわからん！等ありましたら
コメントいただければ解説追加したいと思います:point_up:
一緒に勉強していきましょう:muscle:

## 追記
https://qiita.com/kikuziro/items/08a54d2e8a4eac85c26a

無事合格できました:relaxed: