2

私が求めていることができるとは思えませんが、創造的な提案のためにそれを捨てようと思いました. 統一医療言語システム (UMLS; https://uts.nlm.nih.gov/home.html) は、ノード間のさまざまな双方向の関係を持つセマンティック オントロジーです。たとえば、x isa y および y inverse_isa x です。問題は、そのような名前が多く、それらの逆方向の関係があることです。したがって、クエリでは、リストには多くの可能性があるため、1 つを除外するだけでは不十分です。これは面倒で、何かを見落とす可能性があります。つまり、問題は、トラバーサルを逆にする関係がある場合に有向非巡回グラフ クエリを作成できるかということです。ノード x から y へのアウトバウンド関係がある場合、y から x へのインバウンド関係を無視する必要があります。Neo4j 2.3.0 を使用しています。データをフィルタリングしている UMLS には、最大 1,100 万のノードと 4,500 万の関係があります。654 の関係タイプがあり、リストは動的に増加しています。

4

2 に答える 2

3

UMLS で、すべての「反転した」関係が対応する「正の」関係とペアになっている場合 (つまり、同じ 2 つのノードをリンクしているが、反対方向に進んでいる場合)、neo4j DB で反転した関係を省略できます。 neo4j は関係をどちらの方向にもナビゲートできます。これで問題は解決しますか?

于 2015-05-05T23:09:55.610 に答える
0

申し訳ありませんが、私は問題をほとんど理解していません。

これが役立つかどうかを確認してください。逆の関係については、次のようなクエリを実行できます。ここでは、逆の関係に b を使用します。

match (n)-[a]->(m)-[b]->(n) return m; 
于 2015-05-06T09:48:44.617 に答える