Limbaj de marcare a modelului predictiv
PMML | |
---|---|
Extensie | .pmml |
Dezvoltat de | Data Mining Group (DMG) |
Formatul deschis ? | Da |
Limbajul de marcare a modelului predictiv ( PMML ) este un limbaj de marcare deschis bazat pe XML , dezvoltat de Data Mining Group (DMG), conceput pentru a permite descrierea modelelor de analiză predictivă care pot fi partajate între diferite sisteme și aplicații. PMML este un standard de facto , [1] [2] care a apărut în 1997.
Deoarece PMML este un standard bazat pe XML , specificațiile sunt XML Schema .
Componente PMML
PMML urmează o structură intuitivă pentru a descrie un model de extragere a datelor, fie el un model de rețea neuronală sau un model de regresie logistică .
Structura poate fi descrisă de următoarele componente: [3] [4]
- Antet : conține informații generale despre documentul PMML, cum ar fi informațiile referitoare la drepturile de autor ale modelului, descrierea acestuia și informații despre aplicația (numele și versiunea) utilizate pentru generarea acestuia. De asemenea, conține un atribut timestamp care poate fi utilizat pentru a specifica data creării modelului.
- Dicționar de date : conține definiții ale tuturor câmpurilor posibile utilizate de model. Aici câmpul este definit ca continuu, categoric sau ordinal (atribut optype). Evaluarea corectă a intervalului care este definit după tipul de date (cum ar fi șir și dublu) depinde de această definiție.
- Transformări de date : transformări care permit cartografierea datelor în diferite forme, pentru a fi utilizate de modelul minier. PMML definește cinci transformări:
- Normalizare: mapează valorile la numere, intrarea poate fi continuă sau discretă.
- Discretizare: mapează valorile continue în valori discrete.
- Cartografierea valorilor: mapează valorile discrete în valori discrete.
- Funcții: obțineți o valoare din aplicarea unei funcții cu unul sau mai mulți parametri.
- Agregare: utilizată pentru a sintetiza sau colecta grupuri de valori.
- Model : Conține definiția modelului de extragere a datelor. Rețeaua neuronală multistratificată este cea mai comună reprezentare a rețelei neuronale în aplicațiile actuale, care a câștigat popularitate datorită eficienței date de algoritmul de antrenament cunoscut sub numele de propagare înapoi . O rețea este reprezentată în PMML de un element „NeuralNetwork” care conține atribute precum:
- Numele modelului (atributul modelName)
- Numele funcției (atribut functionName)
- Numele algoritmului (atribut algorithmName)
- Funcția de activare (atribut activationFunction)
- Număr de straturi (atributul numberOfLayers)
Aceste informații sunt urmate de un copac care modelează straturile neuronale care specifică arhitectura modelului rețelei neuronale. Aceste atribute sunt NeuralInputs, NeuralLayer și NeuralOutputs. Alături de rețeaua neuronală, PMML permite reprezentarea altor tipuri de modele de extragere a datelor, cum ar fi: mașini de suport vector , reguli de asociere , clasificator bayesian , modele de grupare, modele de text, arbori de decizie și diferite modele de regresie.
- Schema minieră : schema minieră listează toate câmpurile utilizate în model. Acesta poate fi un subset al câmpurilor definite în dicționar. Conține informații specifice fiecărui câmp, cum ar fi:
- Nume (numele atributului): trebuie să se refere la un câmp de dicționar
- Tipul de utilizare (atribut usageType): definește modul în care este utilizat un câmp în model. De obicei, valorile sunt: active, prezise și suplimentare. Câmpurile prevăzute sunt acele valori întregi prezise de model.
- Tratament extrem (atribut outliers): definește tratamentele extreme care pot fi utilizate. În PMML, valorile aberante pot fi tratate ca valori lipsă, ca valori extreme (pe baza definiției valorii maxime și minime a câmpului particular sau lăsându-le neschimbate).
- Politica de înlocuire a valorii (atribut missingValueReplacement): dacă acest atribut este specificat după o valoare lipsă, acesta este înlocuit automat cu o valoare calculată.
- Tratament de valoare lipsă (atribut missingValueTreatment): indică modul în care este derivată valoarea de înlocuire (de exemplu, ca valoare, medie sau mediană).
- Ținte : permite post-procesarea valorilor prezise să efectueze operațiuni de scalare dacă ieșirea modelului este continuă. Țintele pot fi, de asemenea, utilizate pentru a clasifica sarcinile. În acest caz, atributul priorProbability specifică o probabilitate implicită pentru categoria țintă corespunzătoare. Se folosește dacă predicția logică nu produce un rezultat. Acest lucru se poate întâmpla, de exemplu, dacă lipsește o valoare de intrare și nu există nicio metodă de gestionare a valorilor lipsă.
- Ieșire : acest element poate fi folosit pentru a denumi toate câmpurile de ieșire dorite, așteptate de model. Caracteristicile câmpului prezis sunt de obicei valori prezise, probabilitate, afinitate cluster (pentru modele de clustering), eroare standard etc.
Istoria lansărilor
Versiune | Data de lansare |
---|---|
Versiunea 0.7 | Iulie 1997 |
Versiunea 0.9 | Iulie 1998 |
Versiunea 1.0 | August 1999 |
Versiunea 1.1 | August 2000 |
Versiunea 2.0 | August 2001 |
Versiunea 2.1 | Martie 2003 |
Versiunea 3.0 | Octombrie 2004 |
Versiunea 3.1 | Decembrie 2005 |
Versiunea 3.2 | Mai 2007 |
Versiunea 4.0 | Iunie 2009 |
Versiunea 4.1 | Decembrie 2011 |
Versiunea 4.2 | februarie 2014 |
Versiunea 4.2.1 | Martie 2015 |
Versiunea 4.3 | August 2016 |
Notă
- ^ Alex Guazzelli, Ce este PMML? , pe ibm.com , IBM developerWorks, 28 septembrie 2010. Accesat la 11 august 2013 .
- ^ Mark F. Hornick, Erik Marcadé, Sunil Venkayala, Java Data Mining: Strategy, Standard, and Practice , pe books.google.it , Morgan Kaufmann, 2010, 452-453, ISBN 978-0080495910 .
- ^ A. Guazzelli, M. Zeller, W. Chen și G. Williams. PMML: un standard deschis pentru partajarea modelelor . Jurnalul R , volumul 1/1, mai 2009.
- ^ A. Guazzelli, W. Lin, T. Jena (2010). PMML în acțiune: dezvăluirea puterii standardelor deschise pentru exploatarea datelor și analize predictive . CreateSpace.