Pipeline GDS dan Pembelajaran Mesin
Pelajari cara membangun dan mengelola pipeline ilmu data graf dalam GDS serta mengintegrasikannya dengan alur kerja pembelajaran mesin.
Pipeline GDS dan Pembelajaran Mesin adalah pelajaran Neo4j Graph Database Fundamentals gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Neo4j Graph Database Fundamentals, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Neo4j Graph Database Fundamentals mencakup 4 pelajaran total.
Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.
What are GDS Pipelines?
Welcome to GDS Pipelines! In the Neo4j Graph Data Science (GDS) library, a pipeline is a structured workflow for common graph data science tasks.
Think of it as a blueprint that defines a sequence of steps, from feature engineering using graph algorithms to training and deploying machine learning models.
Why Use GDS Pipelines?
GDS Pipelines offer several key benefits:
- Reproducibility: Define your entire workflow once and reuse it.
- Automation: Streamline complex tasks involving multiple graph algorithms and ML steps.
- Operationalization: Easily deploy graph-based machine learning models for continuous prediction.
They help bridge the gap between experimentation and production.
Creating a Prediction Pipeline
One common pipeline type is the Node Property Prediction Pipeline. This helps predict a specific property on nodes based on other node features and graph structure.
Let's create an empty pipeline named 'myChurnPrediction':
CALL gds.pipeline.nodePropertyPrediction.create('myChurnPrediction')
YIELD pipeline
RETURN pipeline.name AS name, pipeline.type AS typeProjecting Your Graph Data
Before using a pipeline, you need to project your graph into GDS memory. This makes nodes and relationships accessible for algorithms and features.
Here, we project a simple 'User' graph with 'KNOWS' relationships:
CALL gds.graph.project(
'mySocialGraph',
'User',
{ KNOWS: { orientation: 'UNDIRECTED' } }
)
YIELD graphName, nodeCount, relationshipCount
RETURN graphName, nodeCount, relationshipCountAdding Node Property Features
Pipelines allow you to specify which existing node properties should be used as features for your machine learning model. These are direct attributes of your nodes.
Let's add 'age' and 'income' properties as features to our pipeline:
CALL gds.pipeline.nodePropertyPrediction.addNodePropertySteps('myChurnPrediction', {
nodeProperties: ['age', 'income']
})
YIELD pipeline
RETURN pipeline.name, pipeline.nodePropertyStepsIntegrating Graph Algorithm Features
The real power of GDS pipelines is integrating graph algorithm results as features. These capture structural insights that simple node properties can't.
We can add PageRank scores as a feature to our pipeline:
CALL gds.pipeline.nodePropertyPrediction.addPageRank('myChurnPrediction', {
maxIterations: 10,
dampingFactor: 0.85,
mutateProperty: 'pageRankScore' // This becomes a feature
})
YIELD pipeline
RETURN pipeline.name, pipeline.pageRankStepsConfiguring the Machine Learning Model
After defining your features, you specify the machine learning model that will perform the prediction. GDS supports various models like Logistic Regression, Random Forest, and GNNs.
Let's add a Logistic Regression model to predict 'isChurned':
CALL gds.pipeline.nodePropertyPrediction.addLogisticRegression('myChurnPrediction', {
targetProperty: 'isChurned', // The node property we want to predict
maxIterations: 100,
penalty: 'l2'
})
YIELD pipeline
RETURN pipeline.name, pipeline.logisticRegressionStepsTraining Your GDS Pipeline
With features and a model defined, you can now train the pipeline. This executes all feature generation steps, then trains the specified ML model on the generated features.
We'll train our pipeline on 'mySocialGraph' and name the resulting model 'churnPredictionModel':
CALL gds.pipeline.nodePropertyPrediction.train('myChurnPrediction', {
modelName: 'churnPredictionModel',
graphName: 'mySocialGraph',
nodeLabels: ['User'],
randomSeed: 42
})
YIELD modelInfo
RETURN modelInfo.modelName AS modelName, modelInfo.trainingMetrics.f1Score.weighted AS f1ScoreMaking Predictions with the Model
Once trained, your model (which is part of the pipeline) can be used to generate predictions on your graph data. You can either stream results or mutate the graph with new properties.
Let's stream predictions for our 'churnPredictionModel':
CALL gds.pipeline.nodePropertyPrediction.predict.stream('churnPredictionModel', {
graphName: 'mySocialGraph',
nodeLabels: ['User'],
topN: 1 // Get the top predicted class
})
YIELD nodeId, predictedProperty, probability
RETURN gds.util.asNode(nodeId).name AS user, predictedProperty, probability
LIMIT 5Managing Your Pipelines
You can list all active pipelines and their configurations using gds.pipeline.list(). When a pipeline is no longer needed, you can remove it with gds.pipeline.drop().
Let's see the pipelines we currently have:
CALL gds.pipeline.list()
YIELD name, type, creationTime
RETURN name, type, creationTimeGDS Pipeline Components
A GDS pipeline combines various steps to create a complete data science workflow. Which of the following are valid components or steps you can add to a GDS Node Property Prediction Pipeline?
Recap: Pipelines for ML
Great job! You've learned how GDS Pipelines provide a structured and reproducible way to integrate graph algorithms with machine learning workflows.
- Pipelines define a sequence of steps.
- They combine feature engineering (from existing properties and graph algorithms) with ML model training.
- They enable efficient prediction and operationalization of graph-based insights.
Keep exploring GDS to unlock more advanced graph analytics!
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Pipeline GDS dan Pembelajaran Mesin” gratis?
Ya — teks lengkap “Pipeline GDS dan Pembelajaran Mesin” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Neo4j Graph Database Fundamentals, upgrade ke CoddyKit PRO. Kursus Neo4j Graph Database Fundamentals mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Pipeline GDS dan Pembelajaran Mesin”?
Pelajari cara membangun dan mengelola pipeline ilmu data graf dalam GDS serta mengintegrasikannya dengan alur kerja pembelajaran mesin. Kamu berlatih Neo4j Graph Database Fundamentals dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Neo4j Graph Database Fundamentals?
Tidak diperlukan pengalaman sebelumnya. Neo4j Graph Database Fundamentals di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.
Berapa lama pelajaran “Pipeline GDS dan Pembelajaran Mesin” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Neo4j Graph Database Fundamentals ini?
Ya. Setiap pelajaran Neo4j Graph Database Fundamentals menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Pengenalan Pustaka GDS
- Menjalankan Algoritma GDS
- Pipeline GDS dan Pembelajaran Mesin
- Penyematan Graf dengan GDS