Stellargraph Python (Geliştiriciler İçin Nasıl Çalışir)
Gerçek hayatla kıyaslandığında, süper güç falcılığa en yakın olan şey nedir? Çekirdek olarak, bilgileri düğümler ve kenarlar olarak yorumlayarak, ilişkilerin ve etkileşimlerin grafikte önemli içgörüler sağladığı yerlerde veri yapılandırma işlemlerine dayalı tahminler yapabilme yeteneğidir. Graf üzerinde öğrenme akışları, bu bağlantıları ortaya çıkarmak için kullanarak gizli kalıpları açığa çıkarır, geleneksel yöntemlerin tabular veya sıralı veri temsillerine odaklanmasının aksine.
Bu nedenle, grafik konvolüsyonel sinir ağları (GCN'ler) ve grafik dikkate dayalı yöntemler, düğüm sınıflandırması, sıra tahmini, bağlantı tahmini ve grafik kategorize etme gibi görevlerle mücadele eden makine öğrenme modellerini etkinleştirmek için grafik verileri için uyarlanmıştır. Bu teknikler, özellikle karmaşık ilişkilerin incelikli bir şekilde anlaşılmasını gerektiren alanlarda özellikle faydalıdır ve sistemlerin sosyal ağlar ve öneri sistemleri gibi alanlarda doğru tahminler yapmasını veya derin içgörüler elde etmesini sağlar.
Bu makalede, IronPDF yardımıyla bir graf oluşturup ardından bir PDF dosyasına dönüştürmek için StellarGraph'i kullanacağız.
StellarGraph Nedir?
StellarGraph graf yapısal verilerle makine öğrenimi için tasarlanmış bir Python kutuphanesidir. Grafikler oluşturmak, manipüle etmek ve görselleştirmek için kapsamlı bir araç seti sağlar. Ayrıca, StellarGraph, karmaşık grafik verilerden öğrenmek ve incelemek için uyarlanmış ileri grafik tabanlı makine öğrenimi algoritmaları sunar; bu da bilgi grafiği tamamlamayı içerir.
StellarGraph, Düğüm Sınıflandırması, Bağlantı Tahmini ve Grafik Sınıflandırması gibi görevleri, Grafik Konvolüsyonel Ağlar ve Grafik Dikkat Ağları gibi modellerin uygulanmasıyla destekler.

Ayrıca, sosyal ağlar, biyoinformatik ve öneri sistemleri gibi birçok alanda karmaşık ağlardan içgörüler bulmada iyi bir çözüm olan, TensorFlow ve Keras gibi popüler grafik makine öğrenimi işlemlerine entegredir.
Temel Özellikler
- Akıcı Grafik Makine Öğrenimi İş Akışı: StellarGraph, kullanıcıları veri yüklemeden gömme vektör hesaplaması ve sinirsel tahminler kadar grafik makine öğrenimi hattını basitleştirir. Düğüm özelliklerini artırmak ve güçlü düğüm sınıflandırmasına olanak tanımak için Derin Grafik CNN ve Yaptırıcı Grafik Konvolüsyonel Ağlar gibi çeşitli grafik konvolüsyonel teknikleri destekler.
- İleri Teknikler ve Modeller: Kütüphane, uzamsal zamansal verileri ve sıra tahminlerini etkili bir şekilde ele almak için tasarlanmış Sıra Grafiği Dikkat Ağı ve Zamansal GCN'ler gibi sofistike modeller içerir. Bu modeller, zamansal düğüm özniteliklerini ve heterojen yönlendirilmiş kenar ağırlıklarını kullanarak tahmin doğruluğunu ve alakasını artırır.
- Kapsamlı Belgeler ve Yerel Demolar: StellarGraph, algoritmanın dokümantasyonu ve yerel olarak çalıştırılabilen demo defterleri hakkında kapsamlı makaleler sunar, sayısız algoritmanın uygulanması hakkında pratik bilgiler sağlar. Bu kaynaklar, grafik tabanlı makine öğreniminin ve uygulamalarının daha derin anlaşılmasını sağlar.
StellarGraph ile Başlarken
StellarGraph kullanarak grafik oluşturmak için kütüphanelerin kurulumuna, grafiğin oluşturulmasına, düğüm ve kenar özelliklerinin tanımlanmasına ve sonunda makine öğrenimi modelinin kurulmasına yönelik rehberlik edilecektir. İşte başlamanız için adım adım bir kılavuz:
StellarGraph ve Diğer İlgili Kütüphanelerin Kurulumu
İlk olarak aşağıdaki kütüphanelerin doğru bir şekilde yüklendiğinden emin olunması gerekmektedir, ayrıca bunları henüz yüklemediyseniz kullanılan komutları da aşağıda gösteririz:
pip install stellargraph
pip install tensorflow
pip install pandas
pip install numpypip install stellargraph
pip install tensorflow
pip install pandas
pip install numpyPython'da StellarGraph Kullanımı
StellarGraph'te bulunan sayısız algoritmanın yardımıyla bir grafiği tanımlamanın, kenar ve düğüm özellikleri eklemenin basit bir örneği:
import pandas as pd
import numpy as np
from stellargraph import StellarGraph
import matplotlib.pyplot as plt
import networkx as nx
# Step 1: Create Sample Graph Data
# Generating random feature values for 5 nodes
nodes = pd.DataFrame({
"feature1": np.random.randn(5),
"feature2": np.random.randn(5)
}, index=[f"node{i}" for i in range(5)])
# Defining edges in the graph
edges = pd.DataFrame({
"source": ["node0", "node1", "node2", "node3"],
"target": ["node1", "node2", "node3", "node4"]
})
# Step 2: Create StellarGraph Object
G = StellarGraph(nodes=nodes, edges=edges)
# Step 3: Define and Visualize the Graph
# Plot the graph
fig, ax = plt.subplots(figsize=(8, 6))
# Compute positions for each node in a circular layout
pos = {node: (np.cos(2 * np.pi * i / len(G.nodes())), np.sin(2 * np.pi * i / len(G.nodes())))
for i, node in enumerate(G.nodes())}
# Draw the graph using NetworkX
nx.draw(G.to_networkx(), pos, with_labels=True, node_color='lightblue', edge_color='grey', node_size=500, font_size=10, ax=ax)
# Add a title for the graph
plt.title('StellarGraph Visualization')
# Save the visualization as an image
plt.savefig('graph.png')
plt.close()import pandas as pd
import numpy as np
from stellargraph import StellarGraph
import matplotlib.pyplot as plt
import networkx as nx
# Step 1: Create Sample Graph Data
# Generating random feature values for 5 nodes
nodes = pd.DataFrame({
"feature1": np.random.randn(5),
"feature2": np.random.randn(5)
}, index=[f"node{i}" for i in range(5)])
# Defining edges in the graph
edges = pd.DataFrame({
"source": ["node0", "node1", "node2", "node3"],
"target": ["node1", "node2", "node3", "node4"]
})
# Step 2: Create StellarGraph Object
G = StellarGraph(nodes=nodes, edges=edges)
# Step 3: Define and Visualize the Graph
# Plot the graph
fig, ax = plt.subplots(figsize=(8, 6))
# Compute positions for each node in a circular layout
pos = {node: (np.cos(2 * np.pi * i / len(G.nodes())), np.sin(2 * np.pi * i / len(G.nodes())))
for i, node in enumerate(G.nodes())}
# Draw the graph using NetworkX
nx.draw(G.to_networkx(), pos, with_labels=True, node_color='lightblue', edge_color='grey', node_size=500, font_size=10, ax=ax)
# Add a title for the graph
plt.title('StellarGraph Visualization')
# Save the visualization as an image
plt.savefig('graph.png')
plt.close()Gösterilen örnek, StellarGraph kütüphanesi ile birlikte Matplotlib ve NetworkX kütüphanelerini kullanarak bir grafiği nasıl inşa edileceğini ve basit bir görselleştirme yapılacağını gösterir. Örnek, verileri işlemek için gerekli kütüphanelerin: pandas ve Numpy; grafik yapısını oluşturmak için StellarGraph; ve görselleştirme için Matplotlib ve NetworkX kütüphanelerinin ithal edilmesiyle başlar.
Öncelikle, örnek grafik verileri üretilir. Bu örnekte, node0'dan node4'e kadar kimliklere sahip beş düğüm için rastgele özellik değerlerine sahip düğümler DataFrame'ine sahibiz. Kenarlar DataFrame'i kenarları tanımlar; bağlı düğümleri tanımlayan kaynak-hedef çiftlerini içerir.
Daha sonra, StellarGraph sınıfının bir örneği düğüm ve kenar verileri ile oluşturulur, bu veriyi grafikte depolanan bu yapıyı saklar.
Sonunda, bu grafik görselleştirilir. Düğümlerin polar koordinatlarına göre yerleştirildiği yuvarlak bir düzen hesaplamak için bir fonksiyon sağlar. Daha sonra NetworkX kütüphanesi, bu StellarGraph nesnesini bir NetworkX grafiğine dönüştürür ve Matplotlib tarafından çizilir. Düğümler açık mavidir, kenarlar gridir, grafik etiketlenmiş ve son olarak boyut ve yazı tipi bakımından özelleştirilmiştir. Son olarak, grafik, graph.png adlı bir resim dosyası olarak kaydedilir ve çizim penceresi kapatılır.
Çıktı

Bu iş akışı, bir grafiğin oluşturulmasını, temsil öğrenimini ve görselleştirilmesini sağlar. Bu, grafiklere dayalı verilerin analizini ve sunumunu çok daha kolay hale getirir.
IronPDF'i Tanıtma

IronPDF for Python modülü, PDF'lerin programlamalı olarak oluşturulmasını ve düzenlenmesini sağlar. PDF'leri HTML'den oluşturabilir, birden fazla PDF dosyasını birleştirebilir ve metin, fotoğraflar ve ek açıklamalar eklenmiş mevcut PDF'leri kullanabilirsiniz. Buna karşılık, IronPDF raporlar, faturalar veya daha önce stillendirilmiş belgeler oluştururken HTML ile yazılmış veya Internet içeriği üretilmiş herhangi bir web sitesinden kaliteli PDF'ler üretmesini sağlar.
Bazı gelişmiş özellikleri sayfa düzeni düzenleme, belge şifreleme, PDF'den içerik çıkarımı ve daha fazlasıdır. Ürünlerinizin PDF'lerle nasıl başa çıktığını geliştirmek, geliştiricileri genel faydayı artıracak bir yere konumlandıracaktır.
IronPDF Kütüphanesini Yükleme
Aşağıda Python'un projelerinizde IronPDF kullanımını etkinleştirmesini sağlayacak paket yükleyici komutu bulunmaktadır:
pip install ironpdfpip install ironpdfStellarGraph'i IronPDF ile Birleştirmek
Aşağıda StellarGraph tarafından oluşturulan grafik görüntüsünden bir PDF oluşturmak için kullanılan kod yer almaktadır.
import pandas as pd
import numpy as np
from stellargraph import StellarGraph
import matplotlib.pyplot as plt
import networkx as nx
from ironpdf import ImageToPdfConverter, License
import warnings
warnings.filterwarnings('ignore')
# Replace "YOUR LICENSE KEY GOES HERE" with your IronPDF license key
License.LicenseKey = "YOUR LICENSE KEY GOES HERE"
# Step 1: Create Sample Graph Data
nodes = pd.DataFrame({
"feature1": np.random.randn(5),
"feature2": np.random.randn(5)
}, index=[f"node{i}" for i in range(5)])
edges = pd.DataFrame({
"source": ["node0", "node1", "node2", "node3"],
"target": ["node1", "node2", "node3", "node4"]
})
# Step 2: Create StellarGraph Object
G = StellarGraph(nodes=nodes, edges=edges)
# Step 3: Define and Visualize the Graph
fig, ax = plt.subplots(figsize=(8, 6))
pos = {node: (np.cos(2 * np.pi * i / len(G.nodes())), np.sin(2 * np.pi * i / len(G.nodes())))
for i, node in enumerate(G.nodes())}
nx.draw(G.to_networkx(), pos, with_labels=True, node_color='lightblue', edge_color='grey', node_size=500, font_size=10, ax=ax)
plt.title('StellarGraph Visualization')
plt.savefig('graph.png')
plt.close()
# Step 4: Convert the image to PDF using IronPDF
ImageToPdfConverter.ImageToPdf('graph.png').SaveAs("result.pdf")import pandas as pd
import numpy as np
from stellargraph import StellarGraph
import matplotlib.pyplot as plt
import networkx as nx
from ironpdf import ImageToPdfConverter, License
import warnings
warnings.filterwarnings('ignore')
# Replace "YOUR LICENSE KEY GOES HERE" with your IronPDF license key
License.LicenseKey = "YOUR LICENSE KEY GOES HERE"
# Step 1: Create Sample Graph Data
nodes = pd.DataFrame({
"feature1": np.random.randn(5),
"feature2": np.random.randn(5)
}, index=[f"node{i}" for i in range(5)])
edges = pd.DataFrame({
"source": ["node0", "node1", "node2", "node3"],
"target": ["node1", "node2", "node3", "node4"]
})
# Step 2: Create StellarGraph Object
G = StellarGraph(nodes=nodes, edges=edges)
# Step 3: Define and Visualize the Graph
fig, ax = plt.subplots(figsize=(8, 6))
pos = {node: (np.cos(2 * np.pi * i / len(G.nodes())), np.sin(2 * np.pi * i / len(G.nodes())))
for i, node in enumerate(G.nodes())}
nx.draw(G.to_networkx(), pos, with_labels=True, node_color='lightblue', edge_color='grey', node_size=500, font_size=10, ax=ax)
plt.title('StellarGraph Visualization')
plt.savefig('graph.png')
plt.close()
# Step 4: Convert the image to PDF using IronPDF
ImageToPdfConverter.ImageToPdf('graph.png').SaveAs("result.pdf")Bu, StellarGraph kütüphanesinden grafğin oluşturulması ve görselleştirilmesi için bir kod örneğidir, ardından çizilen görselleştirmeyi IronPDF kullanarak bir PDF'ye dönüştürür. Gerekli kütüphanelerin ithal edilmesi ve bir IronPDF lisans anahtarının ayarlanmasıyla başlar. Örnek grafik verileri, düğümler için rastgele özelliklerle ve belirtilen kenarlarla üretilir. Bu veriler kullanılarak StellarGraph nesnesi oluşturulur. NetworkX kütüphanesi grafiği dairesel bir düzenle görselleştirir ve bir PNG görüntüsü olarak kaydeder. Ardından, bu PNG görüntüsü IronPDF'nin ImageToPdfConverter tarafından bir PDF belgesine dönüştürülür.
Çıktı

Lisanslama
Kodun filigran olmadan çalışabilmesi için bir lisans anahtarı gereklidir. Ücretsiz deneme lisansı için bu linkten kayıt olabilirsiniz. Kimliğimizi açıklamaya gerek kalmadan bir kayıt yaptırabileceğimizi unutmayın. E-posta adresinizi girerek kaydolabilir ve ücretsiz deneme sürümünü edinebilirsiniz.

Sonuç
StellarGraph'in IronPDF entegrasyonu, verileri değerlendirmek ve belgeleri işlemek için gelişmiş ve güçlü bir yol açar. StellarGraph, bağlantılı verilerin analizi için güçlü grafik makine öğrenme tekniklerine katkıda bulunacak ve IronPDF, PDF belgelerini işlemek ve manipüle etmek için eksiksiz araçlar sunacaktır. Bu ikisinin etkileşimi sizin, PDF belgesi içerisindeki karmaşık veri yapılarından anlamlı insiyatifler çıkarmanıza olanak tanıyacaktır.
Bu kombinasyon, işletmeleri grafik tabanlı analitiklerin gücünü gelişmiş belge işleme ile birleştirerek, çok daha verimli ve kavrayışlı bir veri işleme iş akışı oluşturma olanağı tanır. Bu entegrasyon, PDF formatında yer alan verilerin tam olarak kullanımı yönünde başka bir büyük adım atmış ve oldukça farklı alanlarda yenilik ve optimizasyon yeni yollar açmıştır. Iron Software ayrıca Windows, Android, MAC ve Linux gibi birçok platform ve işletim sisteminde uygulamalar oluşturmayı mümkün kılar, bunlar arasında birçok kütüphane kullanarak.










