Leifeng.com AI geliştiricisinin notu: Son zamanlarda, Tencent Açık Kaynak bir kez daha gişe rekorları kıran projelere öncülük etti. Ayın 14'ünde Tencent, geçtiğimiz haftanın beşinci büyük açık kaynak projesi olan açık kaynaklı yüksek performanslı grafik hesaplama çerçevesi Plato'yu resmen duyurdu. Sırayla dört açık kaynak projesi, TubeMQ, Tencent Kona JDK, TBase ve TKEStack açık kaynaklıydı.
TubeMQ: https://github.com/Tencent/TubeMQ
Tencent Kona JDK: https://github.com/Tencent/TencentKona-8
TBase: https://github.com/Tencent/TBase
TKEStack: https://github.com/tkestack
Raporlara göre Plato, milyar seviyeli düğümlerin ultra büyük ölçekli grafik hesaplama ihtiyaçlarını karşılayabiliyor ve algoritma hesaplama süresini günlerden dakikalara indirebiliyor; performans açısından da başı çekiyor ve başlangıçta yüzlerce sunucuya ihtiyaç duyan kaynakları kırıyor. darboğaz. Mevcut Leifeng.com AI geliştiricileri, bu açık kaynak projesi Plato'nun ilgili içeriğini aşağıdaki gibi düzenlemiştir.
Görüntü tanıma günümüzde çok popüler olmasına rağmen, grafik hesaplamanın "grafiği" sıradan görüntülere ve fotoğraflara değil, nesneler arasındaki ilişkiyi ifade etmek için kullanılan soyut bir veri yapısına atıfta bulunmaktadır. Basitçe söylemek gerekirse, grafik hesaplama, bu büyük miktardaki veriler arasında grafik verilerinin verimli bir şekilde nasıl hesaplanacağını, saklanacağını ve yönetileceğini inceleyen bir alandır.
Geleneksel ilişkisel veriler, modelleme hataları ve yatay ölçekleme gibi sorunları ortaya çıkardı, bu nedenle, daha güçlü ifade yeteneklerine sahip grafik verileri sektörden büyük ilgi gördü. Grafik hesaplama, problemleri grafiklerle veri modelleri olarak ifade etme ve çözme sürecidir.
Analiz için farklı kaynakları ve farklı veri türlerini aynı grafiğe entegre edebilir ve bağımsız analizle bulunması zor sonuçlar elde edebilir, bu nedenle sosyal ağlar, öneri sistemleri, ağ güvenliği, metin erişimi ve biyotıp için de bir anahtar haline gelmiştir. Önemli veri analizi ve madencilik araçları.
Plato, Tencent'in dahili grafik hesaplama TGraph ekibi tarafından entegre edilmiş dahili kaynaklar tarafından bağımsız olarak geliştirilen bir grafik hesaplama çerçevesidir ve Plato, matematikçi Plato'ya saygı göstermek için seçilmiştir.
Bilgi işlem performansı açısından Plato, algoritmanın hesaplama süresini günlerden dakikalara kısaltabilir, bu sadece mevcut grafik hesaplama performansını onlarca kez arttırmakla kalmaz, aynı zamanda grafik hesaplamayı dakika hesaplama çağına da getirir.
Hafıza tüketimi açısından , Plato aynı zamanda ana akım grafik hesaplama çerçevesinden çok daha küçüktür. Spesifik olarak, desteklemek için başlangıçta yüzlerce sunucuyu gerektiren ultra büyük grafik hesaplamasını tamamlamak için yalnızca yaklaşık 10 sunucudan oluşan küçük ve orta ölçekli bir kümeye ihtiyaç vardır.
Mimari tasarım Plato çerçevesinin özü, geliştiricilerin uyarlamalı hesaplama modu, paylaşılan bellek hesaplama modu ve boru hattı hesaplama modu dahil olmak üzere farklı grafik algoritma türlerine göre esnek bir şekilde seçim yapmaları için çeşitli hesaplama modları sağlayabilen uyarlanabilir grafik hesaplama motorudur. Ek olarak, yeni bilgi işlem iletişim modlarına erişimi desteklemek için bir arayüz de tasarlanmıştır.
Platon genel mimari diyagramı
Hesaplama motorunda Plato, algoritma tasarımcıları veya belirli işletmeler için çok seviyeli arayüzler sağlar: temel API'den grafik algoritması kitaplığına ve ardından belirli iş için özel olarak tasarlanmış "çözüme" - grafik araç seti. Plato, bu uygulama katmanı arayüzleri ve araçları sayesinde, farklı üst düzey hizmetleri birlikte desteklemek için çevrimdışı hesaplama sonuçlarını diğer makine öğrenimi algoritmalarıyla birleştirebilir.
Şu anda, Plato esas olarak İki temel yetkinlik , Dahil olanlar: Tencent veri seviyesi altında çevrimdışı grafik hesaplama ve Tencent veri seviyesi altında grafik gösterimi öğrenimi; Aynı zamanda Plato, aşağıdakileri içeren genel bir X86 kümesinde çalışabilir: Kubernetes, YARN ve diğer kaynak planlama platformları; dosya sistemleri açısından, Plato, HDFS, Ceph vb. Gibi ana dosya sistemlerini desteklemek için birden fazla arayüz sağlar.
Resmi verilere göre, Plato'nun bilgi işlem performansı, ana akım dağıtılmış grafik hesaplama çerçevesinin önünde.
Aşağıdaki şekil (solda), PageRank ve LPA'nın iki kıyaslama algoritmasında Plato ve Spark GraphX arasındaki performans karşılaştırmasını göstermektedir Plato'nun performansının Spark GraphX'inkinden 1-2 kat daha yüksek olduğu görülebilmektedir.
Soldaki resim, bilgisayar performansının bir karşılaştırmasıdır ve sağdaki resim, bellek kullanımının bir karşılaştırmasıdır.
Platon'un diğer bir avantajı, bellek ek yükünün, ana akım grafik hesaplama çerçevelerinden çok daha küçük olmasıdır. Yukarıdaki şekilden (sağda), Platon'un bellek tüketiminin Spark GraphX'e kıyasla 1-2 derece azaldığını görebiliriz.
Ek olarak, gerçek iş algoritmaları altında, Plato'nun bilgi işlem performansı da çok iyidir. Aşağıdaki şekil, Platon'un ortak sınıf hesaplama, Node2Vec, LINE, GraphSage ve Tencent veri seviyesi altındaki diğer tipik iş algoritmalarının performansını göstermektedir.
Plato, performansı Tencent verileri düzeyinde hesaplar
Büyük verileri temsil etmenin ve analiz etmenin etkili bir yöntemi olan grafikler, birçok alanda hayati bir veri analizi ve madencilik aracı haline geldi. Grafik verileri yüksek boyutlu verilerdir; grafik algoritmalarının hesaplama performansı, grafik madenciliğinin başarısını belirleyen temel faktörlerden biridir. Bir milyardan fazla düğümün mevcut büyük ölçekli sosyal ağ verileri için, bilgi işlem performansı özellikle önemlidir.
Plato'nun ortaya çıkışı, algoritmanın hesaplama süresini günlerden dakikalara indirir ve her seferinde yüzlerce sunucu gerektiren kaynak darboğazını kırar; mevcut bilgi işlem çerçevelerinin sınırlı kaynaklar dahilinde ve sınırlı bir süre içinde tamamlanmasını sağlar. Bazı büyük ölçekli sosyal ağlar için Temel istatistiksel özelliklerin hesaplanması.
Bu açık kaynakta, Tencentin Plato ekip lideri Yu Donghai ayrıca şunları söyledi: Plato, WeChat dahil olmak üzere Tencent'teki birçok temel işletmeyi destekledi ve özellikle Tencentin ultra büyük ölçekli sosyal ağ grafik verilerinin çeşitli hesaplamaları için destek sağladı. Sınırlı kaynaklar ve zaman ile tamamlanamayan diğer mevcut bilgi işlem çerçevelerinin zorluğu. "
Şu an itibariyle Tencent, GitHub'da açık kaynaklı 86 projeye sahip. Platon'un algoritma kütüphanesinde, grafik özellikleri, düğüm merkezilik göstergeleri, bağlı grafikler ve topluluk tanıma gibi çeşitli algoritmaların tümü açık kaynaklıdır ve gelecekte daha fazla algoritma açık kaynaklı olacaktır.
Bunlar arasında, açık kaynaklı algoritmalar şunları içerir:
Grafik özellikleri
Ağaç derinliği / genişliği
Grafik özelliği paketleme hesaplaması: düğüm numarası / kenar numarası / yoğunluk / düğüm derecesi dağılımı
N derece
HyperANF
Düğüm Merkezilik Endeksi
KCore
Pagerank
Yakınlık
Arasılık
Bağlı grafik ve topluluk tanıma
Bağlı Bileşen
LPA
HANP
Grafik öğrenmeyi temsil eder
Node2Vec-Randomwalk
Metapath-Randomwalk
Kümeleme / Bölme Algoritması
LDA
FastUnfolding
Diğer grafikle ilgili algoritmalar
BFS
Ortak sınıf hesaplama
Plato açık kaynak adresi:
https://github.com/tencent/plato
Leifeng.com AI Geliştiricisi