Aracılığıyla paylaş


Microsoft Neural ağ algoritması Teknik Başvurusu

The Microsoft Neural Network uses a Multilayer Perceptron network, also called a Back-Propagated Delta Rule network, composed of up to three layers of neurons, or perceptrons.Bu, bir giriş katmanı, isteğe bağlı bir gizli katmanı ve bir çıkış katmanı katmanlardır.

Multilayer Perceptron neural ağları ayrıntılı bir tartışma bu belge kapsam dışındadır.Bu konuda algoritmasının giriş ve çıkış değerleri normalleştirme ve seçim yöntemlerini azaltmak için kullanılan özellik için kullanılan yöntem de dahil olmak üzere, temel uygulama açıklar öznitelik kardinalite.Bu konuda, parametreleri ve algoritma davranışını özelleştirmek için kullanılan ve model sorgulama hakkında ek bilgilere bağlantılar sağlayan diğer ayarları açıklanmaktadır.

Neural ağ algoritması Microsoft uygulaması

Her neuron Multilayer Perceptron neural ağ, bir veya daha fazla girdi alır ve bir veya daha fazla aynı çıkışı üretir.Her çıktı ise doğrusal olmayan basit bir işlev , neuron için girişlerinin toplamı.Girdileri İleri giriş katmanı düğümler arasında gizli katmandaki düğümlerin iletir ve sonra gizli katmanından, çıktıyı katmanına geçirir; bir katman içinde neurons arasında bağlantı yok.Hiçbir gizli katmanda, logistic regresyon modelinde olduğu gibi dahil ise, girişleri ileriye doğrudan giriş katmanında düğümlerinden çıktı katmanı düğümler iletin.

Neurons neural ağlarda ile oluşturulan üç tür vardır Microsoft Neural ağ algoritması:

  • Input neurons

Giriş neurons veri giriş öznitelik değerleri sağlayan araştırma modeli.Giriş öznitelikleri kesikli bir giriş neuron gelen giriş öznitelik genelde tek bir durumu gösterir.Bu öznitelik için Boşlara eğitim veri içeriyorsa, bu eksik değerleri içerir.Eğitim verileri herhangi bir boş değerlere, ikiden fazla durumları olan ayrı bir giriş öznitelik her durum için bir giriş neuron ve eksik bir durum için bir giriş neuron üretir.Sürekli bir giriş öznitelik iki giriş neurons oluşturur: eksik durumu için bir neuron ve sürekli öznitelik değeri için bir neuron.Bir veya daha fazla gizli neurons girdileri giriş neurons sağlar.

  • Hidden neurons

Gizli neurons girdileri giriş neurons alırsınız ve neurons çıktı yapmak için çıktıların sağlar.

  • Output neurons

Çıkış neurons veri için öngörülebilir öznitelik değerleri temsil eden araştırma modeli.Giriş öznitelikleri kesikli çıktı neuron genellikle eksik değerleri de dahil olmak üzere, öngörülebilir bir öznitelik için öngörülen tek bir durumu temsil eder.Örneğin, bir ikili öngörülebilir özniteliği bu öznitelik için bir değer var olup olmadığını belirtmek için bir eksik veya varolan durumunu açıklayan bir çıkış düğümü oluşturur.Boole sütun öngörülebilir bir öznitelik olarak kullanılan üç çıkış neurons oluşturur: true değeri için bir neuron false değeri için bir neuron ve eksik veya varolan bir durum için bir neuron.Her durum için bir çıktı neuron ikiden fazla durumu vardır bir kesikli öngörülebilir öznitelik oluşturur ve bir neuron eksik veya varolan bir durum çıktı.Sürekli tahmin edilebilir sütun iki çıkış neurons oluşturur: eksik veya varolan bir durum için bir neuron ve sürekli sütun değeri için bir neuron.500'den fazla çıkış neurons öngörülebilir sütunları küme gözden geçirerek üretilen Analysis Services , yeni bir ağ oluşturur araştırma modeli temsil eden ek çıkış neurons.

