0 / 0
Go back to the English version of the documentation
Algoritmy pro přípravu dat prediktivních analýz SPSS v přenosných počítačích
Last updated: 06. 7. 2023
Algoritmy pro přípravu dat prediktivních analýz SPSS v přenosných počítačích

Popisovače poskytují efektivní výpočet statistik univariate a bivariate a automatických funkcí pro přípravu dat ve velkém měřítku. Lze jej použít široce v rámci profilování dat, zkoumání dat a přípravy dat pro následné analýzy modelování.

Mezi základní statistické funkce patří zásadní jednorozměrné a dvourozměrné statistické výkazy, jednorozměrné statistiky objednávek, vytváření informací metadat ze základních dat, statistické údaje pro vizualizaci jednotlivých polí a dvojic polí, funkce přípravy dat a vyhodnocení kvality údajů a vyhodnocení kvality údajů. Může efektivně podporovat funkčnost nezbytnou pro automatizované zpracování dat, interaktivitu uživatele a získání náhledu na data pro jednotlivá pole nebo relace mezi dvojicemi polí včetně uvedeného cíle.

Příklad kódu produktu Python :

from spss.ml.datapreparation.descriptives import Descriptives

de = Descriptives(). \
    setInputFieldsList(["Field1", "Field2"]). \
    setTargetFieldList(["Field3"]). \
    setTrimBlanks("TRIM_BOTH")

deModel = de.fit(df)

PMML = deModel.toPMML()
statXML = deModel.statXML()

predictions = deModel.transform(df)
predictions.show()

Výsledková strategie výběru

Je-li počet dvojic polí příliš velký (například větší než výchozí hodnota 1000), použije se volba SelectionStrategy k omezení počtu párů, pro které budou vypočteny statistiky bivariate. Tato strategie zahrnuje dva kroky:

  1. Omezte počet dvojic na základě statistiky univariate.
  2. Omezte počet dvojic na základě statistiky bivariate přidružení jádra.

Všimněte si, že dvojice bude vždy zahrnuta za následujících podmínek:

  1. Dvojice se skládá z pole prediktoru a cílového pole.
  2. Je vyžadována dvojice predikátů nebo cílů.

Předběžné zpracování inteligentního zpracování dat

Stroj SDP (Smart Data Preprocessing) je analytická komponenta pro přípravu dat. Skládá se ze tří samostatných modulů: analýza relevantnosti, analýza relevantnosti a redundance a integrace inteligentních metadat (SMD).

Vzhledem k datům, která obsahují běžná pole, pole seznamu a pole mapování, analýza relevance vyhodnocuje přidružení vstupních polí s cíli a vybere určený počet polí pro následnou analýzu. Mezitím se rozbalí pole seznamu a pole mapy a extrahuje vybraná pole do běžného formátu sloupce.

Vzhledem k účinnosti analýzy relevantnosti se také používá ke snížení velkého počtu polí v rozsáhlých datech na střední úroveň, kde mohou tradiční analýzy pracovat.

Analýza SmartDataPreprocessingRelevanceexportuje tyto výstupy:

  • soubor JSON, obsahující informace o modelu
  • nová data založená na sloupcích
  • související datový model

Příklad kódu produktu Python :

from spss.ml.datapreparation.smartdatapreprocessing import SmartDataPreprocessingRelevanceAnalysis

sdpRA = SmartDataPreprocessingRelevanceAnalysis(). \
    setInputFieldList(["holderage", "vehicleage", "claimamt"]). \
    setTargetFieldList(["vehiclegroup", "nclaims"]). \
    setMaxNumTarget(3). \
    setInvalidPairsThresEnabled(True). \
    setRMSSEThresEnabled(True). \
    setAbsVariCoefThresEnabled(True). \
    setInvalidPairsThreshold(0.7). \
    setRMSSEThreshold(0.7). \
    setAbsVariCoefThreshold(0.05). \
    setMaxNumSelFields(2). \
    setConCatRatio(0.3). \
    setFilterSelFields(True)

predictions = sdpRA.transform(data)
predictions.show()

Převod dat-Konvertor dat

Řídký převodník dat (SDC) převádí běžná datová pole do polí seznamu. Potřebujete pouze uvést pole, která chcete převést na pole seznamu, pak SDC sloučí pole podle jejich úrovně měření. Bude generovat nanejvýš tři druhy polí seznamu: spojité pole seznamu, pole kategoriálního seznamu a pole mapy.

Příklad kódu produktu Python :

from spss.ml.datapreparation.sparsedataconverter import SparseDataConverter

sdc = SparseDataConverter(). \
    setInputFieldList(["Age", "Sex", "Marriage", "BP", "Cholesterol", "Na", "K", "Drug"])
predictions = sdc.transform(data)
predictions.show()

Fixování

Tuto funkci můžete použít k odvození jednoho nebo více nových sloučených polí nebo k získání definic zásobníku, které se používají k určení hodnot zásobníku.

Příklad kódu produktu Python :

from spss.ml.datapreparation.binning.binning import Binning

binDefinition = BinDefinitions(1, False, True, True, [CutPoint(50.0, False)])
binField = BinRequest("integer_field", "integer_bin", binDefinition, None)

params = [binField]
bining = Binning().setBinRequestsParam(params)

outputDF = bining.transform(inputDF)

Hexadecimální ukotvení

Tuto funkci můžete použít k výpočtu a přiřazení šestihranných zásobníků ke dvěma polím.

Příklad kódu produktu Python :

from spss.ml.datapreparation.binning.hexbinning import HexBinning
from spss.ml.param.binningsettings import HexBinningSetting

params = [HexBinningSetting("field1_out", "field1", 5, -1.0, 25.0, 5.0),
          HexBinningSetting("field2_out", "field2", 5, -1.0, 25.0, 5.0)]

hexBinning = HexBinning().setHexBinRequestsParam(params)
outputDF = hexBinning.transform(inputDF)

Komplexní odběr vzorků

Funkce complexSampling vybere pseudo-náhodný vzorek záznamů ze zdroje dat.

Funkce complexSampling provádí stratifikovaný odběr vzorků příchozích dat s použitím jednoduchého přesného odběru vzorků a prostého proporcionálního odběru vzorků. Stratifikační pole jsou uvedena jako vstupní a vzorkovací poměr nebo poměr odběru vzorků pro každou vrstvu, která má být vzorkována, musejí být rovněž poskytnuty. Volitelně mohou být pro zlepšení výkonu poskytnuty počty záznamů pro každou vrstvu.

Příklad kódu produktu Python :

from spss.ml.datapreparation.sampling.complexsampling import ComplexSampling
from spss.ml.datapreparation.params.sampling import RealStrata, Strata, Stratification

transformer = ComplexSampling(). \
    setRandomSeed(123444). \
    setRepeatable(True). \
    setStratification(Stratification(["real_field"], [
    Strata(key=[RealStrata(11.1)], samplingCount=25),
    Strata(key=[RealStrata(2.4)], samplingCount=40),
    Strata(key=[RealStrata(12.9)], samplingRatio=0.5)])). \
    setFrequencyField("frequency_field")

sampled = transformer.transform(unionDF)

Počet a ukázka

Ukázková funkce countAndvytvoří pseudo-náhodný vzorek o velikosti přibližně rovnající se vstupu 'samplingCount'.

Vzorkování se provádí voláním metody SamplingComponent s poměrem vzorkování, který je vypočten jako 'samplingCount / totalRecords', kde 'totalRecords' je počet záznamů příchozích dat.

Příklad kódu produktu Python :

from spss.ml.datapreparation.sampling.countandsample import CountAndSample

transformer = CountAndSample().setSamplingCount(20000).setRandomSeed(123)
sampled = transformer.transform(unionDF)

Odběr vzorků MR

Funkce mrvzorkování vybere pseudo-náhodný vzorek záznamů ze zdroje dat s uvedeným vzorkovým poměrem. Velikost vzorku bude přibližně stanovená proporce celkového počtu záznamů, které jsou předmětem nepovinného maxima. Sada záznamů a jejich celkový počet se bude lišit s náhodným počátečním semenem. Každý záznam ve zdroji dat má stejnou pravděpodobnost, že bude vybrána.

Příklad kódu produktu Python :

from spss.ml.datapreparation.sampling.mrsampling import MRSampling

transformer = MRSampling().setSamplingRatio(0.5).setRandomSeed(123).setDiscard(True)
sampled  = transformer.transform(unionDF)

Vzorkovací model

Funkce samplingModel vybere pseudo-náhodné procento podposloupnosti vstupních záznamů definovaných každý Ntý záznam pro danou velikost kroku N. Celková velikost vzorku může být volitelně omezena maximem.

Je-li velikost kroku 1, podposloupnost je celá posloupnost vstupních záznamů. Je-li poměr vzorkování 1.0, výběr bude deterministický, nikoli pseudo-náhodný.

Všimněte si, že s distribuovanými daty funkce samplingModel používá kritéria výběru nezávisle na každém rozdělení dat. Maximální velikost vzorku, je-li k dispozici, se aplikuje nezávisle na každém rozdělení a ne na celý zdroj dat; dílčí sekvence se spustí svěží při začátku každého rozdělení.

Příklad kódu produktu Python :

from spss.ml.datapreparation.sampling.samplingcomponent import SamplingModel

transformer = SamplingModel().setSamplingRatio(1.0).setSamplingStep(2).setRandomSeed(123).setDiscard(False)
sampled = transformer.transform(unionDF)

Postupné vzorkování

Funkce sequentialSampling je podobná funkci samplingModel . Také vybírá pseudo-náhodnou procentní část podposloupnosti vstupních záznamů definovaných každý Ntý záznam pro danou velikost kroku N. Celková velikost vzorku může být volitelně omezena maximem.

Je-li velikost kroku 1, podposloupnost je celá posloupnost vstupních záznamů. Je-li poměr vzorkování 1.0, výběr bude deterministický, nikoli pseudo-náhodný. Hlavní rozdíl mezi sequentialSampling a samplingModel je s distribuovanými daty, funkce sequentialSampling použije kritéria výběru na celý zdroj dat, zatímco funkce samplingModel používá kritéria výběru nezávisle na každém rozdělení dat.

Příklad kódu produktu Python :

from spss.ml.datapreparation.sampling.samplingcomponent import SequentialSampling

transformer = SequentialSampling().setSamplingRatio(1.0).setSamplingStep(2).setRandomSeed(123).setDiscard(False)
sampled = transformer.transform(unionDF)

Nadřízené téma: Algoritmy prediktivních analýz produktuSPSS

Generative AI search and answer
These answers are generated by a large language model in watsonx.ai based on content from the product documentation. Learn more