Makine öğrenimini kullanarak sunucu günlüğü analizi


10

İstisna günlükleri, veritabanı günlükleri olay günlükleri vb. İçeren uygulamamızın sunucu günlüklerini analiz etmek için bu görevi atadım. Makine öğreniminde yeniyim, Spark'ı elastik arama ve Sparks MLlib (veya PredictionIO) ile kullanıyoruz. sonuç, hangi kullanıcının bir sonraki istisnaya neden olma olasılığının daha yüksek olduğunu ve hangi özelliğin (ve uygulamanın optimizasyonunu takip etmek ve iyileştirmek için bir sürü başka şey) tahmin edebilmek için toplanan istisna günlüklerine dayanarak tahmin edebilmek olacaktır.

Ben başarıyla SparkSearch kıvılcım içine veri almak ve DataFrames oluşturmak ve gerekli verileri harita başardık. Bilmek istediğim, uygulamamın Makine Öğrenimi yönüne nasıl yaklaşacağım. Veri önişleme, veri modellerini eğitme ve etiket oluşturma ve sonra tahminler oluşturma hakkında konuşan makaleler ve makalelerden geçtim.

Sorularım

  • Çıkış yapan günlük verilerinin eğitilecek veri setlerinde kullanılabilecek sayısal vektörlere dönüştürülmesine nasıl yaklaşırım?

  • Veri setimi eğitmek için hangi algoritmaları kullanıyorum (son birkaç gündür topladığım sınırlı bilgi ile, lineer regresyon uygulayarak düşünüyorum, lütfen hangi uygulamanın en iyi olacağını önerin)

Sadece bu soruna nasıl yaklaşacağınıza dair öneriler arıyorum.

Teşekkür ederim.


Belirli bir kullanıcının istisna olasılığı yüksek olduğuna inanmak için öngörme yeteneğiniz olsaydı ne yapardınız? Amaç uygulamayı optimize etmektir. Uygulamada bilinen hataları düzeltmek yerine hangi hata mühendislerinin zamanlarını harcayacağını düzeltmeye mi çalışıyorsunuz? Özellik mühendisliği bu görev için çok önemli olabilir. Ayrıca, olasılık olarak yorumlanabilecek 0..1 değeri üretecek lojistik regresyonu düşünmek isteyebilirsiniz.

5
Bence hedefleri aşıyorsun. Sihir yapmak için ML'ye kara bir kutu gibi davranmayın. Herhangi bir sonuç almak için doğru soruları sormanız (ve bunun için yeterli verilere sahip olmanız) gerekir.
QUIT - Anony-Mousse

Sorununuz, hangi kullanıcının bir sonraki istisnayı ve hangi özelliği (ve uygulamanın optimizasyonunu takip etmek ve iyileştirmek için bir dizi başka şey) neden olma olasılığının daha yüksek olduğunu tahmin etmek için çözüldü ? Evet ise, lütfen çözüm yaklaşımınızı paylaşabilir misiniz, yoksa başka biri paylaşabilir mi?
Ashish Tyagi

Yanıtlar:


12

Bir algoritmada kullanmak için tek tek günlük girişlerini vektörlere dönüştürmeniz gerektiğini düşünmüyorum. İlgilendiğiniz şeyin, bir dizi olayı temsil eden, zaman içinde sıralanan ve birlikte bir dizi 'vaka' oluşturan bir dizi günlük girişi olduğunu tahmin ediyorum. Burada bir dizi toplanmış günlük girişi arasındaki ilişki önemlidir.

Bu durumda, Proses Madenciliği tekniklerini kullanmayı düşünebilirsiniz . Bu, işleminizin modellerini (uygulamanızın kullanımı) oluşturmanıza ve hatalar ve yeniden işleme adımlarıyla birlikte süreç adımları kalıplarını belirlemenize olanak tanır.

Burada Coursera'da iyi bir tanıtım kursu var . Analiz ve görselleştirmede size yardımcı olacak 'disko' gibi bazı gelişmiş, ticari paketler bile var

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.