Bir neuron diğer neurons veya ağ katmanı bağlı olacağı bir diğer veri giriş alır.Bir giriş neuron girdileri özgün verileri alır.Gizli neurons ve çıkış neurons girdileri diğer neurons neural ağ çıkış alırsınız.Giriş neurons arasındaki ilişkileri kurmak ve ilişkileri analiz için belirli bir yol olarak hizmet veren küme durumda.

Her girdi, adlı atanmış bir değere sahip Ağırlık, ilgi ya da o belirli giriş gizli neuron veya çıktı neuron önemini açıklar.Bu girdi değerinin bir giriş, daha ilgili veya önemli atanan büyük ağırlığı.Hangi giriş engelle, yerine etkinleştirmek, belirli neuron anlaşılacağı ağırlıkları negatif olabilir.Her giriş değerinin belirli neuron de önemini vurgulamak için ağırlığı ile çarpılır.Negatif ağırlıkları için değeri Ağırlıklarına göre çarpmadan etkisini önemi geri vermektir.

Her neuron onu adlı atanmış Basit doğrusal olmayan işlev olan etkinleştirme işlev, uygunluk ya da belirli bir neuron neural ağ katman için önemini açıklar.Gizli neurons kullanımı bir hiperbolik tanjantı işlev (tanh) kendi etkinleştirme işlev için ise çıkış neurons kullanımı bir sigmoid işlevini etkinleştirme.Her iki işlevi, neural ağ modeli giriş ve çıkış neurons arasındaki doğrusal olmayan ilişkiler için izin doğrusal olmayan, devamlı işlevlerdir.

Eğitim Neural ağları

Veri eğitimi de dahil birkaç adım araştırma modeli kullanan Microsoft Neural ağ algoritması.Bu adımları yoğun algoritma parametreleri için belirlediğiniz değerlere göre etkilediği.

Algoritma ilk olarak değerlendirilir ve eğitim veri ayıklayan veri kaynak.Yüzde olarak adlandırılan eğitim veri gizleme verisi, ağ doğruluğunu değerlendiriliyor, kullanmaları için ayrılmıştır.Eğitim süreci ağ eğitim verileri her yinelemenin hemen sonra değerlendirilir.Artık doğruluğu artırır, eğitim işlemi durduruldu.

Değerleri SAMPLE_SIZE ve HOLDOUT_PERCENTAGE parametreleri eğitim veri örneklemek için servis taleplerinin sayısı ve için kenara koymak için servis taleplerinin sayısını belirlemek için kullanılan gizleme verisi.Değeri HOLDOUT_SEED parametresi için kenara koymak için tek tek durumlarda rastgele belirlemek için kullanılan gizleme verisi.

Not

Bu algoritma parametreleri sınama veri küme tanımlamak için bir araştırma yapısı uygulanan HOLDOUT_SIZE ve holdout_seed özellikleri farklıdır.

Algoritma sonraki sayısını ve ağların karmaşıklığını belirler, araştırma modeli destekler.Araştırma modeli yalnızca tahmin için kullanılan bir veya daha fazla öznitelik varsa, algoritması tüm özniteliklerini temsil eden tek bir ağ oluşturur.Araştırma modeli hem giriş hem de tahmin için kullanılan bir veya daha fazla öznitelik varsa algoritmasını sağlayıcı her öznitelik için bir ağ oluşturur.

Ayrık değerler olan giriş ve öngörülebilir öznitelikleri için her bir girdi veya çıktı neuron sırasıyla tek bir durumu temsil eder.Sürekli değerlerine sahip giriş ve öngörülebilir öznitelikleri için her giriş veya çıkış neuron aralık ve dağıtım için öznitelik değerleri sırasıyla temsil eder.Her iki durumda da desteklenen maksimum durum sayısını durumunun değerine bağlı MAXIMUM_STATES algoritması parametre.Durumları için belirli bir özniteliği değeri aşıyor, MAXIMUM_STATES algoritması parametre bu öznitelik için en popüler veya ilgili durumları seçmiş, en Devletler izin verilen en fazla sayısı ve kalan Devletler açısından eksik değerleri olarak gruplandırılıranaliz.

