[51CTO.com からのオリジナル記事] オブジェクト指向の時代では、すべてがオブジェクトであるとよく言われます。以前は、個々のオブジェクトのみを分析していました。インターネットとソーシャル ネットワークの発展により、オブジェクト間のつながりはますます密になりました。オブジェクトをエンティティと呼びます。 現在、エンティティ間の関係性を分析することが特に重要になっています。ナレッジ グラフ関連のテクノロジを使用してエンティティ間の関係性を調査し、その商業的価値を見つけて、独自のナレッジ グラフ アプリケーションを構築することができます。 2018年11月30日から12月1日まで、51CTO主催のWOTグローバル人工知能技術サミットが北京JWマリオットホテルで開催されました。 今回のサミットのテーマは人工知能です。Kingsoft OfficeのAI分野の専門家である黄紅波氏は、ビジネス実践セッションで「企業におけるナレッジグラフの実装」について基調講演を行い、ゲストと意見を交換しました。 この記事では、企業におけるナレッジグラフの実装を次の 4 つのレベルに分けて紹介します。
ナレッジグラフ開発の展望 まずナレッジグラフの開発の歴史を見てみましょう。
開発のマイルストーンから:
処理されるデータ量に関して言えば、初期のエキスパート システムの知識量は数万程度でした。その後、Alibaba と Baidu は、数千億、さらには数兆規模の知識グラフ システムを立ち上げました。 上の写真はナレッジグラフの分野で世界的に有名な主要企業を示しています。この分野にはまだまだ多くのプレーヤーがいることがわかります。 上記の左の表は、当社がクライアントのために作成した特定の種類の法的文書の量の変化傾向を反映しています。 2014年にはテキストの数は1500万未満でしたが、2018年には総数は4500万を超えました。 2020 年までに、テキストの数は 1 億件を超えると予測しています (特定のカテゴリ内)。したがって、現在私たちが直面している問題には、膨大な量のデータ、構造化されていないストレージ、履歴データの蓄積などがあります。 これらにより、情報知識やさまざまなエンティティが徐々に拡大していきます。そのため、さまざまな知識をつなげてナレッジグラフを形成する必要があります。 ナレッジグラフの一般的な応用シナリオ ナレッジグラフは、人々の関係を見つけるために使用できます。上の図に示すように、これはテレビシリーズ「In the Name of People」の登場人物の関係グラフとして理解できます。多くの企業では、ユーザー間の関係を見つけるためにナレッジグラフが使用されています。 ナレッジ グラフのもう 1 つの応用シナリオは、エンティティ間の関係を見つけることです。いわゆるエンティティは、初期に言及された「オブジェクト指向」における「オブジェクト」の概念として理解できます。 上図のように、企業間、企業内の子会社や協力会社などの間にはエンティティ関係があり、これがナレッジグラフの核となる概念です。 上の写真は、農業におけるナレッジグラフの応用を示しています。窒素欠乏が広がると、最終的には葉枯れや落果率の低下など、農作物の不作につながることがわかります。 したがって、ナレッジ グラフを作成するときは、実際にはさまざまなエンティティ間の接続を見つけて確立する必要があります。 上の図に示すように、ナレッジグラフの研究と実装の観点から、業界は一般的に次の 3 つのカテゴリに分けられます。
したがって、推奨や知識の抽出と融合を通じて結果を分散グラフ データベースに保存し、各ポイントまたはエッジ間の関係を発見します。 毎日 2 億人を超えるアクティブ ユーザーを抱える WPS では、ユーザー ノードを確立し、ユーザーの基本情報、属性特性、ドキュメントをリンクして共通データベース (MongoDB など) に保存し、グラフ データベースの関係に変換する必要があります。 同時に、各ユーザー ノード間のエッジを整理する必要があります。たとえば、ユーザー A と B が同じ会社のものである場合は、同じエッジを持つ可能性があります。ドキュメントを共有している場合は、別のエッジが生成されます。 したがって、エッジの検出を表現する具体的な方法は 2 つあります。
ナレッジグラフデータベースの選択 ナレッジ グラフに取り組むときに最もよく遭遇する問題は、グラフ データベースの選択です。現在、業界で最も一般的に使用されているグラフ データベースは、Neo4j と Cayley の 2 つです。 一般的に、オンライン情報の豊富さやデータベースの人気ランキングなど、あらゆる面で Neo4j が Cayley よりも優れていると人々は信じているかもしれません。しかし、実際の選択では後者を選択しました。 具体的な理由は次のとおりです。
私たちはかつて、数億のデータ ポイントを使用して、2 つのデータベースの検索と関係の確立のパフォーマンスをテストしました。 その後、Dgraph 自体のバグにより、エッジの重みの計算のサポートに欠陥があり、エッジ間およびポイント間の計算を実行するときにパフォーマンスの問題が発生することが判明しました。 したがって、総合的に検討した結果、最終的にグラフ データベースとして Cayley を選択しました。もちろん、私たちは調査結果を Dgraph の作者にも提出し、現在のバージョンの Dgraph ではバグが修正されています。 一般的に、企業向けのグラフ データベースを選択する場合、企業自身のデータ量を分析する必要があります。処理するデータと知識の量が非常に多く、速度とパフォーマンスに一定の要件がある場合は、スタンドアロン データベースを使用することはできませんが、分散データベースを検討する必要があります。 同時に、より重要なのは、アプリケーション シナリオです。当社が 2 つのノード間の関係を計算し、ノード関係に対応するエッジの重みを取得する必要がある場合は、総合的な検討と総合的な比較を行う必要があります。 ここでは、私たちが独自に開発した独自の方法を共有したいと思います。一般的に、ほとんどのグラフ データベース (Neo4j など) には、独自の基盤データベースが付属しています。 実際のモデリングプロセスでは、最下層でグラフ データベースを使用する必要はありません。たとえば、最下層として MongoDB を使用し、その上に最下層データベースが組み込まれていないグラフ データベースをネストすることができます。そして実践により、このようなハイブリッド モデルの方がより柔軟で効率的であることが証明されました。 ナレッジグラフの実装 次に、ナレッジグラフの実装を見てみましょう。上の図に示すように、プロセス全体は 6 つの側面に分かれています。
事前にナレッジグラフモデルを構築し、そのモデルを使用してナレッジコンピューティングを実装することに加えて、上の図には他の 4 つの重要なプロセスが反映されています。これらを 1 つずつ説明しましょう。 知識獲得 これを実現するには、Web クローラーをクロールしたり、イベントを介して抽出したり (CRF や LSTM などの機械学習アルゴリズムを使用)、国内外のオープン ソース データ セットを使用したりすることができます。 知識表現 知識を獲得した後は、それを処理して表現する必要があります。論理表現、フレームワーク表現、意味表現、さまざまな語彙、オントロジー構成、意味ネットワーク、テキストおよび意味分類方法を使用できます。 モデル表現が完了したら、さまざまなモデルを構築する必要があります。現在、国内業界で一般的に使用されている方法は、専門家法と帰納法です。もちろん、参照法も使用されます。 いわゆるエキスパート方式は、チーム自身の理解に基づいて、既存のビジネスや業界を手動でモデル化して表現することです。 帰納的方法は、いくつかの帰納的アルゴリズム、手動帰納、およびテキスト分類方法を通じてモデルを要約することです。 私たちは上記の 2 つのアプローチを組み合わせて使用しました。モデリング ツールに関しては、Protege と MSVisio が最もよく使用されます。 知識の蓄積 次のステップは知識の保存です。前述したように、MySQL、SQL Server、MongoDB、Neo4j などのデータベースを選択する必要があります。 過去の実験経験に基づくと、まずデータをキー値データベースに保存し、必要に応じて Neo4j などのグラフ データベースに取り込むことができます。 このモードのパフォーマンスは直接ストレージよりも高くなります。ツール プラットフォームに関しては、Neo4j、Titan、Cayley が非常によく使用されています。 知識の応用 保管方法を決定したら、次のステップは知識の応用です。これには、自然言語理解、知識検索、知識質問と回答、機械翻訳などの一般的なアプリケーション シナリオが含まれます。 業界は一般的に 2 つのモデルに分けられます。
ナレッジ アプリケーションで一般的に使用される主要なテクノロジには、CQL、SPARQL、Jena、Neo4j のほか、帰納的推論、演繹的推論、ルール ベース推論などがあります。 上の図は、ナレッジ グラフの非常に典型的な全体的なアーキテクチャ図です。この図を下から上に向かって解釈してみましょう。
まとめると、ナレッジグラフを使用してさまざまなアプリケーションを識別するときに注意すべき重要なポイントには、エンティティ間の関係性を抽出する方法、キーワードと機能を抽出する方法、およびセマンティックコンテンツの分析を確実に行う方法が含まれます。これは、完全なナレッジ グラフ セットを構築するために使用する一般的な方法と理論です。 [51CTO オリジナル記事、パートナーサイトに転載する場合は、元の著者とソースを 51CTO.com として明記してください] |
<<: 2019 年に注目すべき 11 の JavaScript 機械学習ライブラリ
編集者注:この記事はWeChatの公開アカウントHaoge Says(ID:haogetalks)か...
この記事では、Python のトップ AI および機械学習プロジェクトを更新します。 Tensorf...
アドバンテックは、2018年11月1日~2日に開催されたアドバンテックIoT共創サミットにおいて、プ...
企業は業務を最適化し、現在の誇大宣伝サイクルを活用するために AI の導入に躍起になっています。報告...
人工知能は新しい概念でもなければ、単なる仕掛けでもありません。何十年も前から提案されてきました。真の...
GPT-5 はいつ登場し、どのような機能を持つのでしょうか?アレンAI研究所の新しいモデルがその答え...
今週、米国科学アカデミー紀要に発表された新たな研究は、ディープフェイク技術がどれだけ進歩したかを示す...
ロボットは新しい常態の中で私たちの生活を変えています。たとえば、ソーシャルロボットには、感情療法、認...