情報処理

科目基礎情報

学校 阿南工業高等専門学校 開講年度 令和08年度 (2026年度)
授業科目 情報処理
科目番号 1213G03 科目区分 専門 / 必修
授業形態 演習 単位の種別と単位数 履修単位: 2
開設学科 機械コース 対象学年 3
開設期 通年 週時間数 2
教科書/教材 いちばんやさしい Python入門教室 改訂第2版 (ソーテック社)
担当教員 松浦 史法

到達目標

[a] 基礎文法
a1) プログラムの役割と実行手順を理解し,操作できる。
a2) 整数型・実数型・複素数型・文字列型・リストのデータ型を説明できる。
a3) 算術演算子の種類と優先順位を理解し,計算結果を求めることができる。
a4) 変数への代入および print 関数による出力プログラムを作成できる。

[b] 制御構造と配列
b1) for 文および while 文による繰り返し処理プログラムを作成できる。
b2) if 文による条件分岐プログラムを作成できる。
b3) リストの生成・参照・要素の追加および削除を行うプログラムを作成できる。
b4) 関数を定義し,引数と戻り値を用いたプログラムを作成できる。

[c] ライブラリの活用
c1) Matplotlib を用いて数値データを折れ線グラフ等で描画できる。
c2) NumPy を用いて配列の生成および基礎的な行列演算ができる。
c3) CSV ファイルを読み込み,データを処理するプログラムを作成できる。
c4) tkinter を用いて,ボタンや入力欄を持つ GUI アプリケーションを作成できる。

[d] 機械学習・画像認識
d1) YOLOv8 を用いて画像中の物体を検出し,結果を表示できる。
d2) アノテーションの意味と手順を説明できる。
d3) カスタムデータセットを用いてモデルを学習させ,認識を実行できる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安最低限の到達レベルの目安
[a] 基礎文法データ型・演算子・変数の概念を正しく理解し,与えられた問題に対して適切な式や出力処理を自力で記述できる。データ型・演算子・変数の概念を理解し,与えられた問題に対して式や出力処理を記述できる。データ型・演算子・変数の概念をおおむね理解し,提示された例を参考にしながら式や出力処理を記述できる。
[b] 制御構造と配列for・while・if 文およびリスト操作・関数の仕組みを正しく理解し,与えられた問題に対して適切なプログラムを自力で作成できる。for・while・if 文およびリスト操作・関数の仕組みを理解し,与えられた問題に対してプログラムを作成できる。for・while・if 文およびリスト操作・関数の仕組みをおおむね理解し,提示された例を参考にしながらプログラムを作成できる。
[c] ライブラリの活用Matplotlib・NumPy・CSV読込・tkinter の使い方を正しく理解し,目的に応じたプログラムを自力で作成できる。Matplotlib・NumPy・CSV読込・tkinter の使い方を理解し,目的に応じたプログラムを作成できる。Matplotlib・NumPy・CSV読込・tkinter の使い方をおおむね理解し,提示された例を参考にしながらプログラムを作成できる。
[d] 機械学習・画像認識YOLOv8 を用いた物体検出の仕組みを正しく理解し,アノテーションからカスタムモデルの学習・認識までを自力で実行できる。YOLOv8 を用いた物体検出の仕組みを理解し,アノテーションからカスタムモデルの学習・認識までを実行できる。YOLOv8 を用いた物体検出の仕組みをおおむね理解し,手順を参照しながらアノテーションから学習・認識までを実行できる。

学科の到達目標項目との関係

教育方法等

