Testare GPT2 in Google Colab

Categorii: AI, Programare

03-Feb-2021 15:04 - 1781 vizionari

Google ofera resurse gratuite de calcul in Google Colab pentru studenti, savanti, cercetatori, programatori in domeniul inteligentei artificiale, …

De ceva timp testez puterea de calcul oferita gratuit de Google in cateva proiecte AI cu BERT si GPT2.

Documentul editat in Google Colab contine cod care se executa intr-o masina virtuala din reteaua Google si rezultatul imi apare pe calculatorul personal.

Practic profit de resursele Google sa imi testez aplicatiile care necesita multa viteza de calcul si multa memorie si care nu pot sa ruleze pe calculatorul personal. Google Colab este un fel de JupyterLab executat in reteaua Google.

O masina virtuala Google Colab: Tesla P100 GPU cu14-16 giga RAM si harddisk de 70 giga:

Tesla P100 GPU cu masina virtuala de 14-16 giga RAM si harddisk de 70 giga

Bineinteles ca odata (din greseala) am epuizat resursele de calcul incarcand in memorie un model AI de 6.55 giga (modelul numit ctrl):

(Modelele AI testate pana acum aveau 13 mega (google/electra-small-generator), 104 mega (bert-base-uncased)  si cel mult 1.5 giga (bert-large-uncased) = marime folder cu definitiile retelei neuronale, si toate se descurcau aproape perfect in 8 giga de RAM.)

Your session crashed after using all available RAM 

De cele mai multe ori am nimerit Tesla K80 (costa $500) sau Tesla P100 GPU (costa $2800) ca placa grafica, dar acum am avut acces la Tesla T4, o placa de $2400.

Collab - Linux cu Tesla T4

Am gasit un exemplu foarte interesant in care modelul GPT2 se antreneaza pentru generarea de texte prelucrand toate textele dintr-o limba anume oferite de Wikipedia.

Initial am testat programul de prelucrare texte in GPT2 pe calculatorul de acasa, un laptop cu procesor I5 de 5W si 8 giga de RAM, adica un sistem de calcul excelent pentru programare in general, dar nepotrivit pentru aplicatii de inteligenta artificiala:

2000 de fisiere in 10 epoch = 184484 secunde  = 51 ore

Prelucrarea a 2000 de fisiere in 10 repetitii (epoch) a durat 184484 secunde, adica 51 de ore.

In Google Colab pot executa documentul timp de cel mult 12 ore si la finalul celor 12 ore (sau mai repede daca nu se executa calcule) pierd tot, asa ca trebuie sa planific calculul (antrenarea sau invatarea AI), apoi salvarea modelului AI pe hard diskul masinii virtuale urmata de copierea lui pe Google Drive. Documentul Google Colab se deconecteaza (si se pierd toata datele calculate, dar nu si documentul Colab) daca nu este folosita puterea de calcul din motive de eficienta: multi utilizatori sunt conectati si profita de resursele Google si este un mare pacat sa fiu conectat si sa tin sistemul ocupat fara sa-l folosesc.

Asa ca am rulat, timp de cateva ore si cu multa atentie, calculele in Google Colab si am obtinut prelucrarea a 1000 de fisiere in 10 repetitii in 2661 secunde = 0.74 ore.

1000 de fisiere in 10 epoch = 2661 secunde = 0.74 ore

Rezulta ca laptopul meu este de 35 de ori mai lent decat Google Colab.

Salvarea modelului pe disk si Google Drive:

colab06

Solutia de salvare model pe harddisk si copiere in Google Drive o am dintr-un film:

Si documentul Google Collab asociat cu prezentarea din film este aici.

Am multe teste cu generatoare de text in BERT si GPT2, dar nici unul nu merita publicat pentru ca mai am multe de invatat.


Ultimele pagini: RSS

Alte adrese de Internet

Categorii

Istoric


Atentie: Continutul acestui server reprezinta ideile mele si acestea pot fi gresite.