コンピューター関連

category

AIの経緯

AIの経緯

はじめに、AIの活躍が騒がれていますが、AIはまだ、ゼロから何かを生み出すという創造の分野には踏み込めていません。データーベースの中から何か判断基準のもとで、最適と思われる答えを提示しているだけです。したがって、与える条件範囲が不十分であったり、判断基準が不適切であれば、不適切な判断が得られます。当然、その判断のもとで何か機械やシステムを直接動かせば、優秀な人間では考えられない事故や不幸は発生し得るものです。一方、完璧なものは世にはなく、それをカバーするために様々な工夫を組み込んで世の中のシステムは成り立っています。そういうシステムのひとつのツールとしてAIは大きく期待でき、効果も上げています。

たとえば、飛行機は数多くの部品で構成されていますが、日々、それらが無傷であるわけではありません。しかし、複数レベルの検査と損傷許容設計などの組み合わせによって、飛行機が機械的に壊れて落ちないシステムを効率的に構築し、経済的にも成功しています。

Aiのみの判断で直接何かを支配的に動かすことは、確率的には事故率は低いかもしれませんが、事故を一定確率の運のレベルで許容することになります。それを、人の判断以外の別システムと組み合わせない限りは、皆が描いている安心なシステムにはなり得ないと思います。

その観点で、一例として、今の自動運転自動車は、まだ少し危なっかしいのかもしれません。

# 詳細が発表されたかもわからないので憶測ですが、ミリ波レーダーでは形状識別精度が不十分、

さて、AI。そのルーツは、多分ゲームです。

1980年ごろから、コンピューターシステムを導入すると、大抵、gameフォルダーとその中にいくつかのゲームが入っています。調べてみると、欧米のチェスはIBMが1950年頃から、中国の囲碁は1962年、日本の将棋は詰将棋では1968年の日立、指将棋では1974年の早稲田大瀧澤武信の名があります。

この頃はまだ今人気のデーターベース検索、機械学習ではないようですが、当時皆が知ってるゲームで人間と渡り合うために探索木で検索するという意味でルーツといってもいいかもしれません。

もっとももはや現代では日本人でも将棋を指したことのない人が多いようですけども。プログラム教育より安価で効果的、って思わないんですね、文科省の人。あ、彼らもまた将棋を知らないPCエンドユーザーゲーム世代ですか。ハードウエアやフレームワークが優秀でも、過学習やデーターベース次第でで結果が劣化するAIのいいサンプルですね。

AIの話に戻します。

その後、チェス、囲碁、将棋界で、AIの進化は世の中にアピールしてきました。コンピューターの性能頼りでしたので、性能の飛躍的進歩によってコンピューターチェスはじわじわ進歩しました。人間とコンピューターとの対戦でエポックメーキングな事象は、自立していたわけではありませんが、1997年のIBM「Deep Blue」の1勝です。

その後、将棋でも2010年の「トッププロ棋士に勝つ将棋プロジェクト 特製システム あから2010(一社 情報処理学会)」を境にプロ棋士に勝利しはじめます。

碁では、2014年、ハンディ戦でアマチュア程度と、その組み合わせ数故に将棋に比べて対人対戦力が10年遅れていると言われる状況で、翌2015 年にGooleグループの「 AlphaGo ( DeepMind )  」が対プロ棋士戦初勝利、2017年にはトップ棋士を蹴散らしてしまいました。これが人工ニューラルネットワークの世間での衝撃的デビューです。

人工ニューラルネットワークは、人の脳のシナプスの生々流転によるニューラルネットワークのモデルのひとつです。

1945年には基本理念が提唱され、1979年に福島邦彦が、後のdeep learning へと発展する畳み込みニューラルネットワークの基礎となった文字認識(いろんなデータを 柔軟に解釈して 定まらない派生的な形 を含めて同一のものと正しく認識、区別するシステム)を行いました。

その後、再帰型ニューラルネットワーク、誤差逆伝播法、ボルツマンマシン、などなど関連技術が提案されるなどし、AI、ニューラルネットワークは急速に進化しました。

2006年、deep learning の元となる オートエンコーダを用いた機械学習deep belief network (DBN)が提案され、先の AlphaGo などの開発にも至ります。

人工ニューラルネットワークは、現在、ややこしいことに通信ネットワーク上でも動きます。前者は計算モデル名、後者は通信システムです。ただネットワークという言葉が出てきたときには、我々素人は混乱します。

ここからは、誤解されることも含めて大胆、簡潔に説明します。正確で詳細な内容は、教科書やネット検索で調べてください。

ディープラーニングは、複数条件(層)が複数回検討して(多層)実施される人工ニューラルネットワークです。層が多層なので深層と呼ばれ、ディープという言葉につながるようです。

