G検定単語帳 - 人工知能をめぐる動向

αβ法

ゲーム理論で最適な手番を探索する手法であるミニマックス法を改良したもの。それまでに発見した値に基づいて探索する必要のない枝を切り捨てることで探索を高速化する。

ミニマックス法とは

ミニマックス法では、二者が交互に自分の行動を選択するようなゲームで、自分の手番では自分の利得が最も大きくなるように、相手の手番では自分の利得が最も小さくなるような選択肢を選んだとき、自分の利得が最も大きくなる選択肢がどれになるか探索する。

ゲームの展開は手番ごとに選択肢の数だけ枝分かれしていく木構造で表すことができ、これを「ゲーム木」という。頂点は自分の手番、2段目は相手の手番、3段目は自分の手番…というように、自分と相手の手番が交互に現れる。

何手か先までのゲーム木を構築し、末端には頂点からその経路をたどったときの結果(自分の利得)を書き入れる。末端の値から順に木を遡り、自分の手番では自分の利得が最大(max)になる選択肢を、相手の手番では自分の利得が最小(mini)になる手番を打つと仮定し、各手番の打ち手を決定していく。

αβ法とは

ミニマックス法ではすべての選択肢を頂点までたどるが、αβ法では探索の途中で明らかに可能性のない枝を発見して、たどらないようにすることで計算時間を短縮する。これを「枝刈り」という。

具体的には、現在までの探索で発見した値の中で、自分の手番における利得の最大値をα値、相手の手番における自分の利得の最小値をβ値として記録する。探索の最初にはどちらの値も空だが、一つの枝をたどると、その時点での暫定的な最大値α、最小値βが得られる。

次の枝を探索する際、自分の手番でαより小さい値しかない枝は探索する必要がないため省略する(αカット)。同じように、相手の手番でβより大きい値しかない枝は必要ないため省略する(βカット)。途中でαより大きい値が見つかったら更新し、βより小さい値が見つかったらやはり更新する。

探索が進めば進むほど、すでに発見したα値、β値により探索が不要な枝が増えていく。α値とβ値自体も更新を繰り返して最終的な解に近づいていくため、終盤には加速度的にαカットあるいはβカットされる枝が増えることになる。

Mini-Max法

ゲーム理論において行動を選択する基準の一つ。ゲームの各手番で相手が常に自分にとって最悪の手を打ってくることを前提に、最終的に最も自分の利得が大きくなる手を選択すること。

二者が交互に自分の行動を選択するようなゲームで、自分の手番では自分の利得が最も大きくなるように、相手の手番では自分の利得が最も小さくなるような選択肢を選んだとき、自分の利得が最も大きくなる選択肢がどれになるか探索する。

ゲームの展開は手番ごとに選択肢の数だけ枝分かれしていく木構造で表すことができ、これを「ゲーム木」という。頂点は自分の手番、2段目は相手の手番、3段目は自分の手番…というように、自分と相手の手番が交互に現れる。

何手か先までのミニマックス原理を構築し、末端には頂点からその経路をたどったときの結果(自分の利得)を書き入れる。末端の値から順に木を遡り、自分の手番では自分の利得が最大(max)になる選択肢を、相手の手番では自分の利得が最小(mini)になる手番を打つと仮定し、各手番の打ち手を決定していく。

木をすべてなぞると、頂点の現在の手番で打つべき手が一つに確定する。何手先まで読むかによって結果は変わり、先々まで読むほど精度の高い結果が得られるが、末端のノードの数は手数に対して指数的に増大していくため、実際には記憶容量や計算時間などで手数が制約される。

SHRDLU

1968~70年に米マサチューセッツ工科大学(MIT)のテリー・ウィノグラード(Terry Winograd)氏によって開発された、自然言語による指示に基づいて動作するプログラム。

コンピュータの中に仮想的な箱のような世界を構築し、その中に置かれた様々な形のブロックを動かすことができる。人間はキーボードから英文で指示を入力し、プログラムがこれを解釈して仮想世界内での行動を行う。現在の世界の状態を自然な英文で説明させることもできる。

ブロックは直方体、円錐、三角錐、球など様々な形状をしており、赤や青など色が付いている。「赤い円錐を青い直方体の上に置いて」といった自然言語による指示に基づいて、仮想世界内でブロックを指示通りに動かす。

「青い直方体の上にあるブロックは?」と現在の状態を尋ねると「赤い円錐です」と答えることができる。過去の指示から文脈を補うこともでき、円錐がいくつかあるときに「円錐をブロックの上から外して」と指示すると、直前に動かした円錐のことだと理解することができる。

当時のコンピュータの能力では世界の状態をグラフィックス表示することは難しかったため、仮想世界の状態や行動は文字でのやり取りで確かめることしかできなかったが、後にプログラムを拡張して3Dグラフィックスによる表示機能を追加したバージョンも開発された。

STRIPS

1971年に米スタンフォード研究所で開発された、自動計画のための人工知能プログラム。また、そのために考案された、計画を記述するための言語。現在では後者の言語を指すことが多い。

自動計画(プランニング)は人工知能の研究分野の一つで、初期状態、目標、実行可能な行動の選択肢の3つが与えられた中で、初期状態から目標に至るために必要な行動の計画を立てるというものである。課題を与えると自律的に行動するロボットなどに応用される。

STRIPSは計画を立てるシステムに与える入力を定式化するための言語の一つで、初期状態(initial state)、目標状態(goal state)、取りうる行動のリスト(actions)の3つを一つの組として記述する。この3つの組をSTRIPSインスタンスという。

各行動には、その行動を実行する前に満たすべき事前条件(preconditions)、その行動の後に満たしているべき事後条件(postconditions)あるいは効果(effects)を記述することができる。事前条件や事後条件は、命題が真であるべき、偽であるべき、真になるべき、偽になるべきの4つに分けて記述することもある。

探索木

データ構造の一つである木構造のうち、特定の値を探し出すのに適した構造を備えたもの。どの要素(ノード)の値も、左側のすべての子ノードの値より大きく、右側よりは必ず小さくなるよう調整されている。

木構造は各ノードが値と複数の子ノードへの参照を持つ構造で、単一の根本(根ノード)から階層的に枝分かれしていくようにノードが連なっている。子の数が2つまでに制限された「二分木」、任意の数持てる「多分木」(N分木)などの種類がある。

探索木は特定の値を高速に探し出すことができるようにした木構造である。最も単純な二分木を用いた「二分探索木」の場合、木にノードを追加する際、「左側の子孫(部分木)の値がすべて自分より小さく、右側はすべて大きい」という条件を満たす位置を探し出して、そこに追加する。

この木を用いてある検索値を探索するには、根本から順に「現在のノードの値より検索値が小さければ左の子ノードに、大きければ右に遷移する」というルールで木をたどっていき、値が一致するノードに到達すれば発見、見つからないまま末端(葉ノード)に到達すれば検索値は存在しないことがわかる。

ハノイの塔

直径の異なる複数の円盤を、3本の杭の1本から別の1本にすべて移動させるクイズ。小さな円盤の上に大きな円盤を乗せることはできないという制約のもとで移動させる。

3本の杭が並んでおり、中心に穴の空いた大きさの異なる円盤が複数ある。最初はすべての円盤が1本の杭に刺さっており、一度に一枚ずつ、いずれかの杭の最も上に乗っている円盤を他の杭に移動させるという操作を繰り返す。

すべての円盤を別の1本の杭に移動させたら終了となる。移動は何度繰り返しても良いが、山の途中の円盤を抜き取ることはできず、持ち上げた円盤は、それより小さな円盤の上に乗せてはいけない。n枚の円盤からなるハノイの塔は、最低でも2n-1回の移動が必要であることがわかっている。

手順

初期状態で最も下にある最も大きな円盤を、目的の杭の一番下に移動させなければならないため、上から2番目に大きい円盤までを一旦3本目の杭に移し、最も大きい円盤を目的の杭に移動させる。

