Koneoppimisjärjestelmän TensorFlow 2.0 julkaisu

Lähettäjä koneoppimisalustan merkittävä julkaisu TensorFlow 2.0, joka tarjoaa valmiita toteutuksia erilaisille syvälle koneoppimisalgoritmeille, yksinkertaisen ohjelmointirajapinnan mallien rakentamiseen Pythonissa sekä matalan tason rajapinnan C++-kielelle, jonka avulla voit ohjata laskennallisten graafien rakentamista ja suorittamista. Järjestelmäkoodi on kirjoitettu C++:lla ja Pythonilla ja jakelija Apache-lisenssillä.

Alustan on alun perin kehittänyt Google Brain -tiimi, ja sitä käytetään Googlen palveluissa puheentunnistukseen, valokuvien kasvojen tunnistamiseen, kuvien samankaltaisuuden määrittämiseen, roskapostin suodattamiseen Gmailista, valinta uutiset Google-uutisissa ja käännösten järjestäminen merkityksen mukaan. Hajautettuja koneoppimisjärjestelmiä voidaan luoda vakiolaitteistolla TensorFlown sisäänrakennetun tuen ansiosta, joka mahdollistaa laskelmien jakamisen useille prosessoreille tai GPU:ille.

TensorFlow tarjoaa kirjaston valmiita numeerisia laskentaalgoritmeja, jotka on toteutettu tietovirtakaavioiden avulla. Tällaisten graafien solmut toteuttavat matemaattisia operaatioita tai syöttö-/tulostuspisteitä, kun taas graafin reunat edustavat moniulotteisia datataulukoita (tensoreja), jotka virtaavat solmujen välillä.
Solmuja voidaan kohdistaa laskentalaitteisiin ja suorittaa asynkronisesti, samanaikaisesti prosessoimalla kaikki niille sopivat teoreet kerralla, mikä mahdollistaa solmujen samanaikaisen toiminnan järjestämisen hermoverkossa analogisesti aivojen neuronien samanaikaisen aktivoitumisen kanssa.

Uuden version valmistelussa pääpaino oli yksinkertaistamisessa ja helppokäyttöisyydessä. Jotkut innovaatioita:

  • Mallien rakentamiseen ja koulutukseen on ehdotettu uutta korkean tason APIa Keras, joka tarjoaa useita käyttöliittymävaihtoehtoja rakennusmalleille (Sequential, Functional, Subclassing) ja mahdollistaa välitön täytäntöönpano (ilman esikääntämistä) ja yksinkertaisella virheenkorjausmekanismilla;
  • Lisätty API tf.distribute.Strategy järjestämistä varten hajautettua oppimista malleja, joissa on vähän muutoksia olemassa olevaan koodiin. Laskelmien hajauttamisen lisäksi mahdollisuus useita GPU:ita, kokeellinen tuki on saatavilla oppimisprosessin jakamiseen useisiin itsenäisiin prosessoreihin ja pilven käyttömahdollisuuteen TPU (Tensorin käsittely-yksikkö);
  • Deklaratiivisen mallin sijaan graafin rakentamiseksi tf.Sessionin kautta suoritettavan graafin avulla Pythonissa on mahdollista kirjoittaa tavallisia funktioita, jotka tf.funktion kutsun avulla voidaan muuntaa kaavioiksi ja sitten suorittaa etänä, serialisoida tai optimoida. parantaa suorituskykyä;
  • Kääntäjä lisätty AutoGraph, joka muuntaa Python-komentovirran TensorFlow-lausekkeiksi, jolloin Python-koodia voidaan käyttää funktioissa tf.function-decorated, tf.data, tf.distribute ja tf.keras;
  • SavedModel yhdistää mallinvaihtomuodon ja lisää tuen mallin tilojen tallentamiseen ja palauttamiseen. TensorFlow'lle koottuja malleja voidaan nyt käyttää TensorFlow Lite (mobiililaitteissa), TensorFlow JS (selaimessa tai Node.js:ssa), TensorFlow-tarjoilu и TensorFlow -napa;
  • tf.train.Optimizers- ja tf.keras.Optimizers-sovellusliittymät on yhtenäistetty; compute_gradients-arvon sijaan on ehdotettu uutta luokkaa gradienttien laskemiseen Gradienttinauha;
  • Merkittävästi parantunut suorituskyky GPU:ta käytettäessä.
    Mallin koulutuksen nopeus järjestelmissä, joissa on NVIDIA Volta ja Turing GPU:t, on noussut jopa kolme kertaa;

  • Suoritettu Suuri API-siivous, monet kutsut nimettiin uudelleen tai poistettu, tuki globaalien muuttujien tukimenetelmissä lopetettiin. Kohteiden tf.app, tf.flags ja tf.logging sijaan ehdotetaan uutta absl-py APIa. Jotta voit jatkaa vanhan API:n käyttöä, compat.v1-moduuli on valmisteltu.

Lähde: opennet.ru

Lisää kommentti