ここから本文です
AI(人工知能)& IoT
AIとIoTについて、ともに学びましょう。

書庫AI

記事検索
検索

全4ページ

[1] [2] [3] [4]

[ 次のページ ]

 「デジタルレイバー(Digital Labor)」は、事務作業を自動的に行なってくれるコンピュータ・プログラムで、「仮想知的労働者」とも言われる。

 たとえば、さまざまな伝票の処理。あるいは、メール等で寄せられる問い合わせへの対応など、人に頼らざるを得なかった複雑な事務処理も、 RPA(ロボティック・プロセス・オートメーション)と呼ばれる技術により、自動化できるようになってきた。

 表計算ソフトのエクセルの中で完結する作業なら、マクロ機能を使って自動化が可能だったが、RPA は、複数の情報システムからデータを集めたり、インターネットから情報を収集したり、状況判断までできるように発展させたもの。

 まずは簡単な作業から始めて、だんだん複雑な作業に対応させていく。しかし、一度、PRA に任せられるようになると、あとは自動的かつ正確に作業を行ってくれ、24時間稼働も可能で、仕事を覚えた頃に退職するといったこともない。

 つまり「デジタルレイバー」は、「RPA を擬人化して仮想的な労働者」としたもの。RPA という新たな労働者が定型業務を黙々とこなしてくれる分、人間はより高い判断が必要な仕事や創造的な仕事に時間を使うことができる。

 自動化の対象となる業務は多くの場合、それまで担当していた従業員が独自に工夫を重ねており、本人さえ意識していないものを含めて、膨大な例外処理がされている。「あの人しかできない業務」と言われるものが生じるのはそのためで、他の誰かに手伝わせて業務量の集中を是正するには、このブラックボックス化した作業手順にメスを入れることで「見える化」「単純化」を図る必要がある。
イメージ 1
出展:「いちばんやさしいRPAの教本」

 個々の業務を担当する「デジタルレイバー」を束ねて管理していくのが、これからの人間の役割になっていくのかもしれない。
イメージ 2
出展:「いちばんやさしいRPAの教本」


参考
NTTPCコミュニケーションズ:用語解説辞典

RPA Technologies.Inc:バーチャルな知的労働者「デジタルレイバー(Digital Labor)」と協業する時代に

インプレス:進藤 圭(著)「いちばんやさしいRPAの教本」

この記事に

開くトラックバック(0)

『顔認証ゲート』

◆顔認証ゲートの本格導入(法務省HPより)
 入国管理局では,平成29年10月18日から,羽田空港の上陸審査場に顔認証ゲートを3台先行導入,平成30年8月までに,羽田空港に加え,成田空港,中部空港,関西空港及び福岡空港の上陸審査場に本格導入。また,同年11月末までに当該5空港の出国審査場へ本格導入し,日本人の出国手続,帰国手続の両方で利用できるようにする予定。顔認証ゲートの利用に当たり,事前の利用登録手続は必要なし。

◆導入目的
 顔認証技術を活用して日本人の出帰国手続を合理化し,より多くの入国審査官を外国人の審査に充て,審査の厳格さを維持しつつ更なる円滑化を図る。

◆利用
 顔認証ゲートは,IC旅券のICチップ内の顔の画像と,顔認証ゲートのカメラで撮影した顔の画像を照合して本人確認。照合により本人確認が完了し問題がなければ,ゲートを通過することができる。顔認証ゲートを利用した場合には,入国審査官から旅券に証印(スタンプ)を受ける必要がない。

◆概要
イメージ 1
 この「顔認証ゲート」は、パナソニック株式会社の社内分社であるコネクティッドソリューションズ社が新開発したもの。同社は1957年から取り組んできた監視カメラの技術を応用し、5年前から顔認証システムの開発に本格着手。今回の製品には、99%超という高い認証率。

 顔認証ゲートの採用に当たっては、5社が参加する熾烈な入札が行われたが、価格に加えこうした使いやすさやデザインが評価され、パナソニックが落札した。2018年時点で計134台、総額約16億円分の受注を得ている。