次に、一時的に移動した円盤の山から、やはりその最も下にある2番目に大きい円盤を目的の杭に移さなければならない。そのために、上から3番目に大きい円盤までを最初の杭に移し、2番目に大きい円盤を最も大きい円盤の上に移す。

このように、「その時点で山の最も下にある円盤」を目的の杭に移すため、「山の下から2番目までを一旦別の杭に移す」という操作を繰り返していくことになる。これをコンピュータプログラムで実行するには再帰処理が適しているため、古くからアルゴリズム研究・教育の題材として用いられてきた。

幅優先探索

グラフや木構造を探索するためのアルゴリズムの一つで、探索を開始する頂点から近い順に探索する方式。

グラフや木はあるノードから複数のノードへ経路が伸びている場合があり、すべてのノードを探索したい場合にどのような順番で辿っていくかについていくつかの戦略が考えられる。

幅優先探索は探索を開始する頂点からの距離(深さ)が等しくなるように進んでいく方式で、出発点の隣接ノード(距離1)をすべて調べ、隣接ノードの隣接ノード(距離2)をすべて調べ、そのまた隣接ノード(距離3)を…という手順を終了まで繰り返す。

最初(最も過去)に追加された候補を優先的に探索するFIFO(First-In First-Out)方式で次に進むノードを決定するため、探索候補ノードの記録にキュー(queue)というデータ構造が適している。

もう一つの有力な探索アルゴリズムとして、それ以上先に進めない行き止まりのノードに出くわすまで経路を戻らずに隣接ノードを進んでいく方式があり、「深さ優先探索」(DFS:Depth-First Search)と呼ばれる。

深さ優先探索

グラフや木構造を探索するためのアルゴリズムの一つで、それ以上先に進めない行き止まりのノードに出くわすまで経路を戻らずに隣接ノードを進んでいく方式。

グラフや木はあるノードから複数のノードへ経路が伸びている場合があり、すべてのノードを探索したい場合にどのような順番で辿っていくかについていくつかの戦略が考えられる。

深さ優先探索は探索を開始する頂点からの距離(深さ)が離れるように進んでいく方式で、それ以上進めない末端(木の場合は葉ノード、グラフの場合はすべての隣接ノードが探索済みの場合も含む)まで来たら、経路を遡って最初の未探索ノードへ進む。その先で末端に到達したら、再び経路を遡り…という手順を終了まで繰り返す。

最後(最も最近)に追加された候補を優先的に探索するLIFO(Last-In First-Out)方式で次に進むノードを決定するため、探索候補ノードの記録にはスタック(stack)というデータ構造が適している。関数の再帰呼び出しを用いると非常に簡潔にプログラムを記述できる。

もう一つの有力なアルゴリズムとして、頂点からの距離が同じノードを順番に訪ねていく方式があり、「幅優先探索」(BFS:Breadth-First Search)と呼ばれる。

ブルートフォース

暗号の解読やパスワードの割り出しなどに用いられる手法の一つで、割り出したい秘密の情報について、考えられるすべてのパターンをリストアップし、片っ端から検証する方式。

暗号鍵やパスワード、暗証番号(PIN)などを割り出す手法の一つで、コンピュータプログラムを用いて可能性のある符号列を自動的に生成し、順番に一つずつ正解かどうか試してみる。時間や試行回数に制限が無ければいつかは必ず解読できる。“brute force” とは「力づく」の意。

例えば、暗証番号が数字4桁のシステムの場合、「0000」から「9999」までの1万通りの可能性がある。人の手で番号の入力などを1万回行うのは大変だが、試行をコンピュータで自動化することが可能な状況ならば瞬時に終わらせることができる。

総当たり攻撃に対抗する最も単純な方法は符号列を長くするか、使用する文字の種類を増やすことである。例えば、4桁の番号の組み合わせは1万通りだが、8桁ならば1億通りになる。また、n桁の番号(数字のみ)の組み合わせは10n通りだが、数字・英大文字・英小文字の組み合わせならば62n通りとなる。

組み合わせの数がどの程度あれば安全と言えるかはその時代のコンピュータや通信回線の性能次第となる。半導体技術の発展により以前ならば十分安全だった暗号鍵やハッシュ値、パスワードなどが現実的な時間で解読できるようになってしまうことがある。実際、10年前や20年前と比べると、現在はより長い符号、より複雑なパスワードが求められるようになっている。

また、符号が短くても試行回数や速度を制限することで攻撃を難しくすることは可能である。例えば、一定の回数連続で誤った入力を試すとアカウントがロックされ、規定の方法(一定時間の経過や管理者による操作など)で解除しない限り再試行できないといった仕組みである。人間が頻繁に符号を入力しなければならない端末のパスコードやPINなどでよく用いられる。

モンテカルロ法

数値計算手法の一つで、乱数を用いた試行を繰り返すことにより近似解を求める手法。関数などにランダムな入力値を次々に投入し、対応する出力値を統計的に処理することで結果を推定する。

ある事象をモデル化した数式や関数があるとき、その定義域に含まれる値をランダムにたくさん生成して実際に計算を行い、得られた結果を統計的に処理することで推定値を得ることができる。

数式を解析的に解くのが困難あるいは不可能な場合でも数値的に近似解を求めることができる。確率論的な事象についての推定値を得る場合を特に「モンテカルロシミュレーション」と呼ぶ。名称の由来はカジノで有名なモナコ公国のモンテカルロ地区である。

例えば、円周率を求める場合、-1から1までの間に含まれるランダムな値を2つ生成し、これを平面上の点の座標に見立てて原点(0,0)からの距離を計算する。距離が1以下ならその点は原点を中心とする半径1の円に含まれ、1を超えていれば点は円の外にある。

この計算を何度も繰り返し行い、n回試行した結果k個の点が円に含まれていたら、円に接する正方形の面積2×2=4を用いて円周率(この円の面積に等しい)は 4k/n と推定できる。確率論の大数の法則により、試行を増やせば増やすほど解の精度は高まり、試行回数を無限大に向かって増やしていけば真の値からの誤差は0に収束していく。

コンピュータでモンテカルロ法の計算を行う場合、値が毎回異なり分布が完全にランダムな真の乱数列を得るには専用のハードウェア乱数生成器が必要になるため、規則性の無さは乱数とほぼ変わらないが、一定の計算手順によって確定論的に算出される疑似乱数を用いることが多い。疑似乱数は再現可能なため第三者による検証などがしやすいという利点がある。

歴史

第二次大戦中、米ロスアラモス国立研究所で原子爆弾開発計画に従事していた核物理学者のスタニスワフ・ウラム(Stanislaw Ulam)がこの手法の原型を考案し、同僚の数学者ジョン・フォン・ノイマン(John von Neumann)が戦後、自らが開発したばかりの最初期の電子式コンピュータ「ENIAC」で実際に計算を行い、その有効性を実証した。

この計算手法は軍事機密としてコードネームが与えられることになったが、二人の同僚の物理学者ニコラス・メトロポリス(Nicholas Metropolis)が、ウラムの叔父がモナコのモンテカルロにあるカジノで借金を抱えた話に着想を得てモンテカルロ法という名称を考案し、これが採用されたと伝わる。賭け事にまつわる何かから考案された手法というわけではない。

知識表現

人間の持つ知識をコンピュータが自動処理できるよう一定のデータ形式で表現したもの。また、そのような表現形式や手法のこと。

コンピュータが人間のような知的な活動を行うためには、事物や概念、自然言語の語彙などについて、その属性や関係性などについて一定の形式で記述して与える必要がある。知識表現では一貫した論理と形式に基づいて個々の事柄について記述することを目指す。

代表的な表現手法として、概念間の関係をグラフ構造で表す「意味ネットワーク」、概念のカテゴリーや関連する状況を記述することができる「知識フレーム」、論理的な推論を行うための論理の記述形式を扱う「述語論理」などがある。「RDF」(Resource Description Framework)のように具体的なデータ形式として定義されたものもある。

