- 更新日: 2020年01月17日
- 公開日: 2020年01月07日
5分で学ぶ人工知能(AI)
物事の概要把握には、従来の感覚でいくと 5分、 3分 がキリがいい。しかし、AI時代において 5分、 3分、正しいでしょうか... そこでまず人工知能、 1行にまとめました。
人工知能とは、コンピューターが”確認"と"予測"を連続的に行い、人間の判断をサポートする機能。
以下本文に 5分程度で人工知能をイメージ・理解できるよう、ご紹介させて頂きます。
AI ・・・ artificial intelligence
5分で学ぶ人工知能(AI)
AIと人間
気づいていないかもしれませんが、今私達の生活は、多くのAIによって支えられています。たとえば、、、
- 天気予報(ウェザーニューズ)
- 道案内(Google Map)
- 仕分け作業(シタラ興産*)
- プロ野球(DeNA*)
- ラジオ(FMわかやま*)
- クリーニング(株式会社エルアンドエー*)
- タイの養殖(近畿大学)
- 年金* etc
天気予報については、 5分後、 1時間後の天気や雨雲の動きなどを予測。道案内は、アプリ: Google Map で動いている人工知能で、現在値と目的を入力すれば、その間の交通情報を収拾し、最適ルートを予測してくれるもの。
仕分け作業については、人間の”目”の代わりにカメラやビデオが対象物を画像分析し、認識内容に応じて捨てたり、そのままにしたり適切な処理。
野球は、過去のデータを元に打順や投球種の最適化を予測。ラジオは、コンピューターによる言語処理。
クリーニングは、お客様がもってきた衣類をカメラで画像解析し、価格の自動提示。
タイの養殖、稚魚選別作業にカメラで画像解析を加えて、使えない稚魚を予測・制御。 年金は、ビッグデータ解析によって、最適な投資先を予測。
もうすべての活動で人工知能を使っていないことが"罪"とも思える状況に。
しかし、ここで気付いておきたいことは、人工知能によって”予測”データは出力されますが、最終的な判断を下すのは人間です。
天気予報についても、ルート案内についても、年金についても人工知能によって”予測”はされますが、決めるのは"人間"です。なので、今社会は、人間が判断を誤らないようにするために”人工知能の基礎理解”が必要という訳でしょう。
尚、人工知能の作成から利用までの一連の流れは上図の様なイメージ。データを元に傾向を把握し、入力値(○時間後の天気)に対して、予測値を返す、という流れです。
つまり冒頭一行にまとめた
「人工知能とは、コンピューターが”確認"と"予測"を連続的に行い、人間の判断をサポートする機能」
の ”確認”は「入力値」で、”予測”は「予測値」。
もはや"車"同様に、人工知能の説明も中身までせず、機能を説明するだけの時代になってきたといえるでしょう。
AIと社会人
2019年6月11日、日本政府は小学校から「読み・書き・そろばんと同じようにAI教育を実施する」と決定。 AI教育の開始時期は未定なものの、2020年から小学校でプログラミング教育がはじまり、 2021年から中学校でプログラミング、 2022年から高校で「情報Ⅰ」の必修化、と考えると、これから社会に出てくる人は”AIの基礎知識”を持っていることに。これに対して社会人は、自分でAIを学ぶか、会社や公的な学習機会で自発的に学ぶ必要が。。。
ここで「別にAI学ばなくても大丈夫じゃね、生きていけるっしょ」と思う方も。感覚的には今スマホを持っていなかったり、インターネットを利用しない方も社会活動できています、なので恐らく今後 AIリテラシーがなくても生きていけると思います。ただ、新しいモノやサービスを開発したり、企業活動を管理するような立場の仕事には辿りつけないかもしれません。そこには”データ”が存在しますので、データ分析、データマネジメントに必要な ”AIリテラシー”が必須となる、と考えられるため。
自分の身の回りを見て下さい、どんな方が生き生きとして幸せそうですか? また自分は将来どんなことをしたいですか? 前向きで創造的な仕事をしたいと考えるなら、AIリテラシーは必須でしょう。
AIを体感する
百聞は一験にしかず、ということで AI を理解する最短ルートは、自分で AI を動かしてみることでしょう。
なんだか難しそうな AI も、人工的に作るプログラムなので、パソコンとネット環境があれば誰でも作れます。
例えば、”あさがお”の成長を AI で予測するプログラムなんてどうでしょう。夏休みの宿題でありましたよね、”あさがお”の記録。
【AIを利用した"あさがお"の成長予測Webアプリ完成イメージ】
数字を入力するだけで、○日後の”あさがお”の長さを予測できます。ただ、あくまで予測です。
子供の AI教育などにおいては、こうした簡単な AI プログラムと実際の”あさがお”の成長を照らし合わせ、
「あれ、予測値より短いな」 「おおっ、自分の方が大きく成長している」 「えっ、予測値がマイナス??」
といった気付きから、「天気が影響したか?」「気温が影響したか?」「アブラムシが影響したか?」「そもそも"あさがお"の品種が違う?」「なんで予測値がマイナス?」という考察と学習につながり、予測を正確に行うためには色々データが必要だな、と”予測”と”データ”、”データ”と”AI”がつながっていけば予測精度も上がるように思います。
いきなり決定木や線形回帰、ディープラーニングと言われても、チョット難しいですよね。でもとりあえず自分で人工知能を動かせたら、チョット面白くありませんか?
また成長を予測できるようになると、"あさがお"の観察値、AIに任せちゃうという手も...
上記”あさがお”の成長予測プログラム
https://github.com/oshimamasara/ML_ASAGAO
【プログラムの概要】
- プログラミング言語/ Python
- 機械学習方法/ 線形回帰
- Webサービス/ フレームワーク Flask
【プログラムの処理フロー】
あさがおの成長予測プログラムで使う各ファイルを整理すると上図のように。各ポイントで使われるファイルを把握しておきましょう。
【プログラム実行方法】
GitHubアカウントをお持ちの方(簡単、ブラウザ上で完結)
【Gitpodで使用したコマンド等】
https://gitpod.io/#https://github.com/oshimamasara/ML_ASAGAO
cd ML_ASAGAO
pip3 install -r requirements.txt
python3 train.py
python3 api.py
別のターミナルを起動して
python3 app.py
gitpod.io の場合、月 100時間まで無料利用可能。自分のパソコンに Python 環境が無くても人工知能プログラムをテスト可能。 月100時間稼働できるので、気になった時、プロジェクトを共有したい時に便利。
Paizaアカウントをお持ちの方(まずまず簡単、ブラウザ上で完結)
【Paiza Cloudで使用したコマンド等】
git clone https://github.com/oshimamasara/ML_ASAGAO
cd ML_ASAGAO
pip install -r requirements.txt
python train.py
python api.py
別のターミナルを起動して
python app.py
紹介された URL、一定時間経過すると自動的にシャットダウンされます。
Paiza を使うと、自分のパソコンに Python 環境がなくても人工知能プログラムを実行テストできます。ただし、毎度プログラムを実行する手間がありますね。
ローカル環境でプログラム実行(Python環境必要、ターミナル等使用)
【ローカル環境で使用したコマンド等】
git clone https://github.com/oshimamasara/ML_ASAGAO
cd ML_ASAGAO
virtualenv env
source env/bin/activate
pip install -r requirements.txt
python train.py
python api.py
別のターミナルを起動して
python app.py
自分のパソコンに Python 環境がある方ならこちらがおすすめでしょう。
<< コマンドについて >>
cd ML_ASAGAO / 実行ファイルがあるディレクトリに移動
pip install -r requirements.txt / これから Python で実行するプログラムに必要な Python ライブラリをインストール
python train.py / 元データを使って機械学習(線形回帰)、プログラム実行後、学習済みデータとして model.pkl を出力
python api.py / 学習済みデータを利用できるように Web に公開
別のターミナルを起動して
python app.py / 数値入力と予測値を表示できる Web ページを公開
より詳しい内容は、各プログラムファイルを確認してみて下さい。
Dockerでプログラム実行(Docker環境必要、Python環境不要、ターミナル等使用)
【参考動画】 【Docker環境で使用したコマンド等】
docker build -t api-test .
docker run -d --name api-test01 -p 5555:5555 api-test
cd app
pip install -r requirements.txt
python app.py
Docker利用中の方ならこちらが簡単でしょう。 自分のパソコンに Python の実行環境がなくても人工知能プログラムを実行できちゃいます。
人工知能プログラムの Python を動かす環境、たくさんありますね。お好みのスタイルで人工知能、動かしてみて下さい。
実際に自分で人工知能を作成し、いろいろな値を入力して、予測値を確認してみると色々疑問が湧いてくる思います。特に今回の様な 2次関数的に変化しているデータ。
【今回機械学習に使用した”あさがお"の成長記録データをプロット】
機械学習させる train.py では「線形回帰」を使っているため、乗数的に変化する 40 〜 100日付近の予測値は大きく外れると思います。「線形回帰」ではなく「多項式回帰」で機械学習させる方がいいんでしょうね。
こんなふうに TRY & ERORR で学習していく方法もアリではないでしょうか。
\AIエンジニアに必要なスキルが身に付く/
まとめ
もっと他にも AI について書きたいですが、やめておきます。
AIについは否定的な考え方、否定的なイメージをお持ちの方もいらっしゃるかもしれませんが、実は冒頭ご紹介したように私達の生活の多くの部分を AI が支えてくれています。 AIに助けられている現状を理解する必要がありますね。
そうした上で人類にとって強力なツールとなる"AI"をどう使うか、というのは自分次第になるでしょう。
「もっと楽して暮らしたい」「もっと幸せになりたい」、と考えるなら AIリテラシーあった方が良さそうですね。
現在書店でも AI関連の本はたくさんありますし、オンライン上でもコンテンツはたくさんあります。しかし、どうでしょう、自分で AI を操作してみる、 AI を使った予測サービスを作りたいと思った時、上手くいくでしょうか?
今回ご紹介した「あさがおの成長予測アプリ(サンプル)」も、 Python や HTML、 CSS といったプログラミング言語、それからサーバー知識、機械学習が使われています。
「ちょっと自分一人では無理だな」「参考書買ったけど、、、、」という方、プログラミングスクールを頼ってみませんか? 少しのお金はかかりますが、今後の人生換算で考えると決して高くないのではないでしょうか?
どこから*でもレッスンを受けられる CodeCamp では、 AIレッスン(Python基礎から)レッスン をはじめ、 ITリテラシーを養うための「テクノロジーリテラシー 速習コース」も受付中。
「オンラインで学習?」「自分でも続くのかな?」「レッスンの質、悪くない?」という方、一度無料体験でテストしてみませんか? 学習内容やレッスン形態、サポートなどを確認すると、本当に学ぶべきかどうか、判断がつきやすいと思います。
無料体験は随時実施していますので、詳しくは 公式ページ をチェックしてみて下さい。
”どこからでも”というのは、オンライン環境の条件付きです。海外からでもオンラインなら CodeCamp できちゃいます。
- この記事を書いた人
- オシママサラ