見出し画像

分かりやすい*AI人工知能の作り方

IT苦手な人でも分かる「人工知能(AI)の作り方」

AI(人工知能)は
PCでプログラミングして作られます。
なので
プログラミングの説明→AIの作り方の順で解説します。


プログラミングって何?


プログラミングとは
コンピュータへの指示(命令文)を書くことです。

例えば↓この画像

ダウンロードしたぴよたそちゃんの画像。

画像をコンピューター・WEBサイト・オンラインに貼り付けるには
「画像を貼り付けて」って
コンピューターに命令しなきゃいけません。

↓こういう風に命令文を書きます。

<img src="https://assets.st-note.com/img/1682305811788-Tcj0Ru9y3K.png" alt="" width="620" height="620" style="width: 372px; height: 372px;" data-is-resized="true" contenteditable="false" draggable="false">

英語・数字・記号<>"" を使って
コンピューターに正しく伝わるよう書いていきます。

え!?🙄
私、インスタに写真アップしたことあるけど
こんな命令文書いたことないよ!?

インスタは自動で命令文を作成してくれています。
あなたが命令文を書かなくても
写真を選んで、ボタンをポチッとすれば
インスタ側が自動で命令文を作成してくれます。


インスタ、TwitterなどのSNS
note、はてなブログなどのプラットフォームは
自動で命令文を作成してくれています。


でも本来は・・
そのようなツール・プラットフォームを使わない場合は
命令文を書いてコンピューターを動かさなきゃいけません。

WEBサイト作るとき
アプリ・ゲーム・ソフトウェアを作るとき
AI(人工知能)を作るとき
プログラミングが必要です。


例えば
このような↓ 見た目のサイト


裏側は、こうなっています。

英語・数字・記号がズラーっと並んでて
呪文みたい。
コンピューターに
あれしろこれしろって命令を唱えているのです。

インスタもTwitterもYoutubeも
あらゆるサイト
あらゆるアプリ

裏側は英語・数字・記号がズラーっと並んでいて
コンピューターへの命令文が書かれてるのです。

コンピューターを動かすための命令文を書くことを
プログラミングと言います。

プログラミング言語とは?


プログラミングをするときは
コンピュータが理解できる言葉で
命令文を書く必要がありますが
そのための言葉をプログラミング言語といいます。

プログラミング言語は
マイナーな言語も合わせて
200種類以上あると言われてます。

それぞれの言語で得意なことが違います。

Webサイトの見た目を作るには「HTML」「CSS」
Webサイトに動きをつけるには「JavaScript」
Androidアプリを作るには「Java」
iOSアプリを作るには「Swift」

そして、AIを作るには
主にpython(パイソン)という
プログラミング言語を使います。

AIは1956年に誕生


AIって、実は67年前からある技術です。
最新技術のように感じますよね。

昔からある技術なのに
なぜ最近になって
やっと騒がれてるのかというと・・

2006年に誕生した、AIの手法の1つ
「Deep Leaning(ディープラーニング、深層学習)」
が画期的だったからです。

AIには、いろんな手法があります。
教師あり学習、教師なし学習、強化学習、深層学習
などなど

本来のAIって、とても多義語で
ピンからキリまであるイメージ
一般の方が想像するAIとは
かけ離れてるAIも存在するかと思います。


そんな数多くの手法の中の1つ
ディープラーニング
これが一般の方が想像するAIに近いAIなんじゃないかと思います。

「人間を超えるんじゃないか!?」的な
AIっぽいAIです。

今回は、このディープラーニングの仕組みを
フワッと説明していきます。

ディープラーニングの仕組み


AIって、実はピンからキリまであって
いろんな手法があるのですが・・・
ディープラーニングとは、機械学習という手法の1つです。

ニューラルネットワークという構造を発展させたものです。

ニューラルネットワークとは
生物の脳を構成する神経細胞「ニューロン」の構造と働きをモデルにしたものです。
(ニューロンの構造をプログラミング言語と数式で作りあげたもの)


ディープラーニングを作るのに
最適なプログラミング言語はPython(パイソン)

Pythonでニューラルネットワークの構造を
プログラミングしていきます。

入力層にデータを入力する→
入力層から中間層へ、データと重み(バイアス)を渡す→
出力層に渡して結果出力する→
結果の精度を上げるために重み(バイアス)を調節する

このような流れでプログラミングしていきます。

ニューラルネットワークの中はブラックボックス


友人によく聞かれる質問の1つ
「AIって人間を超えるの?」

これに関しては
想像で答えることはできるけど
正確な解答・正確な予想ができません。

その理由は
ニューラルネットワークの中はブラックボックスだからです。

ニューラルネットワークを通って出た結果が、
どんなふうに考えて出てきたのか分からないのです。

例えば、間違った結果が出てきたとして
「なぜ間違った結果だったんだろう?」
というのが不明です。

プログラマー側が調節できるのは
重み(バイアス)だけです。


AIについての勉強法


ここまでで
何となーくフワッとAIの作り方が分かったでしょうか?
(分かってくれてることを祈ってます。笑)

もっと知りたい方・AIを作ってみたい方
私がやった勉強法を教えます!

総コスト1万円前後✨

①Udemy動画
 初心者用のキカガク流動画
 (プログラミング超初心者の方には【キカガク流】の動画わかりやすい
 1コース2,000円前後
 AIとは何か?機械学習とは何か?から勉強できる)

②子供向けのpythonの本
(文字読むの苦手なので、この↓絵本で勉強した。笑)

③アプリProgate プロゲート
 (Pythonのコーディングを学びたい方に。ゲーム感覚で学べる)

④Udemy動画
 学びながら一緒に作っていく系の動画
 (音楽を生成するDeepLeaningを作ってみよう!とか
 画像認識するDeepLeaningを作ってみよう!とか
 自分の興味あるものを動画見ながら作るのが習得早いと思う)



この記事が気に入ったらサポートをしてみませんか?