Home / ソフトウェア / 人工知能は作れる?初心者向けから上級者向けまで

人工知能は作れる?初心者向けから上級者向けまで

最近、ニュースや新聞、インターネットで「人工知能」いわゆるAIのことを聞かない日はありません。身近な例で言えば、将棋や囲碁の対局で、AIが名人と呼ばれるプロをことごとく撃破するニュースは、私たち人間にとって、非常にセンセーショナルなものでしたね。そのうちに人間がAIによって支配されるという話まで、まことしやかに聞かれる今日この頃です。

この人工知能は、世界的な企業や研究室などを中心に日々開発が進んでいますが、自分で作ってみたいと思いませんか?「そんなもの、自分なんかに作れるわけないだろ?」と思っているあなた!ぜひこの記事を最後まで読んでください!あなたの固定観念がくつがえるかもしれません。

スポンサードリンク

人工知能ってなに?

まず「人工知能」「AI」とはなんでしょうか?「人工知能」と聞いてすぐに思いつくのは、鉄腕アトムのような人間の形をしたロボットですか?それとも前述した将棋や囲碁をするロボットでしょうか?人によって、さまざまなイメージがあると思います。そもそも人工知能とはどういうものなのか。最初はここから探ってみたいと思います。

人工知能って?

人工知能といっても、現在では実は二つの考えがあるようです。ひとつは、人間の知能と全く同じものを持つ機械(ロボット)を作ろうとする考え。先ほどの鉄腕アトムはこれにあたります。もうひとつは、人間が知能を使って行うことを、人間の代わりに機械(ロボット)にさせようとする考えです。こちらは将棋や囲碁のロボットですね。

この二つの考えのうち、現在の研究のほとんどは後者の考えです。つまり、人間と全く同じものを作ろうとしているのではなく、人間が知能で行なっている活動のほんの一部を機械にさせるということです。なので、将棋のロボットは、将棋については名人以上の能力を持っていますが、人と会話をすることはできませんし、明日の天気もわかりません。ある特定の能力に特化しているわけです。

人工知能の例

人工知能ですが、先ほどからご紹介している「将棋」や「囲碁」の世界ですでに活用され、話題になっていますね。他にはどのような人工知能が活用されているでしょうか。

身近な例でいえば「掃除ロボット」ですね。もうその存在が当たり前になり過ぎて「え?これも人工知能なの?」という感もありますが、これもれっきとした人工知能です。その部屋の大きさや家具の配置を把握・理解し、効率的に掃除をして回るロボットです。人間と違い、同じ箇所を不必要に何度も掃除することはしません。

また、自動車の自動運転技術も人工知能の分野のひとつですね。世界各国で開発競争が繰り広げられています。日本においても、特に衝突防止機能は今やほとんどのメーカーの新車に標準搭載されてきています。また、駐車場での運転補助もそのひとつです。せまいスペースにバックで停車させるのは、特に女性のドライバーには難しいこと。それを補助してくれるシステムですね。

さらに進んだシステムとしてすごいものを見つけました。ショッピングセンターや空港などの広い駐車場に入ったはいいものの、空きスペースがどこにあるのか探すのに一苦労。そんな経験ありませんか?そんなあなたのために生み出されたのがこちら。フランスのメーカーで開発されたもので、すでにいくつかの空港で実用化されているようです。これは驚きですね!まるで映画のワンシーンのようです。

こうした自動車関連の技術については人工知能にとって活躍できる最高の場所のひとつなのだと思います。これからも様々なドライバー支援技術が開発されることになるでしょう。

人工知能を作ることはできる?


ここから本題に入りましょう。わたしたちのような特別な知識がない人間でも人工知能を作ることができるのでしょうか?答えは「YES」です!ここまでの記事を読まれた方は「掃除ロボットや自動運転技術なんて、私にできるわけがない!」と感じていらっしゃるでしょう。もちろんそこまでの高度なものは無理ですね。ただ、人工知能といっても非常に簡単な処理をするだけのものもたくさんあります。

もちろん、簡単にできるものではありませんが、ある程度の知識さえあって、インターネットとパソコンがあれば、作ることが可能なのです。

人工知能を開発するには

