AMD HEROES

twitter
facebook
line

「AMDキッズ プログラミング・キャンプ」ワークショップレポート

小学生だって簡単! はじめての「AIを使ったプログラミング」チャレンジ

文● 相川いずみ/編集● 村野晃一(ASCII編集部)

※この記事はASCII.jpからの転載です。一部加筆修正して掲出しています。(文中リンクはASCII.jpの記事に飛ぶことがあります)

テクノロジーと無縁ではいられないこの時代、デジタルをいかに活用していくかが、学びでも仕事でも、さらには生活をしていく上でも大きなカギとなってくる。

そこで、AMDではGIGAスクール時代の教育分野への貢献プロジェクト「AMDキッズキャンペーン」と題し、子どもたちにコンピュータの可能性を伝える教育支援活動を行なっている。2020年からスタートしたこのプロジェクトは、子どもたちに自分専用のファーストPCをプレゼントするほか、プログラミング学習をはじめとした様々なジャンルのプロによるオンラインワークショップなどを提供してきた。

第3弾となる今回は、小学生を対象にAMD Ryzen™ 5 5500U モバイル・プロセッサー搭載の最新ノートPCをプレゼントし、3日間のプログラミング・ワークショップに参加できる「AMDキッズ プログラミング・キャンプ」を開催した。今年の夏休みにプログラミングに挑戦したい小学生を募ったところ、全国から多数の応募があり、その中から選ばれた5人にレノボの最新ノートPC「Lenovo Yoga 650」が贈られた。

「AMDキッズ プログラミング・キャンプ」に参加した5人のメンバーに贈られたのは、レノボの最新ノートPC「Lenovo Yoga 650」だ。CPUにAMD Ryzen™ 5 5500U モバイル・プロセッサーを搭載し、プログラミングをしたい小学生にもおすすめの1台となっている。

さらに、選ばれた5人のAMDキッズはメンバーとして、プログラミングやUIデザインを学ぶことができる3日間の特別ワークショップに参加。すべてのワークショップに意欲的に取り組んだ5人は、よりプログラミングへの意欲を高め、夏休みを使ってそれぞれがプログラミングの作品づくりに挑戦している。

前回は、「AMDキッズ プログラミング・キャンプ」1日目に開催されたワークショップの様子をご紹介した。第3回となる今回は、2日目の「プログラミングでどんなことができるかを知ろう」と題したワークショップで、AIを使ったプログラミングに挑戦した際の模様をお届けする。今回のキャンプに参加できなかった方も、ぜひこの記事を読んで挑戦してみてほしい。

ゲームみたいなバーチャル空間でワークショップ

「AMDキッズ プログラミング・キャンプ」特別ワークショップ2日目の講師は、crossroads lab. 代表の若林健一先生。子どもと大人のためのプログラミングコミュニティ「CoderDojo奈良」や、「子どもプログラミング喫茶京都店」を運営するなど、子どもたちがプログラミングを楽しむためのサポートを行なっている。

若林健一先生。家電メーカーのソフトウェアエンジニアとしての経験をもち、Scratchやロボット・プログラミング、電子工作の入門書なども執筆している。

今回、若林先生がオンラインワークショップの会場に選んだのは、バーチャル空間の「oVice(オービス)」だ。

これまではオンライン会議システム「Zoom」を使い、先生が話をする様子や、資料を画面に映し出してワークショップをしていた。しかし、「oVice」では、まるでRPGのような画面の中で、自分のアバターを移動させて参加することができる。Zoomなどと同じように、声で話したり、カメラ機能で自分の顔を映したり、コンピュータ上の画面を表示したりすることが可能だ。

バーチャル空間の「oVice」上に、先生がワークショップの場所を用意してくれた。小さな丸が、メンバーやスタッフのアバター。

誰かと話したいときは相手の近くに行かないと声が聞こえないという、バーチャルだけれどリアルな仕様になっているので、「みんなで同じ場所に集まって、話をしている」という気持ちになる。 Zoomには慣れているAMDキッズたちも、「oVice」は初体験。最初は物珍しそうに会場内を歩き回っていたが、ワークショップが始まると、若林先生のそばに集まり、静かに聞き始めた。

プログラミングでどんなものがつくれるか考えてみよう

