Przenośny format do analiz

PFA Logo-200x200.png
Przenośny format do analiz
PFA Logo-200x200.png
Opracowany przez Grupa eksploracji danych Jima Pivarskiego
Najnowsze wydanie

0.8.1 10 listopada 2015 r .; 7 lat temu ( 2015-11-10 )
Rodzaj formatu Modelowanie predykcyjne
Rozszerzony od JSON
Strona internetowa dmg .org /pfa /

Portable Format for Analytics ( PFA ) to format wymiany modeli predykcyjnych oparty na formacie JSON , opracowany i opracowany przez Jima Pivarskiego. [ potrzebne źródło ] PFA umożliwia aplikacjom analitycznym opisywanie i wymianę modeli predykcyjnych generowanych przez algorytmy analityczne i uczenia maszynowego . Obsługuje popularne modele, takie jak regresja logistyczna i drzewa decyzyjne . Wersja 0.8 została opublikowana w 2015 roku. Kolejne wersje zostały opracowane przez Data Mining Group.

Jako format wymiany modeli predykcyjnych opracowany przez Data Mining Group, PFA stanowi uzupełnienie standardu DMG opartego na języku XML, zwanego Predictive Model Markup Language lub PMML .

Historia wydań

Wersja Data wydania
Wersja 0.8.1 Listopad 2015

Grupa eksploracji danych

Data Mining Group to konsorcjum zarządzane przez Center for Computational Science Research, Inc., organizację non-profit założoną w 2008 roku.

Przykłady

  • odwróć tablicę:
 # odwróć tablicę wejściową podwójnej wartości wejście: {"type": "array", "items": "double"} wyjście: {"type": "array", "items": "double"} akcja: - niech: { x : wejście} - niech: { z : wejście} - niech: { l : {a.len: [x]}} - niech: { i : l} - póki : { ">=" : [i ,0]} wykonaj: - ustaw: {z: {attr: z, ścieżka: [i] , to: {attr: x, ścieżka: [ {"-":[{"-" : [l,i]} ,1]}] } } } - set : {i : {-:[i,1]}} - z 
  • Sortowanie bąbelkowe
 wejście: {"type": "tablica", "items": "double"} wyjście: {"type": "tablica", "items": "double"} akcja: - niech: { A: wejście} - niech : { N : {a.len: [A]}} - niech: { n : {-:[N,1]}} - niech: { i : 0} - niech: { s : 0,0} - póki : { ">=" : [n,0]} wykonaj : - ustaw : { i : 0 } - while : { "<=" : [i,{-:[n,1]}]} wykonaj : - if: { ">": [ {attr: A, ścieżka: [i]} , {attr: A, ścieżka:[{+:[i,1]}]} ]} następnie: - set: {s: {attr: A , ścieżka: [i]}} - ustaw : {A : {attr: A, ścieżka: [i], to: {attr: A, ścieżka:[{+:[i,1]}]} } } - ustaw : {A : {attr: A, ścieżka: [{+:[i,1]}], do: s }} - set : {i : {+:[i,1]}} - set : {n : {-:[n,1]}} – A 

Wdrożenia

  • Hadrian (Java/Scala/JVM) — Hadrian to kompletna implementacja PFA w Scali, do której można uzyskać dostęp za pośrednictwem dowolnego języka JVM, głównie Java. Koncentruje się na wdrażaniu modeli, dzięki czemu jest elastyczny (może działać w ograniczonych środowiskach) i szybki.
  • Titus (Python 2.x) - Titus to kompletna, niezależna implementacja PFA w czystym Pythonie. Koncentruje się na opracowywaniu modeli, dlatego oprócz wykonywania w czasie wykonywania obejmuje producentów modeli i narzędzia do manipulacji PFA. Obecnie działa dla Pythona 2.
  • Titus 2 (Python 3.x) - Titus 2 to fork Titusa, który obsługuje implementację PFA dla Pythona 3.
  • Aurelius (R) - Aurelius to zestaw narzędzi do generowania PFA w języku programowania R. Koncentruje się na przenoszeniu modeli do PFA z ich odpowiedników w języku R. Aby sprawdzić lub uruchomić silniki scoringowe, Aurelius wysyła je do Titusa za pośrednictwem rPythona (więc oba muszą być zainstalowane).
  • Antinous (rozwój modelu w Jython) - Antinous to wtyczka do tworzenia modeli dla Hadriana, która umożliwia wykonanie kodu Jython w dowolnym miejscu, w którym działa silnik punktacji PFA. Posiada również bibliotekę algorytmów tworzenia modeli.

Linki zewnętrzne