Apache-säätiö on lisännyt luetteloonsa uuden koneoppimisprojektin, Apache PredictionIO, avoimen version projektista, jonka alun perin suunnitteli Salesforcen tytäryhtiö.
Mitä PredictionIO tekee koneoppimiseen ja Sparkiin
Apache PredictionIO on rakennettu Sparkin ja Hadoopin päälle ja palvelee Spark-pohjaisia ennusteita tiedoista käyttämällä mukautettavia malleja yleisiin tehtäviin. Sovellukset lähettävät tietoja PredictionIO: n tapahtumapalvelimelle mallin kouluttamiseksi ja kysyvät sitten moottorilta mallin mukaiset ennusteet.
Spark, MLlib, HBase, Spray ja Elasticsearch ovat kaikki mukana PredictionIO: ssa, ja Apache tarjoaa tuettuja SDK: ita Java-, PHP-, Python- ja Ruby-työskentelyyn. Tiedot voidaan tallentaa useisiin taustapuoliin: JDBC, Elasticsearch, HBase, HDFS, ja niiden paikallisia tiedostojärjestelmiä tuetaan heti laatikosta. Takapäät ovat liitettävissä, joten kehittäjä voi luoda mukautetun taustaliittimen.
Kuinka PredictionIO-mallit helpottavat Sparkin ennusteiden tarjoamista
PredictionIO: n merkittävin etu on sen mallijärjestelmä koneoppimisen moottoreiden luomiseen. Mallit vähentävät raskaita nostoja, joita tarvitaan järjestelmän asettamiseen palvelemaan erityyppisiä ennusteita. Ne kuvaavat mahdollisia kolmansien osapuolten riippuvuuksia, joita työ saattaa tarvita, kuten Apache Mahout-koneoppimissovelluskehys.
Joitakin olemassa olevia malleja ovat:
- Yleinen suositusmoottori.
- Tekstiluokittelu.
- Selviytymisanalyysi (epäonnistumisen ennusteiden välillä).
- Aiheiden merkitseminen käyttämällä Wikipediaa tietopohjana.
- Samankaltaisuusanalyysi.
Jotkut mallit integroituvat myös muihin koneoppimistuotteisiin. Esimerkiksi kahdessa PredictionIO: n galleriassa tällä hetkellä olevasta ennustusmallista, kuorman nopeuden havaitsemiseen ja yleisiin suosituksiin, käytä H2O.ai: n Sparkling Water -parannuksia.
PredictionIO voi myös automaattisesti arvioida ennustusmoottorin määrittääkseen parhaat hyperparametrit sen kanssa. Kehittäjän on valittava ja asetettava mittareita, miten tämä tehdään, mutta tähän liittyy yleensä vähemmän työtä kuin hyperparametrien virittämiseen käsin.
Kun palvelu suoritetaan, PredictionIO voi hyväksyä ennusteet yksin tai eränä. Eräennusteet ennustetaan automaattisesti rinnakkain Spark-klusterin kanssa, kunhan eräennustustyössä käytetyt algoritmit ovat kaikki sarjoitettavissa. (PredictionIO: n oletusalgoritmit ovat.)
Mistä ladata PredictionIO
PredictionIO: n lähdekoodi on saatavilla GitHubissa. Mukavuuden vuoksi saatavilla on erilaisia Docker-kuvia sekä Heroku-rakennepaketti.