ナレッジグラフ
ナレッジグラフが、複雑な関係性をモデル化し、セマンティック検索、パーソナライズされたレコメンデーションなどを可能にすることで、AIにどのような革命をもたらすかを発見してください。
ナレッジグラフとは、現実世界のエンティティ(オブジェクト、イベント、状況、抽象概念など)と、それらの間の明示的な関係をネットワーク化し、情報を整理・統合した包括的なデータモデルである。
オブジェクト、イベント、状況、抽象概念などの実世界のエンティティ、およびそれらの間の明示的な関係に情報を整理し、統合する包括的なデータモデルです。とは異なり
ナレッジグラフは、データを行と列で格納する標準的なリレーショナルデータベースとは異なり、ノードとカラムが相互に接続された柔軟な網の目としてデータを構造化する。
としてデータを構造化する。このアーキテクチャは、人間が認知的に事実を関連付ける方法を反映しています、
これにより
人工知能(AI)システムは
推論し、文脈を推測し、膨大なデータセット内の隠れたパターンを発見することができる。このセマンティック構造は
セマンティック・ウェブの基礎となる要素であり、データが機械的に読み取り可能で本質的に
このセマンティック構造は、セマンティック・ウェブの基礎となる要素であり、データが機械的に読み取り可能で、本質的にリンクされたフレームワークを構築する。
知識グラフの構造は、2つの主要な要素で構成される。
エンティティ(例えば、"Albert Einstein "や "Theory of Relativity")を表すノードと、それらの間の関係(例えば、"proposed by")を定義するエッジである。
によって提案された "など)。リソース記述フレームワーク(RDF)のような標準に準拠することで
リソース記述フレームワーク(RDF)のような標準に準拠することで、これらのグラフは異種データソース
を統一することができる。著名な実装には以下が含まれる。
Googleナレッジグラフ、
のようなコミュニティ主導のプロジェクトがある。
ウィキデータ
AIと機械学習における応用
ナレッジグラフは、様々な機械学習(ML)機能を推進する上で極めて重要である。
機械学習(ML)の能力を向上させる上で極めて重要なものである。
構造化されたコンテキストを提供することで、様々な機械学習(ML)機能を向上させます。
-
セマンティック検索従来の
従来の検索エンジンはキーワードのマッチングに頼ることが多かった。ナレッジグラフは、検索エンジンにクエリの背後にある「意図」を理解させる。
を理解することができる。例えば、"Jaguar "と検索すると、動物や車のブランドを指すかもしれません。
ナレッジグラフは、文脈を利用して用語を曖昧にし、より正確な検索結果を提供します。
-
推薦システム:小売業におけるAI
小売業におけるAIでは、これらのグラフはユーザー
ユーザー、商品、購買行動の間の複雑な関係をマッピングする。ユーザーがカメラを購入した場合、グラフは「SDカード」や「三脚」との関連性を理解する。
SDカード」や「三脚」との関連性を理解する。
機能的に関連したアクセサリーだからである。
-
検索補強型生成(RAG):
大規模言語モデル(LLM)は
により、もっともらしいが正しくない情報が生成されることがある。知識グラフを
AIエージェントは応答を生成する前に検証された真実の情報源に問い合わせることができる。
LLMの幻覚を大幅に減らし、事実の正確さを向上させる。
事実の正確さを向上させる。
-
コンピュータビジョン(CV)のコンテキスト:
視覚モデルは物体をdetect するが、知識グラフはシーンを理解する。グラフは検出された
「ヘルメット "と "ベスト "を "安全遵守 "の概念にリンクさせることができ、産業監視のためのハイレベルな推論を可能にする。
産業モニタリングのための高度な推論を可能にする。
コード例グラフのエンティティを抽出する
次のPython スニペットは
Ultralytics YOLO11モデルを使用して画像内のオブジェクトをdetect する方法を示します。
これらの検出は、ナレッジグラフに入力するエンティティノードとして機能し、画像とそれを含むオブジェクトをリンクします。
を結びつける。
from ultralytics import YOLO
# Load the official YOLO11 model
model = YOLO("yolo11n.pt")
# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Extract entities to populate a knowledge graph node
graph_entities = []
for box in results[0].boxes:
class_id = int(box.cls)
entity_label = results[0].names[class_id]
confidence = float(box.conf)
# Create a simplified node representation
graph_entities.append({"entity": entity_label, "type": "Object", "confidence": confidence})
print(graph_entities)
実世界の例
-
ヘルスケアにおける創薬ヘルスケアにおける
ヘルスケアのAI分野では、研究者は知識グラフを利用して
グラフを利用して複雑な生物学的相互作用をモデル化する。遺伝子、タンパク質、疾患、薬剤などの実体を
PubMedやUniProtのようなデータベースから
UniProtのようなデータベースから、遺伝子、タンパク質、疾患、薬剤などの実体を結びつけることで、アルゴリズムは潜在的な薬剤の標的や副作用を予測することができる。これにより
は、手作業では見落とされる可能性のある明白でないつながりを特定することで、創薬プロセスを加速する。
医用画像解析や文献
レビュー。
-
サプライチェーンの最適化ロジスティクス企業は、ナレッジグラフを利用してサプライチェーンのデジタル・ツインを作成する。
ナレッジグラフを採用。ノードはサプライヤー、倉庫、部品、製品を表し、エッジは出荷ルートや組み立ての依存関係を表す。
エッジは出荷ルートや組み立ての依存関係を表す。この構造は
ビッグデータ分析が容易になる。
遅延の予測、ルートの最適化、在庫リスクの管理などを、従来の表計算ソフトよりも効率的に行うことができる。
より効果的に在庫リスクを管理することができる。
知識グラフ vs. 関連概念
ナレッジグラフのユニークな価値を理解するには、関連するデータ管理や検索技術と区別することが役に立つ。
検索技術と区別することが有用である。
-
ベクターデータベース:ベクトルデータベース
ベクトル・データベース:ベクトル・データベースは、データを高次元埋め込みデータとして保存する。
データを高次元埋め込みデータとして保存し、類似検索(似ている画像の検索など)を可能にする。ベクトル検索は
ベクトル検索には強力だが、暗黙の数学的近さ
近さに依存している。対照的に、知識グラフは、明示的で意味的なつながり(例えば、「AはBを意味する」)に依存する。
-
リレーショナル・データベース(RDBMS):(SQLのような)伝統的なデータベースは、固定されたスキーマを持つテーブルにデータを格納する。
スキーマでデータを格納する。RDBMSは構造化されたトランザクションを得意とするが、高度に相互接続されたデータには不向きである。複雑な
複雑な関係(例えば、友人の友人の友人)のクエリは、SQLでは計算コストがかかるが、グラフでは些細なことである。
のSPARQLやCypherのようなクエリ言語では計算コストがかかる。
Neo4jのようなグラフ・データベース。
-
自然言語処理(NLP):
NLPは人間の言語を理解し、生成することに焦点を当てている。知識グラフはしばしば、NLPシステムの構造化された
知識グラフは多くの場合、NLPシステムの構造化された "記憶 "として機能し、データマイニングの取り組みから得られた事実データに言語能力を基づかせることができる。
データマイニングの努力から得られた事実データに言語能力を基づかせることができる。