Bilgi grafiğine gösterilen dikkat iki kısma ayrılabilir: bilgi grafiğinin oluşturulması ve bilgi grafiğinin veri yapısına dayalı uygulama. Bilgi grafiğinin yapısı, temelde yapılandırılmış ve yapılandırılmamış verilerin nasıl entegre edileceğine ve üçlü RDF gibi birleşik bir semantik veri yapısı biçiminde veri depolamanın nasıl gerçekleştirileceğine odaklanır. Bilgi grafiğine dayalı uygulama esas olarak bu semantik veri yapısından ilgili gizli veya yeni bilgilerin nasıl çıkarılacağına, keşfedileceğine ve çıkarılacağına veya arama, soru-cevap, karar verme, öneri vb. Gibi üst düzey uygulamaların nasıl gerçekleştirileceğine odaklanır. Ayrıntılar için lütfen "Üç Bilgi Grafiğini Bir Perspektiften Anlamak. Bu makale, esas olarak aşağıdaki yönleri içeren bilgi grafiği muhakemesine (veya ilişki tahmini olarak adlandırılır) dayalı ilişki çıkarımından bahsediyor:
1. Bilgi grafiği muhakemesinin temel işlevi;
2. Bilgi grafiği muhakemesinin temel ilkeleri;
3. Temel bilgi grafiği muhakeme yöntemleri;
4. TransE algoritmasını anlama
1. Bilgi grafiği muhakemesinin ana rolü
Bilgi grafiği analiz sistemi için, muhakeme algoritmasını hangi belirli senaryoların kullanabileceğini düşünmek gerekir.Güncel anlayışa göre, kabaca aşağıdaki durumlara ayrılabilir:
2. Bilgi grafiği muhakemesinin temel ilkeleri
Bilgi grafiği muhakemesi, işle ilgili olup olmadığına göre kural temelli muhakeme ve algoritma temelli muhakeme olarak ikiye ayrılabilir.
(1) Kural temelli muhakeme
Temel olarak, kategori muhakemesi, nitelik muhakemesi vb. Gibi iş ontolojisi çerçevesindeki ilgili kısıtlamalar aracılığıyla ilgili muhakeme yapın.
Düşük seviyeli sınıftan yüksek seviyeli sınıfa akıl yürütme
(2) Algoritmaya dayalı muhakeme
Algoritma temelli akıl yürütme birçok türe ayrılabilir: yola dayalı modelleme, dağıtılmış temsil öğrenme, sinir ağı tabanlı, hibrit akıl yürütme, vb. Ancak, çıkarım algoritması ile elde edilen sonuçlar belirsizdir ve tamamen doğru bir ilişki elde etmek gerekli değildir. Öngörülebilir bir olasılık. Örneğin, bilgi grafiğinin "Melinda Gates-Eş-Bill Gates-Başkan-Microsoft-Genel Merkez-Seattle" gibi bir yol içerdiği gözlemlenerek, Melinda'nın Seattle'da yaşayabileceği tahmin edilmektedir.
Algoritma tabanlı muhakemenin temel ilkeleri genellikle şu şekildedir:
Eğitim seti ve test seti olarak belirli miktarda üçlü ilişkisel veri vardır.Eğitim seti ve test setinin baş / kuyruk varlıkları ve ilişkileri, sabit bir varlık ve ilişkiler kümesinden (ayrıca açık alanlara dayalı olarak) gelir ve eğitim seti aracılığıyla eğitilir Puanlama işlevinin bir parametresi ve ardından bu işlev aracılığıyla test üçlü ilişkisine bir değerlendirme puanı verilir ve ardından bir puan sıralaması elde edilir.
Bu genellikle aşağıdaki yönleri içerir:
Üçlü oluşturma olasılığını puanlamak için bir puanlama işlevi oluşturun: Bu puanlama işlevi, belirli hesaplama işlemleri aracılığıyla varlıklar veya ilişkiler arasındaki ilişki derecesini elde eder.
Puanlama işlevi genellikle şu şekilde hesaplanır:
E1 varlığı ile (ilişki ro varlığı e2) arasındaki benzerlik
(E1 varlığı o ilişki r) e2 varlığı ile benzerlik
R ilişkisi arasındaki benzerlik (e1 varlığı o e2 varlığı)
O bir hesaplama işlemi olduğunda: toplama / çarpma / doğrusal olmayan yöntem vb.
Doğrusal: toplama, çarpma
Doğrusal olmayanlık: Sinir Ağı (Özelleştirilmiş Sinir Ağı)
İlk katman, temsil vektörünün (ağ kodlaması) eşlemesini oluşturur;
İkinci katman, temsil edilen vektörleri birleştirir (skorlama fonksiyonu kod çözme);
Tabii ki, yukarıdakiler çoğu algoritma tarafından verilen kaba bir yöntem eğilimidir, tüm algoritmalar böyle değildir, belirli algoritmaların ayrıntılı olarak tartışılması gerekir. Genel olarak konuşursak, TransE'nin ilkelerini ve kaynak kodunu anlarsanız, diğer algoritmaların ilkelerini ve kaynak kodunu anlayabilirsiniz.
3. Temel bilgi grafiği muhakeme yöntemleri
Bilgi grafiği ile ilgili muhakeme algoritmaları şu anda temel olarak tek adımlı muhakeme (doğrudan ilişki, yol özelliklerini dikkate almadan) ve çok adımlı muhakeme (dolaylı ilişki, yol özelliklerini dikkate alarak) olarak ikiye ayrılır.Tek adımlı muhakeme ve çok adımlı akıl yürütmede dört araştırma yönü vardır. : Geleneksel kurallara dayalı muhakeme, dağıtık temsile dayalı muhakeme, sinir ağına dayalı muhakeme ve yukarıdaki yöntemlere dayalı karışık muhakeme. Her araştırma yönünde, birçok küçük yön ve yöntem genişletilmiştir. Mevcut birçok algoritma ve belge vardır. Ayrıntılar için lütfen aşağıdaki sınıflandırma şemasına bakın:
Bazı yaygın algoritmalar
Mesafe modeli SE
Tek katmanlı sinir ağı SLM'si
Enerji Modeli KOBİ
Çift doğrusal model LMF
Tensör sinir ağı NTN / ProjE
Matris çarpanlara ayırma modeli RESCAL
Çarpma yöntemleri SimplE, DistMULT (baş ve kuyruk varlıkları arasında ayrım yapmayın), HOLE (baş ve kuyruk varlıkları arasında ayrım yapın), ComplEx (sanal ve gerçek vektörler), Analoji (benzer akıl yürütme)
TransE: Aynı semantik uzayda temsil, vektör toplama
TransH: Bir varlığın farklı ilişkilerde farklı temsillere sahip olmasına izin verin
TransR: Farklı ilişkilerin farklı anlamsal alanlara sahip olduğunu düşünün (varlıkları ilişki alanına yansıtır)
CTransR: alt bölümlere ayrılmış ilişki
TransD: Baş ve kuyruk varlıkları için farklı projeksiyon matrisleri oluşturun (matris ve varlık ilişkisi ilişkilidir)
TranSparse: Baş ve kuyruk varlıkları için farklı projeksiyon matrisleri oluşturun (farklı matris seyrekliği)
TransA: Kayıp işlevinde mesafe ölçütü olarak Mahalanobis mesafesini kullanın ve öğrenmenin her boyutu için farklı ağırlıklar ayarlayın
TransG: Head ve tail varlıklarını tanımlamak için Gauss karışım modelini kullanın (bir ilişki birden fazla semantiğe karşılık gelir; her anlambilim Gauss dağılımı ile temsil edilir)
KG2E: Baş ve kuyruk varlıkları arasındaki vektör farkı Gauss dağılımı ile temsil edilir ve ilişki ayrıca iki dağılım arasındaki benzerliği değerlendirmek için Gauss dağılımı ile temsil edilir.
ConvE: Grafik yapılı çok katmanlı evrişimli ağ
Basit:
(1) Her varlık iki vektör olarak temsil edilir: baş varlık vektörü ve kuyruk varlık vektörü (her vektör bağımsızdır)
(2) Her ilişki iki ilişki olarak ifade edilir: bir ileri ilişki ve bir ters ilişki vektörü
DKRL:
(1) Yapılandırılmış bilgilerin temsili: orijinal algoritma
(2) Açıklayıcı bilgilerin temsili: açıklayıcı bilgileri modellemek için CBOW veya derin öğrenme ağını kullanın
(3) Enerji işlevi: Es + Ed (Edd + Esd + Eds)
OpenKGC:
(1) Varlıkların ve ilişkilerin temsilini öğrenmek için yalnızca metin bilgisi özelliklerini kullanın;
(2) Daha önce görülmemiş varlıklar için temsil vektörlerini öğrenebilir (ancak varlığı oluşturan sözcükler sabit olmalıdır)
PTransE:
(1) Güvenilirlik yolu seçimi;
(2) Yol gösterimi öğrenme (anlamsal temsil-birleşik temsil)
R-GCN / R-GCN +:
(1) GCN, grafik düğümü temsilini öğrenmek için bir çerçeve sağlar;
(2) R-GCN, üçlü kendi kendine kodlama ve kod çözme için bir puanlama yöntemi sağlar;
Her kategorideki önemli algoritmalar
Tensör sinir ağı: SLM, NTN, ProjE
Grafik evrişimli ağ: R-GCN / R-GCN +, ConvE
Dağıtılmış + kuralların melezi: Naual Lp, DKRL, RTJ, ComplexER, ComplexE + NNE
Yol tabanlı modelleme: PTransE
Çok kaynaklı bilgi füzyon modellemesi: DKRL, KGC, NLFeat, TEKE_H, SSP
Birkaç önemli trend
Üçlü varlığın açıklama bilgilerini birleştirmek
Üçlü varlığın öznitelik bilgilerinin birleştirilmesi
Ağ metin bilgilerinin birleştirilmesi (kelimeleri araştırma kıyaslamaları olarak kullanma / araştırma kıyaslamaları olarak varlıkları kullanma)
Diğer bilgi tabanı bilgilerini entegre edin
4. TransE algoritmasını anlama
TransE modelinin amacı, varlıkların ve ilişkilerin düşük boyutlu vektör temsillerini öğrenmektir. H ve t'nin varlık olduğu üçlü (h, l, t) için, h baş varlık, t kuyruk varlık ve l onların ilişkileri (yani, bir öznitelik) için TransE, gömülü temsillerinin (h , l, t) aşağıdaki ilişkiye sahiptir: th + l, yani t, h + l'ye olabildiğince yakın olmalıdır, aksi takdirde bu üçü üçlü oluşturmuyorsa, mümkün olduğu kadar uzakta olmalıdır. Sezgisel olarak şu şekilde ifade edilir:
Bu nedenle, TransE, e (h, l, t) = d (h + l, t) üçlüsünün "enerjisini" tanımlar, burada "enerji" (kağıtta bahsedilen bir üçlünün enerjisi) olarak kabul edilebilir Kayıp fonksiyonu mu, d bir mesafe ölçüm yöntemidir (farklılık ölçüsü), işte vektörler arasındaki mesafe, yani formül:
d (h + l, t) = h + l tL1 / L2
Formül 1'deki L1 / L2, L1 veya L2 mesafesini veya L1 veya L2 normunu ifade eder. Daha sonra, formül 1'in kayıp işlevi en aza indirildiği sürece, ayrımcılığı geliştirmek için, TransE, karşı örneğin mesafesinin olabildiğince büyük olmasını ümit ederek bazı karşı örnek üçlüleri oluşturur, böylece nihai optimizasyon hedefi (kayıp işlevi) formül:
Formül 2'deki (H ', l, t'), oluşturulmuş karşı örnek üçlüsüdür. Oluşturma yöntemi, pozitif üçlüsünün baş öğesini veya kuyruk öğesini rastgele bir varlık ile değiştirmektir ve ikisi aynı anda değiştirilemez. , Formül:
S (h, l, t) = ((h , l, t) hE) {(h, l, t ) tE)
Aşırı uyumu önlemek için, düzenli bir terimin eklenmesi gerekir ve ardından kayıp fonksiyonunu en aza indirmek için bir stokastik gradyan iniş algoritması (stokastik gradyan inişi) kullanılır.
Anlamaya yardımcı olun:
(1) Karşılık gelen varlığı ve ilişkiyi temsil edecek bir vektör bulmanız gerekir;
(2) Ne tür bir vektör bulunur?
İfade edilen vektör th + l'nin bir denklem ilişkisini oluşturabildiğinde, bu üç vektörün karşılık gelen nesneleri temsil edebileceği anlamına gelir.
(3) Böyle bir vektör nasıl bulunur?
Vektör boyutunun bir kayıp fonksiyonu oluşturularak belirlenmesi durumunda, üretilen eğitim vektörü, kayıp fonksiyonu değerini en aza indirmek için th + l ilişkisini karşılar, aksi takdirde vektörü ayarlayın.
(4) Vektör özel olarak nasıl ayarlanır?
SGD: Teorik olarak sıfıra yakın olması gereken i-inci boyut üzerinde thr'yi elde edin. Sıfıra eşit değilse, bu boyuttaki t / h / r değerini öğrenme oranı aracılığıyla değiştirin. Tüm boyut öğrenildikten sonra, o zaman T / h / r'ye karşılık gelen vektörler genel bir öğrenmeyi tamamladı.
(5) Bağlantılar nasıl tahmin edilir?
Tahmin: Baş / kuyruk varlıklarını ve ilişkilerini düzeltin, hesaplanan kuyruk / baş varlıklarını gerçek kuyruk / baş varlıklarıyla karşılaştırın (tüm varlıkları çaprazlayın ve mesafe puanlama işlevini değiştirin)
İlk k kriterini kullanarak: Belirli bir k değeri için, tahmin algoritması, her varlık tarafından hesaplanan belirli bir puanın sıralamasına göre en iyi k yanıtlarını çıkaracaktır.
İki değerlendirme yöntemi:
(6) Eğitim / test süreci
(7) Algoritmanın gerçekleştirebileceği üç görev
Bağlantı tahmini: Eksik baş / kuyruk varlıkları olan üçlüler için varlık tahmini gerçekleştirin Test edilen her üçlü için, baş / kuyruk varlıklarını KG'deki tüm varlıklarla değiştirin ve varlıkları azalan sırada sıralayın. Belirli bir üçlünün doğru olup olmadığına karar vermek, ikili bir sınıflandırma problemidir. Üçlülerin pozitif ve negatif ilişkilerini belirlemek için bir eşik belirleyin ve üçlülerin puanlarını eşikle karşılaştırın. Çıkarma: Çıkarılan ilişkinin doğru olup olmadığını belirlemek için çıkarılan üçlüleri sınıflandırın