SE必見!!今どの産業でも注目を集める技術「AI」とは

#エンジニアブログ

AIというと最近ではテレビやインターネットなどでも取り上げられることも多く、単語として目に留まる機会は多くなっているのではないでしょうか。既にAIを取り入れている分野もある一方で、その実用化にむけては様々な業界でまだまだ研究段階であることも事実です。AI自体は前回のブームから20年以上経過している技術ですが、近年、機械学習の一つである「ディープラーニング」という技術などを利用して産業に多大なメリットを出すことができるようになったことで、システムにAIを取り入れる企業が多くなってきています。日本でもAIエンジニアを破格の報酬で獲得しようとする企業が出てくるなど、いかにAIに注目しAIエンジニアの獲得に力を入れているか窺い知ることができます。こうしたことや市場背景も手伝って、今後、AI関連技術の需要はますます増加していくことは想像に難くありません。今回はAIについて説明します。

 

 

■AIを実装する三種類の機械学習

そもそもAIとは、Artificial Intelligenceの略称で、日本語では「人工知能」と言われる、人間の知的な言動を再現できる仕組みのことで、現在IT業界で最も注目を集めている技術の一つと言えます。

ニュースにもなりましたが、Google DeepMindによって開発された囲碁プログラム「アルファ碁」はAIを搭載したプログラムで、棋譜(対局の記録)やアルファ碁同士の膨大な対局結果をデータとして分析し、最善の一手を導いていきます。つまりAIはデータを分析する仕組みで作られています。この仕組みを「機械学習」と言います。この「機械学習」はディープラーニングという技術を取り入れることで、より正確に画像、テキスト、音声など様々なデータを分析できるようになってきています。いくつか種類がありますが、基本的なものとして以下の3つがあります。

 

教師あり学習

「教師あり学習」は事前に与えられたデータを元にして、新しいデータを分析し答えを出すことができます。例えば、人間の顔画像とその画像の人の年齢を一つのデータとして教師あり学習の仕組みを使い、事前に分析しておくことで、新しい顔画像を読み込んだ時に、写っている人の年齢を予測することができます。

 

教師なし学習

「教師なし学習」は事前データの分析なしに与えられたデータの共通項やパターンを見つけて分類することができます。例えば、ネットショップで、ユーザーの年齢、性別とその人が買った商品を教師なし学習で分析したとすると、性別・年齢ごとにどのような商品を買う傾向にあるかを分類することができます。

 

強化学習

「強化学習」は、試行錯誤を繰り返し、結果を分析していくことで、より精度の高い答えを出していくことができます。「アルファ碁」はこの仕組みも利用しています。アルファ碁同士の対局結果を分析することで、次の対局でより精度の高い手を導き出すことができます。

 

 

■AIの実装に適しているプログラミング言語

AIは特定の言語でないと実装できないわけではありませんが、AI開発に適している言語とそうでない言語があり、適した言語とされているのは主に「Python」と「R」とされています。二つとも機械学習を実装するためのプログラム(Pythonでは「ライブラリ」、Rでは「パッケージ」と呼ばれています)が多く実装されています。

 

・Python

オブジェクト指向で実装可能でJavaエンジニアなどの他の言語を学んでいれば習得しやすい言語です。またインタプリンタ言語であるためトライアンドエラーがしやすく、生産性が優れています。「NumPy」、「pandas」、「SciPy」など機械学習を実装するためのライブラリが数多く用意されています。

 

・R

オブジェクト指向のように書くこともできますが、やや関数型の言語です。オブジェクト指向に慣れているエンジニアには少々習得に時間がかかる傾向にあります。ただ、機械学習実装のためのパッケージが数多く用意されていることや、インストール後すぐプログラミングを開始できること、関数の使い方がわからない場合のヘルプが充実していることが魅力です。

 

■AIの今後の展望

AIは今後ますます私たちの生活の中に入ってくることが予想されます。現在でもAIアシスタントやお掃除ロボットなど既に身近な存在になりつつある技術で、あらゆる業界での活用のために研究開発が盛んに行われています。例えば、自動車業界では自動運転車の研究が進んでおり、近い将来、完全な自動運転車が市場に出てくる可能性があります。また、画像解析の分野においても研究が進んでおり、犯罪捜査やセキュリティシステムで既に利用されています。

これらの例は一部に過ぎず、既にAIが導入されている分野から研究段階の分野まで今後もAIがあらゆる産業に大きな影響を与えることは間違いないと言えます。

 

 

■まとめ

今回はAIについて説明しました。現段階の影響度も考えてみても、今後、AIはあらゆる分野で中心的な役割を持った技術として、影響を与えていけるほどの力を持っています。システムエンジニアにとってもこれから新たに求められてくるスキルの一つになってくることも十分にあり得ると思われますし、自身の市場価値を高めることができるスキルなので、注目しておくと良いでしょう。

関連する記事