Bu, NLP'ye odaklanarak Öklid mesafesine ve kosinüs benzerliğine hızlı ve doğrudan bir giriş.
Öklid uzaklık ölçüsü, iki noktanın veya iki vektörün birbirinden ne kadar uzakta olduğunu belirlemenizi sağlar.
Şimdi bir lise öğrencisi olduğunuzu ve üç sınıfınız olduğunu varsayalım. Bir matematik dersi, bir felsefe dersi ve bir psikoloji dersi. Profesörlerin sınıfta kullandıkları kelimelere göre bu sınıflar arasındaki benzerliği kontrol etmek istersiniz. Basitlik adına şu iki kelimeyi ele alalım: "teori" ve "uyum". Daha sonra, her sınıfta bu kelimelerin geçtiği yeri kaydetmek için bunun gibi bir tablo oluşturabilirsiniz:
Bu tabloda “teori” kelimesi matematik dersinde 60, felsefe dersinde 20, psikoloji dersinde 25 kez, armoni kelimesi ise matematik, felsefe ve psikoloji derslerinde 10, 40 ve 70 kez tekrarlanır. sırasıyla. Bu verileri 2 boyutlu bir düzleme çevirelim.
Öklid mesafesi, aşağıdaki grafikte gösterildiği gibi basitçe noktalar arasındaki mesafedir:
Psikoloji ile felsefe arasındaki mesafe olan d1'in, felsefe ile matematik arasındaki mesafe olan d2'den daha küçük olduğunu açıkça görebilirsiniz. Ama d1 ve d2'yi nasıl hesaplarsınız?
Genel formül şudur:
Bizim durumumuzda, d1
d(v, w) = d(philosophy, psychology)için:
Ve d2
Beklendiği gibi d2> d1.
Bunu python'da nasıl yapabilirim?
import numpy as np # define the vectors math = np.array([60, 10]) philosophy = np.array([20, 40]) psychology = np.array([25, 70]) # calculate d1 d1 = np.linalg.norm(philosophy - psychology) # calculate d2 d2 = np.linalg.norm(philosophy - math)
Diyelim ki haftada sadece 2 saat psikoloji dersiniz ve 5 saat hem matematik dersi hem de felsefe dersiniz var. Bu iki dersin çoğuna katıldığınız için, "teori" ve "uyum" kelimelerinin ortaya çıkışı psikoloji dersindekinden daha büyük olacaktır. Böylece güncellenmiş tablo:
Ve güncellenmiş 2D grafik:
Öklid mesafesi için daha önce verdiğimiz formülü kullanarak, bu durumda, d1'in d2'den büyük olduğunu bulacağız. Ama psikolojinin felsefeye matematikten daha yakın olduğunu biliyoruz. Kursların frekansı Öklid mesafe metriğini kandırır. Kosinüs benzerliği bu sorunu çözmek için burada.
Kosinüs benzerliği, noktalar arasındaki düz çizgi mesafesini hesaplamak yerine, vektörler arasındaki açı ile ilgilenir.
Grafiğe yakınlaştırdığımızda, α açısının β açısından daha küçük olduğunu görebiliriz. Kosinüs benzerliğinin bilmek istediği tek şey bu. Başka bir deyişle, açı ne kadar küçükse, vektörler birbirine o kadar yakın olur.
Genel formül aşağıdaki gibidir
β vektörler felsefesi (v ile temsil edilir) ve matematik (w ile temsil edilir) arasındaki açıdır.
Anlamdan
cos(alpha) = 0.99yüksek olan
cos(beta)felsefe ise matematikten çok psikolojiye daha yakındır.
Hatırlamak
ve
Bu, açı ne kadar küçükse, kosinüs benzerliğiniz o kadar büyük olur ve kosinüs benzerliğiniz ne kadar büyük olursa, vektörleriniz o kadar benzer olur.
Python uygulaması
import numpy as np math = np.array([80, 45]) philosophy = np.array([50, 60]) psychology = np.array([15, 20]) cos_beta = np.dot(philosophy, math) / (np.linalg.norm(philosophy) * np.linalg.norm(math)) print(cos_beta)
Bahse girerim artık Öklid mesafesinin ve kosinüs benzerliğinin nasıl çalıştığını biliyorsunuzdur. İlki, iki nokta arasındaki düz çizgi mesafesini dikkate alırken, ikincisi söz konusu iki vektör arasındaki açı ile ilgilenir.
Öklid mesafesi daha basittir ve özelliklerinizin dağılımı dengeli olduğunda çalışması garantilidir. Ancak çoğu zaman dengesiz verilerle uğraşıyoruz. Bu gibi durumlarda, kosinüs benzerliğini kullanmak daha iyidir. Ayrıca, kosinüs benzerliği, veri dağıtımınız dengeli olsun ya da olmasın iyi çalışacaktır.
Etrafımızdaki dünya gibi, dil de sürekli değişiyor. Önceki dönemlerde dil değişiklikleri yıllar hatta on yıllar içinde meydana gelirken, artık günler hatta saatler içinde gerçekleşebilir.
Teknoloji dünyasında, işletmeler sürekli olarak siber suçluların şeytani faaliyetlerinin tuzağına düşme riski altındadır. Endişe verici derecede sık hale gelen böyle bir taktik, kimlik bilgilerini doldurmaktır.
MIT Seçim Laboratuvarı'nda yüksek lisans araştırmacısı ve doktora derecesi olan Jesse Clark tarafından yazılmıştır.
Oakland, CA'da halka açık verileri kullanarak hava kalitesini tahmin etmek Google ve EDF, Oakland'daki hava kirliliğini haritalama çalışmalarını yayınladığında, bu çalışmanın sonuçları büyük ilgi gördü. Yayınladıkları veriler, hava kalitesinin Doğu ve Batı Oakland'daki şehir bloklarına göre nasıl değiştiğini gösteren ilk veri kümelerinden biriydi.
Daniel Fleck ve David Lubert ile yazılmıştır Dizimizin ilk blogu, bir veri bilimi projesini uygun şekilde değerlendirmek için Net Şimdiki Değer (NPV), İç Getiri Oranı (IRR) ve Karlılık Endeksi'ni (PI) kullanmaya odaklanacaktır. Ayrıca, bir veri bilimi metodolojisinin kullanılmasının, bu aynı ekonomik ölçütlerin girdilerini daha yüksek kaliteli değerlendirmeler geliştirmek için nasıl daha da iyileştirebileceğini tartışacağız.
Öz bileşimi ve SVD için yararlı olan doğrusal cebir temel kavramını anlayın Bu makalede, öz ayrıştırma veya tekil değer ayrıştırma (SVD) gibi matris çarpanlara ayırma yöntemlerini anlamanın ilginç bir yolu olan temel kavramını öğreneceksiniz. Tanımlar Temel, vektör uzaylarını (vektör setleri) tanımlamak için kullanılan bir koordinat sistemidir.