Kjøre GDS-algoritmer
Lær å kjøre ulike grafalgoritmer fra GDS-biblioteket, inkludert innlasting av grafer i minnet og konfigurering av algoritmer.
Kjøre GDS-algoritmer er en gratis leksjon i Grunnleggende om Neo4j-grafdatabaser på CoddyKit. Dette er leksjon 2 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Grunnleggende om Neo4j-grafdatabaser, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Grunnleggende om Neo4j-grafdatabaser inneholder totalt 4 leksjoner.
Arbeidsflyt for GDS-algoritmer
Graph Data Science (GDS)-biblioteket i Neo4j hjelper oss med å kjøre kraftige grafalgoritmer. Når du bruker GDS, følger du vanligvis en prosess i tre trinn:
- Projiser: Last inn et utvalg av grafen i GDS sitt optimaliserte lager i minnet.
- Kjør: Kjør en algoritme på denne grafen i minnet.
- Skriv tilbake: Skriv eventuelt resultatene tilbake til Neo4j-databasen.
Projisere grafen din
Før du kjører en algoritme, må GDS vite hvilken del av databasegrafen som skal analyseres. Denne prosessen kalles grafprojeksjon.
Du definerer hvilke noder og relasjoner, basert på etikettene og typene deres, som skal kopieres til GDS sin raske representasjon i minnet. Dette gjør kjøringen av algoritmer mye raskere.
Projisere bare noder
La oss projisere en enkel graf som bare inneholder noder med etiketten Person. Vi gir den projiserte grafen et navn, for eksempel myGraph.
Prosedyren gds.graph.project oppretter denne grafen i minnet.
CALL gds.graph.project(
'myGraph',
'Person',
{}
) YIELD graphName, nodeCount, relationshipCount;Projisere noder og relasjoner
Vanligere er det å projisere både noder og relasjoner. Her projiserer vi Person-noder og KNOWS-relasjonene deres.
Vi angir nodeetiketten og relasjonstypen. Du kan også legge til egenskaper i projeksjonen.
CALL gds.graph.project(
'socialGraph',
'Person',
'KNOWS'
) YIELD graphName, nodeCount, relationshipCount;Kjøre GDS-algoritmer
Når grafen er projisert, kan du kjøre ulike algoritmer. GDS-algoritmer har ofte forskjellige kjøremoduser:
- Stream: Returnerer resultater direkte som en strøm av rader. Passer godt for umiddelbar analyse.
- Stats: Returnerer bare sammendragsstatistikk om kjøringen av algoritmen.
- Write: Skriver resultatene tilbake til Neo4j-databasen som nye egenskaper eller relasjoner.
Eksempel på PageRank i Stream-modus
La oss kjøre PageRank-algoritmen på socialGraph i stream-modus. PageRank hjelper med å identifisere innflytelsesrike noder.
Vi bruker gds.pageRank.stream og sender inn navnet på den projiserte grafen.
CALL gds.pageRank.stream('socialGraph')
YIELD nodeId, score
RETURN gds.util.asNode(nodeId).name AS person, score
ORDER BY score DESC
LIMIT 5;Tilpasse algoritmeinnstillinger
GDS-algoritmer kan konfigureres i stor grad. Du kan sende inn et parameterkart for å finjustere virkemåten deres.
Vanlige parametere inkluderer maxIterations, dampingFactor (for PageRank) og concurrency. Sjekk alltid GDS-dokumentasjonen for parametere som gjelder for den aktuelle algoritmen.
PageRank med egendefinerte innstillinger
Her kjører vi PageRank med en egendefinert dampingFactor og begrenser maxIterations. Dette gir deg bedre kontroll over kjøringen og konvergensen til algoritmen.
CALL gds.pageRank.stream(
'socialGraph',
{
maxIterations: 10,
dampingFactor: 0.8
}
)
YIELD nodeId, score
RETURN gds.util.asNode(nodeId).name AS person, score
ORDER BY score DESC
LIMIT 5;Lagre algoritmeresultater
Ofte ønsker du å lagre resultatene fra en algoritme tilbake i Neo4j-databasen. Da kan du spørre etter dem senere eller bruke dem i videre analyser.
Write-modusen for GDS-algoritmer legger til nye egenskaper på noder eller oppretter nye relasjoner basert på resultatet fra algoritmen.
Skrive PageRank-poengsummer
For å skrive resultater bruker du prosedyren .write, for eksempel gds.pageRank.write. Du må angi navnet på egenskapen der poengsummen skal lagres på de opprinnelige nodene.
Etter at dette er kjørt, har hver Person-node i databasen en ny egenskap, pageRankScore.
CALL gds.pageRank.write(
'socialGraph',
{
writeProperty: 'pageRankScore'
}
)
YIELD nodeCount, ranIterations, didConverge;Kontroll av GDS-arbeidsflyt
Hvilke av følgende er viktige trinn i den typiske arbeidsflyten for GDS-algoritmer?
Oppsummering av kjøring av GDS-algoritmer
Godt jobbet! Du har lært de viktigste trinnene for å kjøre GDS-algoritmer:
- Projisere grafen til GDS-minnet ved hjelp av
gds.graph.project. - Kjøre algoritmer i modusene stream, stats eller write.
- Konfigurere algoritmer med egendefinerte parametere.
- Skrive tilbake resultater til Neo4j-databasen for varig lagring.
Deretter skal du utforske avanserte GDS-pipelines og integrasjon med maskinlæring!
Lær deg Grunnleggende om Neo4j-grafdatabaser med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 12
- Leksjoner
- 48
Ofte stilte spørsmål
Er leksjonen «Kjøre GDS-algoritmer» gratis?
Ja – du kan lese valgfritt 3 av leksjonene i læringsstien Grunnleggende om Neo4j-grafdatabaser, inkludert «Kjøre GDS-algoritmer», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i Grunnleggende om Neo4j-grafdatabaser inneholder totalt 4 leksjoner.
Hva lærer jeg i «Kjøre GDS-algoritmer»?
Lær å kjøre ulike grafalgoritmer fra GDS-biblioteket, inkludert innlasting av grafer i minnet og konfigurering av algoritmer. Du øver på Grunnleggende om Neo4j-grafdatabaser med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Grunnleggende om Neo4j-grafdatabaser?
Ingen tidligere erfaring er nødvendig. Grunnleggende om Neo4j-grafdatabaser på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 4.
Hvor lang tid tar leksjonen «Kjøre GDS-algoritmer»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Grunnleggende om Neo4j-grafdatabaser-leksjonen?
Ja. Alle Grunnleggende om Neo4j-grafdatabaser-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Introduksjon til GDS-biblioteket
- Kjøre GDS-algoritmer
- GDS-pipelines og maskinlæring
- Grafinnbakinger med GDS