Algoritma sonra değerini kullanır HIDDEN_NODE_RATIO parametresi, başlangıç neurons oluşturmak için gizli katman sayısını belirlemeYapabilirsiniz küme HIDDEN_NODE_RATIO ağlar, algoritma oluşturur neural ağ kabul için araştırma modeli için gizli bir katmanda oluşturulmasını önlemek için 0logistic regresyon.

Algoritma sağlayıcı aynı ağ üzerinden tüm girişleri için Ağırlık inventory değerlendirir saat, daha önce ayrıldı eğitim veri küme alma ve her durumda ağın öngörü ile gizleme veri için bilinen gerçek değeri karşılaştırarak, olarak bilinen bir işlemle toplu iş iş öğrenme.Algoritma algoritma tüm eğitim veri küme değerlendirildi sonra her neuron öngörülen ve gerçek değeri gözden geçirir.Algoritma varsa, hata derecesini hesaplar ve ayarlar için giriş neurons olarak bilinen bir işlemle için çıkış neurons'dan geriye doğru çalışıyor, neuron girişleri ile ilişkili ağırlıkları backpropagation.Algoritma, sonra tüm eğitim veri küme üzerinde işlem tekrarlanır.Algoritma birçok ağırlıklarını desteklemek ve neurons çıktı çünkü eşlenik gradyan algoritması eğitim süreci girişleri için ağırlıklar değerlendirme ve atama kılavuzu için kullanılır.Eşlenik gradyan algoritması bir tartışma bu belge kapsam dışındadır.

Özellik seçimi

Giriş öznitelik sayısı değerinden büyük olup olmadığını MAXIMUM_INPUT_ATTRIBUTES parametresi, veya öngörülebilir öznitelik sayısı değerinden büyük ise, MAXIMUM_OUTPUT_ATTRIBUTES parametresi, bir özellik seçimi algoritması ağları bulunan azaltmak için kullanılıraraştırma modeli. Özellik seçimi Bu modele istatistiksel olarak en uygun olan giriş veya öngörülebilir öznitelik sayısını azaltır.

Özellik seçimi kullanılan otomatik olarak tüm tarafından Analysis Services veri madenciliği algoritmaları çözümleme geliştirmek ve küçültme işlemi yüklenemedi.Neural ağ modeller, özellik seçimi için kullanılan yöntem veri türüne bağlıdır öznitelik.Başvuru için aşağıdaki tablo özellik seçimi yöntemleri neural ağ modeller için kullanılan gösterir ve aynı zamanda seçim yöntemlerini Neural ağ algoritmasına dayanan Logistic regresyon algoritması için kullanılan özellik gösterir.

Algoritma

Analiz yöntemi

Açıklamalar

Neural ağ

İnterestingness puanı

Shannon'ın entropi

k2 önceki ile Bayesian

(Varsayılan) Tekdüzen önceki ile Bayesian Dirichlet

Neural ağları algoritması, verileri sürekli sütunları içeren sürece her iki yöntem kullanabilirsiniz.

Varsayılan.

Logistic regresyon

İnterestingness puanı

Shannon'ın entropi

k2 önceki ile Bayesian

(Varsayılan) Tekdüzen önceki ile Bayesian Dirichlet

Özellik seçimi davranışını denetlemek için bu algoritma parametre geçemeyeceği için varsayılanlar kullanılır.Tüm öznitelikleri kesikli veya discretized, bu nedenle, bdeu varsayılandır.

Neural ağ modeli için özellik seçimi denetlemek algoritması MAXIMUM_INPUT_ATTRIBUTES MAXIMUM_OUTPUT_ATTRIBUTES ve MAXIMUM_STATES parametreleridir.HIDDEN_NODE_RATIO parametreyi ayarlayarak gizli katman sayısını kontrol edebilirsiniz.

Skor yöntemleri

