人工知能
本ページは、AI・機械学習の理論から実装までを体系的に学ぶための総合教材集です。大学授業用資料を基盤とし、初学者から実務者まで対応しています。
主要コンテンツ
- 100以上の実践的プログラム例(Windows、Ubuntu、Google Colab対応)
- 教育カリキュラム:人工知能の基礎(全15回)、ディープラーニング演習(全8回)、AI演習(全15回)
- 技術分野:コンピュータビジョン、自然言語処理、音声処理、画像生成
- 最新技術:Stable Diffusion、大規模言語モデル、YOLOv、Whisper等
- データセット:MNIST、CIFAR、顔画像、オープンデータ
公開資料は クリエイティブコモンズ 表示-非営利-継承 4.0 国際ライセンス(CC BY-NC-SA 4.0) で提供しており,事前の許可なく自由に利用できます.条件は著作者表示(BY),非営利目的のみ(NC),同一ライセンスでの再配布(SA)です.
目次(簡略版の目次)
1. 人工知能の実行と探求
- 人工知能のプログラム実行体験と探求(Windows上)
Windows環境で動作する100以上のプログラム例。機械学習・コンピュータビジョン・自然言語理など幅広い分野をカバー。ソースコード付きで実践的学習が可能。
- 人工知能のプログラム実行体験と探求(Google Colaboratory上)
- Windows で動く人工知能関係 Pythonアプリケーション,オープンソースソフトウエア)
- Ubuntu で動くAIアプリ(ソースコードとユーザーガイド)
2. プログラム例とその使用法(人工知能関連)
- 人工知能の実行,Python プログラム(Google Colaboratory を使用)
- 人工知能の実行(Python を使用)(Windows 上)
- 顔情報処理の Python プログラム(Dlib,face_recognition を使用)
- ナンバープレート認識
3. オンラインサービス
4. 人工知能の説明
5. ディープラーニング演習
6. AIリスキリング
7. 学習とレポート(人工知能関連)
8. 日本語処理,自然言語処理
9. データセット(人工知能関連)
10. コンピュータビジョン
Dlib C++ライブラリを活用した画像処理
目次: Dlib C++ライブラリを活用したUbuntu上でのカラー画像処理:エッジ抽出,HoG,SURF,顔検出
目次(詳細版の目次)
※ それぞれのリンクをクリックすることで,各項目の目次や個別ページ等にジャンプする.
1. 人工知能の実行と探求
1.1 Windows で動く人工知能関係 Pythonアプリケーション,オープンソースソフトウエア
目次: Windows で動く人工知能関係 Pythonアプリケーション,オープンソースソフトウエア)
単純な分類(Python プログラム)
ニューラルネットワークの作成,学習,検証(Python プログラム)
- MNIST データセットによる学習と分類(TensorFlow データセット,TensorFlow,Python を使用)(Windows 上,Google Colaboratroy の両方を記載)
- Fashion MNIST データセットによる学習と分類(TensorFlow データセット,TensorFlow,Python を使用)(Windows 上,Google Colaboratroy の両方を記載)
- CIFAR-10 データセットによる学習と分類(TensorFlow データセット,TensorFlow,Python を使用)(Windows 上,Google Colaboratroy の両方を記載)
- CIFAR-100 データセットによる学習と分類(TensorFlow データセット,TensorFlow,Python を使用)(Windows 上,Google Colaboratroy の両方を記載)
- IMDb データセットによる学習と分類(TensorFlow データセット,TensorFlow,Python を使用)(Windows 上,Google Colaboratroy の両方を記載)
TensorFlow データセットのパイプライン
画像認識
物体検出,画像のセグメンテーション (object detection, image segmentation)
- 物体検出,セグメンテーション,画像分類,物体検出の再学習と転移学習(YOLOv8,PyTorch,Python を使用)(Windows 上)
- Detectron2 のインストールと動作確認(物体検出,インスタンス・セグメンテーション,パノプティック・セグメンテーション)(PyTorch, Python を使用)(Windows 上)
- 物体検出の実行(UniDet,PyTorch, Python を使用)(Windows 上)
- セマンティック・セグメンテーション(MMSegmentation のインストールと動作確認)(PyTorch,Python を使用)(Windows 上)
- AlexryAB/darknet のインストールと動作確認(Scaled YOLO v4 による物体検出)(Windows 上)
- bonlime/keras-deeplab-v3-plus のインストールと動作確認(セマンティック・セグメンテーション)(Deeplab v3+,Python を使用)(Windows 上)
- PixelLib のインストールと動作確認(セマンティック・セグメンテーション,インスタンス・セグメンテーション)(TensorFlow 2.0.4, Python 3.7 を使用)
- PixelLib のインストールと動作確認(Mask R-CNN,特定クラスのインスタンス・セグメンテーション)(TensorFlow 2.0.4, Python 3.7 を使用)
- nicolov の DilatedNet のインストールと動作確認(セマンティック・セグメンテーション)(TensorFlow 1.15.5,Keras 2.3.1,Python 3.7 を使用)(Windows 上)
- matterport/Mask_RCNN のインストールと動作確認(Mask RCNN によるインスタンス・セグメンテーション)(Python 3.7,TensorFlow 1.15.5, Keras 2.3.1 を使用)(Windows 上)
トラッキング・ビジョン
インタラクティブ・ビデオオブジェクトセグメンテーション
画像の増量
Zero Shot や Few Shot による物体検出やセグメンテーション,SAM
- ゼロショットの物体検出(Grounding DINO,Python,PyTorch を使用)(Windows 上)
- Recognize Anything のインストールと動作確認(ゼロショットの画像タグ付け)(Python,PyTorch を使用)(Windows 上)
- FastSAM のインストールと動作確認(セグメンテーション)(PyTorch を使用)(Windows 上)
- ゼロショットのセグメンテーション(Segment Anything Model,Python,PyTorch を使用)(Windows 上)
- ゼロショットのセグメンテーション(HQ-SAM,Light HQ-SAM,Python,PyTorch を使用)(Windows 上)
- MMDetection,MMFewShot のインストールと動作確認(画像分類,物体検出)(PyTorch,Python を使用)(Windows 上)
教師なし学習によるセグメンテーション
顕著オブジェクト (salient object)
画像生成,スタイル変換,超解像,ノイズ除去,インペインティング,マッティング
Stable Diffusion
- Stable Diffusion XL 1.0 (SDXL 1.0) のインストール,画像生成(img2txt),画像変換(img2img),APIを利用して複数画像を一括生成(AUTOMATIC1111,Python,PyTorch を使用)(Windows 上)
- Stable Diffusion XL を用いて複数の画像を一度に生成するアプリケーション(AUTOMATIC1111 の txt2img の API,Python,PyTorch を使用)(Windows 上)
- Fooocus のインストール,Stable Diffusion XL (SDXL) による画像生成の実行(Fooocus,Stable Diffusion XL,PyTorch,Python を使用)(Windows 上)
- ImaginAIry のインストールと動作確認(画像合成,画像編集,Prompt Based Masking,Image to Image)(Stable Diffusion,InstructPix2Pix,Stable Diffusion 2 Depth,Python を使用)(Windows 上)
画像生成,超解像,画像のノイズ除去,イメージ・インペインティング,イメージ・マッティング
- 画像復元(DiffBIR,Python,PyTorch を使用)(Windows 上)
- MMGeneration のインストールと動作確認(StyleGAN など)(PyTorch,Python を使用)(Windows 上)
- MMEditing のインストールと動作確認(超解像,画像のノイズ除去,イメージ・インペインティング,イメージ・マッティング)(PyTorch,Python を使用)(Windows 上)
- Real-ESRGAN のインストールと動作確認(超解像)(Python,PyTorch を使用)(Windows 上)
- JingyunLiang/SwinIR のインストールと動作確認(超解像,画像のノイズ除去)(Python,PyTorch を使用)(Windows 上)
- idealo/image-super-resolution のインストールと超解像の実行(超解像)(Python,TensorFlow を使用)(Windows 上)
- Waifu2x-converter-cpp,waifu2x-converter-glsl のインストールと動作確認(超解像)(Windows 上)
- jmiller656/EDSR-TensorFlow のインストールと動作確認(超解像)(Python 3.7,TensorFlow 1.15.5, scipy 1.1.0 を使用)(Windows 上)
- yu4u/noise2noise のインストールと動作確認(画像のノイズ除去)(TensorFlow 1.15.5,Python 3.7 を使用)(Windows 上)
- Lama Cleaner のインストール,動作確認(イメージ・インペインティング)(Python を使用)(Windows 上)
Text-Image モデル
教師なし学習による画像復元
プロンプトや画像からの立体生成
発声動画の生成
音声と画像ファイルから発声動画を生成するなど
顔の生成
- ZZUTK/Face-Aging-CAAE のインストールとテスト実行(さまざまな年齢の顔画像の合成)(Python 3.7,TensorFlow 1.15.5, scipy 1.1.0 を使用)(Windows 上)
- DCGANの例,carpedm20/DCGAN-tensorflow を使い,新しい顔を生成してみる(書きかけ)
対話型AI,チャットボット,大規模言語モデル (large language model)
日本語言語モデル
- 日本語言語モデルJapanese StableLM Base Alpha 7Bを Windows で動かす(Python,PyTorch を使用)(Windows 上)
- 日本語対応のLLM,チャットボット(Text generation web UI,日本語 LLM cyberagent/open-calm を使用)(Windows 上)
言語モデル
- Llama 2 のダウンロード(Windows 上)
- privateGPT のインストールと動作確認(大規模言語モデルと対話型AI)(Build Tools, Python を使用)(Windows 上)
- FlexGen のインストールと動作確認(大規模言語モデル,チャットボット)(Python,PyTorch を使用)(Windows 上)
- Alpaca.cpp のインストールと動作確認(大規模言語モデル)(Windows 上)
- GPT-2, BERT を使ってみる(huggingface/transformers を利用)(Google Colab あるいは Windows 上)
OpenAI API,チャットボットのプログラム
- ChatGPT へのコマンドや Python プログラムからのアクセス(Open Interpreter,Python を使用)(Windows 上)
- チャットボットアプリケーションのプログラム(Python,LangChain,OpenAI API を使用)(Windows 上)
- チャットボットのための Web アプリケーションのひな形の Python と HTML プログラム(投稿された文章をそのまま返す)(Python を使用)(Windows 上)
関連技術
自然言語処理,文字認識
日本語処理
テキスト検出
- Unified Scene Text Detection のインストールとテスト実行(テキスト検出)(Python,TensorFlow を使用)(Windows 上)
- CRAFT のインストールと動作確認(テキスト検出)(Python,PyTorch を使用)(Windows 上)
文字認識,ナンバープレート認識
音声
音声認識
- Whisper のインストール,Whisper を使う Python プログラム(音声からの文字起こし,翻訳)(Python,PyTorch を使用)(Windows 上)
- SpeechRecognizer のインストールと動作確認(音声認識)(Python を使用)(Windows 上)
- 音声からの文字起こし(Speech-To-Text)(Google ドキュメント、VB-CABLE を利用)(Windows 上)
音声合成
- Python で音声合成(Windows の標準機能,Python,pywin32 を使用)(Windows 上)
- マイクロソフトスピーチプラットフォームを使ってみる
- 音声合成(TTS),プロンプトとして音声を与えて音声合成(voice cloning)(VALL-E X,Python,PyTorch を使用)(Windows 上)
- 多言語の音声合成(Bark,Python,PyTorch を使用)(Windows 上)
- coqui-ai TTS のインストールと動作確認(多言語の音声変換,音声合成)(Python,PyTorch を使用)(Windows 上)
- pyopenjtalk のインストールと動作確認(日本語の音声合成)(Open JTalk,htvoice,Python を使用)(Windows 上)
- espeak のインストールと動作確認(音声合成)(Python を使用)(Windows 上)
音声処理
- librosa のインストールと動作確認(音声処理)(Python を使用)(Windows 上)
- Parselmouth のインストールと動作確認(Praat 用の Python ライブラリ,振幅やスペクトログラムの表示など)(Python を使用)(Windows 上)
- spectrum のインストールと動作確認(スペクトログラム,PSD による Yule Walker 法)(Python を使用)(Windows 上)
音楽生成
音源分離(audio source separation)
ピッチ推定(pitch estimation)
コンピュータビジョン
画像の基本機能
ビデオ処理,ビデオの安定化
ビデオの安定化は,ビデオの揺れ(手ぶれ,カメラ搭載機器の揺れなどの緩和)を行う.
消失点推定
セグメンテーション
画像補正
- chasank/Image-Rectification のインストールと画像補正の実行(画像補正)(Python を使用)(Windows 上)
画像補正は,画像を射影変換することにより,斜め方向からの撮影画像を正面画像に変換する.意図しないカメラ回転(ロール、ピッチ、ヨー)を含む画像を正面画像に補正できる.
位置合わせ
ステレオマッチング
トラッキング・ビジョン
ビジュアルオドメトリ
姿勢推定 (Pose Estimation)
OpenPose(人体の姿勢推定,モーションキャプチャ)
- 人体の3次元位置推定(MHFormer,Python,PyTorch を使用)
- MMPose のインストールと動作確認(姿勢推定,関節角度の推定)(PyTorch,Python を使用)(Windows 上)
- OpenPose 最新版のインストール,デモの実行(ソースコードを使用)(Windows 上)
頭部の姿勢推定
- mpatacchiola/DeepGaze のインストールと動作確認(頭部の姿勢推定)(Python 3.7, TensorFlow 1.15.5 を使用)(Windows 上)
- lincolnhard/head-pose-estimation のインストールと動作確認(Dlib,Python を使用)(Windows 上)
まばたき,眼球運動
瞳孔の検出
3次元再構成
- COLMAP 3.8 のインストールと3次元再構成の実行(COLMAP 3.8 を使用)(Windows 上)
- COLMAP のインストールと3次元再構成の実行(COLMAP のソースコード,vcpkgm, Visual Studio Community 2019 を使用)(Windows 上)
顔情報処理(顔検出,顔認識,表情推定,年齢推定,顔のランドマーク,肌色領域)
- facetorch のインストールと動作確認(顔検知,表情推定,顔認証,アラインメント,ディープフェイクかの判定)(Python,PyTorch を使用)(Windows 上)
- 顔検出,年齢と性別の推定,顔識別,人体検出(InsightFace のインストールと動作確認)(PyTorch,Python を使用)(Windows 上)
- 顔検出と表情推定(SanjayMarreddi/Emotion-Investigator,Python,TensorFlow を使用)(Windows 上)
- 顔検出,顔識別(Dlib,face_recognition のインストールと動作確認)(Python を使用)(Windows 上)
- PythonのDlibライブラリ、face_recognitionのインストール PythonのDlibライブラリ、face_recognitionのインストールと動作確認(顔検出,顔ランドマーク,顔識別)(Python を使用)(Windows 上)
- 1adrianb/face-alignment のインストールと動作確認(顔の2次元,3次元のランドマーク)(PyTorch,Python 3.7 を使用)(Windows 上)
- ipazc/MTCNN のインストールと動作確認(顔検出)(Python を使用)(Windows 上)
- chen0040/keras-face のインストールと動作確認(顔認識)(TensorFlow 1.15.5,Python 3.7 を使用)(Windows 上)
DeepFace, VGG16 + Simase (2手法)による顔識別
- ezgiakcora/Facial-Expression-Keras のインストールと動作確認(表情推定)(Dlib,Python を使用)(Windows 上)
マスク有り顔
- chandrikadeb7 / Face-Mask-Detection のインストールと動作確認(マスク有り顔,マスクなし顔の検出)(Python,TensorFlow を使用)(Windows 上)
肌色領域
- mpatacchiola/DeepGaze のインストールと動作確認(肌色領域の抜き出し,saliency の検出)(TensorFlow 1.15.5,Python 3.7 を使用)(Windows 上)
- 肌色領域検出プログラム skindetect.py プログラムの紹介
予測
データセット
人工知能開発環境,ツール
- Kaggle のインストール,データの一覧表示(Python, kaggle を使用)
- DeepForge のインストール(Windows 上)
- DeepForge を使ってみる
- Windows で Unity ML-Agents + Python 環境を作る(Chocolatey, Anaconda を利用)(Chocolatey, Anaconda を利用)
1.2 Ubuntu で動くAIアプリ(ソースコードとユーザーガイド)
目次: Ubuntu で動くAIアプリ(ソースコードとユーザーガイド)
フォトグラメトリ(写真測量)
- OpenMVG (open Multiple View Geometry) のインストール(Ubuntu 上)
- OpenMVS (open Multi View Stereo) のインストール(Ubuntu 上)
OpenPose (人体の姿勢推定)
顔情報処理
文字認識
- Tesseract OCR のインストール(Ubuntu 上)
Tesseract OCRは文字認識のソフトウェア - Tesseract OCR のインストール(ソースコードを使用)(Ubuntu 上)
ユースケース.Tesseract OCR は,apt コマンドでインストールできる(その手順は,別ページ »で説明).Tesseract OCR の最新版を追いかけたい場合は,ソースコードからビルドする.
自然言語処理
音声
画像生成
超解像
タンパク質構造解析
2. プログラム例とその使用法(人工知能関連)
2.1 人工知能の実行,Python プログラム(Google Colaboratory を使用)
目次: 人工知能の実行,Python プログラム(Google Colaboratory を使用)
はじめに
- 画像分類 [PDF], [パワーポイント]
YouTube 動画: https://www.youtube.com/watch?v=pBJy3TjSxh8
- 物体認識 [PDF], [パワーポイント]
YouTube 動画: https://www.youtube.com/watch?v=jlcAgLir1Vg
人工知能による合成
- 超解像 (super-resolution) [PDF], [パワーポイント]
Google Colaboratory のページ: https://colab.research.google.com/drive/1oT69ts_qzr1xrPYguSepcl24QaQv5AYq#scrollTo=mlVW1_628s0G
- GAN の仕組み図解 [パワーポイント]
顔情報処理
- 顔情報処理(Dlib、face_recognition、InsightFace、学習済みモデルを使用)
Google Colaboratory のページ: https://colab.research.google.com/drive/1S55yEFiQpdIRdjWbdH0zzEYD5VAfklHd?usp=sharing
群衆の把握,理解
- 群衆の数のカウントと位置の把握 (crowd counting)(FIDTM、学習済みモデルを使用)
Google Colaboratory のページ: https://colab.research.google.com/drive/1cmeI93PcRc20E70z6X_W3bvH2k1ge2v3?usp=sharing
YouTube 動画: https://youtu.be/eqCchBSqOdM
キーワード: crowd counting, FIDTM
姿勢推定
- 人体の姿勢推定 (MMPose を使用)
Google Colaboratory のページ: https://colab.research.google.com/drive/1qzEYs38mF8CbaeOwX6zjsZPOrSv6uFy1?usp=sharing
画像のセグメンテーション
- パノプティック・セグメンテーション
パノプティック・セグメンテーションは,インスタンス・セグメンテーションとセマンティック・セグメンテーションの両立.
Google Colaboratory のページ: https://colab.research.google.com/drive/1xWaQuJt50LqYwyw9ohsYERZ_Ix1gy1rN?usp=sharing
- 物体検出とセマンティック・セグメンテーションとインスタンス・セグメンテーション (MMDetection, MMSegmentation を使用)
Google Colaboratory のページ: https://colab.research.google.com/drive/1QpShUUrOdWHAjkbb-BBuwg8iXmHXv3ff?usp=sharing
- セマンティック・セグメンテーション (semantic segmentation) (MMDetection, SeeSaw Loss, 学習済みモデルを使用)
SeeSaw Loss (2021年発表)を用いた物体検出と画像のセグメンテーション.
Google Colaboratory のページ: https://colab.research.google.com/drive/10Suuj4wdnFVNJBg82BihdqeO1wLrBIVt?usp=sharing
- セマンティック・セグメンテーションとインスタンス・セグメンテーション (MMDetection, MMSegmentation を使用
Google Colaboratory のページ: https://colab.research.google.com/drive/1NKmQfbDG0XCR0bO6vcFP304gy4iqeD7L?usp=sharing
キーワード: セマンティック・セグメンテーション, MMSegmentation
- インスタンス・セグメンテーション (PixelLib を使用)
Google Colaboratory のページ: https://colab.research.google.com/drive/1Ri1v_O4A5vXRSSEBgt4umKC1l3SoWp9U?usp=sharing
YouTube 動画: https://www.youtube.com/watch?v=FYzFdVEMBeU
キーワード: インスタンス・セグメンテーション
物体検出 (object detection)
- TensorFlow 2 Object Detection API (オブジェクト検出 API)のインストールと一般物体検出(TensorFlow のチュートリアルのプログラムを使用)(Google Colab 上もしくはパソコン上)
TensorFlow 2 Object Detection API (オブジェクト検出 API)による一般物体検出
Iris データセットを用いた学習と分類
- 学習と検証、学習曲線(Iris データセット、2層の単純なニューラルネットワーク)
Google Colaboratory のページ: https://colab.research.google.com/drive/18rj0Lyy7rL_JJS9flrGWJR04EuI8tnTm?usp=sharing
- ハイパーパラメータ(Iris データセット、2層の単純なニューラルネットワーク)
Google Colaboratory のページ: https://colab.research.google.com/drive/1HJJfWyeS264l-C2ImIv7VJQB4Cvi9gC_?usp=sharing
小画像の分類
- 学習と検証、学習曲線(小画像、2層の単純なニューラルネットワーク) [PDF], [パワーポイント]
Google Colaboratory のページ: https://colab.research.google.com/drive/18Nf9FPFhOvx8_V30z8PdBD2kcyDap8b7?usp=sharing
- ハイパーパラメータ(小画像、2層の単純なニューラルネットワーク)
Google Colaboratory のページ: https://colab.research.google.com/drive/1XyQKuEnqjlg_buD2YSiEA9uv9MfUCmXt?usp=sharing
MNIST データセットの分類
- MNIST データセットによる学習と画像分類(2層の単純なニューラルネットワークを使用)
Google Colaboratory のページ: https://colab.research.google.com/drive/1uoxlVHhv3UcdsjC0VrFFoY4U4bxT0Z66?usp=sharing
- MNIST データセットによる学習と画像分類(CNN を使用)
Google Colaboratory のページ: https://colab.research.google.com/drive/1p98R2XpYcZsz-GZ84mFbw3v9H7AStz8e?usp=sharing
- MNIST データセットによる学習と画像分類,ハイパーパラメータ(2層の単純なニューラルネットワークを使用)
Google Colaboratory のページ: https://colab.research.google.com/drive/1VjYDrdGRPHqKEJdIupASvcbOiH3Shd3u?usp=sharing
- ニューロン数と学習曲線(MNIST データセット,2層の単純なニューラルネットワークを使用)
Google Colaboratory のページ: https://colab.research.google.com/drive/1-UWl-WEPmmNo-S_O17E5XPkF4tphE6xz?usp=sharing
2.2 人工知能の実行(Python を使用)(Windows 上)
目次: 人工知能の実行(Python を使用)(Windows 上)
姿勢推定
画像分類
テキスト検知
- OpenCV を用いたテキスト検知(Text Detection)(dnn の EAST を使用)(Windows 上)
- OpenCV を用いたテキスト検知(Text Detection)(OpenCV Contrib の External Region Filter アルゴリズムを使用)(Windows 上)
顔情報処理
- Dlib による顔検出を行う Python プログラム(Dlib, Python を使用)(Windows 上)
- Dlib による顔検出,顔ランドマークの検出を行う Python プログラム(Dlib, Python を使用)(Windows 上)
- face_recognition による顔識別.訓練データによる訓練と,検証データによる検証(Dlib,ageitgey/face_recognition,Python を使用)(Windows 上)
- face_recognition による顔検出,顔のランドマーク,顔検証の Python プログラム(Dlib,ageitgey/face_recognition,Python を使用)(Windows 上)
- face_recognition による顔のクラスタリングを行う Python プログラム(Dlib,ageitgey/face_recognition,Python を使用)(Windows 上)
その他
2.3 顔情報処理の Python プログラム(Dlib,face_recognition を使用)
目次: 顔情報処理の Python プログラム(Dlib,face_recognition を使用)
- Dlib による顔検出を行う Python プログラム(Dlib, Python を使用)(Windows 上)
- Dlib による顔検出,顔ランドマークの検出を行う Python プログラム(Dlib, Python を使用)(Windows 上)
- face_recognition による顔識別.訓練データによる訓練と,検証データによる検証(Dlib,ageitgey/face_recognition,Python を使用)(Windows 上)
- face_recognition による顔検出,顔のランドマーク,顔検証の Python プログラム(Dlib,ageitgey/face_recognition,Python を使用)(Windows 上)
- face_recognition による顔のクラスタリングを行う Python プログラム(Dlib,ageitgey/face_recognition,Python を使用)(Windows 上)
- 瞳孔の検出
2.4 ナンバープレート認識
目次: ナンバープレート認識
- Tesseract OCR 5 の学習(Ubuntu 上)
- Tesseract OCR 5 で新しいフォントを用いた学習(Ubuntu 上)
- 画像から新規フォントの作成(Windows 上)
- 文字(数字、ひらがな)認識実験
- Windows の Python で Tesseract を使ってみる(書きかけ)
- OpenALPR 2.3.0 のインストール(Ubuntu 上)
3. オンラインサービス
3.1 オンラインサービス(人工知能関連)
目次: 人工知能関連のプログラム例(Google Colaboratory など)の紹介
オンラインサービス(プログラミング関連)は別ページである.その他のオンラインサービス(プログラミング関連)は別ページである.
- ChatGPT,AskYourPDF プラグインを用いて PDF ファイルの下調べ
- ドキュメント・チャットにファイルをアップロードし,質問応答システムをオンライン実行(チャットボットによる質問応答システム)
- DocsBot にファイルをアップロードし,質問応答システムをオンライン実行(チャットボットによる質問応答システム)
- DeepL API 認証キーの取得と動作確認(人工知能による翻訳)
- ビデオを他人の顔に入れ替える(Simple DeepFace を使用,Google Colab 上での実行)
人物写真、人物動画からの人物動画の合成
- オンラインサービス Waifu Labs を使ってみる
アニメ絵キャラクタ顔の生成
- DALL E をオンラインで使ってみる
画像生成,画像の欠損の補充,イメージ・インペインティング,イメージ・アウトペインティング
- 画像のセグメンテーション(TensorFlow のチュートリアルのサイト)
4. 人工知能の説明
4.1 データサイエンス,人工知能の入門
目次: データサイエンス,人工知能の入門
- ma-1. 人工知能
トピックス:人工知能とは,人工知能でできること,人工知能の種類,人工知能の種類,人工知能とコンピュータ,人工知能の現状,人工知能の歴史,人工知能による社会の変化
- ma-2. データサイエンス・AIの事例
トピックス: データサイエンス,表計算ソフトウェア Excel,散布図(Excel を使用),合計、平均(Excel を使用),分布、密度(Excel を使用),人工知能による分類,特徴抽出
- ma-3. データサイエンス・AIの演習
トピックス:政府統計データ,クロス集計表(Excel を使用),相関(Excel を使用),平均,誤差,オープンデータ,
- ma-4. 機械学習
トピックス:機械学習,教師あり学習,教師なし学習,訓練データ,クラスタ分析,線形近似,最適化
- 人工知能(AI)が注目される理由・背景知識[ワード], [PDF]
4.2 人工知能の基礎(全15回)
トピックス:人工知能でできること,人工知能の歴史,人工知能による社会の変化,人工知能の種類,データサイエンス,機械学習,ニューラルネットワーク,探索,知識表現,プロダクションシステム,Prolog,自然言語処理
- aa-1. 人工知能の概要
YouTube 動画: https://www.youtube.com/watch?v=O2Q2ym3hU54
トピックス:人工知能でできること,人工知能の種類,データサイエンスでできること,人工知能の現状,人工知能による社会の変化
- aa-2. データサイエンス・AIの事例
YouTube 動画: https://www.youtube.com/watch?v=bJjGqTGXUZI
トピックス: 表計算ソフトウェア Excel,散布図(Excel を使用),合計、平均(Excel を使用),分布、密度(Excel を使用),人工知能による分類,特徴抽出,人工知能による生成
- aa-3. データサイエンス・AIの演習
YouTube 動画: https://www.youtube.com/watch?v=JfsXT9ZQefA
トピックス:政府統計データ,クロス集計表(Excel を使用),相関(Excel を使用),平均,誤差,オープンデータ,
- aa-4. 機械学習
YouTube 動画: https://www.youtube.com/watch?v=yK3A4I9phu8
トピックス:機械学習,教師あり学習,教師なし学習,訓練データ,クラスタ分析,線形近似,最適化
- aa-5. 深層学習,ニューラルネットワーク
YouTube 動画: https://www.youtube.com/watch?v=spEQ_kztHAQ
トピックス:深層学習とニューラルネットワーク,ニューロン,活性化,結合の重み,活性化関数,伝搬,ニューラルネットワークを用いた分類,ューラルネットワークの学習
- aa-6. 画像分類システム
- aa-7. 学習と検証,学習不足,過学習,学習曲線
YouTube 動画: https://www.youtube.com/watch?v=Qh-pu3Fvvuc
トピックス:画素、画像、画像データ、画像分類システム、画像分類を行うニューラルネットワーク、ニューラルネットワークの作成、ニューラルネットワークの学習、MNIST データセット、Fashion-MNIST データセット
- aa-8. コンピュータビジョンと人工知能
YouTube 動画: https://www.youtube.com/watch?v=8e6YqUl32gQ
トピックス:ニューラルネットワークの性質,ドロップアウト,コンピュータビジョン,物体検出,セグメンテーション,顔情報処理,キーポイント,姿勢推定
- 知的なゲームのルール,コンピュータプレイヤーがゲームに参加,状態空間表現
トピックス:人工知能の種類、知的なゲームのルール、状態空間表現
YouTube 動画: https://www.youtube.com/watch?v=ftSktLFJ3y4
- 総当たりによる探索
トピックス:総当たり、総当たりのパス、状態空間表現での総当たり、パスと木
YouTube 動画: https://www.youtube.com/watch?v=o_Ms27QaSsg
- パス,木,グラフ,探索,発見的探索
YouTube 動画: https://www.youtube.com/watch?v=72AKU8Nh8tY
- プロダクションシステム、知識表現、推論
YouTube 動画: https://www.youtube.com/watch?v=72AKU8Nh8tY
- 述語,Prolog
- 自然言語処理,品詞,構文解析
- 全体まとめ
5. ディープラーニング演習
5.1 ディープラーニング入門演習(全8回)
- dn-1. ニューラルネットワーク: [YouTube ビデオ], [PDF], [パワーポイント], [HTML]
事前準備:各自で Google アカウントを取得しておくこと
次の URL を使用: https://www.tensorflow.org/tutorials
- dn-2. 人工知能による画像分類,過学習(TensorFlow, Keras による説明): [YouTube ビデオ], [PDF], [パワーポイント], [HTML]
事前準備:各自で Google アカウントを取得しておくこと
次の URL を使用: https://www.tensorflow.org/tutorials
- dn-3. TensorFlow の画像分類のデモ: [YouTube ビデオ], [PDF], [パワーポイント], [HTML]
事前準備:各自で Google アカウントを取得しておくこと
次の URL を使用: https://www.tensorflow.org/tutorials/images/classification
- dn-4. TensorFlow の転移学習のデモ: [YouTube ビデオ], [PDF], [パワーポイント], [HTML]
事前準備:各自で Google アカウントを取得しておくこと
次の URL を使用: https://www.tensorflow.org/tutorials/images/transfer_learning_with_hub
- dn-5. 顔情報処理(Dlib,InsightFace を使用): [YouTube ビデオ], [PDF], [パワーポイント], [HTML]
事前準備:各自で Google アカウントを取得しておくこと
次の URL を使用
実験2: https://colab.research.google.com/drive/13fXJ4f2dF-53YI_6i_rAJl17cuYuLE91#scrollTo=PAJ9H2QqRa
- dn-6. 3次元データベース,写真からの3次元再構成(写真測量)(Meshroom を使用): [YouTube ビデオ], 3次元データベース,写真からの3次元再構成(写真測量) [PDF], [パワーポイント], [HTML]
公開されている次のソフトウェアを使用(利用条件等は,利用者で確認すること)
- dn-7. TensorFlow のスタイル変換のデモ(TensorFlow, Keras を使用): [YouTube ビデオ], [PDF], [パワーポイント], [HTML]
事前準備:各自で Google アカウントを取得しておくこと
- dn-8. TensorFlow の DCGAN のデモ(TensorFlow, Keras を使用): [YouTube ビデオ], [PDF], [パワーポイント], [HTML]
事前準備:各自で Google アカウントを取得しておくこと
次の URL を使用: https://www.tensorflow.org/tutorials/generative/dcgan
5.2 AI演習(全15回)
目次: AI演習(全15回)
- 人工知能(AI)の基礎と応用:概要,種類,活用分野,およびプログラミング入門[PDF], [パワーポイント], [HTML]
- 2. Python プログラムの実行,Python でのデータマネジメント[PDF], [パワーポイント], [HTML]
- 3. 機械学習の基礎① ー 教師あり学習編 ー[PDF], [パワーポイント]
- 4. ディープラーニングの基礎 [PDF], [パワーポイント]
- 5. ディープラーニングでの画像理解,画像分析の基本 [PDF], [パワーポイント]
- 6. ディープラーニングによる画像理解[PDF], [パワーポイント]
- 8. ディープラーニングによる顔情報処理の基礎と応用 [PDF], [パワーポイント]
- 9. 予測と判断(時系列データ分析,移動平均,RNNとLSTMの紹介) [PDF], [パワーポイント]
- 10. 自然言語処理(問答,要約,テキスト生成,単語の特徴ベクトル,単語の類似度) [PDF], [パワーポイント]
- 11. 姿勢推定 [PDF], [パワーポイント]
- 12. 中間まとめ [PDF], [パワーポイント]
- 13. 実データの分析,意味の抽出,外れ値の判断 [PDF], [パワーポイント]
- 14. 人工知能による合成 [PDF], [パワーポイント]
- 15. 画像理解システムの演習 [PDF], [パワーポイント]
- 16. 人工知能による合成の演習 [PDF], [パワーポイント]
5.3 AIカメラの準備(Windows パソコン,Raspberry Piを使用)
目次: AIカメラの準備(Windows パソコン,Rapberry Piを使用)
5.4 Unity ML-Agents
- Python, TensorFlow, Keras のインストール(Windows 上), [パワーポイント], [PDF]
- ML-Agents ツールキットに付属の事前学習済みモデルを Unity で動かしてみる(ミニ実演)(8分34秒, 説明音声つき) [mp4 版], [パワーポイント], [PDF]
「パソコン実習」の資料: Windows で Unity ML-Agents + Python 環境を作る(Chocolatey, Anaconda を利用)(Chocolatey, Anaconda を利用)[Web ページ]
- ML-Agents ツールキットで学習を行ってみる(ミニ実演)(7分56秒, 説明音声つき) [mp4 版], [パワーポイント], [PDF]
5.5 PyTorchの応用例
目次:PyTorch の応用例
- 単純な CNN を用いた画像分類(PyTorch のサンプルプログラムを使用)
ユースケース: PyTorch の動作確認を行いたい.CNN (PyTorch を使用)について練習したい
- 深層強化学習 CartPole-v0 を動かしてみる(PyTorch のサンプルプログラムを使用)
ユースケース: 深層強化学習 CartPole-v0 を動かしてみたい
5.6 強化学習,OpenAI Gym
目次: 強化学習,OpenAI Gym
6. AIリスキリング
目次:AI リスキリング
資料
- AIの概要、AIの活用: [パワーポイント], [PDF], [HTML]
- AIを用いたビジネス課題の解決: [パワーポイント], [PDF], [HTML]
- 人工知能とゲーム、人工知能による画像生成: [パワーポイント], [PDF], [HTML]
7. 学習とレポート(人工知能関連)
7.1 CNNの学習,転移学習
目次: CIFAR 10 の画像分類を行う畳み込みニューラルネットワーク (CNN) の学習,転移学習
CNN による画像分類,画像の増量
- CNN による画像分類,モデルの作成と学習と検証(MobileNetV2,ResNet50,DenseNet 121,DenseNet 169,NASNet,TensorFlow データセットのCIFAR-10 データセットを使用)(Google Colab 上もしくはパソコン上)
- 画像データの拡張,CIFAR 10 の画像分類を行う畳み込みニューラルネットワークの学習(tf.image を用いて増強,MobileNetV2,TensorFlow データセットのCIFAR-10 データセットを使用)(Google Colaboratroy へのリンク有り)
- 画像データの拡張,CIFAR 10 の画像分類を行う畳み込みニューラルネットワークの学習(keras の preprocessing を用いて増強,MobileNetV2,TensorFlow データセットのCIFAR-10 データセットを使用)(Google Colaboratroy へのリンク有り)
事前学習済みのモデルの使用,転移学習
7.2 レポート・プログラム例
目次: プログラム例(人工知能関連)
- DeepL API を用いて日本語を英語に翻訳,音声合成(音声合成,人工知能による翻訳)(win32api, DeepL, Python を使用)(Windows 上)
- Meta の言語モデルと日本語で対話できる chatBOT プログラム(chatBOT)(FlexGen, DeepL, Python を使用)(Windows 上)
- マイクに話しかけた言葉を,リアルタイムにAIが認識(whisper, whisper_mic, Python を使用)(Windows 上)
8. 日本語処理,自然言語処理
8.1 自然言語処理入門
目次: 自然言語処理入門
- nl-1. 形態素解析と構文解析 [PDF], [パワーポイント]
- nl-2. オンライン翻訳を使ってみる [PDF], [パワーポイント]
8.2 MeCab,形態素解析
- MeCab のインストール(形態素解析)(Windows 上)
- MeCab をソースコードからビルドしてインストール(形態素解析)(Windows 上)(書きかけ)
- Web ページのダウンロード,単語に切り分け,形態素解析(Python, Mecab, BeautifulSoap を使用)
- R システムで形態素解析,TF/IDF (RMecab を使用)
8.3 Bag of Words,TF/IDF,類似検索
- 日本語文のコーパス(ドキュメントの集まり)から 辞書,Bag of Words, Latent Semantic Indexing (LSI),Latent Dirichlet Allocation (LDA) を作る(Python,gensim を使用)
- 英文のコーパス(ドキュメントの集まり)から 辞書,Bag of Words, Latent Semantic Indexing (LSI),Latent Dirichlet Allocation (LDA) を作る
- 日本語文のドキュメントの類似検索(Latent Semantic Indexing による)(Python,gensim を使用)
- 日本語文のドキュメントの類似検索(Latent Dirichlet Allocation による)(Python,gensim を使用)
- gensim を使ってみるl
- Document2Vec を使ってみる
9. データセット(人工知能関連)
9.1 データセットの説明と利用
目次: データセット(人工知能関連)
データセットの説明
- Iris データセット [PDF], [パワーポイント]
- Titanic データセット [PDF], [パワーポイント]
- CIFAR-10 データセット [PDF], [パワーポイント]
- CIFAR 100, MNIST, Fashion MNIST データセット [PDF], [パワーポイント]
単純なデータ
- Iris データセット(Python を使用)
- Titanic データセット(Python を使用)
- MNIST データセット(Python を使用)
- Fashion MNIST データセット(Python を使用)
- くずし字 MNIST データセット(Kuzushiji-MNIST データセット)のダウンロード,画像分類の学習,画像分類の実行
- CIFAR-10 データセット(Python を使用)
- CIFAR-100 データセット(Python を使用)
- SVHN データセット(Python を使用)
- 福岡市バス停(2013 年作成)
- Python の seaborn, scikits.learn のデータセット(Python,scikit-learn, seaborn を使用)
顔画像
- CelebA (Large-scale CelebFaces Attributes) データセットのダウンロード
- UTKFace (Large Scale Face Dataset) の Aligned & Cropped Faces データのダウンロードと確認
- LFW 顔画像データセットのダウンロードと確認(Python,scikit-learn を使用)
モーションデータ
自然言語処理のデータ
- 日本語版 Wikipedia ダンプのダウンロード,ファイル分割(XMLファイル)(Python を使用)
- 英語版 Wikipedia ダンプのダウンロード,ファイル分割(XMLファイル)(Python を使用)
9.2 オープンデータ,データファイル処理
CSV ファイルの処理,SQLite 3 データベースの生成
- CSV ファイルの処理,Excel ファイルを CSV ファイルに変換,CSV ファイルの変換,CSV ファイルから SQL テーブル定義と INSERT 文を生成(csvkit を使用)
- CSV ファイルに対して SQL 問い合わせを実行
- CSV ファイルに対する SQL 問い合わせの性能確認(Ubuntu で,SQLite 3,pandasql,csvkit,TicklishHoneyBee/csvdb を使用)
- npz 形式のMNIST データセットを,CSVファイルに変換
- ipadic 辞書(CSV ファイル)から SQLite 3 データベースを生成(Ubuntu 上)
- R システムのパッケージに付属のデータセットから SQLite 3 データベースを生成(R システム,SQLite3 を使用)
ランダムデータの合成
プログラムによるデータファイル読み込み,書き出し
画像データ,動画データ
ファイルの形式変換
- XML2JSON のインストール(Ubuntu 上)
XML2JSON は,XMLファイルとJSONファイルの相互変換を簡単に行える perl 用のライブラリ.
オープンデータの例
データセットの説明については,別ページに移しました.
政府オープンデータ
オープンデータへのリンク集
オープンデータのダウンロード,処理