人工知能研究の黎明期であり1950年代から存在する分野だが、1970年代に研究が活発化した。自然言語の語彙や文法の知識表現を元に言語間で文章の翻訳を行う「ルールベース機械翻訳」、特定分野の専門家として振る舞う対話システムである「エキスパートシステム」、公理と推論規則から数学の定理の証明を行う「自動定理証明」などの応用例がある。

エキスパートシステム

ある分野の専門家の持つ知識をデータ化し、専門家のように推論や判断ができるようにするコンピュータシステム。1970~80年代の人工知能(AI)研究から生まれた応用分野の一つである。

例えば、医師が診断に用いる知識を一定の形式でデータとして表現し、推論エンジンと呼ばれるプログラムに読み込ませる。これに対して患者が訴える症状をデータとして入力すると、知識データに基づいて推論を行い、医師が行うのと似たように診断結果を出力する。結果は一つに特定して返答する場合もあるが、複数の候補を確度の高さなどと共に提示するシステムが多い。

人間の持つ知識それ自体は高度に複雑で、様々な形態の情報の集合として表されるが、エキスパートシステムではこれを「○○ならば××である」といった単純な条件やルールに分解し、特定のデータ形式によって表現する。規則はデータ構造として表され、推論エンジンのプログラムの論理構造からは切り離されている。これによりエンジンの開発と知識ベースの作成を分離することができ、また、知識ベースを交換することで同じエンジンで様々な分野の推論を行うことができる。

1980年代のいわゆる第2次AIブームで盛んに研究・開発されたシステムだが、実際の専門知識をルールの集合として表すのが当初の想像以上に困難(一見互いに矛盾するルール群の扱いなど)であったことや、現実の問題は極めて複雑で例外が多く、期待したほど実務的な状況での成果が上がらなかったことから失望が広がり、AI研究は再び下火になっていった。

Cycプロジェクト

人間が持つ常識を一定の形式でデータ化し、コンピュータが自動処理できるようにするプロジェクト。ルールベースの人工知能で常識に基づく推論ができるようにすることを目指している。

1970~80年代にルールベースの手法に基づくエキスパートシステムや機械翻訳システムなどが開発されると、極狭い範囲の語彙や推論規則を与えてその範囲内で用いることはできるが、実用化しようとすると常識の欠如によってうまく機能しないことが明らかになってきた。

Cycプロジェクトでは普通の人間なら知っているような様々な概念と、概念の間の関係性を一定の記述形式に基づいて列挙した知識ベースを構築し、システムへの入力に含まれる常識を認識できるようにする。例えば、「動物は必ず死ぬ」「人間は動物である」という常識があれば、「太郎は人間である」という入力から「太郎はいずれ死ぬ」という推論が可能となる。

歴史

Cycは米コンピュータ大手および半導体大手からなる産業コンソーシアム「MCC」(Microelectronics and Computer Consortium/後に ~ Corporation に改名し、こちらの方が有名)のプロジェクトの一つとして1984年に開始された。成果は様々な人工知能システムの知識ベースの一部として活用する構想だった。

MCCは2004年に解散したが、Cycはプロジェクトを率いたダグラス・レナート(Douglas Lenat)氏が設立したサイコープ(Cycorp)社に引き継がれ、その後も知識ベースの拡充が継続された。Cyc知識ベースから一部を抜き出して構成した「OpenCyc」や、自然科学研究システム向けの「ResearchCyc」を公開するなど、同社は現在でも事業を継続中である。

DENDRAL

1960年代に米スタンフォード大学で開発された、有機化合物の組成を推定する人工知能システム。エキスパートシステムの草分けとして知られる。

未知な有機化合物の分子量の測定結果や様々な実験データを入力すると、考えられる分子構造を推定して出力する。推定に用いる知識として、原子の質量数や原子価のデータ、化学結合に関する基本的な規則などがデータ化されて組み込まれている。

実際の化合物の化学構造と対応する分子量や実験結果のセットを与えると推論ルールに変換して記録する機械学習システム「Meta-Dendral」と、学習によって構築された推論モデルを利用して、入力された未知の化合物のデータから組成を推定する「Heuristic Dendral」で構成される。

特定の分子量を持つ化合物の候補は時として膨大な数にのぼるが、人間の化学者は経験則(ヒューリスティック)に基づいて検討する価値のある候補を絞り込む。DENDRALは学習の過程で効率よく可能性の低い候補をふるい落とすルールを構築することができ、人間の経験則に似た推論過程を再現した点が画期的だった。

is-a関係

ある概念が、より広い概念の一つであるという関係のこと。知識表現やオブジェクト指向設計などで対象間の関係性を記述するのに用いられる考え方の一つである。

英文で「A is a B」(AはBの一つである)と表すことができる関係で、Bが上位概念、Aが下位概念の関係となる。例えば、「猫 is-a 哺乳類」「哺乳類 is-a 脊椎動物」ということができる。推移律が成立するため、この二つの命題から「猫 is-a 脊椎動物」を導くことができる。

オブジェクト指向の考え方では、AはBの「特化」、BはAの「汎化」であるとも言う。AはBの持つ性質を受け継いでおり、これを「継承」という。AやBはクラスに当てはめて考えるため、Bを「スーパークラス」「親クラス」「基底クラス」などと呼び、Aを「サブクラス」「子クラス」「派生クラス」などと呼ぶ。

これに対し、ある概念が、その構成要素の一つとして別の概念を持つという関係は「has-a関係」あるいは「part-of関係」という。「猫 has-a 尻尾」「自動車 has-a タイヤ」といった関係を記述することができる。

has-a関係

ある概念が、別の概念を構成要素として持つという関係のこと。知識表現やオブジェクト指向設計などで対象間の関係性を記述するのに用いられる考え方の一つである。

英文で「A has a B」(AはBを持つ)と表すことができる関係で、Aは全体、Bはその構成要素という関係となる。例えば、「東京都 has-a 千代田区」「猫 has-a 尻尾」ということができる。「B is a part of A」と主客を逆転させて「part-of関係」と言う場合もある。

「一部である」という状態は実際には多様であるため、複数の命題に推移律が成立するとは限らない。例えば、千代田区について「日本国 has-a 東京都」から「日本国 has-a 千代田区」と言うことはできるが、猫の尻尾について「猫カフェ has-a 猫」から「猫カフェ has-a 尻尾」と言うことはできない。

また、「木 has-a 葉」のような場合は木から葉を取り去っても、木は木のまま、葉は葉のままだが、has-a関係の中には、要素を取り除くと、要素あるいは全体、その両方が元の概念として成立しなくなる場合がある。

例えば、「猫カフェ has-a 猫」の猫を取り除くと、ただのカフェになってしまう。「パン has-a 小麦粉」の小麦粉を除くと、パンは消滅してしまう。「夫婦 has-a 妻」から妻を取り除くと、夫婦は消滅し、妻も独身女性になる。

part-of関係

ある概念が、より大きな概念を構成する要素の一つであるという関係のこと。知識表現やオブジェクト指向設計などで対象間の関係性を記述するのに用いられる考え方の一つである。

英文で「A is a part of B」(AはBの一部である)と表すことができる関係で、Aは構成要素、Bは全体という関係となる。例えば、「千代田区 part-of 東京都」「尻尾 part-of 猫」ということができる。「B has a A」と主客を逆転させて「has-a関係」と言う場合もある。

「一部である」という状態は実際には多様であるため、複数の命題に推移律が成立するとは限らない。例えば、千代田区について「東京都 part-of 日本国」から「千代田区 part-of 日本国」と言うことはできるが、猫の尻尾について「猫 part-of 猫カフェ」から「尻尾 part-of 猫カフェ」と言うことはできない。