イメージ 2


 顔認証をはじめとする生体認証システムは、空港などのセキュリティ用途のみならず、多方面での活用が期待される。これにより実現するのは、安全で快適な社会なのか、それともSF小説に描かれた大衆監視社会なのか。技術革新には正と負、両方の側面がある。

出展
法務省:顔認証ゲートの本格導入について(お知らせ)
http://www.moj.go.jp/nyuukokukanri/kouhou/nyuukokukanri07_00168.html

東洋経済:パナとNECが激突、空港「顔認証」ゲートの戦い
https://toyokeizai.net/articles/-/233194

この記事に

開くトラックバック(0)

 ニューラルネットワークの「教師あり学習」で、度々発生してしまうものに「過学習(Overfitting)」があります。「過学習」とは、学習データに適合しすぎて、学習データでは「正解率(accuracy)」が高いのに評価データでは正解率が低くなってしまう、つまり、学習データだけに最適化されてしまうことです。予め用意した学習データでの正解率が高くても、実際の運用では役に立ちません。
 
◆「過学習」を抑制する方法
① 学習データの数を増やす。
 学習データの数が多ければ多いほど、学習データのバリエーションが増えていき、未知の「まだ見ぬ」データに近づいていくので、最も良い解決策と言えます。学習データが収集出来ない場合には、手作りでの加工や機械的にクローンデータを水増しするなどが必要になります。
② モデルを簡単なものに変更する、又は、ドロップアウトする。
 モデルを簡単なものに変えてしまうというのは、リスクもあってなかなか難しいので、ドロップアウトという方法があります。多層ネットワークの各層のユニットを確率的に選別して、選別したもの以外を無効化します。
イメージ 2

③ 正則化する。
 正則化(regularization)というのは、パラメーターの値が大きくなりすぎるのを防いで、小さい値に近づけていくことで、変数の影響を抑える数学的な手法、すなわち、不要なパラメータの影響を小さくすることで複雑なモデルを単純なモデルに変えていきながら、過学習を防ぐということです。

◆学習曲線からの過学習検知
 既に得られているデータを例えば9:1の割合で訓練データとテストデータに分け、訓練データを過去や現在のデータ、テストデータを予測されるべき将来のデータとして見なし、次に訓練データの学習をした後に、テストデータを用いてモデルがどれだけ上手く将来の値を予測出来るのかを評価します。訓練データの学習は上手くいくが、テストデータに対する学習は上手くいかないことを「過学習(Overfitting)」と呼んでいます。それは訓練データに現れないようなデータがテストデータに含まれる場合があるということです。

 ニューラルネットワークの学習においては、ニューラルネットワークの出力と正解のラベルの差を意味する「loss」を最小化することが目標になります。「loss」の値については「train loss(学習時の値)」「test loss(テスト時の値)」の2種類の「loss」が存在します。「loss」は正解とどれくらい離れているかという数値で、「0」に近づくほど正解に近いことになります。

イメージ 1

 この「train loss」と「test loss」の推移は、「学習曲線」から見ることができます。「train loss」と「test loss」が学習時に乖離していくことを「過学習」と呼び、深刻な過学習ほどそれらの学習曲線は乖離していくことになります。最も低い「test loss」になるときのモデルが、一番上手く学習できているモデルだと考えられます。これらの過学習現象を防ぎ、予測性能を向上させるために、「ドロップアウト(Dropout)」や該当レイヤーに入力されるバッチサイズ分のデータだけに対して正規化を行う「バッチ正規化(Batch Normalization)」といった手法を使い、各種パラメータを調整することが必要となります。

