Przenośny format do analiz
Opracowany przez | Grupa eksploracji danych Jima Pivarskiego |
---|---|
Najnowsze wydanie | 0.8.1 10 listopada 2015 r |
Rodzaj formatu | Modelowanie predykcyjne |
Rozszerzony od | JSON |
Strona internetowa |
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.