Aracılığıyla paylaş


Ders 5: Tahmin sorguları yürütme

Bu derste, kullanacağınız SEÇİN <modeli> TAHMİN BİRLEŞTİRME (dmx) biçiminde deyim iki farklı türde Öngörüler oluşturmak için temel karar ağacı içinde oluşturulan modeli2. Ders: Madenciliği modelleri için ilişkilendirme madenciliği yapıekleme.Bu tahmin türleri aşağıda tanımlanmıştır.

  • Aynı cinsten tek adet sorgu
    Ad hoc değerleri Öngörüler yaparken sağlamak için tek bir sorgu kullanın.Örneğin, bir bisiklet Alıcı girdileri commute uzaklığı, alan kodu ya da alt müşterinin numarasını Sorgulanacak ileterek büyük olasılıkla tek bir müşteri olup olmadığını belirleyebilirsiniz.Bu girişleri alarak, bir bisiklet satınalmaya nasıl büyük bir olasılıkla kişi gösteren bir değeri olan tek sorgu döndürür.

  • Toplu iş sorgu
    toplu iş iş sorgunun, kimin belirlemek için kullanmak bir tablo potansiyel müşteriler bir bisiklet satınalmaya olasıdır.Pazarlama bölümünüzün müşteriler ve müşteri öznitelikleri listesiyle sağlarsa, örneğin, daha sonra bir toplu iş tahmin kimin tarafından belirlemek için kullanabilirsiniz tablo bir bisiklet satınalmaya olasıdır.

The SELECT FROM <model> tahmin birleştirmek (DMX) form of the SELECT deyim contains three parts:

  • araştırma modeli sütun ve sonuçlar da döndürülür tahmin işlevleri listesi.sonuçlar, kaynak verideki giriş sütunları da içerebilir.

  • Bir tahmin oluşturmak için kullanılan veri tanımlama kaynak sorgudur.Örneğin, bir toplu iş sorguda müşterilerin listesini kaynaklanabilir.

  • Kaynak veri araştırma modeli sütunlar arasındaki eşleme.Daha sonra bu adları aynı, DOĞAL sözdizimini kullanın ve sütun eşlemeleri dışında bırakın.

Daha fazla sorgunun, tahmin işlevlerini kullanarak geliştirebilirsiniz.Tahmin işlevleri öngörü oluşan bir, olasılığını gibi ek bilgi sağlamak ve eğitim dataset, tahmin için destek sağlar.Tahmin işlevleri hakkında daha fazla bilgi için bkz: Işlevler (DMX).

Bu eğitmenin Öngörüler üzerinde ProspectiveBuyer dayalı tablo AdventureWorksDW örnek veritabanındaki.ProspectiveBuyer tablo, olası müşteriler ve ilişkili özelliklerini listesini içerir.Bu müşterilerin tablo karar ağacı madenciliği model oluşturmak için kullanılan müşterilerin bağımsızdır.

Tahmin Sorgu Oluşturucusu ','ı kullanarak Öngörüler oluşturabilirsiniz Business Intelligence Development Studio. Daha fazla bilgi için bkz:DMX tahmin sorgular oluşturmak için tahmin Sorgu Oluşturucusu'nu kullanma.

Dersin görevler

Bu derste, aşağıdaki görevleri gerçekleştirecek:

  • Belirli bir müşteri büyük bir olasılıkla bir bisiklet satınalma olup olmadığını belirlemek için tek bir sorgu oluşturun.

  • Müşteriler tablosunda listelenen, hangi müşterilerin belirlemek için toplu iş iş bir sorgu oluşturmak için bir bisiklet satınalma olasıdır.

Aynı cinsten tek adet sorgu

Ilk adım kullanmaktır SELECT FROM < > tahmin birleştirmek (DMX) modeli Aynı cinsten tek adet tahmin sorguda. Aynı cinsten tek adet deyim genel bir örneği aşağıda verilmiştir:

SELECT <select list> FROM [<mining model name>] 
NATURAL PREDICTION JOIN
(SELECT '<value>' AS [<column>], ...)
AS [<input alias>]

Kodun ilk satırı, sorgu döndürmelidir ve bir tahmin oluşturmak için kullanılan madenciliği modelini belirtir araştırma modeli sütunlarından tanımlar:

SELECT <select list> FROM [<mining model name>] 

Sonraki kod satırlarını, bir tahmin oluşturmak için kullanacağınız müşteri özelliklerini tanımlayın:

NATURAL PREDICTION JOIN
(SELECT '<value>' AS [<column>], ...)
AS [<input alias>]
ORDER BY <expression>

DOĞAL tahmin birleştirmek belirtirseniz, sunucu her model sütunundan bir sütuna giriş, temel alınarak sütun adlarını eşleştirir.Sütunları, sütun adları eşleşmiyorsa, göz ardı edilir.

