学部後期課程
HOME 学部後期課程 メディアプログラミング入門
学内のオンライン授業の情報漏洩防止のため,URLやアカウント、教室の記載は削除しております。
最終更新日:2024年10月18日

授業計画や教室は変更となる可能性があるため、必ずUTASで最新の情報を確認して下さい。
UTASにアクセスできない方は、担当教員または部局教務へお問い合わせ下さい。

メディアプログラミング入門

Python言語による音・テキスト・画像の情報処理技術を学ぼう
主として情報学を専門としない学部後期課程の学生を対象とした授業です。
メディア情報処理の基礎を学びます。
S2とA2は同じ内容です。どちらか一方を受講してください。

「Pythonプログラミング入門」を履修済みの学生、あるいはそれと同等以上のプログラミング力を持っている学生を対象に、音やテキスト、画像といった様々な情報伝達メディアをコンピュータで処理するための基礎的なプログラミングを学ぶ。
拡張ライブラリやWebAPIなどを活用し、実際にプログラムを動かしながらその振る舞いを直感的に学ぶことで、Pythonを使ったメディア処理への理解と興味を深めることを目的とする。
MIMA Search
時間割/共通科目コード
コース名
教員
学期
時限
0590107-1
FSC-CC3A20L1
メディアプログラミング入門
山肩 洋子
S2
集中
マイリストに追加
マイリストから削除
講義使用言語
日本語
単位
1
実務経験のある教員による授業科目
NO
他学部履修
開講所属
理学部
授業計画
概ね、以下のような流れで進めていく。授業内容の詳細は状況に応じて変更する可能性がある。 第1回 ガイダンス この講義の目的と進め方、第2回以降の具体的な内容と演習の環境設定について説明する。 演習はGoogle Colaboratoryで行うので、基本的な操作方法を会得しておくこと(先んじて「Pythonプログラミング入門」の受講を推奨する)。 第2回 音響情報解析:音声の特徴を可視化しよう 人間の聴覚の仕組みと、音声や楽器の音響特性、マイクロフォン・スピーカの仕組み、コンピュータにおける音声データの表現を学ぶ。 また、周波数分解やスペクトログラムといった基礎的な音響解析を体験する。また、音声認識の仕組みについて学ぶ。 第3回 テキスト解析1:夏目漱石っぽい文を生成してみよう コンピュータにおけるテキストの表現を知り、形態素解析器janomeを使った単語分割、自然言語解析ツールNLTKを使ったn-gram言語モデル学習等、簡単な自然言語処理のアルゴリズムを理解し、そのプログラムを体験する。 青空文庫から小説を取り出し、文の特徴を学習してランダムな文を生成してみよう。 第4回 テキスト解析2:文書のトピックを解析しよう 異なる単語や文どうしの近さを評価する手法を学ぶ。 自然言語処理ライブラリgensimを用いて、単語をベクトルに変換する手法や、文書から特徴を抽出する手法(tf-idf法、LDA法、word2vec法)を体験する。 また、深層学習に基づく汎用自然言語処理モデルBERTについて、仕組みを学ぶとともに様々な応用を体験する。 第5回 画像処理1:人間の視覚の仕組みと簡単な画像処理 人間の視覚の仕組み、色の感覚と表現、カメラの仕組み、コンピュータにおける画像のデータ表現などを学ぶ。 コンピュータビジョン用ライブラリopencvを用いて、ヒストグラム、色調や幾何変換、顔認識などの基礎的な画像処理を体験する。 第6回 画像認識2:深層学習による高度な画像認識 一般物体認識の深層学習モデルであるCNNおよびVision Transformerを中心に、深層学習により画像がどのように扱われるかを学ぶ。 第7回 マルチメディア処理:Webページから自動で情報を集めよう マルチメディア分野における最新の研究動向を紹介する。 Webスクレイピングにより自動的に情報を収集するクローリング技術と、その運用における法的・社会的ルールを学ぶ。 また、GoogleやAmazon、Microsoftなどが提供する高度な情報処理サービスをWebを介して利用するために、Web APIの仕組みやビジネスモデルを学ぶ。
授業の方法
第2回以降は、各回の授業の前に、それぞれの手法を実装したサンプルコードとその解説を、Python言語によるJupyter notebook教材として配布する。 各自、予習として、教材の解説を読みながら、Google Colaboratory上で実行して、その動作を確認してくること。 また各回の授業後には、課題としてサンプルコードをベースに所定の条件を満たすプログラムを作り提出する。 授業で話す内容とサンプルコードが理解できていれば、それ以外の知識がなくても解ける課題となっている。
成績評価方法
出席と各回の課題の達成度、およびミニプロジェクトの内容によって評価する。
教科書
特に定めない。
参考書
BERT/GPT-3/DALL-E 自然言語処理・画像処理・音声処理 人工知能プログラミング実践入門 布留川 英一 (著), 佐藤 英一 (編集) 出版社 ‏ : ‎ ボーンデジタル ISBN-10 ‏ : ‎ 4862465099 ISBN-13 ‏ : ‎ 978-4862465092 Pythonで学ぶ テキストマイニング入門 石田 基広 出版社 ‏ : ‎ シーアンドアール研究所 ISBN-10 ‏ : ‎ 486354393X ISBN-13 ‏ : ‎ 978-4863543935 実践OpenCV4 for Python―画像映像情報処理と機械学習 永田 雅人, 豊沢 聡 出版社 ‏ : ‎ カットシステム ISBN-10 ‏ : ‎ 4877834605 ISBN-13 ‏ : ‎ 978-4877834609
履修上の注意
本授業では、履修者が各自のパソコンで演習ファイルを実行して学ぶことを想定している。 プログラムの実行環境はGoogle Colaboratoryを基本とする。 「Pythonプログラミング入門」のプログラミング環境を前提とするため、同授業を履修していない学生は、あらかじめ同授業の資料を参照し、環境を用意しておくこと。
実務経験と授業科目の関連性
本授業の担当教員は、食事写真や料理のレシピなど、食に関するマルチメディアデータを主たるターゲットとして、様々なAI技術の研究に携わっている。これまでに、自然言語処理技術を用いてレシピの手順説明文からワークフローを生成する秘術や、食事画像からその料理に含まれている食材を推定する技術などを開発してきた。食事の写真を登録するだけで、その栄養価を記録できるアプリケーションFoodLog Athlは、App StoreやGoogle Playで公開しており、プロのアスリートやその栄養士を含む多くのユーザに利用されている。