GithubHelp home page GithubHelp logo

Error about transform about fugw HOT 5 CLOSED

TuDou-PK avatar TuDou-PK commented on August 22, 2024
Error about transform

from fugw.

Comments (5)

TuDou-PK avatar TuDou-PK commented on August 22, 2024 2

OK, Thanks for your explanation 👍

from fugw.

pbarbarant avatar pbarbarant commented on August 22, 2024 1

Thanks @TuDou-PK for your interest in our repo!

FUGW basically consists in solving a Gromov-Wasserstein problem between graphs, leading to weighted assignments between source and target nodes. The problem thus differs from a domain adaptation setting as there is no geometric displacement of the points.

The idea of mapping.transform is to transport a fresh set of features from the source to the target space using a previously fitted transport plan.

Going back to your example, if you have $50$ new features (for example fMRIs contrast maps) that you want to send from a graph with $3000$ nodes to a graph supported over $9000$ nodes, you effectively want your transformed data to take the shape $[9000, 50]$.

The notion of ambient dimensions in which each graph is embedded is only relevant for the computation of the geometric cost and is not related to the number of features. @alexisthual It might be worth to emphasize this in the documentation.

I hope my explanation is clear :)

from fugw.

bthirion avatar bthirion commented on August 22, 2024

@pbarbarant @alexisthual can you take a look ?

from fugw.

TuDou-PK avatar TuDou-PK commented on August 22, 2024

@pbarbarant Thanks for your reply, please help me to confirm if I understand correctly:

In your graph application, your aim is to map the 3000-node graph to the 9000-node graph, then you can do further process to compare with the mapped 9000-node graph and the target 9000-node graph. As for the node features, no matter if it's 50-dim or 100-dim, you don't care, right? Your aim only cares about the node(graph) geometry information.

Ah! Maybe I got you, that's why in your code, the array shape is like [position, node_number], then actually you treat the "node_number" as the feature, that looks make sense.

So the conclusion is POT and FUGW all are not wrong, just the aim is different?

from fugw.

pbarbarant avatar pbarbarant commented on August 22, 2024

I believe the easiest example is an image where the underlying graph is the 2D grid and over each pixel (node of the graph) you will have a set of features which corresponds to the three RGB channels for example.

In POT's DA example, you would only work in the RGB space, thus your RGB points would move geometrically in this color space, therefore you would get a mapping between colors.

With FUGW, you also take into account the graph geometry between pixels, thus a slice of your data array at pixel $i$ would look like $[\textbf{red}_i, \textbf{green}_i, \textbf{blue}_i]$ and the total array has a size [number_of_pixel, 3], therefore you get a mapping between pixels.

from fugw.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.