ワークショップのはじめに、若林先生がメンバー全員にアンケートを行なった。「毎日何時間プログラミングしていますか?」という問いに、「slido」というオンライン投票システムを使って、答えていく。

最高で5時間以上と答えたメンバーもいた。夏休みということで、自分の好きなことに打ち込んでいたようだ。

「oVice」と「slido」という2つの新しいサービスを体験した後は、最初のテーマとして「プログラミングで動くもの」について若林先生が解説した。

「プログラミングというとゲームやウェブサイトのような画面上で動くものをイメージするかもしれないけれど、実は色々あります」として、デバイス(現実の装置や機械)で動くもの、画面とデバイスの両方で動くもの、色々なサービスで動くものなどを挙げた。

画面上で動くものだけがプログラミングじゃない! プログラミングの可能性を知ることでアイデアも広がっていく。

デバイスの例として小学校などでも使われているマイコン「micro:bit」でつくったウェアラブルデバイスを見せる若林先生。

「micro:bitを使ったプログラミングの例として、通信機能を使った対戦ゲーム、傾きなどのセンサーを使えば腕相撲や自転車レース、ゴルフ、スケートボードなど、様々なゲームやアプリをつくることができる」と、若林先生はデバイスと組み合わせたプログラミングの可能性を紹介した。さらにScratchの拡張機能や、「Python」や「JavaScript」といった本格的なテキスト言語にもふれた。

ネコリンピック

応用例として、Scratch3.0とmicro:bitの組合せで、スポーツ的なゲームをやってみようというプロジェクト「ネコリンピック」なども紹介

GoogleのAI学習を体験してみよう

プログラミングについてのお話が終わったあとは、いよいよお楽しみのAIを使ったプログラミングの実践編だ。今回は、Googleの「Teachable Machine」を使って、画像認識のプログラミングに挑戦した。「Teachable Machine」は画像や音声のほか、体を使ったポーズなど、様々なものを人工知能に学習させることで、情報を分類できるものだ。

Googleの「Teachable Machine」。誰でも無料で利用することができる。

今回は事前準備として、本やぬいぐるみなど、自分が認識させたい素材をそれぞれ用意した。次に、画像認識のための画像サンプルを集めるため、パソコンのウェブカメラを使い、200点以上写真を撮影。画面内のボタンを長押ししている間写真が撮られ続け、さまざまな角度から見た素材の情報を学習させていく。

「Teachable Machine」の「画像プロジェクト」で認識させたい画像サンプルを集める。

パソコンのカメラの前に素材となるものを置き、パソコンのウェブカメラで撮影する。比較用に2種類の素材の画像を収集し、人工知能の学習が終わったらきちんと分類されているかをチェック。問題なくできていたら、プログラミングのためにこの学習した結果をエクスポート(出力)させる。

先生の指示に従って、次々と素材の画像を収集していくメンバー。

2つの画像をそれぞれカメラにかざしてみると、きちんと画像認識をして分類しているのがわかる。

「Teachable Machine」の操作は簡単で、指示に従って順番に操作していくだけで、自分の素材を人工知能が分類してくれるようになる。メンバーも難なくここまでの操作はこなしていた。

今回のワークショップでは、この画像認識をもとにさらにプログラミングを行なっていく。ここで使うのが、「Scratch」をベースにしたプログラミング学習サービス「Stretch3(ストレッチ3)」だ。見た目や操作はほぼScratchそのものだが、「拡張機能」が使える点が異なっている。

「Stretch3」にアクセスし、「機能拡張」から「TM2Scratch」を選択。

ここまでできたら、あとはStretch3で「画像分類モデルURL」を選べば、Scratchのキャラクターが画像認識してくれるようになる。今回は簡単なプログラムをつくったが、応用すれば様々なものをつくることができる。

Stretch3を使ってプログラミングにチャレンジ。見事、2種類の積み木を判別することができ、カメラに見せた積み木によって、画面内のキャラクターのセリフが変わる。

若林先生は例のひとつとして、小学生がつくった画像認識を使ってSDGsに関するマークを集めるアプリ「マークみっけ for SDGs」を紹介してくれた。作者は当時小学4年生だった川口明莉さん。2020年の小学生向けプログラミングコンテストでグランプリを受賞した作品だ。

「マークみっけ for SDGs」

作者:川口明莉さん

