ディープラーニングのシステムとプログラミング
ディープラーニングのプログラミングとシステム制作に必要な知識とスキルを身につけるために、以下の7つの目標を設定します。
- Pythonプログラミング: ディープラーニングのモデル構築やデータ前処理に必要なPythonの基本文法とライブラリの使用方法を学び、実践的なプログラミングスキルを習得します。
- ディープラーニングの基礎と機械学習の実践: ニューラルネットワークの仕組み、損失関数、最適化手法、学習と検証、過学習対策などのディープラーニングの基礎理論を学びます。scikit-learnなどのライブラリを活用し、機械学習の実践スキルを身につけます。
- ディープラーニングフレームワーク: PyTorchを使用して、ディープラーニングモデルの定義、学習、検証、予測までの一連の流れを習得します。ニューラルネットワークの構築と利用方法を実践的に学びます。
- データセット: 大規模データの前処理、画像データの拡張、アノテーションなどのデータ処理スキルを学びます。データローダーの実装、データの可視化、物体検出やセグメンテーションなどのタスクに適したデータセット(COCO, Cityscapesなど)の活用方法を習得します。
- ハイパーパラメータ調整と性能評価: ニューラルネットワークの層の数、ユニット数、学習率などのハイパーパラメータの調整方法を学び、性能改善のための実践スキルを身につけます。
- 応用スキル: 再学習、転移学習、半教師あり学習、ドメイン適応などの発展的な学習手法を理解します。GANによる画像生成、Transformerを使った自然言語処理、拡散モデル、物体検出やセグメンテーションの応用例を通して、具体的なアプリケーション開発スキルを習得します。
- 研究スキル: 先行研究の調査方法と論文読解力を身につけ、最新の技術動向をキャッチアップできる能力を養います。
これらの目標を達成するために、体験的な学習、体系的な知識習得、実践的な演習を組み合わせた授業を行います。さらに、授業で学んだ内容を発展させるために、以下の自主的な取り組みを推奨します。
- アクティブ・ラーニング: 自分で調査、試行、実験、考察を行い、能動的に学習を深める。
- コードの改善: プログラムを自作する.そして、必要に応じて、ChatGPTなどのツールも活用して、プログラムのリファクタリングや改善を行う。
- 成果の公開: GitHubなどのプラットフォームで、作成したプログラムを公開し、フィードバックを得る。
- 継続的学習: 最新の技術動向を常にリサーチし、学び続ける姿勢を持つ。
*
大学授業用に作成した資料を更新・改良して公開しています.これらは
クリエイティブコモンズ 表示-非営利-継承 4.0 国際ライセンス(CC BY-NC-SA 4.0)
で提供しており,事前の許可なく自由に利用できます.条件は著作者表示(BY),非営利目的のみ(NC),同一ライセンスでの再配布(SA)です.
【目次】
- プログラミングの基礎,AIシステムの基礎: [PDF], [パワーポイント]
- ニューラルネットワークの基礎: [PDF], [パワーポイント]
- ニューラルネットワークによる分類,未来予測: [PDF], [パワーポイント]
- ディープラーニングの利用例: [PDF], [パワーポイント]
- 画像分類: [PDF], [パワーポイント]
- 物体検出: [PDF], [パワーポイント]
- セグメンテーション: [PDF], [パワーポイント]
- 姿勢推定: [PDF], [パワーポイント]
- 顔情報処理: [PDF], [パワーポイント]
- 自然言語処理の基礎: [PDF], [パワーポイント]
- Segment Anything ー 汎用性のあるセグメンテーションモデル ー: [PDF], [パワーポイント]
- 全体まとめと発展: [PDF], [パワーポイント]