1 of 24

Day1�プログラミングと�生成AI

NPO法人プログラミング教育研究所

理事長 伊藤功一

Day1プログラミングと生成AI

1

2 of 24

プログラミング

  • アルゴリズム
  • プログラミング言語
  • Scratch(スクラッチ)
  • Python(パイソン)
  • JavaScript(ジャバスクリプト)
  • Webブラウザ(HTML/CSS/JS)
  • プログラムの文法

2

3 of 24

アルゴリズム

  • 問題を解くための手順のこと
    • (例)二分探索(にぶんたんさく)
    • 1. 一覧を番号の小さい順に並べ替え
    • 2. 中央の値が指定の番号と一致するか?
      • 値が大きければ、前半を対象にもういちど
      • 値が小さければ、後半を対象にもういちど
      • 一致すれば、検索終了
  • プログラムとは
    • プログラミング言語をつかって、アルゴリズムを記述したもの

3

4 of 24

プログラミング言語

  • コンパイラ
    • 機械語に変換してから実行
  • C言語(シーげんご)
    • OS、組み込みで使われる
    • バグでコンピュータが停止
  • インタープリタ
    • ソースコードを都度翻訳・実行

4

5 of 24

Scratch(スクラッチ)�https://scratch.mit.edu/

  • マサチューセッツ工科大学
  • 教育用に開発
  • ビジュアル プログラミング
    • ブロック型のプログラミング言語

  • スクラッチ入門

 https://sites.j-code.org/scratch

5

6 of 24

Python(パイソン)�https://colab.research.google.com/

  • 本格的な言語なのに比較的容易
    • ライブラリが豊富
    • AI分野で多く利用

6

7 of 24

JavaScript(ジャバスクリプト)�

  • Webブラウザに内蔵
    • Webアプリで必ず使用される
    • モバイルデバイスのアプリや、

サーバー等でも利用

  • F12開発者ツール
    • デバッグ用
    • F12キーを押すと現れる

7

8 of 24

Webブラウザ(HTML/CSS/JS)

  • HTML
    • コンテンツ(文章)
  • CSS
    • スタイル(見た目)
    • 色、フォント
  • JavaScript (JS)
    • プログラム

8

9 of 24

プログラムの文法� 順次実行、繰り返し、条件分岐�

9

10 of 24

プログラムの文法� 変数�

10

11 of 24

プログラムの文法� イベント�

  • イベント=「~のとき」
  • 事象によって、プログラムを実行

11

12 of 24

プログラムの文法� オブジェクト

  • オブジェクト=変数と関数のまとまり

12

13 of 24

法律とセキュリティ

  • 著作権とプログラム
  • セキュリティ
  • フィッシング詐欺
  • ランサムウェア攻撃

13

14 of 24

著作権とプログラム

  • 著作権
    • プログラムは著作権によって保護される
    • 申請や登録が不要(特許などは、特許庁に申請・登録が必要)
  • オープン ソース ソフトウェア(OSS)
    • ソースコードが公開されている
    • 複製・再頒布・改変が可能
    • 「Linux(リナックス)」は、GPLライセンス
      • 派生物にもGPLライセンスを義務付け

14

15 of 24

セキュリティ

  • アカウント(口座)
    • 各個人に割り当てられた作業領域や情報
    • 個人情報
  • サインイン・ログイン
    • 自分のアカウントの情報操作を開始する
      • ユーザー名とパスワード
  • コンピュータ ウィルス
    • サインイン無しに実行され、勝手にコピーをして増殖するプログラム

15

16 of 24

フィッシング詐欺

  • あやしいリンク
    • 「不在通知」などを装い、偽装サイトに誘導する
  • 偽装サイト
    • 有名な企業そっくりのサイトで、ユーザーのパスワードやクレジットカード番号を入力させる
  • 対策
    • URLのスペルが正しいか、再確認
    • 同じパスワードを複数サイトで使わない

16

17 of 24

ランサムウェア攻撃�

  • ランサムウェア攻撃(ランサム=身代金)
    • サーバーを乗っ取り、保存されている情報を暗号化して、身代金を要求するサイバー攻撃
  • 2024年KADOKAWA
    • ニコニコ動画などのサービスが長期停止。約25万人分の個人情報が流出。
  • 2025年サンリオエンターテイメント
    • サンリオピューロランドなどのシステムが攻撃され、最大200万件の個人情報が漏洩。

17

18 of 24

生成AI最新動向

  • 「実験段階」から「実用フェーズ」へ

18

19 of 24

チャット型から�    マルチモーダルAIへ

  • マルチモーダルAI

テキスト・画像・音声・動画などを組み合わせて理解・生成できるAI

  • 文章から画像や動画を生成する
  • 音声で人間と会話する
  • 写真を見て状況を説明をする
  • 問題用紙を見てテストに解答する

19

20 of 24

生成AIの進化 × 試験レベル

  • 2018年:小学生レベル
  • 2019年:中学生レベル
  • 2020年:高校共通テストレベル
  • 2022年:大学一般入試レベル
  • 2024年:東大模試で合格点に迫る
  • 2025年:東大理科三類合格水準

※答案用紙の画像をそのままAIに与えて解答

20

21 of 24

生成AIのプロンプト例

  • 生成AIとPythonの関係を教えてください。
  • 変数について、Python初心者向けに、例を交えて教えてください。

https://copilot.microsoft.com/

21

22 of 24

生成AIの動作原理�Transformerモデルアーキテクチャ  

  • Embedding
    • 単語を数百次元のベクトルに変換
    • 王 ー 男 + 女 ≒ 女王

22

23 of 24

生成AIの動作原理� Transformerモデルアーキテクチャ  

  • Embedding:単語を数百次元のベクトルに変換
  • Positional Encoding:単語位置のベクトルを加算
  • Self-Attention:単語同士の関係を計算、ベクトル同士の内積+重み付け
  • Feed Forward:各単語の意味を深掘り、行列とベクトルの掛け算
  • Add & Normalize:情報を整える、ベクトルの加算+平均化

23

24 of 24

動画生成AI

  • 動画生成AI

https://app.klingai.com/

  • 生成された動画例

https://fb.watch/Aye_bE1Shn/

my.whimsical.inner.world

Producers:Aila(Chat GPT), Midjourney, Kling AI, & CapCut

24