Gensim - Giriş

Bu bölüm, Gensim'in tarihini ve özelliklerini, kullanımları ve avantajları ile birlikte anlamanıza yardımcı olacaktır.

Gensim nedir?

Gensim = “Generate Similar”denetimsiz konu modellemesi için kullanılan popüler bir açık kaynak doğal dil işleme (NLP) kitaplığıdır. Aşağıdakiler gibi çeşitli karmaşık görevleri gerçekleştirmek için en iyi akademik modelleri ve modern istatistiksel makine öğrenimini kullanır:

  • Belge veya kelime vektörleri oluşturma
  • Corpora
  • Konu tanımlamanın gerçekleştirilmesi
  • Belge karşılaştırması yapmak (anlamsal olarak benzer belgeleri almak)
  • Anlamsal yapı için düz metin belgelerini analiz etme

Yukarıdaki karmaşık görevleri yerine getirmenin yanı sıra, Python ve Cython'da uygulanan Gensim, veri akışını ve artımlı çevrimiçi algoritmaları kullanarak büyük metin koleksiyonlarını işlemek için tasarlanmıştır. Bu, onu yalnızca bellek içi işlemeyi hedefleyen makine öğrenimi yazılım paketlerinden farklı kılar.

Tarih

2008 yılında Gensim, Çek Dijital Matematiği için çeşitli Python komut dosyalarının bir koleksiyonu olarak yola çıktı. Orada, belirli bir makaleye en çok benzeyen makalelerin kısa bir listesini oluşturmaya hizmet etti. Ancak 2009'da RARE Technologies Ltd. ilk sürümünü yayınladı. Ardından, Temmuz 2019'un sonlarında, kararlı sürümünü (3.8.0) aldık.

Çeşitli Özellikler

Aşağıda Gensim tarafından sunulan özellik ve yeteneklerden bazıları verilmiştir -

Ölçeklenebilirlik

Gensim, artan çevrimiçi eğitim algoritmalarını kullanarak büyük ve web ölçekli kurumları kolayca işleyebilir. Doğası gereği ölçeklenebilirdir, çünkü tüm girdi bütününün herhangi bir zamanda tamamen Rasgele Erişim Belleğinde (RAM) kalmasına gerek yoktur. Başka bir deyişle, tüm algoritmaları, külliyat boyutuna göre bellekten bağımsızdır.

güçlü

Gensim, doğası gereği sağlamdır ve çeşitli sistemlerde çeşitli kişiler ve kuruluşlar tarafından 4 yılı aşkın süredir kullanılmaktadır. Kendi girdi külliyatımızı veya veri akışımızı kolayca bağlayabiliriz. Diğer Vektör Uzayı Algoritmaları ile genişletmek de çok kolaydır.

Agnostik Platform

Python'un çok yönlü bir dil olduğunu bildiğimiz gibi Python Gensim, Python ve Numpy'yi destekleyen tüm platformlarda (Windows, Mac OS, Linux gibi) çalışır.

Verimli Çok Çekirdekli Uygulamalar

Gensim, makine kümelerinde işlemeyi ve geri almayı hızlandırmak için çeşitli popüler algoritmaların verimli çok çekirdekli uygulamalarını sağlar. Latent Semantic Analysis (LSA), Latent Dirichlet Allocation (LDA), Random Projections (RP), Hierarchical Dirichlet Process (HDP).

Açık Kaynak ve Bol Topluluk Desteği

Gensim, hem kişisel hem de ticari kullanım için ücretsiz olarak kullanılmasına izin veren OSI onaylı GNU LGPL lisansı altında lisanslanmıştır. Gensim'de yapılan herhangi bir değişiklik, sırayla açık kaynaklıdır ve bol miktarda topluluk desteğine sahiptir.

Gensim'in Kullanım Alanları

Gensim, binden fazla ticari ve akademik uygulamada kullanılmış ve alıntılanmıştır. Ayrıca çeşitli araştırma makaleleri ve öğrenci tezlerinde de alıntılanmıştır. Aşağıdakilerin akışlı paralelleştirilmiş uygulamalarını içerir -

fastText

FastText, kelime gömme için bir sinir ağı kullanır, kelime gömme ve metin sınıflandırmayı öğrenmek için bir kütüphanedir. Facebook'un AI Araştırma (FAIR) laboratuvarı tarafından oluşturulmuştur. Bu model, temelde, sözcükler için vektör temsilleri elde etmek için denetimli veya denetimsiz bir algoritma oluşturmamıza izin verir.

Word2vec

Kelime gömme üretmek için kullanılan Word2vec, bir grup sığ ve iki katmanlı sinir ağı modelidir. Modeller temel olarak kelimelerin dilsel bağlamlarını yeniden yapılandırmak için eğitilmiştir.

LSA (Gizli Anlamsal Analiz)

Bir dizi belge ile bunların kapsadığı terimler arasındaki ilişkileri analiz etmemize izin veren NLP'de (Doğal Dil İşleme) bir tekniktir. Belgeler ve terimlerle ilgili bir dizi kavram üreterek yapılır.

LDA (Gizli Dirichlet Tahsisi)

NLP'de gözlem setlerinin gözlemlenmemiş gruplar tarafından açıklanmasına izin veren bir tekniktir. Bu gözlemlenmemiş gruplar, verilerin bazı kısımlarının neden benzer olduğunu açıklıyor. Nedeni bu, üretken bir istatistiksel model.

tf-idf (terim frekans-ters belge sıklığı)

Bilgi erişiminde sayısal bir istatistik olan tf-idf, bir kelimenin derlemedeki bir belge için ne kadar önemli olduğunu yansıtır. Genellikle arama motorları tarafından, bir kullanıcı sorgusu verilen bir belgenin alaka düzeyini puanlamak ve sıralamak için kullanılır. Ayrıca, metin özetleme ve sınıflandırmada durdurma sözcükleri filtrelemesi için de kullanılabilir.

Hepsi sonraki bölümlerde detaylı olarak anlatılacaktır.

Avantajlar

Gensim, konu modelleme yapan bir NLP paketidir. Gensim'in önemli avantajları aşağıdaki gibidir -

  • Konu modelleme ve kelime yerleştirme olanaklarını diğer paketlere alabiliriz. ‘scikit-learn’ ve ‘R’ancak konu modelleri oluşturmak ve kelime yerleştirmek için Gensim tarafından sağlanan olanaklar benzersizdir. Ayrıca metin işleme için daha uygun olanaklar sağlar.

  • Gensim'in bir diğer önemli avantajı, tüm dosyayı belleğe yüklemeden bile büyük metin dosyalarını işlememize izin vermesidir.

  • Gensim, denetimsiz modeller kullandığı için maliyetli ek açıklamalara veya belgelerin elle etiketlenmesine gerek duymaz.