参考
AI研究所:「AI入門ブログ」AIが学習しすぎる?「過学習」問題とそれを抑制する方法(https://ai-kenkyujo.com/2018/10/16/kagakushu/)
∞ReNom:学習曲線からの過学習検知(https://www.renom.jp/ja/notebooks/tutorial/basic_algorithm/Detecting_overfitting_problem_from_learning_curve/notebook.html)
sonickun.log:【Deep Learning】過学習とDropoutについて(http://sonickun.hatenablog.com/entry/2016/07/18/191656)

この記事に

開くトラックバック(0)

 本格的に人工知能の開発を行うには、人工知能のアルゴリズムを考えたり、既存のアルゴリズムを理解したりすることが必要で、また、数学的な知識を学習する必要がありますが、人工知能はプログラムの集合体で、そのソースコードはプログラミング言語で記述されています。プログラミング言語には得意・不得意があるため、どのプログラミング言語を選択するかが重要です。人工知能の開発に使われる主なプログラミング言語を紹介します。

【python】
 人工知能の開発で一番使われている言語。Pythonの特徴は文法を極力単純化することでプログラマーの負担を減らし実装速度を向上させている。誰が書いてもだいたい同じようなソースコードになり、わかりやすいという特徴もある。pythonは完全にフリーソフトかつオープンソースであり、インターネット上から無料で標準ライブラリやサードパーティー性の大規模なツール群が用意されており、様々な分野で利用可能。人工知能の開発に役立つライブラリも登場してきている。

【C】
 JAVAなどのより世代の新しい言語の登場後、存在感が低下したといわれることもあるC言語だが、人工知能の開発ではむしろJavaよりも存在感がある。メモリやCPUなどのハードウェアリソースを意識して記述する難しさがあるものの、限られたハードウェアリソースを有効活用しなくてはならない組込みシステムなどではむしろメリットとなる。また、ハードウェアリソースを有効活用するため、同じ機能を実行するソースコードを書いた際、pythonやJAVAよりも圧倒的に実行速度が速い、という特徴もある。

【C++】
 C言語にオブジェクト指向という概念を追加したC言語の拡張言語。JAVAを初めて、Ruby、Perl、C言語と互換性があり、C++単体で使われるというよりも、C言語と組み合わせて使われることが多い。人工知能の開発においても、C/C++での実装が多い。

【JavaScript】
 Webアプリ開発では外せないプログラミング言語であるJavaScriptによる人工知能の開発例もある。JavaScriptはよくJAVAと混同されるが、まったく異なるプログラミング言語。実際、開発当初はLiveScriptと呼ばれていた。JavaScriptの実装例としては一部の動画サイトなどがあげられる。ブラウザーで出された操作指示がサーバに即時反映される、という特徴がある。さらに、Webブラウザー上で動くので、利用者の環境への依存度が低いというメリットもある。弱点は、Webブラウザーでいろんな人に使ってもらえる人工知能を作ろうとすると、それだけ必要なハードウェアリソースが増えていくこと。

【JAVA】
 JAVAの特徴は汎用性。30億のデバイス上で走るJAVA、というスローガンもあったが、Windowsはもちろん、LinuxやUNIX、macOSやandroid上でも動作する。主要なOSでJAVAが動かないのは、iPhoneに採用されているiOSくらい。つまり、JAVAで構築すれば、様々なデバイス上で利用できる便利な人工知能が開発できることになる。また、JAVAには一つ大きなデメリットがあり、それはJAVA仮想マシン(Java VM、JVM)の存在。多くのアプリケーションは、OSの上で実行されるが、JAVAで開発されたアプリケーションはJAVA仮想マシン上で動く。つまり、JAVA仮想マシンを展開しなければJAVAで開発されたアプリケーションは動作しません。普通にアプリケーションを動かすだけでなく、JAVA仮想マシンを展開するためにもハードウェアリソースを割く必要があり、人工知能の開発言語としては、その点がマイナスポイントになっている。

【R】
 R言語は統計解析向けのプログラミング言語。オープンソースかつフリーソフトで、かつ統計解析向けプログラミング言語として非常に充実した機能を持っており、データサイエンスの分野では絶対に外せない言語の一つとなっている。データサイエンスとは、簡単に言うと、ビックデータを解析しビジネスなどに役立つ新たなナレッジを生み出す作業。その作業ために必須なのが統計であり、そして統計を取り扱う際、最良のプログラミング言語なのがR言語。

【Julia】
 Julia は2009年に開発が始まり、2012年にオープンソースとして公開された比較的、新しいプログラミング言語。Juliaの特徴は処理速度に力を入れており、動的言語の中では屈指の速さを誇っているが、コンパイルが不要な代わりに、コンパイル時に行われるコード変換などの処理が実行時に行われるため、処理が遅くなってしまうという欠点があり、処理速度は、C言語の約50%。とは言え、Pythonだと10倍かそれ以上かかるので、Juliaの速さは桁違い。また、浮動小数点数計算、線型代数学、高速フーリエ変換、正規表現照合のライブラリなども用意され、機械学習や人工知能開発を意識して開発されたのは明らか。

AIで使われる言語の歴史を知るには、下記のweb記事がお勧め。



参考:
ITプロパートナーズ :人工知能はどのプログラミング言語で作成するのが良いのか?(https://itpropartners.com/blog/11534/)

この記事に

開くトラックバック(0)

【チューリングテスト】
  チューリングテスト(Turing test)とは、アラン・チューリングによって考案された、ある機械が知的かどうか(人工知能であるかどうか)を判定するためのテストで、人間の判定者が、別の人間と機械に対して通常の言語での会話を行う。このとき人間も機械も人間らしく見えるように対応。参加者はそれぞれ隔離されており、判定者は、機械の言葉を音声に変換する能力に左右されることなく、その知性を判定するために、会話はたとえばキーボードとディスプレイのみといった、文字のみでの交信に制限。判定者が、機械と人間との確実な区別ができなかった場合、この機械はテストに合格というテスト。
イメージ 1
チューリングテストの「一般的解釈」。質問者であるプレイヤーCは、
AとBどちらのプレイヤーがコンピュータでどちらが人間か回答しなければならない。
質問者が回答のために使えるのは、文字上の質問に対する返事に限られる。
(ウィキペディアより)

  チューリングの1950年の論文『計算する機械と知性』では、9つの反論が想定されており、論文が初めて発表されてから出された、人工知能に関する主要な議論がこの中にすべて含まれている。

  2014年6月7日、ロンドンのテストに「13歳の少年」の設定で参加したロシアのスーパーコンピューターが、30%以上の確率で審査員らに人間と間違われて史上初めての「合格者」となった。

【中国語の部屋】
  ジョン・サールは、1980年の論文『心・脳・プログラム』(Minds, Brains, and Programs)の中でチューリングテストに対する反論をした。これは「中国語の部屋」として知られる。英語しかわからない人が部屋にいる。その部屋には、中国語がわからなくても、中国語の文字を書いてあるとおりに置き換えると、中国語の受け答えができてしまう完璧な説明書がある。つまり、この部屋の人は、英語しか分からないが、中国語の質問に中国語で答えることができる。ということは、中国語の受け答えができるだけでは、中国語が分かるとは限らないことになる。同様に、まるで知能があるような受け答えができるかを調べるというチューリングテストに合格しても本当に知能があるかは分からない。単に理解していない記号を処理しているだけでも、以前紹介した「ELIZA」のようなソフトはチューリングテストに合格できる。理解していないのなら、人間がやっているのと同じ意味で「思考」しているとはいえない。したがって、チューリングテストは機械が思考できるということを証明するものではないという結論。

参考
ウィキペディア:チューリングテスト
人工知能学会: 人工知能の話題「チューリングテストと中国語の部屋」
https://www.ai-gakkai.or.jp/whatsai/AItopics3.html

この記事に

開くトラックバック(0)

全4ページ

[1] [2] [3] [4]

[ 次のページ ]

本文はここまでですこのページの先頭へ
みんなの更新記事