また、「葉 part-of 木」のような場合は木から葉を取り去っても、木は木のまま、葉は葉のままだが、part-of関係の中には、要素を取り除くと、要素あるいは全体、その両方が元の概念として成立しなくなる場合がある。

例えば、「猫 part-of 猫カフェ」の猫を取り除くと、ただのカフェになってしまう。「小麦粉 part-of パン」の小麦粉を除くと、パンは消滅してしまう。「妻 part-of 夫婦」から妻を取り除くと、夫婦は消滅し、妻も妻ではなくなり独身女性になる。

Question-Answering

自然言語処理の応用の一つで、自然言語の文章で与えられた質問に対して回答を提示する仕組みのこと。

自然言語(日本語や英語など)で書かれた質問文を解析して質問意図を理解し、知識ベースなどから関連する情報を検索し、回答の候補とそれぞれの確信度を出力する。用途によっては回答候補のリストではなく最も確信度の高い回答そのものを出力する。

質問の分野が特定されている場合(医療診断システムなど)とされていない場合(クイズなど)、回答が「○」「×」や単語、フレーズの場合(第100代日本国首相は?など)と文章の場合(~な理由は?など)といったように、対応できる質問の内容に応じていくつかの種類に分かれる。分野が限定され、回答が単純なほど構築しやすい。

1970~90年代に活発に研究されていた人工知能の一分野であるエキスパートシステムにも質問応答の形態を取るものが多くあり、人工知能の発展に合わせて、ルールベース手法、統計的手法、ニューラルネットワークによる機械学習などの手法が応用されてきた。

2011年に米IBM社の質問応答システム「Watson」が、アメリカの著名なクイズ番組「Jeopardy!」で人間代表を下して勝利したことで注目を集めた。「Wolfram|Alpha」などのネットサービスや、企業の顧客サポートのためにWebサイトに導入されるFAQシステムなどの応用例もよく知られる。

意味ネットワーク

人間の持つ知識を表現するモデルの一つで、概念間を意味に応じて繋げたネットワーク状の構造で表したもの。

ネットワークの個々の節(ノード)が概念を表しており、概念を表す単語やフレーズのラベルを付与する。ノード間を結ぶ辺(リンク)が概念間の関係性を表しており、「~は~である」といった意味が与えられる。数学的なグラフ構造で表すことができるため「知識グラフ」とも呼ばれる。

概念や関係の種類は対象や目的によって異なる場合があるが、一般的には「~は~の一つである」という「is-a関係」と、「~は~を持つ」という「has-a関係」を中心に関係を記述する。「has-a関係」は矢印の向きを逆転させて「~は~の一部である」という「part-of関係」とする場合もある。

is-a関係は継承関係とも呼ばれ、上位概念が下位概念を含む状況を表すことができる。例えば、 [人間]─<is-a>→[哺乳類] と [哺乳類]─<is-a>→[動物] という2つのリンクから、推移律を適用して [人間]─<is-a>→[動物] という推論を行うことができるようになる。

has-a関係は「一部である」ことを表す関係で、概念同士が部分と全体の関係になっていることを示す。[日本国]─<has-a>→[東京都]、[太郎君]─<has-a>→[眼球] といった具合である。「部分である」という状態は実際には多様であるため、必ずしも推移律が適用可能とは限らない。[日本国]─<has-a>→[千代田区] は妥当だが、[4年2組]─<has-a>→[眼球] は誤った推論となる。

ELIZA

1966年に米マサチューセッツ工科大学(MIT)のジョセフ・ワイゼンバウム氏によって開発された、最も初期の自然言語処理プログラムの一つ。現代でいうチャットボットのようなシステムで、人間と文字による対話的なやり取りをすることができた。

比較的単純なパターンマッチと単語の置き換え処理を基本とするプログラムで、人間の入力文に対して関連がありそうな文章を生成して応答する。マッチングや置き換えのルールは専用の言語でスクリプトとして記述して与える方式を取り、スクリプトを入れ替えることで様々な「人格」を演じることができる。

最も有名は応用例は「DOCTOR」と呼ばれるスクリプトで、心理療法士の対話を模して記述されたルールに従って動作する。「最近気分が沈むのです」という入力に「なぜ気分が沈むのですか?」と返すなど、人間の入力から単語を抜き出してオウム返しに質問を行い、これに人間が答えるというやり取りを繰り返す。

基本的には人間の入力から抜き出した単語で質問文を構成するだけであるため、常識や専門知識など、知識に相当するデータは何も持っていない。対話相手の人間は、いくら対話を進めても自分の入力した以上の情報は何も帰ってこないが、プログラムであることを知らせずに使用していた人の中には、相手が人間であると信じて疑わない人も多く、中には種明かしをしても信じない人もいたという。

単純なルールで動作するプログラムに人々が知性の存在を確信してしまうという事態は開発者自身やAI研究者らに衝撃を持って受け止められた。コンピュータが人間らしい振る舞いを見せると、人間はそれがプログラムで決まった出力であると知っていても、無意識的に人間性や知性をシステムに見出してしまう心的傾向が明らかになった。これを「ELIZA効果」という。

ウェブマイニング

Web上の情報を収集し、その内容や構造などを解析して何らかの有意義な知見を導き出すこと。

Webを大量の情報の中に有用な知見が眠る「鉱山」(mine)に例え、データ解析によって知識を「採掘」(mining)する試みである。データベースに蓄積されたデータから有用な知見を引き出す「データマイニング」(data mining)から派生した手法である。

Web上の文字情報や画像などの大量のデータを統計解析や自然言語処理、機械学習などで分析し、目的に対して有意義な知見を抽出することを試みる。Web上の掲載されているコンテンツそのものだけでなく、時にはページ間やサイト間のリンク構造などをデータ化して分析することもある。

例えば、企業が新製品に言及している電子掲示板(BBS)やSNS、ブログなどの書き込みを収集し、製品の評価や感想としてどのような単語やフレーズが最も使われているかを分析したり、どのような属性を持つSNS利用者がその製品に最も多く言及しているかといった分析を行う。

オントロジー

哲学における存在論。IT分野では、コンピュータ上で知識を表現して共有するために、どのような枠組みや形式に従って概念を記述するか定義したものを指す。

コンピュータで現実世界の課題について何らかの知的な操作を行うには、背景となる知識や論理を獲得する必要がある。人間がこれを記述してデータとして与える場合、対象をどのようにモデル化し、どのように記述するかについて仕様を定めておく必要がある。

オントロジーは知識化の対象となる世界をどのように捉え、個々の概念の何に着目して、どのように記述すべきかという体系を示す。同じオントロジーで記述された知識ベースは、異なるシステム間で共有、再利用して、同じように活用することが期待できる。

目的や対象に応じて様々なオントロジーが定義されているが、その多くに共通する構成要素として、実体(エンティティ)、分類(クラス)、属性、関係、制約、ルールなどがある。これらを組み合わせて、概念の定義や概念間の関係性、推論規則などを記述する。具体的なデータ形式を定めた言語は「オントロジー言語」という。

1970~80年代には知識の形式的な記述と、これを利用したルールベースAIの研究・開発が活発で、様々なオントロジーが提唱された。Cycプロジェクトのように汎用的な知識ベースを構築する試みも行われた。インターネットが普及すると、Web上の記述内容にオントロジーに従った注釈をつけて知識ベースとして活用する「セマンティックWeb」という構想が提唱され、RDF(Resource Description Framework)やOWL(Web Ontology Language)などの記述言語が発表された。

セマンティックWeb

Webページに記述された内容について、それが何を意味するかを表す「情報についての情報」(メタデータ)を一定の規則に従って付加し、コンピュータシステムによる自律的な情報の収集や加工を可能にする構想。

1998年にWeb(WWW:World Wide Web)の創始者であるティム・バーナーズ・リー(Timothy J. Berners-Lee)氏が提唱し、同氏の主導するWeb関連技術規格の標準化団体W3C(World Wide Web Consortium)内のプロジェクトとして推進された。