さらに、「このサービスを使ったプログラミングでできるものとして、天気予報の情報を教えてくれるボット、画像認識を使った顔認証システム、翻訳と音声合成を使ったボットなど、みんなが使っているようなスマートスピーカーも自分でつくることができるようになります」と、メンバーに応用例を紹介した。

GoogleのAI学習を体験してみよう

初めての人工知能(AI)を使ったプログラミングに挑戦したメンバー。途中ではうまくできないといったトラブルは少しあったものの、最終的には全員が画像認識プログラミングを体験、完成させることができた。

ワークショップの最後に、若林先生が「皆さんならどんなものをつくってみたいか、ぜひ考えみてください」とメンバーに問いかけ。現時点では全員がはっきりとしたテーマを持っていたわけではないが、その時に自分がつくってみたいもの、イメージしているものを考えながら答えていった。

プログラミングでつくることができるものは無限大!

・タカト(仮名)さん
「レゴが好きで沢山もっているので、レゴでロボットをつくって、プログラミングで動かしてみたい」

・ヒロキ(仮名)さん
「通信ゲームに興味を持ちました。オンライン対戦ゲームをつくりたい」

・カイト(仮名)さん
「micro:bitを使って、アレクサみたいなもので、タイマーなどをつくってみたい」

・シズマ(仮名)さん
「顔認識システムで、自分しか入れない自分の部屋の鍵をつくりたい」

・ミィナ(仮名)さん
「みんなのためになるアプリをつくりたい」

ひとりひとりの「つくりたい」に対して、「すごいね」「どんなもの?」と聞いていく若林先生。最後に、「今日のワークショップが全部ではないので、詳しい本やサイトなどを参考にすれば、今日やった以上のことができるから、ぜひ挑戦してみてください」と、メンバーに呼びかけた。

「AIだって簡単にできるんだ!」

バーチャル空間での授業にAIプログラミングと、今回も盛りだくさんとなった「AMDキッズ プログラミング・キャンプ」の2日目。しかし、これだけでは終わらないのが、今回のAMDキッズたち。やる気満々のメンバーは、先生が紹介した天気予報のプログラミングや、Scratchに関する質問など、自分のこれからつくりたいものに向けての疑問を投げかけていった。

恒例の記念写真。AIプログラミングを体験して、ご機嫌なAMDキッズたち。

2日目のワークショップ後に行なったアンケートも合わせて紹介していこう。

「Teachable Machineで簡単にAIに触れることができた」

「すごく簡単にAIの画像認識ができたこと。画像認識の精度があがったら表情も認識してくれるのかな?それができたら凄いと思いました」

「画像認識させた2つ以外をカメラに映すと、どっちかに勝手に認識されて面白かったです。ぬいぐるみと本をしましたが、ぬいぐるみをアップで映すと本と認識されて笑っちゃいました」

「Google Teachable Machineは、まだあまり使ったことがなかったので、勉強になりました。もっといろんな使い方を考えてみたいと思います」

「カメラに写したものをAIで正しく判断できたところがすごかった」

今回のGoogle「Teachable Machine」と「Stretch3」は無料で利用が可能だ。興味を持った方は、ぜひこの記事を参考に試してみてほしい。

「Teachable Machine」

※画像をクリックするとサイトへ遷移します

「Stretch3」

※画像をクリックするとサイトへ遷移します

特別ワークショップの3日目はみんなで「デザイン」を学ぼう

次回は、「AMDキッズ プログラミング・キャンプ」3日目の特別ワークショップ「作品をデザインしてみよう」の様子をお届けする。

プログラミングを体験できるワークショップや教室は多いが、UIデザインに踏み込んで行なわれるものはあまり多くはないので、AMDキッズたちが初めて知る知識も多く、とても盛り上がった。メンバーたちのモチベーションも大いに上がったワークショップとなったので、次回のレポートもお楽しみに!

 「AMDキッズ プログラミング・キャンプ」ワークショップ」
内容 講師
第1回 プログラミングの楽しさを知ろう 三橋優希先生
(N高等学校3年、デザインエンジニア)
第2回 プログラミングでどんなことができるかを知ろう 若林健一先生
(crossroads lab. 代表、CoderDojo奈良 / 子どもプログラミング喫茶京都店運営)
第3回 作品をデザインしてみよう 狩野さやか先生
(ウェブデザイナー、専門ライター)

関連サイト

この記事もおすすめ

PAGE TOP