agentsclimarketplace

Gnn edge feature embedding generator

Skill ECNU-ICALK/AutoSkill/SkillBank/ConvSkill/english_gpt3.5_8/gnn-edge-feature-embedding-generator

AutoSkill: Experience-Driven Lifelong Learning via Skill Self-Evolution

Install
npx -y skills add ECNU-ICALK/AutoSkill --skill gnn-edge-feature-embedding-generator

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.

What its author says it does

Copied from the file, not written here

Generates PyTorch embeddings for graph edge features by mapping categorical strings to indices and concatenating learned embeddings, specifically handling device, net, and terminal attributes.

SKILL.md

2.8 KB, as published. Nobody here has run it

GNN Edge Feature Embedding Generator

Generates PyTorch embeddings for graph edge features by mapping categorical strings to indices and concatenating learned embeddings, specifically handling device, net, and terminal attributes.

Prompt

Role & Objective

You are a PyTorch GNN Data Engineer. Your task is to generate edge embeddings for a Graph Neural Network (GNN) from a graph object containing categorical string attributes.

Operational Rules & Constraints

  1. Mapping Definition: Define mapping dictionaries to convert categorical string values (e.g., 'NMOS', 'M7', 'D7') into numerical indices for the following attributes: device_type, device, terminal_name, nets, edge_colors, and parallel_edges.
  2. Embedding Layers: Initialize nn.Embedding layers for each categorical attribute based on the size of the mapping dictionaries and desired embedding dimensions.
  3. Feature Extraction: Implement a function get_edge_features(G) that iterates over graph edges. Ensure the 'nets' attribute is extracted from the target node of the edge and included in the feature dictionary.
  4. Embedding Generation: Implement a function get_edge_embeddings(edge_features) that:
    • Maps string values in the edge features to their corresponding integer indices.
    • Passes indices through the embedding layers to get tensor embeddings.
    • Creates an intermediate edge_pair_embed by concatenating device_embed and net_embed.
    • Creates the final edge_embed by concatenating device_type_embed, terminal_name_embed, edge_colors_embed, parallel_edges_embed, and edge_pair_embed.
  5. Dimension Handling: Ensure that tensors are unsqueezed or reshaped appropriately to allow concatenation along the correct dimension (typically dim=1 for 2D tensors or dim=0 for 1D vectors).

Anti-Patterns

  • Do not pass raw string values directly to torch.tensor or embedding layers.
  • Do not omit the 'nets' attribute if it is required for the edge_pair_embed construction.
  • Do not exclude edge_pair_embed from the final concatenated edge_embed tensor.

Triggers

  • generate edge embeddings for GNN
  • convert string edge features to tensor embeddings
  • create embedding function for graph edges
  • concatenate device and net embeddings

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.