福野泰介の一日一創 - create every day

こどもxAI、幼児プログラミングとTensorFlowはじめのいっぽ

2018/03/13
#KidsIT #IchigoJam #AI #TensorFlow 

ハロー英数学院さんと幼児向けプログラミング体験会実施。
キーボードに触れる嬉しさ、コンピュータくんのスゴサや自分で書いたコマンドに驚いてくれたりしました。最初はがんばって探したアルファベットも、みるみる覚えていく、さすが子供!

1 LED1 2 WAIT30 3 LED0 4 WAIT60 5 GOTO1

LEDが付いている時を狙って[ESC]キーで止めようゲーム!(難易度は2番の数で調整)
SAVEして、テレビ、キーボードを引っこ抜いても動いちゃうプログラミングでものづくり体験してもらいました。

45分ほどで幼児たちの集中力は切れ、かわくだりゲームはお母さん達に作ってもらいました。お母さんが難しさやキャラクターを変更しながら、楽しく子供達と遊んでくれました。

キーボードでがちゃがちゃ遊ばせるだけでも、その後のコンピューターを使ったあらゆる作業のハードルが下がるのでオススメです!(4才にプログラミングを教える10ステップ

IchigoJam対応のキーボードの最安値は、壊れちゃっても痛くない、651円!
SANWA SUPPLY USBキーボード SKB-L1U←USBキーボードですが、PS/2にも対応していて使えます)

福井県情報システム工業会のAIイベント電気通信大学 人工知能先端研究センター センター長 栗原聡さんの講演会。

「社会に浸透する人工知能に求められるものとは?」

コンピューターも人間も共通、インプットとアウトプット。
人の脳をモデル化した理論、人工ニューラルネットワークが、3Dゲーム技術によって高速化したコンピューターによって花開いた、人工知能(AI)。

Googleが開発し、オープンソースとして誰もが自由に、子供でも使えるTensorFlowon Wikipedia)のはじめのいっぽ「1+1=2」を作ってみました。

?1+1 2 OK

IchigoJamではこのように計算する1+1、TensorFlow(テンソルフロー)ではテンソル(量)がどう流れるか(フロー)を組み立てて、動かす、という手順で使います。

import tensorflow as tf a = tf.constant(1) b = tf.constant(1) c = tf.add(a, b) sess = tf.Session() print(sess.run(c))

Python3 x TensorFlow で解く、1+1=2。
定数aとbを足してcにするという流れをつくって、セッションをrun(走れ)で、結果が2と表示されます。

IchigoJamで扱えるのは、-32768から32767までの整数。
TensorFlowを使うと、とても大きな数から小数まで、それらを何百何千とまとめて一度に扱えちゃいます。

import tensorflow as tf a = tf.constant([ 1, 2, 3 ]) b = tf.constant([ 1, 10, 100 ]) c = tf.add(a, b) sess = tf.Session() print(sess.run(c))

aとbにセットする定数をベクトル(3つまとめた数)に変えると、3つまとめた計算結果がでてきます。(1+1、2+10、3+100をまとめて計算!)

最近のコンピューターは、効率化のために一度に多量の計算をまとめてやってくれる機能が充実しています。 TensorFlowとPythonいう無料の部品を使うと、この最新技術を楽々扱えてしまうわけです。

学習とは何か?
コンピューターを見つめることは、人を見つめ直すこと。

links
- TensorFlowではじめるDeepLearning実装入門 impress top gearシリーズ | 新村 拓也 | 工学 | Kindleストア | Amazon

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / アイコン画像 / プロフィール画像