CodingTrain / CodingTrain/Suggestion-Box

Force graph using numerical opimization

Offen
#1,744 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Keine Sprachdaten
Sterne
570
Forks
85
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

I've seen many videos on NN, and I would like to connect to that topic under the optimization prospective... there are a lot of very nice projects that can be done using optimization, and I've just finished implementing one myself that you can find here:
https://github.com/AlbertoSinigaglia/force-graph

It's about "force graph" which are those graphs where you tell the algorithm what is connected and what is not, and it tries to find a nice structure with those connections

You can find more infos here: https://en.wikipedia.org/wiki/Force-directed_graph_drawing

The step to implement it are few and simple:

1. define an adjacency matrix of your vertexes
2. define a loss function that describes the "error" of a single configuration
3. use your favorite optimization algorithm to minimize it, for example (Gradient Descent):
1. calculate the gradient with respect to the coordinates of the points
2. take a small step in the opposite direction fo the gradient

And with this you might have some opportunities to explain how NN actually learns, and a super intuitive way to descrive what means to get stuck on a local minima (sometimes a vertex of a graph gets stuck on the other side of the graph, and never reaches its actual neighbors, and from the optimization POV that's a local minima)

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginnen Sie mit der Durchsicht des verlinkten force-graph-Projekts und der Wikipedia-Erklärung zur kraftgerichteten Graphzeichnung. Der Issue benennt weder Dateien noch Tests noch einen Einstiegspunkt; vor Beginn der Implementierung wären ein vereinbarter Projektumfang und Abnahmekriterien erforderlich.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Bereich
data-visualization, machine-learning
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.