背景と意義

Webページは主にHTML(HyperText Markup Language)を用いて記述されるが、これは主にWebブラウザが人間にデータを整形して見せるためのものであるため、データの種類や所在、配置、見栄えなどの記述が中心で、ソフトウェアが読み込んで意味のあるデータとして活用するには情報が不足している。

セマンティックWeb構想では、Webページ内のデータがそれぞれ何を表しているのかを一定の統一されたデータ形式に基づいて記述することで、ソフトウェアがサイトやページを横断して同種のデータを取得や比較、統合できるようにする。これにより、Webをある種の巨大な知識や情報のデータベースとし、様々なシステムが自らの必要とするデータを自律的に収集して組み合わせ、高度に知的な処理を効率的に行えるようにする。

技術仕様

具体的な技術仕様として、テキスト(文字)データの構造を統一的な形式で記述するXML(およびXML版HTMLであるXHTML)、XMLベースの記述言語を定義するXML Schema、様々な資源についての情報を記述する汎用的なデータ形式であるRDF(Resource Description Framework)などの規格(これらはセマンティックWebとは無関係に標準化済み)が用いられる。

また、自動化の肝となるメタデータの記述に用いられる共通の語彙やその分類体系、語間の関係性などを定義するオントロジーの記述言語としてOWL(Web Ontology Language)が定義された。

普及状況

規格の策定は2000年代前半に行われたが、技術体系が複雑で膨大だったことや、対応にコストがかかる割には個々のWeb開発者にとって短期的な分かりやすい利点が見えにくかったことなどから、上記の技術仕様自体がWeb上に広く普及する状況は今日まで実現していない。

ただし、Webページ内の要素に自動処理に役立つメタデータを付与するというコンセプト自体はその後様々な形で見られるようになり、Microdataやmicroformats、RDFa、JSON-LD、Schema.orgなどの技術やプロジェクトが一定の成功を収めている。

検索エンジンの検索結果ページに表示されるリッチスニペットや強調スニペットなどの応用例も知られている。これらはW3Cが構想した当初のセマンティックWebの仕様とは異なるが、広い意味でセマンティックなWebの実装例とみなすことができる。

データマイニング

蓄積された大量のデータを統計学や数理解析などの技法を用いて分析し、これまで知られていなかった規則性や傾向など、何らかの未知の有用な知見を得ること。

「マイニング」(mining)とは「採掘」の意味で、膨大なデータの集積を鉱山に、そこから有用な知見を見出すことを資源の採掘になぞらえている。適用分野や目的、対象となるデータの種類は多種多様だが、ビジネスの分野では企業が業務に関連して記録したデータ(過去の取引記録、行動履歴など)を元に、意思決定や計画立案、販売促進などに有効な知見を得るために行われることが多い。

例えば、小売店の商品の売上データの履歴は、それ自体は会計上の手続きや監査などの業務にしか使われないが、データマイニングの手法で統計的に処理することで、これまで知られていなかった「商品Aと商品Bを一緒に購入する顧客が多い」といった傾向が分かる場合がある。これにより、AとBの売り場を統合するといった販売促進施策を行うことが可能となる。

商業分野だけでなく、自然言語処理やパターン認識、人工知能などの研究などでも利用される。分析・解析の手法も様々だが、代表的な手法としては、頻度の高いパターンの抽出や、相関関係にある項目の組の発見、データの特徴や共通点に基づく分類、過去の傾向に基づく将来の予測などがある。

近年では、一般的なシステムやソフトウェアでの解析が困難な巨大なデータセットである「ビッグデータ」を対象とした解析手法や、人工知能の一分野である機械学習、特に先進的な手法である「ディープラーニング」を応用したマイニング手法などが活発に研究・開発されている。

東ロボくん

2011年に国立情報学研究所が中心となって開始された、東京大学の入学試験で合格点を取ることができるAIを開発するプロジェクト。

プロジェクトの正式名称は「ロボットは東大に入れるか」で、2021年までに東大入試に合格できる人工知能システムを実現することを目指していた。教科によって様々なアルゴリズムを組み合わせるため一概には言えないが、基本的には事前に与えた膨大なデータの中から統計的に最も関連性の高い内容を抽出する統計的手法が用いられた。

システムにペーパーテストの内容をテキストデータに変換したものを入力すると、内容を解析して回答を出力する。図表は画像データとして与える。問題用紙の直接スキャン、答案用紙へのロボットアームによる記入も構想され、後者は共同研究機関の一社であるデンソーにより部分的に成功した。

実際の国立大学の試験科目に合わせて英語、国語、数学、理科、社会の5教科8科目に回答することができ、実際の入試問題や模擬試験の問題で性能が測定された。2016年には当時の大学入試センター試験形式の模試で偏差値57.1相当と判定され、私立大学の大半と一部の国公立大学は合格圏内との評価を得た。

この2016年の性能測定では前年からほとんど得点が伸びず、図表の理解が困難な点や統計的手法ではこれ以上の大幅な改良は見込めないことなどから、入試と同じ形式での測定は打ち切りとなり、事実上のプロジェクト終了となった。その後も一部の研究者が英語のアルゴリズム改良などに取り組んでおり、成績を伸ばしている。

実際の東京大学の2次試験で合格点を取ることは叶わなかったが、数学では東大合格レベルの点数を得ることもあったとされる。ちょうど2010年代後半から統計的手法に代わってニューラルネットワークを応用したディープラーニングによる機械学習システムが主流となり、成果が後世に直接活かされることはなかった。

MYCIN

1970年代に米スタンフォード大学で開発された、感染症の原因となった細菌と処方すべき抗生物質を推定する人工知能システム。初期のエキスパートシステムの成功例としてよく知られる。

感染症が疑われる患者の症状を入力すると、原因と推定される細菌と確信度、処方する抗生物質の種類と患者の体重に合わせた処方量、その診断の根拠をリスト化して出力する。なぜこの診断に至ったのか、なぜこの要因は考慮しなかったのか、など医師からの質問にも答えることができる。

情報の入力は問診のようにプログラムが次々に行う質問に医師が答えていく対話的な方式で行い、質問に対して「はい」「いいえ」、あるいは簡単な単語や数字を答えるだけでよい。医師からの質問は自然言語の文章(英文)で行うことができる。

MYCINは比較的単純な推論エンジンを備え、細菌感染症について500前後の推論規則をデータ化した知識ベースを持っている。規則は専門家から聞き取った診断基準を元に作成された。当時、推論エンジンと知識ベースが明確に分離したエキスパートシステムは画期的で、その後の同様の推論システムのモデルとなったとされる。

MYCINはスタンフォード大学医学部で試験され、診断結果の65%が適切であると評価された。これは5人の医学部教員の42.5%~62.5%とほぼ同等の成績だった。しかし、MYCINは性能上の問題ではなく、診断にコンピュータの判断を用いる倫理面や法的責任の問題、患者や症状の情報を逐一すべてタイピングしなければならない不便さ、MYCINが稼働する当時のミニコン(中型コンピュータ)を医療現場に導入する困難さなどから、実用に供されることはなかった。

Watson

米IBM社が開発した大規模な質問応答システム。分野を限定しない自然言語の質問文に対して回答することができる。

自然言語処理の手法を応用して英語の文章として書かれた質問文を分析し、自身が持つデータ群の中から回答にふさわしい単語やフレーズを発見して出力する。既存の百科事典や語学辞書、ニュース記事、文学作品、オンライン百科事典のWikipediaなどから構築した知識ベースを持つ。

2006年に開発が始まり、改良と拡張が繰り返された。2011年にアメリカで人気のクイズ番組「Jeopardy!」(ジョパディ)の特別企画で人間の番組チャンピオン2名に勝利したことで話題となった。その後は医療データベースなどを取り込んで医療診断の補助などの応用が試みられたが、ビジネスとして成立するほどの成果は得られなかった。

