根据边的属性值遍历图形|格林姆林

时间:2018-11-15 00:04:24

标签: graph gremlin graph-traversal

我有一个图形,其中所有边具有相同的属性,但顶点之间的值可能不同。我需要从特定顶点遍历图,尽管所有具有该属性特定值的边都如此。

例如,我有这张图:

example graph

顶点开始:A 遍历边缘color == blue所在的所有顶点。 预期答案应为: [A,B,D,C,H,G]

1 个答案:

答案 0 :(得分:0)

您尝试过的查询仅检查顶点属性,它使def logical_or_layer(x): """Processing an OR operation""" import keras.backend #normalized to 0,1 aux_array = keras.backend.sign(x) aux_array = keras.backend.relu(aux_array) # OR operation aux_array = keras.backend.any(aux_array) # casting back the True/False to 1,0 aux_array = keras.backend.cast(aux_array, dtype='float32') return aux_array #this is the input tensor inputs = Input(shape=(inputSize,)) #this is the Neurule layer x = Dense(neurulesQt, activation='softsign')(inputs) #after each neuron layer, the outputs need to be put into SIGNUM (-1 or 1) x = Lambda(signumTransform, output_shape=lambda x:x, name='signumAfterNeurules')(x) #separating into 2 (2 possible outputs) layer_split0 = Lambda( lambda x: x[:, :end_output0], output_shape=(11, ), name='layer_split0')(x) layer_split1 = Lambda( lambda x: x[:, start_output1:end_output1], output_shape=(9,), name='layer_split1')(x) #this is the OR layer y_0 = Lambda(logical_or_layer, output_shape=(1,), name='or0')(layer_split0) y_1 = Lambda(logical_or_layer, output_shape=(1,), name='or1')(layer_split1) 成为中断条件,而不是连续条件。

这是您要寻找的:

blue