Developer

【Python連載】機械学習への入門1 ~人工知能とは~
2021.12.27
Lv1

【Python連載】機械学習への入門1 ~人工知能とは~

以前までの記事では、Pythonプログラミングの基本について扱ってきましたが、Pythonで出来ることの全てを紹介したわけではありません。
今回から数記事に渡って、Pythonで出来る先端的な技術『AI(人工知能)』『機械学習』と呼ばれるものについてご紹介していきます。


AI(人工知能)について

Pythonは、様々な場面で用いることが出来ます。
他プログラミング言語と同様にシステム管理ツール・Webアプリ開発を行うことも出来ますが、科学技術計算(物理学や工学分野等のシミュレーション予測といった大量データを扱う際に用いられる計算)をはじめとした大規模な演算にも用いられています。

また、以下のような言葉を、サイエンス関連のニュースで聞いたことがあるかもしれません。

・AI~Artificial Intelligence~(人工知能)
・機械学習

Pythonを学習していると、頻繁に目にする機会があります。
Pythonで出来ることの目玉の一つとして、AI(人工知能)の開発があります。

機械学習とはAIを実現するための技術の一つであり、(簡潔に一言で表現するならば)データ分析技術の一種です。
※上述の科学技術計算も、この機械学習の技術が使われていたりします。

AIと聞くと、どのようなイメージを抱かれるでしょうか?
映画で出てくるような、まるで人間のような知能を持ったロボットをご想像されるかもしれませんが、そのイメージで決して間違ってはいないと思われます。

実はAIの定義は明確には存在しません。
ただし、学術的な権威を持つ多くの組織・研究者に共通して『人間のような知能を人工的に再現したもの』といったような言葉でAIを表現しています。

AIのポイントは、自ら学習し成長していくという部分にあります。
人間と同じように学習を繰り返し、行動を覚えていくということです。

近年ではチェスや将棋・囲碁といったボードゲームの分野で、最強のAIが造られたことが話題になりました。このAIも最初はルールしか覚えていない状態から、対戦を繰り返して学習し、最適行動を見出せるまでに成長したということです。

そんなAIですが、ボードゲームだけではなく、例えば次のような形で現在使用されています。

・車の自動運転
近年ではいわゆるスマートカーと呼ばれる、センサーを利用した事故防止機能を搭載

・顔認識
個人特定によるセキュリティ関係への利用をはじめ、顔部分にデコレーションを施すサービス『Snow』なども

・おすすめ予測
ショッピングサイトでユーザへのお勧め商品を広告

・不良品検知
工場などで製造された製品に不良品が無いかを、画像認識でチェック

・AIアシスタント
SiriやGoogleアシスタントのような、音声認識も使用したお役立ち対話ツール

上記は一部に過ぎません。
株価の予測、地価の予測、あるいは漁獲量予測といった傾向予測にも強いです。
また、癌の診断や医療用サポートロボットなど、医療面でも大きく貢献しています。

AIとは未来の話かと思っていましたが、既に色々な場所で活躍しているのです。

このように、徐々に姿を現せてきたAI技術ですが・・・日本でも国を挙げてAI研究開発に臨んでいます。
第四次産業革命という名目で、AIやIoT、ビッグデータ等の技術で新たなビジネス創出のために、AIの更なる進化に向けた各種取組が行われています。

ちなみに、Python以外のプログラミング言語でもAI開発をすることは可能です。
PythonはAI開発を行うために必要な機能が多く提供されており、AI開発に向いている言語であるという評価がされています。
※Rと呼ばれる言語やC++と呼ばれる言語などで、AI作成は可能です。Pythonと比較してメリットデメリットがそれぞれあるのですが、一般的にはPythonが一番AI開発に向いていると言われています(詳細は割愛します)。

以上、AIについての概要ご紹介でした。
今後の記事では、実際にAI開発を挑戦してみようと思います。

まずは次回記事では、入門編の続きとして機械学習の概要をご紹介します。