毎回の授業は次のような流れで行います。
授業前までの予習:前週に予習のための演習ファイルを公開します。自宅にてご自身のPCを使って演習を行ってください
授業当日:予習で行った演習の内容について、スライドを使って説明します
毎回、プログラミングの課題を出します(この課題は、演習ファイルのコードのうち、適切な部分をコピペしていけば達成できる内容です。)
この授業は反転授業ではありません。授業には毎回出席してください。
以下のような順番を予定しています。授業内容の詳細は状況に応じて変更する可能性があります。
この講義の目的と進め方、第2回以降の具体的な内容と演習の環境設定について説明する。
演習はGoogle Colaboratoryで行うので、基本的な操作方法を会得しておくこと(先んじて「Pythonプログラミング入門」の受講を推奨する)。
人間の聴覚の仕組みと、音声や楽器の音響特性、マイクロフォン・スピーカの仕組み、コンピュータにおける音声データの表現を学ぶ。
また、周波数分解やスペクトログラムといった基礎的な音響解析を体験する。また、音声認識の仕組みについて学ぶ。
コンピュータにおけるテキストの表現を知り、形態素解析器janomeを使った単語分割、自然言語解析ツールNLTKを使ったn-gram言語モデル学習等、簡単な自然言語処理のアルゴリズムを理解し、そのプログラムを体験する。
青空文庫から小説を取り出し、文の特徴を学習してランダムな文を生成してみよう。
異なる単語や文どうしの近さを評価する手法を学ぶ。
自然言語処理ライブラリgensimを用いて、単語をベクトルに変換する手法や、文書から特徴を抽出する手法(tf-idf法、LDA法、word2vec法)を体験する。
Wikipediaから取得した記事を使って、「法」や「植物」などのカテゴリを特徴づけるワードクラウドを生成する。
人間の視覚の仕組み、色の感覚と表現、カメラの仕組み、コンピュータにおける画像のデータ表現などを学ぶ。
コンピュータビジョン用ライブラリopencvを用いて、ヒストグラム、色調や幾何変換、顔認識などの基礎的な画像処理を体験する。
一般物体認識の深層学習モデルであるCNNを中心に、深層学習により画像がどのように扱われるかを学ぶ。
また、画像処理分野で扱われている課題や新しいモデルを紹介する。
Webスクレイピングにより自動的に情報を収集するクローリング技術と、その運用における法的・社会的ルールを学ぶ。
また、様々な企業が提供する画像認識や自然言語処理などの高度な情報処理サービスを、Webを介して利用可能とするWeb APIについて、その仕組みやビジネスモデルを学ぶ。