Watsonは知識を一定の形式で記述してデータベース化し、入力文の分析結果から統計解析や推論規則を適用して回答を推測する。人工知能研究でニューラルネットワーク型が主流になる前に盛んだった、ルールベース手法や統計的手法を組み合わせたシステムとなっている。

「Watson」の名称はIBM創業者のトーマス・J・ワトソン(Thomas J. Watson)に由来する。同社は2023年に、ディープラーニング手法を応用した機械学習ベースのAIシステムを「watsonx」(ワトソンエックス)の名称でリリースした。ブランド上はWatsonの後継製品だが、技術的な連続性はない。

機械学習

コンピュータプログラムにある分野のデータを繰り返し与えることで内在する規則性などを学習させ、未知のデータが与えられた際に学習結果に当てはめて予測や判断、分類などを行えるようにする仕組み。現代の人工知能(AI)研究における最も有力な手法の一つ。

例えば、数字を手書きした画像と、そこに写っている数字をペアにした学習データをたくさん用意し、一定のアルゴリズム(計算手順)に従って次々にこれを処理していくと、画像のパターンから写っている数字を予測する学習モデルを作ることができる。学習済みのシステムに未知の手書き数字の画像を与えると、そこに写っている数字を推論して回答できるようになる。

従来このような仕組みを作ろうとすると、各数字の画像に現れる特徴的なパターンを人間が整理して、判断基準としてプログラムに組み込む必要があるが、機械学習ではデータから特徴を抽出して特定の結果(答え)に紐付ける操作をコンピュータが自動的に行うため、人間は学習させたい内容を表すデータを与えるだけでよい。

教師あり学習 (supervised learning)

機械学習の手法のうち、「例題と答え」という形式に整理された「教師データ」に適合するようにモデルを構築していく方式を「教師あり学習」という。例題を入力すると対応する答えを出力するようにモデルを調整していく。

人間が既に答えを知っているような判断や作業を自動化したい場合に有効な手法で応用範囲も広いが、生のデータを「例題と答えのペア」という形式に(人手によって)整理しなければならない。学習データの質や潜在的な問題点がそのまま精度や結果に反映されてしまう難点もある。

教師なし学習 (unsupervised learning)

人間が基準や正解を与えずに学習データを分析させ、システムが自律的に何らかの規則性や傾向を見出す方式を「教師なし学習」という。与えられたデータ群を何らかの目的をもって解析し、特徴の似たデータのグループ分けなどを行えるようにする。

人間にも正解が分からない課題についての知見を得たい場合や、大量のデータから規則性を探索したい場合などに有効な手法で、データの前処理が少なく現実世界にある多様な大量のデータを素材にできる。ただし、結果が何を意味するかは人間による解釈が必要で、人間にとって有用な結果が得られるよう制御するのが難しく精度も安定させにくいなどの課題がある。

強化学習 (reinforcement learning)

システムの行動に対して評価(報酬)が与えられ、行動の試行錯誤を繰り返して評価を最大化するような行動パターンを学習させる方式を「強化学習」という。機械の制御や競技、ゲームなどを行うAIの訓練に適している。

他の学習手法と異なり、人間がまとまった形で学習データを与えることはせず、システムは現在の状況を入力として行動を選択する。行動の結果は評価(値)としてシステムに伝達され、どのような行動が好ましい結果に繋がるかを繰り返し試行錯誤しながら学習していく。

人工知能・深層学習との関係

「人工知能」(AI:Artificial Intelligence)とは人間の知的な営みの一部を何らかの形で模倣するITシステム全般を指す総称であり、初期のAI研究では対象についての知識やルール、判断基準などを人間がプログラムの一部として直に記述する手法が一般的だった。

しかし、このような手法では知識の記述に手間がかかり、特定の狭い分野であっても人間のような判断を下せるシステムを実現するには途方も無い時間とコストが必要になってしまう。この限界を打ち破るため、人間は学習の仕方だけをプログラムとして実装し、実際の知識の獲得はデータを大量に与えて自動処理するという機械学習の手法が考案された。

機械学習の具体的な方式にはSVM(サポートベクターマシン)やベイジアンネットワーク、決定木(デシジョンツリー)学習、データクラスタリングなど様々な手法があるが、人間の脳の神経回路の網状の繋がりに着想を得た「ニューラルネットワーク」(NN:Neural Network)が有力な方式として台頭した。

2010年代になると、ネットワークの階層を従来より深く設定(4層以上)した「ディープニューラルネットワーク」(DNN:Deep Nueral Network)が目覚ましい発展を遂げ、機械学習研究・開発の中核として注目されるようになった。このDNNに基づく機械学習のことを「深層学習」あるいは「ディープラーニング」(deep learning)という。

ルールベース手法

人工知能の実装方式の一つで、人間が事前に与えた条件や規則の集合に基づいて動作するもの。最も古くから研究されているタイプで、現代ではAIとはみなされないことが多い。

人間があらかじめ、数値の計算式や、「もし~なら~せよ」といった条件式などのルールをプログラムに組み込んでおき、このルールに基づいて判断や推論などの処理を実行する。ルールはプログラム本体に記述してしまう方式と、データとして外部から与える方式がある。

機械学習のように大量のデータが必要なく、後から明快に説明可能な論理に従って動作するという利点がある。予測不可能な、あるいは説明の困難な振る舞いもしにくい。扱う分野や対象が限られており、人間が判断基準などを明確に説明できるような用途では高い性能や精度を示すことがある。

一方、ルールをあらかじめ明確に決められないような対象や、ルールから外れた例外的な事例を扱うことは難しい。また、自然言語の翻訳や、常識が必要な実世界での判断など、扱う対象が無数に存在したり、分野や状況に何の制約もない場合には、網羅的にルールを記述することは実質的に不可能である。

1950年代の初期の人工知能研究から存在する手法で、特定の分野や用途に特化したシステムは数多く実用化されている。現代では、ビデオゲームのキャラクターを自動的に行動させるプログラムのように、比較的単純なものやプログラムコード中に組み入れられて汎用的でないものなどは、通常のコンピュータプログラムの処理の一種とみなされてAIとは呼ばれないことが多い(AI効果)。

次元の呪い

何らかの数理的な問題を解く際、次元の数が増えると要素数や計算回数などが指数関数的に増大してしまい、現実的な資源や時間で解くことが難しくなってしまう問題。

機械学習の場合、特徴量の数(次元)が増えると傾向を学習するために必要な学習データの数が指数関数的に増えてしまい、現実的に用意できるデータでは十分な学習ができなくなる問題を次元の呪いという。

例えば、中古車の買取価格を予測する場合、メーカー(10社)と車種(10種類)の2次元の組み合わせなら100通りだが、これに色(10色)を加えた3次元では1000通り、製造からの経過年数(10階層)を加えた4次元では1万通り、総走行距離(10階層)を加えた5次元では10万通りといった具合に、爆発的に組み合わせの数が増大する。

どの属性もランダムに分布する1万件のデータで学習しようとすると、100通りなら特定の組み合わせに平均100件のデータが対応するが、1万通りや10万通りでは1件も対応するデータが存在しない組み合わせが出てきてしまい、予測精度が著しく低下してしまう。実際、同じ学習データの数で特徴量の数を増やしていくと、ある数までは精度が向上するが、さらに増やすと精度が低下していく現象が知られている。

これを防ぐため、一定の基準を設けて有用な特徴量のみを残し一部の特徴量を切り捨てる「特徴量選択」や、主成分分析やオートエンコーダーなどの手法でなるべく情報量を維持しつつ複数の特徴量の傾向を反映した新たな特徴量を作り出す「特徴量抽出」などの手法が用いられる。このような次元を減らす操作を「次元削減」と総称する。

スパムフィルター

電子メールソフトやメールサーバ、メールサービスの機能の一つで、受信したメールの中から広告やコンピュータウイルスなどの迷惑メールを検出して、削除したり専用の保管場所に移したりするもの。また、そのような機能を提供するソフトウェア。