Bir tek tahmin sorgu oluşturmak için

  1. Içinde Nesne Explorer örneğini sağ tıklatın.Analysis Services, işaret Yeni bir sorgu sonra'ı tıklatındmx.

    Sorgu Düzenleyicisi açılır ve yeni, boş bir sorgu içeriyor.

  2. Tek bir genel örneği kopyalama deyim boş sorgu içine.

  3. Aşağıdakileri yazın:

    <select list> 
    

    ile:

    [Bike Buyer] AS Buyer, PredictHistogram([Bike Buyer]) AS Statistics
    

    AS deyim sorgu sonucunda dönen diğer ad ad sütunlar için kullanılır.The PredictHistogram işlev returns statistics about the tahmin, including the probability and the support.Bir tahmin içinde kullanılabilen işlevler hakkında daha fazla bilgi için deyim, bkz: Işlevler (DMX).

  4. Aşağıdakileri yazın:

    [<mining model>] 
    

    ile:

    [Decision Tree]
    
  5. Aşağıdakileri yazın:

    (SELECT '<value>' AS [<column name>], ...)  AS t
    

    ile:

    (SELECT 35 AS [Age],
      '5-10 Miles' AS [Commute Distance],
      '1' AS [House Owner Flag],
      2 AS [Number Cars Owned],
      2 AS [Total Children]) AS t
    

    Tamamlandı bildirimi şimdi aşağıdaki gibi olmalıdır:

    SELECT
       [Bike Buyer] AS Buyer,
       PredictHistogram([Bike Buyer]) AS Statistics
    FROM
       [Decision Tree]
    NATURAL PREDICTION JOIN
    (SELECT 35 AS [Age],
       '5-10 Miles' AS [Commute Distance],
       '1' AS [House Owner Flag],
       2 AS [Number Cars Owned],
       2 AS [Total Children]) AS t
    
  6. Üzerinde dosyasını arayın menüsünde tıklatın.DMXQuery1.dmx Farklı Kaydet.

  7. Içinde Farklı Kaydet iletişim kutusunda, uygun klasörü bulun ve dosyayı adıSingleton_Query.dmx.

  8. Araç çubuðunda týklatýn yürütmek düğmesi.

    Sorgu, bir bisiklet yaný sýra, tahmin ile ilgili istatistikleri belirtilen özelliklere sahip bir müşteri mi satınalma hakkında bir tahmin döndürür.

Toplu iş sorgu

Sonraki adım kullanmaktır SELECT FROM < > tahmin birleştirmek (DMX) modeli Toplu iş tahmin sorguda. Bir toplu iş deyim genel bir örneği aşağıda verilmiştir:

SELECT TOP <number> <select list> 
FROM [<mining model name>]
PREDICTION JOIN
OPENQUERY([<datasource>],'<SELECT statement>')
  AS [<input alias>]
ON <on clause, mapping,>
WHERE <where clause, boolean expression,>
ORDER BY <expression>

Aynı cinsten tek adet sorguda olarak, kodun ilk iki satır madenciliği modelinin bir tahmin oluşturmak için kullanılan adı yanı sıra, sorgunun döndürdüğü araştırma modeli sütunlarından tanımlayın.TOP <sayı> deyim sorgu sayısı veya belirtilen sonuçlar yalnızca verir belirtir. <sayı>.

Sonraki kod satırlarını, Öngörüler bağlı olarak kaynak veride tanımlayın:

OPENQUERY([<datasource>],'<SELECT statement>')
  AS [<input alias>]

Kaynak veri alma yöntem için birkaç seçeneğiniz vardır, ancak bu öğreticide OPENQUERY kullanır.Kullanılabilen seçenekler hakkında daha fazla bilgi için bkz: <Kaynak veri sorgusu>.

Sonraki satıra, kaynak verilerde araştırma modeli kaynak sütun ve sütunlar arasındaki eşlemeyi tanımlar:

ON <column mappings>

WHERE yan tümce, tahmin sorgu tarafından döndürülen sonuçlar filtreleri:

WHERE <where clause, boolean expression,>

Kod son ve isteğe bağlı satır, sütun sonuçlar tarafından sipariş belirtir:

ORDER BY <expression> [DESC|ASC]

ORDER BY the TOP ile birlikte kullanın: <sayı> deyim, döndürülen sonuçlarını süzmek için. Örneğin, bu tahmin doğru bir tahmini olasılığı tarafından sipariş edilen üst on bisikleti alıcılar, döndürecektir.Sonuçların görüntüleneceği sırayı denetlemek için [DESC|ASC] sözdizimi'ni kullanabilirsiniz.

