AIプログラミング実践 
実力テスト (2025. )

◎解答は順不同でよいですが、どの問題にたいしての解答かを明示してくださ い。問1を別紙で提出する場合は「 問1:別紙参照」 と明記してください。また、必要に応じて裏面を使ってもよいですが、その場 合は「続きは裏に」と明記してください。

問1

この授業で学んだ事柄から、5分から15分程度で解ける、 試験問題とその模範解答を作りなさい。

問2

以下の小問 (A-C) のうち、いずれか 2問を解きな さい。最初の問題以外は Colab. 上のプログラミングが必要です。そのプログ ラム(コード)は必ず aipr@e-chan.jp へメール で送ってください。送るときは .ipynb を添付ファイルとしても良いですし、 コードを copy&paste してメールの本文として送ってもらっても良いです。
その上で、それぞれのの問題の 最後の 問い(「?」で尋ねられている内容)への答えは必ず解答用紙に 書い てください。
  1. 以下の穴埋め問題をといてください。
    【1】の核になるのは「ニューラルネットワーク」と「機械学習」です。ただ、ニューラルネットワークにも色々な種類がありますし、機械学習の方法もさまざまです。 そこで、よく使われるニューラルネットワークの構成や機械学習の手法を1つにまとめた【2】などと一緒に開発支援ツールとして提供しているものが「【1】向けの【3】」です。 ここで【3】は、例えるなら「お惣菜」や「レトルト食品」を多数取り揃えるスーパーマーケットです。あらかじめ調理された食材や料理を組み合わせて夕食を作れば夕食作りの手間が大きく省けるように、【3】を使えば、あらかじめ用意された【4】を使って簡単に【1】を使ったプログラムが作れてしまうというわけです。 料理もプログラミングも、最初から全部自分でやるのは効率が悪いです。プログラミングにおいて、ゼロからすべての【4】を自分で作るというのは「食材を畑から育てる」ようなものです。学校での勉強ならともかく、実務レベルでは現実的ではありません。通常は何かしらの【3】や【2】を使って、手間を減らして開発します。 ちなみに、【2】は「有用な【4】の集まり」です。組み合わせれば料理を作れるカット野菜のようなものでしょう。それに対して【3】はソフトウェアの骨組みを提供するもので、骨組みに沿って【4】をはめ込むだけでプログラムが作れてしまう代物です。アレンジしやすいレシピ付きのレトルトや缶詰食品といったところでしょうか。 こうした【3】を使えば、【1】についてあまり良くわからないエンジニアでも、比較的簡単に【5】が作れます。もちろん、最初は簡単なことしかできない【5】にはなるでしょうが、そこから少しずつ学んでいくことで高度な【5】が作れるようになるはずです。
    選択肢:  a.ディープラーニング  b.フレームワーク  c.コード
    d.AI e.ライブラリ

  2. の授業資料にリンクのある hadder_gate.py を改造して、4ビットの加算器をつくってください。加 算器については他の授業の資料ですが、「じゃ、コンピュータって何物?」 を参考にしてく ださい。加算例として 1001 と 1111 を足すと、いくらになるでしょう?

  3. の授業資料の kerasサンプルコード (mnist) を改造して、fashion_mnist のデータについて、中間層の活性化 関数を sigmoid にして学習・分類をおこなってください。40エポック走 らせると、 認識率は何%くらいになるでしょう? (ばらつきがあるはず)

問…おまけ

☆問2に自信が無い人は以下を解答しておいてもらうと、おまけ(?) で加点があるかもしれません(無いかもしれません)
AIプログラミング実践で学んだ事柄の中で、今後の 生活(学生時代/卒業後いずれでも可)に最も役にたちそうな技術につい て、 200字から300字程度で述べてください。

最初に飛ぶ
前田としゆき / maechan@hannan-u.ac.jp