概要:
プログラミング言語Pythonを用いて,初歩的なプログラム作成の技能を習得する。前期はPythonの基本文法(データ型・演算子・変数・入出力)および制御構造(for文・while文・if文・関数)を学ぶ。後期はNumPy・Matplotlib・pandasを用いたデータ処理と可視化,tkinterを用いたGUIアプリケーション作成,およびYOLOv8を用いた機械学習・物体認識を実践する。演習室でプログラムを実際に動かしながら学ぶ演習形式の授業である。
授業の進め方・方法:
【授業時間60時間】
注意点:
成績は問題演習(50%)とレポート(50%)で評価する。問題演習は前期に2回(7週目・15週目)実施し,各25点満点とする。問題演習は資料持込可とする。レポートは後期に2本([c]ライブラリの活用,[d]機械学習・画像認識)を課し,各25点満点とする。レポートはいずれも授業外の持ち帰り課題として,提出期限までに提出すること。

授業の属性・履修上の区分

アクティブラーニング
ICT 利用
遠隔授業対応
実務経験のある教員による授業

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 プログラムってなんだろう プログラムの役割と実行の仕組みを説明できる。
2週 Pythonを始めよう Python環境を操作し,簡単な命令を実行できる。
3週 プログラムを書くときのルール(1) ファイルへの記述,文字の表示,文字列の連結ができる。
4週 プログラムを書くときのルール(2) 空白・インデント・コメントの役割を説明し,正しく記述できる。
5週 変数と演算・データ型 データ型の種類を説明し,変数への代入と出力ができる。
6週 for文 for文を用いた繰り返し処理プログラムを作成できる。
7週 問題演習1 [a]・for文の内容について,類題を解き,演習問題に解答できる。
8週 while文・if文・FizzBuzz while文・if文を用いたプログラムを作成できる。
2ndQ
9週 制御構文(1)・素数 繰り返しと条件分岐を組み合わせて素数を判定するプログラムを作成できる。
10週 制御構文(2)・素数の和・Collatz(1) 素数の和を求めるプログラムおよびCollatzの操作を実装できる。
11週 制御構文(3)・Collatz(2) Collatzの軌跡・ステップ数の表示および最大ステップ数の探索プログラムを作成できる。
12週 リスト リストを用いたプログラムを作成できる。
13週 関数(1) 関数を定義し,引数と戻り値を用いたプログラムを作成できる。
14週 関数(2)・モジュール 制御構文を含む関数を作成できる。importによるモジュールの利用方法を説明できる。
15週 問題演習2 [b]の内容について,類題を解き,演習問題に解答できる。
16週
後期
3rdQ
1週 NumPy(1)・配列の生成と操作 NumPy配列を生成し,基本的な操作ができる。
2週 NumPy(2)・行列演算 NumPyを用いて基礎的な行列演算ができる。
3週 Matplotlib(1)・折れ線グラフ・散布図 Matplotlibを用いてグラフを描画できる。
4週 Matplotlib(2)・グラフの装飾 軸ラベル・凡例・タイトルを設定したグラフを作成できる。
5週 pandas(1)・データ読込と整形 pandasを用いてCSVファイルを読み込み,データを整形できる。
6週 pandas(2)・気象庁データのプロット 実データを読み込み,Matplotlibで可視化できる。
7週 tkinter・GUIアプリ作成 tkinterを用いてウィンドウ・ウィジェット・ボタンを配置したアプリを作成できる。
8週 YOLOv8(1)・環境構築・物体検出 YOLOv8を用いて画像中の物体を検出し,結果を表示できる。
4thQ
9週 YOLOv8(2)・検出結果の確認 検出結果の数値(信頼度等)の意味を説明できる。
10週 アノテーション(1) アノテーションの意味と手順を説明できる。
11週 アノテーション(2) カスタムデータセットのアノテーション作業を実施できる。
12週 学習(1) カスタムデータセットを用いてモデルの学習を実行できる。
13週 学習(2)・結果の確認 学習結果を確認し,モデルの精度を評価できる。
14週 認識・tkinterによる結果表示 学習済みモデルで認識を実行し,結果をGUIで表示できる。
15週 まとめ [c][d]の内容を振り返り,プログラムの動作を説明できる。
16週

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週

評価割合

課題その他合計
総合評価割合5050100
基礎的能力000
専門的能力5050100
分野横断的能力000