プログラマーがAIに置き換わる日
AIに仕事を奪われるという話は数年前から聞く話だと思います。
「プログラマーという職業もAIに置き換わるんじゃないか」、といった話も出ておりますが、いやいや、「プログラミングはAIには無理でしょ」、という話も出ています。
一体どっちなんだと。
個人的にはAIが得意とするプログラミングの分野があり、その分野においては今後、AIに置き換わっていくのではないかと思います。
そこで、今回は以下の話をしていきたいと思います。
AIとは
AIは簡単に言うと人間の脳の仕組みをコンピュータ上で再現したものです。
脳内には複数のニューロンが存在していて、ニューロン同士が接続されていて、何かしらの情報をインプットとして受け取り、何かしらの情報をアウトプットします。
なにも学習していない状態のAIは間違った答えをアウトプットする役立たずなのですが、学習させることで徐々に正解をアウトプットすることができるようになります。
例えば、「1+1」というインプットを与えた場合、学習していない状態だと、「10」とか「20」とか間違った答えをアウトプットします。
AIが間違えるたびに「1+1」の答えは「2」だよと教えてあげると、AIはニューロン同士の結びつきの強さを調整して、「2」をアウトプットするようになります。
AIは学習を通して、インプットから正しいアウトプットを出せる仕組みと覚えておいてください。
プログラミングとは
プログラミングには、JavaやCなど様々な言語がありますが、ひとつひとつの関数を見ると、いくつかのインプット(引数)を受けて、アウトプットを出すのが基本です。
プログラムが終わった後は様々なテストを実施して、そのプログラムの品質を確保します。
テストを実施する際にテストケースを準備するのですが、このテストケースはどんなインプットのときにどんなアウトプットを出すのかをまとめた表になります。
先ほどのAIの例に合わせると、「1」、「+」、「1」というインプットを受け取ったら「2」を返すというのがテストケースになります。
AIとプログラミングは似ている
この時点で気づいた方も多いと思いますが、AIもプログラミングもどちらも、インプットをなんらかの処理をして、アウトプットを出します。
そして、途中の計算方法を機械にもわかるように書いたものがプログラミングで、ニューロンに計算させたのがAIとなります。
テストケースが書ければAIに学習させることができる
テストケースがかけてしまえば、それはどのようなインプットに対して、どのようなアウトプットを出してほしいか明確になるということですので、そのテストケースをそのままAIの学習のために利用すれば、AIは正確なアウトプットを出せるようになっていきます。
今後はプログラミング言語のひとつとして、「AI」が入ってくる日もそう遠くないと思います。
AIに負けないために
こちらの記事でも紹介しましたが、今後はプログラミングだけをスキルをしていくのはリスクが高いと思われます。
対策としては、詳細設計からテストケースを作成するスキルや、設計工程へスライドしていくのがよいのではないかと思います。
まとめ
プログラミングには、画面操作のプログラミングや物理シミュレーションのプログラミングなど様々あり、テストケースが書きづらいようなプログラミングは今後も残ると思います。
しかし、業務ロジックなど基幹系システムで使用されるプログラミングについてはAIに置き換わっていくのではないかと思います。
ただし、AIを使いこなすことで、プログラミングを行う時間を短縮したりすることもできますので、将来を見越してAIを勉強しておくのもよさそうです。
#私の仕事 #営業 #IT #ITエンジニア #IT業界 #システム #社内SE #毎日note