コンピューターサイエンス(スライド資料15回ほか)
【概要】 情報工学は,プログラミング,人工知能,データベース,情報セキュリティなどの分野を包含する.プログラミングは人間の意図を論理的手順でコンピュータに伝える創造的な活動である.人工知能は知能,知識,学習の3要素を持つシステムで,言語処理や画像認識などに活用される.創造性や倫理的判断には限界があるため,人間の補助ツールとして活用すべきである.データベースは大量データを効率的に管理する基盤技術である.データの活用により様々な発見が可能である.情報セキュリティはデジタル社会で情報を安全に扱うための対策であり,ウイルス対策や強固なパスワード管理が基本となる.デジタル社会では個人の意識と行動が社会全体の安全を支えている.以上を15回のスライド資料と演習で学ぶ.
【目次】
- cs-1. 無料ソフトウエア,無料データ,エコシステム,Scratch プログラミング,Scratch のキャラクタ [PDF], [パワーポイント], [HTML]
【概要】プログラミング学習のためのScratchは,ビジュアルなブロックを組み合わせてキャラクタを制御できる教育用プログラミング環境である.ブロックの組み合わせで動作を定義でき,繰り返しや条件分岐などの制御構造も実現できる.プログラミングの基本概念を視覚的に学べ,創造的な思考力や論理的思考力の育成に効果的である.
- cs-2. コンピュータによる画像制作,人工知能でできること,情報のコード化,デジタル画像,画素 [PDF], [パワーポイント], [HTML]
【概要】デジタル画像は画素と呼ばれる小さな点の集合で構成され,各画素はRGB(赤,緑,青)の3つの数値でコード化される.この仕組みにより,画像データをコンピュータで扱うことができ,人工知能による画像生成や編集など,創造的な画像制作が可能となっている.
- cs-3. パノラマ画像,ストリートビュー,3次元コンピュータグラフィックス [PDF], [パワーポイント], [HTML]
【概要】3次元コンピュータグラフィックスでは,ポリゴンと呼ばれる平面図形を組み合わせてポリゴンメッシュを構成し,3次元モデルを表現する.Blenderなどの3DCGソフトウェアを使用することで,3次元モデルの作成,編集,リアルな映像制作が可能となる.
- cs-4. プログラミング入門 [PDF], [パワーポイント], [HTML]
【概要】プログラミングは創造的な問題解決活動であり,Python,Java,Cなど多様な言語が存在する.各言語には特性があり,目的に応じて選択する.プログラミングにより作業の自動化や効率化が可能だが,コンピュータの計算には精度の限界があることを理解する必要がある.
- cs-5. 人工知能の概要 [PDF], [パワーポイント], [HTML]
【概要】人工知能は知能,知識,学習の3要素を持ち,言語処理,画像認識,データ分析など多様な分野で活用される.24時間稼働や大量データ処理が可能だが,創造性や倫理的判断には限界がある.人間の補助ツールとして活用し,最終判断は人間が行うべきである.
- cs-6. データベース,データベースシステム [PDF], [パワーポイント], [HTML]
【概要】データベースは現代生活に不可欠な基盤技術であり,データサイエンスはそこから有益な情報を引き出す学問である.Excelなどの表計算ソフトを使用することで,データの集計,分析,可視化が可能となり,意思決定や問題解決に役立てることができる.
- cs-7. 乱数,シミュレーション [PDF], [パワーポイント], [HTML]
【概要】乱数は予測不可能な数値を生成する技術で,一様分布と正規分布の2種類がある.Excelでは「RAND()」関数で一様分布の乱数を生成でき,モンテカルロシミュレーションや待ち行列シミュレーションなど,現実世界の不確実性を含む現象の分析に活用できる.
- cs-8. 表計算ソフトウェアを用いたデータの扱い [PDF], [パワーポイント], [HTML]
【概要】Excelでは散布図の色分けによるクラスタ分析やVLOOKUP関数によるデータ検索が可能である.また,セル参照には絶対参照($記号使用)と相対参照があり,これらを適切に使い分けることで,効率的なデータ分析や自動計算が実現できる.
- cs-9. 一次式,線形計画法 [PDF], [パワーポイント], [HTML]
【概要】線形計画法は,限られた資源の制約条件下で目標関数(利益など)を最適化する手法である.線形式で表現された制約条件(ax + by ≦ c)と目標関数を用い,Excelで計算することで,生産計画や資源配分の最適解を導き出すことができる.
- cs-10. Python プログラミングの基本 [PDF], [パワーポイント], [HTML]
【概要】Pythonプログラミングでは,オブジェクトにメソッドを適用して処理を行う.メソッドには引数を指定でき,CodeCombatやタートルグラフィックスを使った演習を通じて,プログラミングの基本概念を視覚的に理解することができる.
- cs-11. 条件分岐と繰り返し,ステップ実行 [PDF], [パワーポイント], [HTML]
【概要】Pythonプログラミングでは,変数による値の保存と参照,if-elseによる条件分岐,リストによる複数要素の管理,forによる繰り返し処理が基本となる.これらを組み合わせることで,効率的なデータ処理や計算を実現できる.
- cs-12. 式の抽象化と関数 [PDF], [パワーポイント], [HTML]
【概要】Pythonプログラミングでは,inputによる入力とprintによる出力,defによる関数定義が基本となる.関数は類似した処理を抽象化することでコードの再利用性を高め,プログラムの保守性向上とバグの防止に役立つ.
- cs-13. プロセッサ,メモリ,文字コード,論理演算と足し算 [PDF], [パワーポイント], [HTML]
【概要】コンピュータはプロセッサとメモリを中心に構成され,全てのデータを2進数で処理する.論理演算(AND,OR,NOT)を組み合わせて複雑な計算を実現し,メモリはアドレスで管理される.OSがハードウェアとソフトウェアの橋渡しを行う.
- cs-14. 情報化社会でのマナー,情報セキュリティ [PDF], [パワーポイント], [HTML]
【概要】デジタル社会では情報の流通と共有が活発化し,個人も情報発信者となる.そのため,情報の真偽確認,プライバシー保護,セキュリティ対策(ウイルス対策,パスワード管理)が重要である.フェイクニュースやマルウェアに注意が必要である.
- cs-15. 全体まとめ [PDF], [パワーポイント], [HTML]
【概要】情報工学は,AI,データベース,3次元CG,プログラミングなど多様な技術を扱う分野である.全てのデータはデジタル化され,コンピュータで処理される.これらの技術は社会の発展に不可欠であり,セキュリティにも配慮が必要である.
【サイト内の関連ページ】
資料
cs-1. 無料ソフトウエア,無料データ,エコシステム,Scratch プログラミング,Scratch のキャラクタ
SlideShare: https://www.slideshare.net/kunihikokaneko1/cs1-scratch-scratch-258351961
【概要】プログラミング学習のためのScratchは,ビジュアルなブロックを組み合わせてキャラクタを制御できる教育用プログラミング環境である.ブロックの組み合わせで動作を定義でき,繰り返しや条件分岐などの制御構造も実現できる.プログラミングの基本概念を視覚的に学べ,創造的な思考力や論理的思考力の育成に効果的である.
【関連する外部ページ】
Scratch(ビジュアルプログラミング環境) https://scratch.mit.edu
cs-2. コンピュータによる画像制作,人工知能でできること,情報のコード化,デジタル画像,画素
SlideShare: https://www.slideshare.net/kunihikokaneko1/cs2-258351976
【概要】デジタル画像は画素と呼ばれる小さな点の集合で構成され,各画素はRGB(赤,緑,青)の3つの数値でコード化される.この仕組みにより,画像データをコンピュータで扱うことができ,人工知能による画像生成や編集など,創造的な画像制作が可能となっている.
【関連する外部ページ】
情報源:
- WikiPedia: https://ja.wikipedia.org/wiki
- OpenStreetMap: https://openstreetmap.jp
バーチャル美術館:
ルーブル美術館オンラインツアー: https://www.louvre.fr/en/online-tours
デジタルアート制作:
- Fluid Paint(流体シミュレーション): https://david.li/paint/
- Silk(対称性アート): http://weavesilk.com/
- WebGL Fluid Simulation(流体シミュレーション): https://paveldogreat.github.io/WebGL-Fluid-Simulation/
- AutoDraw(AI支援お絵描き): https://www.autodraw.com/
"Start Drawing"を選択して描画を開始する.
機械学習デモ:
- Variational Auto-Encoder(画像生成): https://magenta.tensorflow.org/sketch-rnn-demo
- edges2cats(線画から猫画像生成): https://affinelayer.com/pixsrv/index.html
3DCG制作(オプション):
Blender(無料3DCGソフトウェア) https://blender.jp/
cs-3. パノラマ画像,ストリートビュー,3次元コンピュータグラフィックス
SlideShare: https://www.slideshare.net/kunihikokaneko1/cs3-258351983
【概要】3次元コンピュータグラフィックスでは,ポリゴンと呼ばれる平面図形を組み合わせてポリゴンメッシュを構成し,3次元モデルを表現する.Blenderなどの3DCGソフトウェアを使用することで,3次元モデルの作成,編集,リアルな映像制作が可能となる.
【関連する外部ページ】
360度パノラマ写真サービス:
360 cities https://www.360cities.net/
Google Earthを用いた作品:
映像作品(Vimeo,作者:Matteo Archondis) https://vimeo.com/203253308
地図サービス:
- Google Map https://www.google.co.jp/maps
- Google Earth https://earth.google.com/web/@34.4524151,133.22710341,192.05817929a,48.02713513d,35y,27.31498228h,77.75385678t,0r
cs-4. プログラミング入門
SlideShare: https://www.slideshare.net/kunihikokaneko1/cs4-258351991
【概要】プログラミングは創造的な問題解決活動であり,Python,Java,Cなど多様な言語が存在する.各言語には特性があり,目的に応じて選択する.プログラミングにより作業の自動化や効率化が可能だが,コンピュータの計算には精度の限界があることを理解する必要がある.
【関連する外部ページ】
Python Tutor: https://pythontutor.com/
演習:基本的な計算
print(100 * 200)
x = 100
演習:日時の取得と表示
import datetime
now = datetime.datetime.now()
print(now)
import math
print( math.gcd(24, 18) ) # 最大公約数の計算
import math
print( math.sqrt(7) ) # 平方根の計算
import math
print( 3 * 3 * math.pi ) # 円の面積計算
import math
print( (1/2) * 4 * 6 * math.sin(60 * math.pi / 180) ) # 三角形の面積計算
演習:浮動小数点数の特性
print(1/3) # 循環小数の表示
print(1/6) # 循環小数の表示
print(1/9) # 循環小数の表示
print(0.333333333333333 * 3) # 浮動小数点数の精度
print(100 * 1.1) # 消費税計算の例
print(150 * 1.1)
print(200 * 1.1)
cs-5. 人工知能の概要
SlideShare: https://www.slideshare.net/kunihikokaneko1/cs5-258351999
【概要】人工知能は知能,知識,学習の3要素を持ち,言語処理,画像認識,データ分析など多様な分野で活用される.24時間稼働や大量データ処理が可能だが,創造性や倫理的判断には限界がある.人間の補助ツールとして活用し,最終判断は人間が行うべきである.
【関連する外部ページ】
人工知能のデモンストレーション
画像生成・処理AI
- 顔の表情分析: https://cloud.google.com/vision/docs/drag-and-drop
- Google Cloud Vision API(画像認識・分析): https://cloud.google.com/vision
- DALL-E(OpenAIの画像生成AI): https://openai.com/blog/dall-e/
- 実在・AI生成顔の識別: https://www.whichfaceisreal.com/
- Waifu Labs(イラストの合成): https://waifulabs.com/
創作支援AI
- AutoDraw(描画補助): https://www.autodraw.com/
- Magenta TensorFlow(スケッチ生成): https://magenta.tensorflow.org/sketch-rnn-demo
- Edges2cats(線画からの画像生成): https://affinelayer.com/pixsrv/index.html
機械翻訳
- DeepL(高精度翻訳): https://www.deepl.com/translator
ニューラルネットワークの学習過程可視化
- TensorFlow Playground: https://playground.tensorflow.org
cs-6. データベースとデータサイエンス
SlideShare: https://www.slideshare.net/kunihikokaneko1/cs6-258352007
【概要】データベースは現代生活に不可欠な基盤技術であり,データサイエンスはそこから有益な情報を引き出す学問である.Excelなどの表計算ソフトを使用することで,データの集計,分析,可視化が可能となり,意思決定や問題解決に役立てることができる.
【演習】
①データの可視化
次のデータについて,Excelを用いて散布図を作成する.
総務省が公開しているデータを使用.
1985 1432 752
1990 1222 820
1995 1187 922
2000 1191 962
2005 1063 1084
2010 1071 1197
②データの基本統計量
①のデータについて,Excelを用いて合計と平均を算出する.
【関連する外部ページ】
パソコン室設置のパソコンにはExcelがインストールされている.BYOD(個人のデバイスを持ち込んで使用すること)でMicrosoft 365を使用する場合は,以下のURLからアクセスできる.
Microsoft 365: https://portal.office.com
cs-7. 乱数,シミュレーション
SlideShare: https://www.slideshare.net/kunihikokaneko1/cs7-258352021
【概要】乱数は予測不可能な数値を生成する技術で,一様分布と正規分布の2種類がある.Excelでは「RAND()」関数で一様分布の乱数を生成でき,モンテカルロシミュレーションや待ち行列シミュレーションなど,現実世界の不確実性を含む現象の分析に活用できる.
【関係する外部ページ】
- Microsoft 365 https://portal.office.com
【演習】
- 一様分布の乱数,範囲はー1から1 (資料中に記載)(Excelを使用)
- モンテカルロシミュレーション,円周率の算出 (資料中に記載)(Excelを使用)
- 待ち行列,ランダムな到着,ランダムな到着での到着間隔を分析 (資料中に記載)(Excelを使用)
cs-8. 表計算ソフトウェアを用いたデータの扱い
SlideShare: https://www.slideshare.net/kunihikokaneko1/cs8-258352023
【概要】Excelでは散布図の色分けによるクラスタ分析やVLOOKUP関数によるデータ検索が可能である.また,セル参照には絶対参照($記号使用)と相対参照があり,これらを適切に使い分けることで,効率的なデータ分析や自動計算が実現できる.
【演習】
①データ分析の基礎(Excelを使用)
- データの並べ替え
- 散布図での色分けによる可視化
- クラスタ分析(データの自動分類)
アヤメの花のデータセット:
petal_length petal_width species
1.4 0.2 setosa
1.4 0.2 setosa
1.3 0.2 setosa
1.5 0.2 setosa
1.4 0.2 setosa
4.7 1.4 versicolor
4.5 1.5 versicolor
4.9 1.5 versicolor
4.0 1.3 versicolor
4.6 1.5 versicolor
6.0 2.5 virginica
5.1 1.9 virginica
5.9 2.1 virginica
5.6 1.8 virginica
5.8 2.2 virginica
タイタニック号の乗客データ:
元の1309名分のデータから抽出した100名分のデータである.
以下の3つの属性(列)を抽出している.
- 生存(survived):0は死亡,1は生存を表す
- 年齢(age):乗客の年齢
- 運賃(fare):支払った料金
Survived Age Fare
0 22 7.25
1 38 71.2833
1 26 7.925
1 35 53.1
0 35 8.05
0 8.4583
0 54 51.8625
0 2 21.075
1 27 11.1333
1 14 30.0708
1 4 16.7
1 58 26.55
0 20 8.05
0 39 31.275
0 14 7.8542
1 55 16
0 2 29.125
1 13
0 31 18
1 7.225
0 35 26
1 34 13
1 15 8.0292
1 28 35.5
0 8 21.075
1 38 31.3875
0 7.225
0 19 263
1 7.8792
0 7.8958
0 40 27.7208
1 146.5208
1 7.75
0 66 10.5
0 28 82.1708
0 42 52
1 7.2292
0 21 8.05
0 18 18
1 14 11.2417
0 40 9.475
0 27 21
0 7.8958
1 3 41.5792
1 19 7.8792
0 8.05
0 15.5
1 7.75
0 21.6792
0 18 17.8
0 7 39.6875
0 21 7.8
1 49 76.7292
1 29 26
0 65 61.9792
1 35.5
1 21 10.5
0 28.5 7.2292
1 5 27.75
0 11 46.9
0 22 7.2292
1 38 80
0 45 83.475
0 4 27.9
0 27.7208
1 15.2458
1 29 10.5
0 19 8.1583
1 17 7.925
0 26 8.6625
0 32 10.5
0 16 46.9
0 21 73.5
0 26 14.4542
1 32 56.4958
0 25 7.65
0 7.8958
0 8.05
1 0.83 29
1 30 12.475
0 22 9
1 29 9.5
1 7.7875
0 28 47.1
1 17 10.5
1 33 15.85
0 16 34.375
0 8.05
1 23 263
0 24 8.05
0 29 8.05
0 20 7.8542
0 46 61.175
0 26 20.575
0 59 7.25
0 8.05
0 71 34.6542
1 23 63.3583
1 34 23
0 34 26
②Excel関数の基本(絶対参照と相対参照)
商品販売データの例:
氏名 商品名 数量 単価 合計
AA みかん 3 みかん 50
BB メロン 2 りんご 100
CC りんご 5 メロン 500
【関連する外部ページ】
パソコン室設置のパソコンにはExcelがインストールされている.BYOD(個人のデバイスを持ち込んで使用すること)でMicrosoft 365を使用する場合は,以下のURLからアクセスできる.
Microsoft 365: https://portal.office.com
cs-9. 一次式,線形計画法
SlideShare: https://www.slideshare.net/slideshow/cs9-252037293/252037293
【概要】線形計画法は,限られた資源の制約条件下で目標関数(利益など)を最適化する手法である.線形式で表現された制約条件(ax + by ≦ c)と目標関数を用い,Excelで計算することで,生産計画や資源配分の最適解を導き出すことができる.
【演習】
①変数xについての線形式(1次式)
5x + 3
この式をグラフ化し,散布図として表示する.
②変数x,yについての線形式
たまご = 2x + y
牛乳 = 100x + 200y
これらの式について,xとyに様々な値を代入して計算結果を確認する.
③変数x,yについての線形不等式(制約条件)
たまご:2x + y ≦ 10
牛乳:100x + 200y ≦ 1000
これらの不等式において,xとyの値の組み合わせによって,制約条件を満たす場合と満たさない場合が存在する.
④目的関数の最大化(線形計画法)
売り上げ = 150x + 200y を最大化する.
ここで,xはプリン(150円),yはケーキ(200円)の個数を表す.
詳細は資料のページ58を参照すること.
Excel ファイル
- Excel のオンライン版:https://portal.office.com で「Excel」を選ぶ
- Excel のアプリ版:すでに Excel をインストール済みのときは,Office 365 のページを使わずに,Excel のアプリ版を使ってもよい
cs-10. Python プログラミングの基本
SlideShare: https://www.slideshare.net/slideshow/cs10-python-252041852/252041852
【概要】Pythonプログラミングでは,オブジェクトにメソッドを適用して処理を行う.メソッドには引数を指定でき,CodeCombatやタートルグラフィックスを使った演習を通じて,プログラミングの基本概念を視覚的に理解することができる.
【演習】
① CodeCombat(プログラミング学習ゲーム)
https://codecombat.com- システムからの課金に関するメッセージが表示された場合は,使用を中断する.
- CodeCombatには以下の3つの利用形態がある.このうち「無料かつクラスコードなし」の形態のみを授業の対象とする.
- 無料でクラスコードを使用しない形態
- 有料(会員登録)の形態
- 無料でクラスコードを使用する形態
②図形描画の基本
https://trinket.io/python/f29bfe71cdこのリンクでは,次のプログラムをオンラインで実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
import turtle
t = turtle.Turtle()
t.goto(0,100)
t.goto(100,0)
③図形描画の応用
https://trinket.io/python/5366def2f4このリンクでは,次のプログラムをオンラインで実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
import turtle
t = turtle.Turtle()
t.goto(0, 100)
t.goto(58, -80)
t.goto(-95, 30)
t.goto(95, 30)
t.goto(-58, -80)
t.goto(0, 100)
④色付き図形の描画
https://trinket.io/python/f8cd554693このリンクでは,次のプログラムをオンラインで実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
import turtle
t = turtle.Turtle()
colors = ["red", "green", "blue"]
for i in range(3):
t.color(colors[i])
t.circle(30)
t.forward(50)
cs-11. 条件分岐と繰り返し,ステップ実行
【概要】Pythonプログラミングでは,変数による値の保存と参照,if-elseによる条件分岐,リストによる複数要素の管理,forによる繰り返し処理が基本となる.これらを組み合わせることで,効率的なデータ処理や計算を実現できる.
【演習】
①条件分岐の基本
https://trinket.io/python/0fd59392c8このリンクでは,次のプログラムを実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
age = 18
if age <= 11:
print(500)
else:
print(1800)
②プログラムの動作確認(ステップ実行)
https://www.pythontutor.com/Python Tutorでは,次のプログラムを1行ずつ実行して動作を確認できる.
age = 18
if age <= 11:
print(500)
else:
print(1800)
③プログラミング演習
https://trinket.io/python/62f74d3bfcこのリンクでは,プログラムを実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
④プログラミング演習
https://trinket.io/python/88a728c3cbこのリンクでは,プログラムを実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
⑤プログラミング演習
https://trinket.io/python/cc2c13d793このリンクでは,プログラムを実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
⑥プログラミング演習
https://trinket.io/python/e27702ef75このリンクでは,プログラムを実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
cs-12. 式の抽象化と関数
【概要】Pythonプログラミングでは,inputによる入力とprintによる出力,defによる関数定義が基本となる.関数は類似した処理を抽象化することでコードの再利用性を高め,プログラムの保守性向上とバグの防止に役立つ.
【演習】
演習1: 変数の基本操作
https://trinket.io/library/trinkets/1e414fec80このリンクでは,次のプログラムを実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
x = 100
y = 200
x = x + 100
y = y + 100
print("x =", x)
print("y =", y)
演習2: 繰り返し処理の基礎
https://trinket.io/python/27f6ebe1daこのリンクでは,次のプログラムを実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
for i in range(10):
print(i * '&')
このリンクでは,次のプログラムを実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
s = 1
for i in range(5):
s = s * (i + 1)
print(s)
演習3: タートルグラフィックス(図形描画プログラミング)
https://trinket.io/python/895c3ea5b6このリンクでは,次のプログラムを実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
import turtle
t = turtle.Turtle()
for i in range(5):
t.forward(100)
t.right(170)
このリンクでは,次のプログラムを実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
import turtle
t = turtle.Turtle()
for i in range(5):
t.forward(i * 20 + 100)
t.right(170)
演習4: 入力と計算の基本
https://trinket.io/python/bdca234a3eこのリンクでは,次のプログラムを実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
print("teihen =")
teihen = float(input())
print("takasa =")
takasa = float(input())
print("teihen * takasa / 2 =", teihen * takasa / 2)
このリンクでは,次のプログラムを実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
print("r =")
r = float(input())
print("r * r * 3.14 =", r * r * 3.14)
演習5: 関数定義と使用
https://trinket.io/python/68a090babfこのリンクでは,次のプログラムを実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
def foo(a):
return a * 1.1
print(foo(100))
print(foo(150))
print(foo(400))
cs-13. プロセッサ,メモリ,文字コード,論理演算と足し算
ドクセルの URL: https://www.docswell.com/s/6674398749/5671MZ-2021-12-17-134428
【概要】コンピュータはプロセッサとメモリを中心に構成され,全てのデータを2進数で処理する.論理演算(AND,OR,NOT)を組み合わせて複雑な計算を実現し,メモリはアドレスで管理される.OSがハードウェアとソフトウェアの橋渡しを行う.
【演習】
演習1: 文字コードの変換
https://trinket.io/python/595c091dd9このリンクでは,次のプログラムを実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
c = 'A'
print(hex(ord(c)))
演習2: 論理演算の基礎
https://trinket.io/python/7f31113af9このリンクでは,次のプログラムを実行できる.trinketという実行環境で編集も可能である.実行時は「実行」ボタンを選択する.
a = True
b = False
print("a and b =", a and b)
print("a or b =", a or b)
cs-14. 情報化社会でのマナー,情報セキュリティ
ドクセルの URL: https://www.docswell.com/s/6674398749/5V6XVZ-2021-12-17-134504
【概要】デジタル社会では情報の流通と共有が活発化し,個人も情報発信者となる.そのため,情報の真偽確認,プライバシー保護,セキュリティ対策(ウイルス対策,パスワード管理)が重要である.フェイクニュースやマルウェアに注意が必要である.
【関連する外部ページ】
- オンライン百科事典WikiPedia
https://ja.wikipedia.org/ - IPA(独立行政法人情報処理推進機構)のセキュリティ対策情報サイト
https://www.ipa.go.jp/security/
cs-15. 全体まとめ
ドクセルの URL: https://www.docswell.com/s/6674398749/KNJXEZ-2021-12-17-134355
【概要】情報工学は,AI,データベース,3次元CG,プログラミングなど多様な技術を扱う分野である.全てのデータはデジタル化され,コンピュータで処理される.これらの技術は社会の発展に不可欠であり,セキュリティにも配慮が必要である.
【演習】
① 画像生成AI(人工知能)の実践
- Stable Diffusion XL(画像生成AIモデル)のサイト
https://clipdrop.co/stable-diffusion - Stable Diffusion Playground(画像生成AIの実験環境)のサイト
https://stablediffusionweb.com/
いずれも,入力するプロンプト(指示文)は英語で記述する必要がある.
動画
- cs-1. 無料ソフトウエア,無料データ,エコシステム,Scratch プログラミング,Scratch のキャラクタ
YouTube 動画: https://www.youtube.com/watch?v=k8VwaW2GI5g
- cs-2. コンピュータによる画像制作,人工知能でできること,情報のコード化,デジタル画像,画素
YouTube 動画: https://www.youtube.com/watch?v=89Kiy7yaTMQ
- cs-3. パノラマ画像,ストリートビュー,3次元コンピュータグラフィックス
YouTube 動画: https://www.youtube.com/watch?v=JfsXT9ZQefA
- cs-4. プログラミング入門
YouTube 動画: https://www.youtube.com/watch?v=blBX7q2hdCQ
- cs-5. 人工知能の概要
YouTube 動画: https://www.youtube.com/watch?v=76Xa2ZGqpy0
- cs-6. データベース,データベースシステム
YouTube 動画: https://www.youtube.com/watch?v=hafgkLQ2fzs
- cs-7. 乱数,シミュレーション
YouTube 動画: https://www.youtube.com/watch?v=22MbFeFAYNE
- cs-8. 表計算ソフトウェアを用いたデータの扱い
YouTube 動画: https://www.youtube.com/watch?v=vUJKLwNQn44
- cs-9. 一次式,線形計画法
YouTube 動画: https://www.youtube.com/watch?v=GKy0Bl5ZCQY
- cs-10. Python プログラミングの基本
YouTube 動画: https://www.youtube.com/watch?v=PW0nH3bHEqM
- cs-11. 式の抽象化と関数
YouTube 動画: https://www.youtube.com/watch?v=zeleeooCfT0
- cs-12. 条件分岐,ステップ実行
YouTube 動画: https://www.youtube.com/watch?v=Z102Pg28nW8
- cs-13. プロセッサ,メモリ,文字コード,論理演算と足し算
YouTube 動画: https://www.youtube.com/watch?v=cwR4w-hPW2c
- cs-14. 情報化社会でのマナー,情報セキュリティ
YouTube 動画: https://www.youtube.com/watch?v=MmR1Ha8zHBU