Алгоритм Neo4j GraphSAGE на графе с разными свойствами узла?

Например, у меня есть следующий график Neo4j:

      CREATE
  // Persons
  (  dan:Person {name: 'Dan',   age: 20, department: 'A', heightAndWeight: [185, 75]}),
  (annie:Person {name: 'Annie', age: 12, heightAndWeight: [124, 42]}),
  ( matt:Person {name: 'Matt',  age: 67, heightAndWeight: [170, 80]}),
  ( jeff:Person {name: 'Jeff',  age: 45, department: 'C', heightAndWeight: [192, 85]}),
  ( brie:Person {name: 'Brie',  age: 27, department: 'B' heightAndWeight: [176, 57]}),
  ( elsa:Person {name: 'Elsa',  age: 32, kuku: 'lulu', heightAndWeight: [158, 55]}),
  ( john:Person {name: 'John',  age: 35, abc: 'non relevant', heightAndWeight: [172, 76]}),

  (dan)-[:KNOWS {relWeight: 1.0}]->(annie),
  (dan)-[:KNOWS {relWeight: 1.6}]->(matt),
  (annie)-[:KNOWS {relWeight: 0.1}]->(matt),
  (annie)-[:KNOWS {relWeight: 3.0}]->(jeff),
  (annie)-[:KNOWS {relWeight: 1.2}]->(brie),
  (matt)-[:KNOWS {relWeight: 10.0}]->(brie),
  (brie)-[:KNOWS {relWeight: 1.0}]->(elsa),
  (brie)-[:KNOWS {relWeight: 2.2}]->(jeff),
  (john)-[:KNOWS {relWeight: 5.0}]->(jeff)

Как вы можете видеть, некоторые из узлов имеют разные атрибуты, эти атрибуты являются динамическими, и я действительно не знаю, какой набор я получу.

Я хочу применить алгоритм GraphSAGE в Neo4j, но как настроить учет всех атрибутов (кроме тех, которые я упомяну - id или чего-то еще).

Я не могу этого сделать, потому что мне нужно инициализировать и обучить алгоритм GraphSAGE.

Посоветуйте, пожалуйста, как это сделать? Я не могу запустить его, потому что атрибуты Person абсолютно динамические.

      CALL gds.graph.create(
  'persons',
  {
    Person: {
      label: 'Person',
      properties: ['age', 'heightAndWeight']
    }
  }, {
    KNOWS: {
      type: 'KNOWS',
      orientation: 'UNDIRECTED',
      properties: ['relWeight']
    }
})

0 ответов

Другие вопросы по тегам