CodingTrain / CodingTrain/Suggestion-Box
Force graph using numerical opimization
- 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