O metoda pentru codificarea unui set de date de documente text intr-un formular care, atunci cand este reglat cu GPT-2 OpenAI, reteaua va putea genera text referitor la cuvintele cheie specificate (desi textul codificat poate functiona teoretic cu orice tip de neuronal bazat pe text generarea retelei, utilizeaza orizontul lung al GPT-2 si abilitatile puternice de context).
Puteti demonstra rezultatele cu un exemplu despre cum sa utilizati scriptul in folderul de exemplu. In plus, puteti juca singur cu cuvinte cheie cu Reddit GPT-2 API (GitHub) sau puteti citi exemple pregenerate ale acelui model bazat pe cuvinte cheie pe / r / legaladvice.
Codificarea este tokenizata utilizand spaCy pentru o tokenizare mai robusta a cuvintelor cheie si paralelizata utilizand ray pentru a accelera masiv codarea pe seturi de date mari (aproximativ 11x accelerarea folosind 32 vCPU / thread-uri vs. single threaded, la 70% utilizare CPU)
Utilizare
Aceasta repoare contine un script keyword_encode.py care incearca sa extraga cuvintele cheie intr-un mod nesupravegheat (desi puteti furniza propriile cuvinte cheie daca le aveti). Metodologia este urmatoarea pentru fiecare document text:
- Extrageti cuvintele cheie din fiecare document ca „cuvinte cheie” folosind spaCy, care simbolizeaza atat cuvintele cheie, cat si eticheteaza partile lor de vorbire.
- Sunt extrase doar substantive, verbe, adjective si adverbe. Substantivele folosesc versiunea bruta a cuvantului (pentru cea mai buna experienta a utilizatorului atunci cand le introduc manual), in timp ce celelalte POS utilizeaza versiunile lematizate (pentru a reduce supraadaptarea, dar totusi furniza informatii).
- Substantivele proprii, entitatile denumite si substantivele compuse sunt considerate ca fiind propriul lor cuvant cheie.
- Pronumele si cuvintele stop sunt excluse din cuvintele cheie.
- Cuvintele cheie sunt deduse.
- Pregatiti cuvintele cheie in asa fel incat textul documentului sa fie generat conditionat de cuvintele cheie.
- Normalizati cuvintele cheie (inlocuiti spatiile / punctuatia cu liniute). Cuvintele cheie nu sunt normalizate intre majuscule si minuscule pentru a oferi cea mai buna experienta de utilizare la specificarea cuvintelor cheie.
- Amestecati ordinea cuvintelor cheie pentru a impiedica GPT-2 sa insele si sa invete cand ordinea cuvintelor cheie ar trebui sa fie scrisa in documentul corespunzator.
- Pentru fiecare set de cuvinte cheie procesate dintr-un document, creati combinatii aleatorii repetate (implicit: 3) ale cuvintelor cheie. Aceasta serveste ca un fel de marire a datelor si impiedica modelul sa se suprapuna cu un anumit set de cuvinte cheie.
abuelas por el culo folladas peludas
hermanos españoles follando nenas peludas
porno españa casero sol sanchez actriz porno
pirno pilladas sin bragas
porno gay castellano sione cooper
pajas trans jovencita caliente
hombres corriendose viejas calientes
viejas en orgias porno comic español
xxx abuelas videos porno peruano
porno esp porno gay guarro
jolla pr shakira follando
coñosxxx maduras españolas anal
maduras españolas camara oculta sexo gratis incesto
esposas compartidas enanas porno
tetonas en español tetas puntiagudas
tias cachondas follando española
tetas puntiagudas pormo
peliculas eroticas gratis pajas en coche
zoofila trio amateur español
incesto italiano porno videos caserosxxx - Pentru fiecare combinatie de mai sus, selectati un numar aleatoriu de pana la max_keywords (implicit: 3), care sunt apoi amestecate, pentru a impiedica reteaua neuronala a) sa invete numarul de cuvinte cheie ca indiciu pentru lungimea textului si b) ordinea cuvintelor cheie in textul rezultat.
- Scrieti cuvintele cheie, apoi documentul pentru fiecare set generat de cuvinte cheie.
- Documentele sunt procesate in loturi cu ray; dupa ce fiecare lot este codificat, lotul este amestecat inainte de a scrie pentru a reduce scurgerile.
Cazul implicit (trecerea unui CSV de titluri) genereaza cuvinte cheie si genereaza un .txt de cuvinte cheie si titluri.
Scriptul keyword_decode.py contine functii pentru decodarea textelor codificate generate in bloc (de exemplu, generate prin gpt-2-simple, desi trunchierea nativa este recomandata in acest caz de utilizare). decode_texts () va extrage textul din fiecare sectiune taxonomica specificata pentru lista furnizata de texte, iar decode_file () poate extrage si decoda toate textele si scrie intr-un fisier.
Taxonomie
Acest script este, de asemenea, capabil sa gestioneze conditii ierarhice suplimentare. Acest script are 4 posibilitati totale implementate: categorie, cuvinte cheie, titlu si corp.
categoria este cel mai larg domeniu de aplicare al unui text dat. (de exemplu, subreditarea unei postari date, vorbitorul unei fraze date daca se foloseste pentru chatbots)
body este utilizat daca exista o cantitate mare de text dependent de titlu (de exemplu, o postare pe blog).
Consultati codul pentru mai multe informatii.
Note utile
- Nu exista o baza matematica / teetica explicita in spatele cuvintelor cheie, in afara de degradarea tipica a textului; in ciuda acestui fapt, rezultatele sunt bune si inca mai este loc de imbunatatit!
- Cuvintele cheie nu vor fi prezente in textul rezultat 100% din timp, dar prezenta cuvintelor cheie in text este inca mare.
- Scopul documentului (documentelor) text plus cuvintele cheie trebuie sa se incadreze in domeniul de aplicare maxim 1023 simbol al GPT-2 (de exemplu, ar trebui sa fie doar cateva paragrafe max).
- Cuvintele cheie manuale pot functiona mai bine daca le aveti, pe care le puteti seta cu parametrul keywords_field pe encode_keywords ().
- Ar trebui sa existe o cantitate egala din toate documentele de categorie unica pentru a preveni partinirea esantionarii.
- Delimetrele sunt alese ca fiind caractere ASCII unice, mai putin frecvente, care sunt relativ putin probabil sa fie utilizate oriunde altundeva, astfel incat reteaua sa invete in mod explicit semnificatia acestor caractere. (vezi Wired and Stack Overflow pe caracterul rar). S-ar putea sa fie mai bine in viitor sa se bazeze delimitatorii pe GPT-2 BPE, dar acest lucru este mai putin robust.
- Puteti utiliza mai mult decat cuvinte cheie max_keywords atunci cand generati dintr-un model cu GPT-2, desi rezultatele vor varia.
Intretinator / Creator
Max Woolf (@minimaxir)
Proiectele open-source ale lui Max sunt sustinute de Patreon. Daca vi s-a parut util acest proiect, orice contributie monetara la Patreon este apreciata si va fi folosita in mod creativ.
Licenta
MIT
Declinare de responsabilitate
Aceasta repo nu are nicio afiliere sau relatie cu OpenAI.