過去にその利用者が受信したメールの中から迷惑メールであると手動で指定したメールの特徴(送信元、宛先、本文、添付ファイルなど)を分析し、新たに届いたメールの中から迷惑メールを判別して分類する。

ソフトウェアによる自動処理であるため、送信者の身元や本文の意味などは理解することができず、誤判定される場合もある。このため、分類されたメールは削除までの一定期間、専用のフォルダなどに保管され、利用者が誤判定と判断したものは元に戻すことができるようになっていることが多い。

Webメールサービスなどの場合には、同じサービスを利用する利用者間で判定結果を共有し、他の利用者が迷惑メールと判断したものを自動的に迷惑メールに分類する機能が提供される場合もある。

ビッグデータ

従来のデータベース管理システムなどでは記録や保管、解析が難しいような巨大なデータ群。単にデータ量が多いというだけでなく、多様な形式や情報源を含む、日々大量に蓄積されていくといった特徴を備えるものを指すことが多い。

企業や官公庁などが記録・管理する極めて規模の大きいデータの集積を指す。多くの場合、量が多いだけでなく、様々な種類・形式が含まれる非構造化データ・非定型的データであり、さらに、日々膨大に生成・記録される時系列性・リアルタイム性のあるようなものを指す。厳密な定義があるわけではなく、企業向け情報システムメーカーのマーケティング用語として多用されている。

今までは管理しきれないため見過ごされてきたそのようなデータ群を記録・保管して即座に解析することで、ビジネスや社会に有用な知見を得たり、これまでにないような新たな仕組みやシステムを産み出す可能性が高まるとされている。

米大手IT調査会社ガートナー(Gartner)社では、ビッグデータを特徴づける要素として、データの大きさ(Volume)、入出力や処理の速度(Verocity)、データの種類や情報源の多様性(Variety)を挙げ、これら3つの「V」のいずれか、あるいは複数が極めて高いものがビッグデータであるとしている。これに価値(Value)や正確性(Veracity)を加える提案もある。

コンピュータやソフトウェアの技術の進歩は速く、具体的にどのような量や速度、多様さであればビッグデータと言えるかは時代により異なる。ビッグデータという用語がビジネスの文脈で広まった2010年代前半にはデータ量が数テラバイト程度のものも含まれたが、2010年代後半になるとペタバイト(1000テラバイト)級やそれ以上のものがこのように呼ばれることが多い。

近年ではスマートフォンやSNS、電子決済、オンライン通販の浸透により人間が日々の活動で生み出す情報のデータ化が進み、また、IoT(Internet of Things)やM2M、機器の制御の自動化などの進展により人工物から収集されるデータも爆発的に増大している。

また、人工知能(AI)の構築・運用手法として、膨大なデータから規則性やルールなどを見出し、予測や推論、分類、人間の作業の自動化などを行う機械学習(ML:Machine Learning)、中でも、多階層のニューラルネットワークで機械学習を行う深層学習(ディープラーニング)と呼ばれる手法が台頭している。

このような背景から、膨大なデータを的確、効率的に扱う技術上の要請はますます高まっており、統計やデータ分析、大容量データを扱う手法やアルゴリズムなどに精通した「データサイエンティスト」(data scientist)と呼ばれる専門職の育成が急務とされている。

レコメンデーションエンジン

ネットサービスなどで運用されるシステムの一つで、過去のデータなどを解析して、個々の利用者に合った「おすすめ」の内容を提案するもの。

例えば、ECサイトなどで、ある商品に強く関連する別の商品を表示したり、顧客の過去の購買履歴やページ閲覧履歴を記録して興味を持ちそうな商品を表示したり、プロフィールや行動履歴などが類似している他の顧客が購入した商品を表示するシステムを指す。

SNSや動画投稿サイト、ニュースサイトなどで、過去の投稿内容や閲覧履歴を元に、新着コンテンツから好みそうなものを選択して推薦する仕組みなども該当する。ソーシャル機能のあるサービスでは利用者間の友人関係やフォロー関係などの情報も利用する。

2000年代にネットサービスが普及する過程で普及したシステムで、様々なジャンルのサービスに広まっている。従来は過去のデータの蓄積を元にルールベース手法や統計的手法で関連度の強いものを選ぶ仕組みが一般的だったが、近年ではニューラルネットワークを利用した機械学習によりデータから自動的に傾向を抽出するシステムも利用されている。

統計的自然言語処理

人間が使う自然言語をコンピュータで自動処理する方法論の一つで、実際の文例データなどを元に、確率や統計の手法を用いて数学的にパターンや規則性を分析するもの。現代の機械学習ベースの自然言語処理の理論的土台の一部となっている。

人間が記述した文章を集めたコーパスなどの大規模データセットを統計的に解析し、単語の出現頻度や共起関係などを確率的なモデルとして捉える。従来のルールベース手法は文法や辞書に基づいて文の構造を解析していたが、統計的なアプローチではこうした知識は直接的には用いず、実際の文例に頻繁に現れるパターンを観察する。

統計的自然言語処理が対象とするタスクは、機械翻訳や形態素解析、品詞タグ付け、テキスト分類、情報抽出、固有表現抽出など多岐に渡る。基本的な方法論として、単語列の確率を計算するn-gramモデルや、文脈に応じた単語の出現確率を推定する隠れマルコフモデル(HMM:Hidden Markov Model)、ベイズ推定などが用いられる。

近年では、統計的自然言語処理を基盤にさらに拡張・発展させた手法として、ニューラルネットワークを用いた機械学習モデルを用いた自然言語処理が主流となっている。Transformerなど自然言語を扱うのに適したモデルが考案され、大規模言語モデル(LLM)による極めて自然で高度な文章生成などが可能となっている。こうした高度な技術も基盤にあるのは確率論、統計学に基づく方法論である。

ImageNet

画像認識システムの学習やテストのために利用できる大規模なデータセットの一つ。2009年に発表されたデータセットで、1400万点以上の画像と2万以上のラベルで構成される。

何かを写した画像と、“apple” “dog” など画像に何が写っているかを表すラベル(注釈)、その物体が画像内に存在する矩形の領域(バウンディングボックス)がセットになったデータで、これを教師データとして機械学習を行うことで、画像に写っているものが何かを識別することができるようになる。

画像はフルカラーだが画素数はまちまちで、学習時に前処理として同じ画素数に揃える処理を行うことが多い。画像に与えられたラベルは最も大きく、あるいは手前に写っている物体を表す一つのみだが、背景や周囲に別の物体が映り込んでいる画像も多くあり、精度低下の要因になっているとする指摘もある。

分類は機械処理可能な英語辞書であるWordNetのIDで記述される。WordNetは品詞、同義語、上位概念と下位概念といった単語の属性や単語間の関係性が収録されており、この情報を用いることで「ハスキーは犬である」「犬は哺乳類である」といった関係に基づく学習を行うこともできる。

2010年から2017年まで、ImageNetの画像認識の精度を競うコンテスト「ImageNet Large Scale Visual Recognition Challenge」(ILSVRC)が年に1回開催された。初回はサポートベクターマシン(SVM)を利用したチームが分類精度52.9%で優勝したが、2017年大会ではニューラルネットワークを利用が広がり参加チームの3分の2が95%以上の精度を出すようになった。

ILSVRC

画像データセット「ImageNet」を利用した機械学習システムの認識精度を競うコンテスト。2010年から2017年まで年1回開催された。

ImageNetは、画像と画像に写った物体のラベル、その物体が写っている画像内の矩形の領域(バウンディングボックス)がセットになったオープンなデータセットの一つで、1400万点以上の画像に2万種類以上のラベルが与えられている。これを教師データとして機械学習に与えることで、画像認識システムを作成することができる。