ではどうやって人工知能を作るのでしょうか?たとえば人間が自動車の運転ができるようになるには、自動車学校に通い、練習をしますね。必ず学習することが必要なのです。掃除もしかり。将棋もしかり。人工知能は人間に代わって判断する技術ですね。なので、人間が学習するのと同じように機械に学習をさせる必要があります。これを「機械学習」と呼びます。機械学習をすることで人工知能が作られるのです。

機械学習とは?

機械学習とは、人間が通常行なっている判断や認識などを、機械に対してさせることを言います。人間は犬を見れば「これは犬だ」と判断しますし、猫を見れば「これは猫だ」と判断します。対象物を見て、「四つ足で歩く」「鼻が前に突き出ている」「身体が毛で覆われている」「しっぽがある」など、犬独特の特徴を総合して「これは犬だ」と瞬時に判断します。猫の場合もまたしかりです。これと同じことを機械にさせるのです。

しかし、同じ犬でもいろいろな種類の犬がいます。鼻が前にあまり出ていない犬もいるでしょうし、しっぽがとても短い犬もいます。そうしたいろんなパターンを機械に学習させて、犬を見たときに「これは犬だ」と判断させるのが機械学習です。なので、機械学習には、学習させるためのデータが必要になります。そして「こんな特徴があるのは犬」「こんな特徴があるのは猫」というように人間が機械に教えていきます。

ディープラーニングとは?

つづいて「ディープラーニング」ですが、これは先ほどの機械学習の一部とお考えください。ディープラーニングとは、例えば「犬」を機械に認識させようとした時に、犬の画像をひたすら見せることで、機械が犬の特徴を自動的に学習していくのです。「犬というものはこんな耳をもっているのだな」「犬というものはこんな鼻があるのだな」というように。学習した数が多ければ多いほど、犬のパターンを蓄えていきます。

そして大量の犬の画像を見せられて学習した結果、犬の画像を見せると「これは犬だ」と認識できるようになります。つまり、ディープラーニングはほとんど人間が介在せずとも機械が自動的に学習していく、という利点があります。

ディープラーニングでできること

ディープラーニングでは具体的にどんなことができるようになるのでしょうか。
まず前述した通り、画像認識が格段にアップします。それにより、監視カメラによる追尾システムに応用されています。例えば追尾したい人の情報を登録しておき、監視カメラがその人に一致する人を見つけた場合には、その人をずっと追尾するシステムです。

このシステムで俊逸なのは、通常は顔だけで判断するように思われがちですが、服装や年齢、所持品などの情報からも瞬時に判断、特定するという点。例えば「白色に青いボーダーが入ったTシャツを着た20代の男性」という条件でもOKなのです。

さらに、医療の分野でも活躍しています。たとえばレントゲンやCTスキャンなどの映像を解析し、どこの部位にどんな症状があるのか、を検出する働きです。これにより、医師では経験値により判断にばらつきが出ることがありますが、人工知能を活用することで、精度の高い治療が可能となります。

人工知能の開発にはこれ


ここまでご紹介した人工知能ですが、実際の開発にあたっては専用のソフトウェアであったり、サーバーが必要です。それらをすべて自前で準備するとなると膨大な手間がかかります。そこで、人工知能の開発に必要な基本的なシステムを最初から準備してくれているサービスがあるのです。これにより、よけいな手間を省いて、開発に専念できるようになります。ここではそういったシステムをいくつかご紹介いたしましょう。

初心者向け①Azure ML

まず最初にご紹介するのが「Azure Machine Learning」、通称Azure ML。これはMicrosoft社のクラウドコンピューティングプラットフォーム「Microsoft Azure」のひとつです。クラウドコンピューティングプラットフォームとは、開発に必要なサーバーや基本的なアプリケーションなどをインターネット上に最初から準備しており、ユーザーは自前で手配せずとも簡単に利用できるというものです。

もともと人工知能を開発するには、難しい数学の知識や、複雑な理論を学ぶ必要がありました。これが人工知能というものを「特別な人だけの特別なもの」にしていました。しかしそういった専門知識が乏しい場合でも、かなり容易に機械学習ができるサービスが「Azure ML」になります。インターネットにつながっているパソコンさえあれば、Webブラウザ上で開発ができます。使える機能に制限はあるものの、無料のサービスもありますので、ぜひトライしてみてください。

初心者向け②Amazon ML

次にご紹介するのは、「Amazon Machine Learning」、通称「Amazon ML」。こちらはAmazonが提供する機械学習のクラウドコンピューティングプラットフォーム「AWS(Amazon Web Services)」のひとつです。Microsoftに比べるとシンプルなサービスですが、「機械学習をちょっとだけ体験したい」という人に向いていますし、すでにAWSを利用していて、そのデータを機械学習に利用されたい方であれば、データの連携が簡単にできるようです。こちらも無料枠のサービスがあります。

中級者向け①Bluemix IBM Watson

中級者向けとしてご紹介するのは「Bluemix IBM Watson」です。こちらは人間の言語を認識する分野ですでに幅広く活躍しています。例えばほとんどのコールセンターでは、お客様との通話データを録音しています。この通話データを分析することで、顧客満足度をアップさせることは可能なのですが、毎日何百件〜何千件という録音データをひとつひとつ人間が聞いて分析するなど到底できません。

そこで人工知能の登場です。録音された通話データの中で、お客様から感謝の言葉が多かった通話や、逆に不満が多い通話をピックアップするシステムがあります。これにより「どういった対応が原因でお客様に感謝されたのか、不満に思われてしまったのか」を分析できるようになります。さらに最近ではチャットシステムによるお客様とのやり取りをする企業も非常に多くなりましたが、お客様が入力した言葉を自動認識し、適切な回答をする自動チャットシステムを開発して、顧客満足をアップさせている企業も出始めています。

人工知能の強みは、チャットでのやり取りが増えれば増えるほど、経験値を積んで、より高度なやり取りができるようになることです。
この「Bluemix IBM Watson」ですが、このような本格的なシステムを構築するには難易度は高いですが、ほんのちょっとしたチャットシステム程度であれば、特別な知識がなくても作れるようです。ぜひ試してみてください。

上級者向け①Keras

ここから「上級者向け」としてご紹介するのは、前述したようなプラットフォームではなく、フレームワークになります。フレームワークとは、プログラミングにおいて、ある程度の必要と思われる機能がすでにつくられている大枠のようなものです。
最初にご紹介するのは「Keras」。Pythonというプログラミング言語で書かれたフレームワークのひとつです。人工知能開発のトップをひた走るGoogleが自社開発に使っているものであり、そういった意味で安心感がハンパないです。

上級者向け②Chainer

同じく上級者向けとしてご紹介するのは「Chainer」。こちらもPythonで書かれたフレームワークです。日本のベンチャー企業主導で開発が進められています。主にディープラーニングで用いられ、「顔認証」「音声認識」などに活用されています。

前述のKerasとの違いですが、KerasはTensorFlowという別のライブラリをサーバー側の処理として専用に使っているのに対し、ChainerはすべてPythonで書かれています。そのため、Kerasのほうが実装にかかる時間は短縮できるものと思われます。

先ほどのKerasとChainerの両方がPythonというプログラミング言語で書かれています。「人工知能といえばPython」という流れがありますので、本格的に人工知能を勉強されたい方はPythonの学習が必須になると思われます。

まとめ


いかがでしたでしょうか。今までは人工知能というと「特別な高度な知識を持った一部の人だけが触れることのできる、異次元の世界」という認識だったと思いますが、意外と身近な存在なのだな、と感じていただけましたでしょうか。

人工知能の開発は世界各国ですごいスピードで進んでいます。それにより「人工知能に仕事がとられてしまう」という話を耳にすることが多くなりました。たしかに人間の代わりに機械がすべき仕事も多くあります。特に危険な仕事などはその最たるものです。

しかし介護や保育など「人間らしい仕事」はおそらくなくならないでしょう。人間が人間たる理由。人工知能の開発が進むにつれて、「人間とは何か」「どう生きるべきか」ということが問われてくるのではないでしょうか。


スポンサーリンク

Check Also

パワーポイントの有用性と入手方法

マイクロソフトオフィスのアプリ …