顔 目が2つあるか? 鼻があるか? 口があるか? 両横に耳があるか? あ、顔だ!

のようなものです。もちろん、

顔 (目あり、鼻あり、口あり、耳あり)(目二つ、鼻ひとつ、口一つ、耳二つ)顔だ!

でもいいでしょう。

鼻 穴がある 穴は二つ 穴は口に近い 鼻だ!

が追加されるかもしれません。

顔 ((鼻 だんご鼻 or わし鼻 or ぶた鼻 )(目 つり目 or タレ目 or ねこ目 or くりっと目 ))顔だ!

こういう条件にうまく重みをつけていけば、誤認識がなくなる。それを効果的に自動学習させるのが機械学習です。ここでいう学習は、たとえば正解と間違いを与えて区別させたり、複数のカテゴリー(犬、猫、猿、人など)のものを与えて区別できる条件に淘汰させることです。そして、条件を効率よく抽出して出来上がったのがディープラーニングにより作られたAIの分類器を使った識別(検索利用の)システム、という感じです。

したがって、俗に言うAIを導入する、というのは、勉強結果を何らかの方法で手に入れて、その勉強結果を利用してシステムを作る、ということです。勉強結果がすでにあれば、それを使えば良いわけです。なんか、試験前にできる学生からいいノートをコピーさせてもらう学生の様に似ていますね。もちろん、ノートを手に入れるだけで単位がもらえるわけでもないところも、人工頭脳、とはうまく言い当てていますね。

実際にノート(分類器)を作るには、設備(ハードとソフト)が必要です。コンピューター科学では、システムを基礎から順に積み重ねて、層で表す習わしがあるようです。

  1. ハードウエア(第1層、最下層)人工ニューラルネットワークの開発にはコンピューター処理速度の影響があったことから分かるように、ハードウエア、処理チップの速さが重要です。1980年代、流体数値計算でも一部で流行ったGPU並列処理などが用いられます。データーの学習活動は各データごとに全く同じ処理なので、並列処理が効果的なようです。IoTの生データーで学習すると通信費がままならない場合には、ゲートウェイのようにエッヂサーバーと言う名のサーバーでAI処理するそうです。
  2. 勉強アルゴリズム(第2層)機械学習アルゴリズムのライブラリ。フレームワークと呼ばれるそうです。多くのフレームワークが無料配布されているそうですので、機械学習をさせるという操作は資源コスト的には敷居が低いようです。
  3. 人工知能プラットフォーム(第3層) フレームワークは無料で利用できますが、そのアルゴリズムを使って実際に機械学習させるのがAIプラットフォームです。プラットフォームは、基本的には有料ですが、一部で無料のツールが配布され始めてるようです。せっかくフレームワークを公開したけれど、プラットフォームで収益を上げるつもりが、蓋を開けると使える技術者がいなくて、このままでは業界が失速しそうなので、技術者育成のために個人利用無料の環境を提供しはじゅめたのかもしれません。
  4. 教えるデータ
  5. AIアプリケーション

最近では、Linux をはじめ、Windows MS-VS や、ボードコンピューター(Raspberry Pi)での開発も容易になってきているようです。 最後に、形状認証や物体認証について、AI ほか分類器で犬や猫などの物体を認証する、というと、イヌというものを識別しているように思うかもしれませんが、現状ではほぼそれは間違いだと思います。分類器のデーターは、簡易なものは矩形領域内データの特徴を見ているので、厳密にはイヌの形状ではなく、イヌの特徴を含んだ矩形領域を探しているだけです。イヌというもののみを認識するには、そこから、もう一捻り、ふた捻り等して、イヌの形状を抽出する必要があります。

したがって、画像(または動画)から、分類された形状から姿勢まで判定して、工学的な判断材料に使用するのは、現時点ではコストがかかりそうです。

そういう作業は結構大変な作業と思います。冒頭のシステムのお話は、こういう手順にもつながっているという意味合いでした。「イヌの特徴が含まれた領域が検出されればそれで十分ではないか」という判断の善し悪しです。

今、AIは大きな資金で複数の先進開発グループが競争しています。この先、いくつかは併合と淘汰があり、ひょっとすると彗星のように新人が現れるかも知れませんが、すごいスピードで進化しています。近いうちにそんな懸念も解決されることでしょう。

日本では、初期のアイデアを出しても、それを認める人がいない。認める人がいても、集中的に資金援助する財源がない。財源があっても、開発技術者を組織的支援する仕組みがない。結局、海外に技術移譲するか、海外で技術がオーバーロードされてしまう。単なるアイデアから現実へ育成できる仕組みがなく、あっても形式的で、初期段階でその仕組みの一担当者の数値実績の食い物になり先へ進まず期限が切れるだけで、「基本的なアイデアは日本人だった」というお話で終わってしまうものが多いのは、残念ですね。