【DX:技術】AIとソフトウェア(人間の知的能力をマシンで実現)

DX-AI・ソフトウェアデータサイエンス

DX(=Digital Transformation)は、ビジネスや技術、双方の幅広い観点から理解する必要があります。

本記事では、DXのDigital(技術)領域から、『AI』と『ソフトウェア』について紹介します。

スポンサーリンク

AIとソフトウェア

DX検定-技術

DXの実現は、様々な技術により支えられています。

今回は、デジタル世界(Cyber World)を支える『AI』と『ソフトウェア』について、おさえるべきトレンドを紹介します。

スポンサーリンク

AI

AI(人工知能)

AIは英語で「人工知能」を意味するArtificial Intelligence、「人間が行う知的作業をソフトウェアで実現する技術」を意味します。

AIは、下記のように大きく「汎用型人工知能」と「特化型人工知能」に分類することができます。

汎用型人工知能異なる領域で多様な複雑な問題を解決する
(人間の脳の全体を再現する)
特化型人工知能個別の領域において知的にふるまう
(人間の脳の一部個別機能を再現する)

現状では「特化型人工知能」の実現に留まっていますが、その研究分野は多岐にわたります。

画像認識画像から物体を認識(例:カメラ)
自然言語処理・音声認識人間の自然言語・発話を機械で処理
(例:機械翻訳、音声翻訳、音声アシスト)
パターン認識顔や指紋、静脈などの生体認証(例:顔認証)

例えば、自然言語処理・音声認識分野では、「会話型AIプラットフォーム(音声アシスト)」の存在により、AIスピーカーが既に我々の生活に普及しています。

AIスピーカー音声アシスト
Amazon EchoAlexa
Apple HomePodSiri
Google HomeGoogle Assistant
Microsoft InvokeCortana
LINE Clova WAVEClova

機械学習

機械学習は、AI(人工知能)で提唱されている研究分野のうち、基礎研究に相当する一分野で、人間が行う「学習」を機械で実行しようとする技術です。

サンプルデータを解析、その結果から規則性やルールを獲得しアルゴリズムを発展させる手法です。

これまでのAIと異なり、規則性やルールを人間ではなく機械が生成するのが機械学習の特徴です。

ただし、規則性やルールを生成するための「注目すべき特徴(特徴量)」は人間が指定します。
これを機械に実現させる手法がディープラーニングです。

機械学習ライブラリ・APIの活用

AI、特に機械学習やディープラーニングは、導入に専門的なスキルやシステム構築が必要となるため、自前でゼロから構築・運用することは現実ではありません。

そのため、「フレームワーク/ライブラリ(機械学習・ディープラーニング用の開発プラットフォーム)」や、「API(外部プログラム機能の連携インターフェース)」の活用が有効です。

機械学習ライブラリ

機械学習で用いられる主なライブラリは以下です。

Pandasデータフレーム用ライブラリ
NumPy数値計算用ライブラリ
Matplotlibグラフ描画用ライブラリ
scikit-learn機械学習用ライブラリ
機械学習API

機械学習APIとして、以下のベンダーがサービス提供を行っています。

  • TensorFlow API (Google)
  • Amazon ML (AWS)
  • Azure ML (Microsoft)
  • Watson API (IBM)

これらのAPIを通して、画像認識・自然言語処理・音声認識・パターン認識などさまざまな種類の機械学習を「サービス」として実現します。

ディープラーニング

ディープラーニング(深層学習)は機械学習の手法の一つです。

ニューラルネットワーク(ニューロンと呼ばれる脳神経細胞の多層ネットワークをコンピューターで模擬的に再現したもの)を応用し、各層で学習を繰り返すことで、規則性やルールを生成するための「注目すべき特徴(特徴量)」を自身で見つけだすことができます。

ニューラルネットワークの層を深くしたDNN(ディープニューラルネットワーク)は、下記のような、様々な分野に特化した応用ニューラルネットワークに改良されています。

CNN(畳み込みニューラルネットワーク)画像認識に適した手法
RNN(再帰型ニューラルネットワーク)時系列データに適した手法(自然言語処理など)
自己符号化器(オートエンコーダ)次元削減を行うための手法
GAN(敵対的生成ネットワーク)画像生成に適した手法

深層学習フレームワークの活用

ディープラーニングで用いられるフレームワークは、Google社が公開した『TensorFlow(テンソルフロー)』が有名です。

その他、『Keras』、『Pytorch』、『Chainer』などが主要なフレームワークとなります。

スポンサーリンク

ソフトウェア

プログラミング言語

ソフトウェア開発においては多種多様のプログラミング言語が存在しますが、AIの発展に伴うデータ分析の重要性の高まりにより、データ分析向けのプログラミング言語が注目されています。

R言語データ分析に特化
Pythonデータ分析に加え、Webアプリケーション開発など汎用的に利用

ソフトウェア開発手法

ソフトウェアパターン

ソフトウェアパターンは、パターン(特定状況下における問題に適用される解決策や指針)をナレッジ化し、ソフトウェア開発の局面で繰り返し現れるイベント・問題の知見を再利用するものです。

あらゆる局面で数多くのパターンが利用されますが、特にソフトウェア設計におけるパターンを示した「デザインパターン」が有名です。

また、これらのパターンを表現するために、統一された構造で情報を表現するための言語である『モデリング言語』が用いられています。

プロトタイピング

プロトタイピングは、「試作」を意味します。

ソフトウェア開発の早期段階に試作をつくり、機能・操作性を確認、ユーザ要求・評価を後フェーズに反映させる開発手法です。

ウォーターフォール型開発手法のように、後工程でクリティカルな不具合が生じるリスクを避けられます。

並行プログラミング

並行プログラミングは、複数のプログラムを同時に実行する手法です。

処理速度を飛躍的に向上させることができます。

ソフトウェア技術の応用

XR (Cross Reality)

現実世界と仮想世界を融合することで、現実ではないものを知覚できる技術を『XR(Cross Reality)』といいます。

VR(Virtual Reality:仮想現実)ゴーグルを通してコンピュータが描いた仮想世界に入り込み、自分がそこにいるかのような感覚を体験
(仮想世界がベース)
AR(Augmented Reality : 拡張現実)ゴーグルを通して現実空間にコンピュータが作り出した情報を重ねて表示
(現実世界がベース)
MR(Mixed Reality : 複合現実)ゴーグルを通して現実世界とコンピュータが描いた仮想世界を重ね、デジタル世界に触れることで作用
最近では、360度パノラマ空間を作り出すといった『VR2.0』も登場しています。

ホロポーテーション

ホロポーテーション』とは、Microsoft社が開発した、3Dキャプチャ技術を利用し、ゴーグルを通して仮想シーンに実物のようなイメージを映し出す手法です。

スポンサーリンク

まとめ

本記事では、DXのDigital(技術)領域から、『AI』と『ソフトウェア』について紹介しました。

コメント