Bir Toplu iş tahmin sorgu oluşturmak için

  1. Içinde Nesne Explorer örneğini sağ tıklatın.Analysis Services, işaret Yeni bir sorgu sonra'ı tıklatındmx.

    Sorgu Düzenleyicisi açılır ve yeni, boş bir sorgu içeriyor.

  2. Genel örnek toplu kopyalama deyim boş sorgu içine.

  3. Aşağıdakileri yazın:

    <select list> 
    

    ile:

    SELECT
      TOP 10
      t.[LastName],
      t.[FirstName],
      [Decision Tree].[Bike Buyer],
      PredictProbability([Bike Buyer])
    

    TOP 10, sorgu tarafından yalnızca en üst on sonuçlar döndürdü belirtir.Bu sorgu içinde ORDER BY deyim sonuçlar yalnızca on en olası sonuçlar verilmesi gereken doğru tahmin olasılığı göre sıralar.

  4. Aşağıdakileri yazın:

    [<mining model>] 
    

    ile:

    [Decision Tree]
    
  5. Aşağıdakileri yazın:

    OPENQUERY([<datasource>],'<SELECT statement>')
    

    ile:

      OPENQUERY([Adventure Works DW],
        'SELECT
          [LastName],
          [FirstName],
          [MaritalStatus],
          [Gender],
          [YearlyIncome],
          [TotalChildren],
          [NumberChildrenAtHome],
          [Education],
          [Occupation],
          [HouseOwnerFlag],
          [NumberCarsOwned]
        FROM
          [dbo].[ProspectiveBuyer]
        ') AS t
    
  6. Aşağıdakileri yazın:

    <ON clause, mapping,> 
    WHERE <where clause, boolean expression,>
    ORDER BY <expression>
    

    ile:

    [Decision Tree].[Marital Status] = t.[MaritalStatus] AND
      [Decision Tree].[Gender] = t.[Gender] AND
      [Decision Tree].[Yearly Income] = t.[YearlyIncome] AND
      [Decision Tree].[Total Children] = t.[TotalChildren] AND
      [Decision Tree].[Number Children At Home] = t.[NumberChildrenAtHome] AND
      [Decision Tree].[Education] = t.[Education] AND
      [Decision Tree].[Occupation] = t.[Occupation] AND
      [Decision Tree].[House Owner Flag] = t.[HouseOwnerFlag] AND
      [Decision Tree].[Number Cars Owned] = t.[NumberCarsOwned]
    WHERE [Decision Tree].[Bike Buyer] =1
    ORDER BY PredictProbability([Bike Buyer]) DESC
    

    Belirtin DESC Listenin ilk en yüksek olasılık sonuçlar için.

    Tamamlandı bildirimi şimdi aşağıdaki gibi olmalıdır:

    SELECT
      TOP 10
      t.[LastName],
      t.[FirstName],
      [Decision Tree].[Bike Buyer],
      PredictProbability([Bike Buyer])
    FROM
      [Decision Tree]
    PREDICTION JOIN
      OPENQUERY([Adventure Works DW],
        'SELECT
          [LastName],
          [FirstName],
          [MaritalStatus],
          [Gender],
          [YearlyIncome],
          [TotalChildren],
          [NumberChildrenAtHome],
          [Education],
          [Occupation],
          [HouseOwnerFlag],
          [NumberCarsOwned]
        FROM
          [dbo].[ProspectiveBuyer]
        ') AS t
    ON
      [Decision Tree].[Marital Status] = t.[MaritalStatus] AND
      [Decision Tree].[Gender] = t.[Gender] AND
      [Decision Tree].[Yearly Income] = t.[YearlyIncome] AND
      [Decision Tree].[Total Children] = t.[TotalChildren] AND
      [Decision Tree].[Number Children At Home] = t.[NumberChildrenAtHome] AND
      [Decision Tree].[Education] = t.[Education] AND
      [Decision Tree].[Occupation] = t.[Occupation] AND
      [Decision Tree].[House Owner Flag] = t.[HouseOwnerFlag] AND
      [Decision Tree].[Number Cars Owned] = t.[NumberCarsOwned]
    WHERE [Decision Tree].[Bike Buyer] =1
    ORDER BY PredictProbability([Bike Buyer]) DESC
    
  7. Üzerinde dosyasını arayın menüsünde tıklatın.DMXQuery1.dmx Farklı Kaydet.

  8. Içinde Farklı Kaydet iletişim kutusunda, uygun klasörü bulun ve dosyayı adıBatch_Prediction.dmx.

  9. Araç çubuðunda týklatýn yürütmek düğmesi.

    Sorgu, müşteri adları içeren bir tablo, her müşteri bir bisiklet ve öngörü olasılığını olup satınalma bir tahmin döndürür.

Son adımı Bike alıcı öğreticide budur.Artık elinizde bir küme benzerlikler, müşteriler arasında gezinmek ve olası müşterileri bir bisiklet satınalma olup olmadığını tahmin etmek için kullanabileceğiniz madenciliği modelleri.

Bir pazar Basket senaryosunda DMX kullanmayı öğrenmek için , bkz: Pazar Basket DMX Öğreticisi.