Skor yani neural ağ modeli eğitim kapsamında bir ayrı metin etiketi gibi bir değer girişleri diğer tür karşılaştırma ve ağ içinde ağırlıklı bir değer dönüştürme işlemine normalleştirme türüdür.Örneğin, bir giriş özniteliği cinsiyet ve olası değerler şunlardır: erkek ve kadın başka bir giriş özniteliği gelir, bir değişken değerleri ile aralık ise, her öznitelik değerlerini doğrudan karşılaştırılabilir ve ağırlıkları hesaplanır, bu nedenle ortak bir ölçek için kodlanmış olmalıdır.Skor gibi girdiler için sayısal değerleri normalleştirme işlemi aşağıdaki gibidir: Özellikle, bir olasılık için aralık.Böylece aşırı değerlerini deforme girdi değeri tek tip bir ölçekte daha eşit olarak dağıtmak için normalleştirmesi için kullanılan işlevler de yardımcı sonuçlar incelemenin.

Neural ağ çıkışlarına da kodlanmıştır.Ne zaman çıktı (öngörü) için tek bir hedef veya yalnızca tahmin için kullanılan birden çok hedefi değil girişi modeli tek bir ağ oluşturmak ve değerlerini normalleştirmek gerekli görülmeyebilir.Birden çok öznitelik girdi ve tahmin için kullanılan, ancak modeli birden çok ağ oluşturmanız gerekir; Bu nedenle, tüm değerleri normale döndü gerekir ve bunlar ağ çıkmak gibi çıktıların çok kodlanmış olmalıdır.

Eğitim durumlarda her ayrı değeri toplamak ve bu değerle çarpımının girişleri için kodlama kendi Ağırlıklarına göre dayanır.Bu adı verilen bir Ağırlıklı toplamı, etkinleştirme için iletilir işlev gizli katmanda.Z-score kodlamak için aşağıdaki gibi kullanılır:

Ayrık değerler

Μ = p – önceki bir duruma olasılığını

STDSAPMA = sqrt(p(1-p))

Sürekli değerleri

Bugünkü değeri = 1 - μ/σ

Varolan bir değerle = - μ/σ

Değerleri kodlanmış sonra girdileri ağırlıklı, ağ kenarları ağırlıkları olarak toplamak aracılığıyla gidin.

Çıktıların kodlamasını tahmin çok yararlı kılan özelliklere sahip sigmoid işlev kullanır.Bir özellik, özgün değerleri nasıl ölçeklenir olsun değerleri olduklarına bakılmaksızın negatif veya pozitif, bu çıkışını ise işlev her zaman 0 ve olasılıklar tahmini için uygundur 1 arasında değerdir.Değerleri uzağa bulaşmış noktasından uzağa hareket ettirdiğinizde, olasılık değeri 0 veya 1, ancak yavaş hareket başka bir çok yararlı özellik sigmoid işlev smoothing bir etkiye sahip olmasıdır.

Neural ağ algoritması özelleştirme

The Microsoft Neural Network algorithm supports several parameters that affect the behavior, performance, and accuracy of the resulting mining model.Model üzerinde bayrakları modelleme ayarlayarak veri işleme biçimini de değiştirebilirsiniz sütuns, veya belirtmek için dağıtım bayrakları ayarlamak nasıl içindeki değerleri sütun ele alınır.

Algoritma parametreleri ayarlama

Aşağıdaki tablo Microsoft Neural ağ algoritması ile kullanılan parametrelerini açıklar.

  • HIDDEN_NODE_RATIO
    Giriş için gizli neurons oranını belirtir ve neurons çıktı.Aşağıdaki formül ilk gizli katmanda neurons belirler:

    HIDDEN_NODE_RATIO * sqrt (toplam giriş neurons * toplam çıkış neurons)

    Varsayılan değer 4,0’dır.

  • HOLDOUT_PERCENTAGE
    Eğitim sırasında durdurma ölçütleri bir parçası olarak kullanılan gizleme hata hesaplamak için kullanılan eğitim veri içinde servis taleplerinin yüzdesini belirtir araştırma modeli.

    Varsayılan değer 30’dır.

  • HOLDOUT_SEED
    Sözde oluşturucu algoritması rastgele belirlerken temel yapmak için kullanılan bir sayı belirtir gizleme verisi.Bu parametre, küme 0, modeli içeriği aynı reprocessing sırasında kalmasını güvence altına almak için araştırma modeli, adına dayanarak tohum algoritma oluşturur.

    Varsayılan değer 0’dır.

  • MAXIMUM_INPUT_ATTRIBUTES
    Özellik seçimi görevli önce algoritması için sağlanan giriş öznitelikleri maksimum sayısını belirler.Bu değeri 0 olarak ayarlandığında özellik seçimi giriş öznitelikleri için devre dışı bırakır.

    Varsayılan değer 255’dır.

  • MAXIMUM_OUTPUT_ATTRIBUTES
    Özellik seçimi görevli önce algoritması için sağlanan çıkış öznitelikleri maksimum sayısını belirler.Bu değeri 0 olarak ayarlandığında özellik seçimi çıktı öznitelikler için devre dışı bırakır.

    Varsayılan değer 255’dır.

  • MAXIMUM_STATES
    Ayrık durumlar her algoritması tarafından desteklenen öznitelik sayısı üst sınırını belirtir.Belirli bir öznitelik için durum sayısını bu parametresi için belirtilen sayıdan büyükse, algoritma bu öznitelik için en popüler durumlarını kullanır ve geri kalan Devletler eksik olarak değerlendirir.

    Varsayılan değer 100’dır.

  • SAMPLE_SIZE
    Model eğitmek için kullanılan servis taleplerinin sayısını belirtir.Bu sayı ya da toplamın yüzdesi olarak, dahil edilmeyen durumlarda algoritma kullanır gizleme verisi belirtildiği gibi gizleme_percentage parametresi ile hangi değeri küçüktür.

    Başka bir deyişle, holdout_percentage ise küme hangisi daha küçük ise, 30'a, bu parametrenin değeri veya servis taleplerini toplam sayısının yüzde 70 eşit bir değer algoritması kullanır.

    Varsayılan değer 10000’dır.

Bayrakları modelleme

İle kullanmak için aşağıdaki modelleme bayrakları desteklenir Microsoft Neural ağ algoritması.

  • BOŞ DEĞİL
    Sütun null değeri içeremez gösterir.Analysis Services null değer modeli eğitim sırasında karşılaşırsa bir hata neden olur.

    Araştırma yapısı sütunlar için geçerlidir.

  • MODEL_EXISTENCE_ONLY
    Modeli öznitelik için bir değer varolup olmadığından veya bir değeri eksik olan yalnızca düşünmelisiniz belirtir.Tam değeri önemli değildir.

    Araştırma modeli sütunlar için geçerlidir.

Dağıtım bayrakları

Aşağıdaki dağıtım bayrakları ile kullanmak için desteklenir Microsoft Neural ağ algoritması.Bayrakları, yalnızca modeli için ipuçları olarak kullanılır; algoritma farklı dağıtım algılarsa bulunan dağıtım, ipucu sağlanan dağılımı kullanır.

  • Normal
    Normal veya Gauss, dağıtım temsil ettikleri gibi rağmen değerleri sütun içinde değerlendirilmesi gerektiğini gösterir.

  • Uniform
    Birörnek dağıtılmış olsa gibi değerleri sütun içinde değerlendirilmesi gerektiğini gösterir; yani, herhangi bir değer olasılığı kabaca eşit ve bir işlev , değerlerinin toplam sayısı.

  • Normal oturum
    İçindeki değerleri gösterir sütun göre dağıtılmış olsa gibi değerlendirilmelidir normal günlük kavis değerleri logaritması normal olarak dağıtılmıştır anlamına gelir.

Gereksinimler

Neural ağ modeli, en az bir giriş sütun ve bir çıkış sütunu içermesi gerekir.

Giriş ve öngörülebilir sütunları

The Microsoft Neural Network algorithm supports the specific input columns and predictable columns that are listed in the following table.

Column

İçerik türleri

Giriş öznitelik

Sürekli, döngüsel, kesikli, Discretized, anahtar, tablo ve sipariş

Öngörülebilir öznitelik

Sürekli, döngüsel, kesikli, Discretized ve sipariş

Not

Cyclical ve Sipariş edilmiş içerik türleri desteklenir, ancak bunları olarak ayrık değerler değerlendirir ve özel işlem gerçekleştirmek.