Scala için iyi bir matematik / istatistik kitaplığı var mı? [kapalı]


89

Matematik ve istatistik ölçekleri için iyi bir açık kaynak kitaplığı arıyorum. Umarım Apache Math veya Colt gibi bir şeydir, ancak Scala'da uygulanmıştır.

Biri beni doğru yöne yönlendirebilir mi?


4
Yalnızca Scala'dan kullanılabilen bir kitaplık yerine, neden Scala'da uygulanan bir kitaplığın peşinde olduğunuzu açıklamaya yardımcı olabilir.
retronym

Aslında commons.apache.org/proper/commons-math kullanmaya başladım ve kullanımı kolay ve Scala'da iyi çalışıyor.
tom10271

Yanıtlar:


148

Evet, bazıları var:

Scalalab

ScalaLab projesi, Java Sanal Makinesi için verimli bir bilimsel programlama ortamı sağlamayı amaçlamaktadır. Komut dosyası dili, üst düzey bilimsel operatörlerle geliştirilmiş Scala programlama diline ve Matlab benzeri bir çalışma stili sağlayan entegre bir ortama dayanmaktadır.

Komut dosyası kodu son derece hızlıdır, Java'ya yakın (bazen daha yavaş, bazen daha hızlı) ve genellikle eşdeğer Matlab .m komut dosyalarından daha hızlıdır!

Scalala artık Breeze tarafından değiştirildi

Vektörler ve matrisler üzerinde zengin Matlab benzeri operatörlerle Scala için yüksek performanslı bir sayısal doğrusal cebir kitaplığı; sayısal rutinler kütüphanesi; komplo için destek.

Factorie

FACTORIE, Scala'da bir yazılım kitaplığı olarak uygulanan konuşlandırılabilir olasılıklı modelleme için bir araç setidir. Kullanıcılarına ilişkisel faktör grafikleri oluşturmak , parametreleri tahmin etmek ve çıkarım yapmak için kısa ve öz bir dil sağlar .

Cassovary

grafik işleme için twitter tarafından:

Cassovary, milyarlarca kenarlı grafikleri verimli bir şekilde işlemek için sıfırdan tasarlanmıştır. Bazı ortak düğüm ve grafik veri yapıları ve geçiş algoritmaları ile birlikte gelir. Tipik bir kullanım, büyük ölçekli grafik madenciliği ve analizi yapmaktır.

Cassovary, Twitter'da "Kimi Takip Etmeli" ve "Benzer" dahil olmak üzere grafik tabanlı özelliklerimizin çoğunu güçlendirmek için kullandığımız bir yığının alt katmanını oluşturuyor. Ayrıca Twitter Aramasında ve hangi Tanıtılan Ürünlerin kullanıcılarının göreceğini belirleyen algoritmalarda alaka düzeyi için kullanırız. Zamanla, bu ürün özelliklerinden bazılarından Cassovary'ye daha fazla tescilli olmayan mantık getirmeyi umuyoruz.

Algebird

Twitter'dan soyut cebir kütüphanesi:

Kod, toplama sistemleri oluşturmayı hedeflemektedir (Scalding veya Storm aracılığıyla). Başlangıçta Scalding'in Matrix API'sinin bir parçası olarak geliştirildi, burada Matrisler Monoidlerin, Grupların veya Halkaların öğeleri olan değerlere sahipti. Daha sonra, kodun Scalding içinde ve Twitter'daki diğer projelerde daha geniş bir uygulamaya sahip olduğu açıktı.

scala_prob

! deneysel statüye sahip!

sb_probdsl, scala'nın yeni sınırlandırılmış sürdürme desteğini kullanarak basit ayrık olasılıklı programlama desteği sunar.

Malakov

Scala için bir Markov Zinciri kütüphanesi

Markov zincirleri, bir sonraki adımın olasılık dağılımının önemsiz olmayan bir şekilde mevcut adıma bağlı olduğu, ancak önceki adımlara bağlı olmadığı stokastik süreçleri temsil eder. Bu kütüphaneye biraz eğitim verisi verin ve bu, istatistiksel olarak ona benzeyen yeni rastgele veriler oluşturacaktır.

sinyal toplama

Signal / Collect, büyük ölçekli grafik işleme için bir programlama modeli ve çerçevesidir. Model, çerçevenin işlemeyi şeffaf bir şekilde paralelleştirmesine izin verirken, birçok yinelenen ve veri akışı algoritmasını grafikler üzerinde kısa ve öz bir şekilde formüle etmek için yeterince açıklayıcıdır.

Grizzled.math

İstatistik ve yardımcı program paketlerini içerir. Standart gibi çok temel ve iyi bilinen şeyler içerir ...

Olasılık Monad:

Kütüphane olmasa da olasılıklarla başa çıkmada size çok yardımcı olabilir.


4
Sen Python vs Scalala ve Scalalab performans karşılaştırmaları bakabilirsiniz burada
om-nom-nom

15
Ayrıca Saddle : Saddle, kutulama ve kutudan çıkarmanın ek yükünden kaçınmak için JVM ilkelleri üzerinde mantıklı bir şekilde uzmanlaşmış dizi destekli, dizinlenmiş, bir ve iki boyutlu veri yapıları sağlayan Scala için bir veri işleme kitaplığıdır.
om-nom-nom

3
om-nom-nom, Saddle'ı bir cevaba yükseltmelisin. +1
metasim

1
@SimeonFitch Biraz boş zaman bekliyorum, eyere daha yakından bakmak ve belki de yukarıdaki alıntıdan daha fazlasını yazmak için.
om-nom-nom

1
@ om-nom-nom: Bağlantınız artık çalışmıyor.
Pravesh Jain

9

Figaro, Olasılıksal Programlama için bir Scala kütüphanesidir. Figaro hakkında daha fazla bilgiyi burada bulabilirsiniz Figaro Referans

Figaro, Figaro Github'dan indirilebilir

Bu kütüphanenin yazarı şu anda Figaro'yu kullanarak Olasılıksal Programlama üzerine bir kitap yazıyor. İşte kitap sayfasının bağlantısı: Olasılıksal Programlama Kitabı


1

Spire

Spire, genel, hızlı ve kesin olması amaçlanan Scala için sayısal bir kitaplıktır.

Spire, uzmanlaşma, makrolar, tür sınıfları ve uygulamalar gibi özellikleri kullanarak, performans ve kesinlik değiş tokuşlarıyla ilgili geleneksel mantığa meydan okumak için çok çalışıyor. Ana hedef, geliştiricilerin belirli sayısal temsilleri "pişirmek" zorunda kalmadan verimli sayısal kod yazmalarına izin vermektir. Çoğu durumda, Spire'ın özelleştirilmiş tür sınıflarını kullanan genel uygulamalar, karşılık gelen doğrudan uygulamalarla aynı şekilde çalışır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.