ILSVRCの参加者にはImageNetのサブセットである120万点の画像を1000のラベルのリストが与えられ、これを用いてシステムを訓練する。競技会ではImageNetに含まれない画像データが出題され、最も近いと思われるラベルを回答する。競技内容は回を追うごとに高度になり、犬の犬種の識別、物体の位置推定などが出題される回もあった。

2010年の初回には世界の大学や研究機関などから11チームが参加し、サポートベクターマシン(SVM)を利用したチームが分類精度52.9%で優勝した。2012年大会では畳み込みニューラルネットワーク(CNN)で深層学習(ディープラーニング)を行う「SuperVison」(AlexNet)というシステムが84.7%という精度で優勝し、大きな進展をもたらした。

2013年以降はほとんどの参加チームがニューラルネットワークを利用したシステムを構築し、2014年優勝の「GoogLeNet」や2015年優勝の「ResNet」など、その後の研究に大きな影響を与えたモデルを輩出した。2017年大会では参加38チーム中29チームが95%以上の精度を出すようになり、技術チャレンジとしての意義が薄れたとして、この年を最後に大会は終了した。

LeNet

1989年にヤン・ルカン(Yan LeCun)氏が提唱した画像認識ニューラルネットワークのモデル。畳み込みニューラルネットワーク(CNN)の先駆けの一つとして知られる。

それまでの、単純に全結合層が重なったニューラルネットワークと異なり、入力データから断片的な特徴を捉えるための「畳み込み層」を組み込んだ構造となっている。畳み込み層の下には特徴情報に一定の演算を行ってサイズを縮小する「プーリング層」を重ねている。

初期の「LeNet-1」から何度も改良が繰り返され、複数の異なる構造のモデルがある。1998年に開発された最も有名な「LeNet-5」の場合、上位層側に畳み込み層とプーリング層のセットが2つ重なり、その下に3つの全結合層を重ね、全体で7層の深層ニューラルネットワーク(DNN)となっている。パラメータ数は約6万だった。

LeNetは手書きの数字を認識する用途に訓練され、数字の画像を与えると0から9の数字を回答した。1998年のテストでは他のどの方式よりもLeNet-5の精度が高く、AI研究者の中で畳み込みニューラルネットワークの有用性が広く知られることとなった。LeNetは実際に銀行の小切手読み取りシステムに組み込まれ、金額の自動読み取りに貢献した。

AlphaGo

2015年に米グーグル(Google)社傘下のディープマインド(DeepMind)社が開発した、囲碁の対局を行うことができるAIシステム。同年から2017年にかけて各国のトップ棋士を下し、人間を超えた囲碁AIと評された。

基本的には、過去の人間の対局を教師データにニューラルネットワークによる深層学習(ディープラーニング)を行う機械学習システムである。ある程度強くなったら、自分自身と対局を繰り返して訓練する強化学習の手法も取り入れられた。

2014年に開発が始まり、2015年に当時の囲碁ヨーロッパ王者のファン・フイ(樊麾)氏を、2016年に韓国トップ棋士で世界戦4冠経験のあるイ・セドル(李世乭)氏を、2017年には中国トップ棋士で当時世界最強とも目された柯潔氏を破った。

当時、すでにオセロやチェスなどでは人間のチャンピオンを超えるAIが出現していたが、囲碁のような複雑で先読みの難しい競技でコンピュータが人間を上回るのはまだ当分先であろうと考えられていた。AlphaGoが人間のトップ棋士を次々に破ったことは驚きを持って受け止められ、現在に続くAIブームの端緒の一つとなった。

後に、囲碁のルールのみを教えて過去の棋譜は学習させず、ゼロから自己対局だけで訓練する「AlphaGo Zero」が開発された。このモデルは3週間で従来のAlphaGo並みに成長し、40日でAlphaGoに対して勝率9割を残すほどに強化された。さらに、この手法を応用して囲碁以外の競技にも対応できる「AlphaZero」が開発され、チェスや将棋でも従来システムを打ち負かす強さに成長した。

ネオコグニトロン

1979年に福島邦彦氏が提唱した画像認識ニューラルネットワークのモデル。畳み込みニューラルネットワーク(CNN)の元祖として知られる。

画像の局所的な特徴を捉える「S細胞」の層と、S細胞が捉えた特徴をある範囲で統合する「C細胞」の層が交互に重なった構造となっている。深層へ行くに連れて徐々に読み取る範囲が広がり、最下層では文字や数字など意味のある単位の特徴を検知することができる。

動物の脳の視覚野の働きを模したモデルで、「S細胞」は視覚野の「単純型細胞」(simple cell)に、「C細胞」は「複雑型細胞」(complex cell)に対応している。この構造は1959年に共に神経科学者のデイヴィッド・ヒューベル(David H. Hubel)とトルステン・ウィーセル(Torsten N. Wiesel)が明らかにした。

それまでのモデルに比べ対象の変形や位置ずれに強かったが、隠れ層を含む多層のニューラルネットワークに対する効果的な学習手法を見出すことができず、研究は停滞した。その後、1989年にヤン・ルカン(Yan LeCun)が「誤差逆伝播法」(バックプロパゲーション)を畳み込みニューラルネットワークに適用したことで飛躍的な性能向上を遂げ、畳み込み手法が再び日の目を見ることとなった。

生成AI

機械学習技術を応用したAIシステムの一種で、文章や画像、音声、動画、プログラムコードなど、まとまった量の新しい情報を生み出すことができるもの。

機械学習(ML:Machine Learning)システムに大量の学習データを与え、データ中によく出現するパターンや規則性を学習させる。完成したモデルに対して人間が指示を与えると、学習したデータに似た特徴を持つ新たな情報を生成して出力する。

文字、画像、プログラムなど、学習および出力できるデータの種類はシステムごとに決まっている。一種類の情報の入力にのみ対応することを「ユニモーダル」(unimodal)、文字と画像など複数種類の情報の入力に対応することを「マルチモーダル」(multimodal)という。

種類

現在実用的な水準で広く受け入れられているのはテキスト(文字)生成AIと画像生成AIである。テキスト生成AIは米オープンAI(OpenAI)社が開発した大規模言語モデル(LLM:Large Language Model)の「GPT」(Generative Pre-trained Transformer)シリーズ、および、これを対話形式(チャット)で利用できるようにしたクラウドサービス「ChatGPTチャットジーピーティー」により一気に注目を集めるようになった。

画像生成AIは写真風やイラスト風、絵画風などの静止画像を人間の指示する文字列や元になる画像に基づいて生成するもので「AIアート」「生成的アート」などとも呼ばれる。OpenAIによる「DALL-Eダリ」、米ミッドジャーニー(Midjourney)研究所の「Midjourneyミッドジャーニー」、英スタビリティAI(Stability AI)社らの「Stable Diffusionステーブルディフュージョン」などがよく知られる。

他にも、動画、音楽、音声、コンピュータプログラム(のソースコード)、化学物質(分子構造)などを生成するAIシステムの研究・開発が進められており、一部は実用的なソフトウェアやサービスとして実装されている。ロボットの動作を生成AIに基づいて制御するなどの応用も研究されている。

法的な問題

学習データや出力データについて、著作権や肖像権など既存の法的権利との関係の整理が進む前に一気に実用レベルの技術が登場したため、どのような枠組みに基づいて法規制を行うかをまさに現在各国で議論している最中である。

現在の著作権関連法規には機械学習システムに学習データとして入力することについての規定は無いが、出力される文章や画像には学習した著作物の特徴などが反映されており、著作者の許諾や補償無しに利用することは「タダ乗り」であるとして何らかの規制を求める声が上がっている。

また、生成AIの出力結果の文章や画像などを著作物として著作権を認めるか、認める場合は誰が著作者となるのかについても議論となっている。画像や映像の出力結果に著名人にそっくりな人物が含まれる場合の肖像権との関係、生成結果を公開する際にAI生成物であることを明示させるべきか否か、などの論点もある。

ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる