Detyra MediaPipe Text Embedder ju lejon të krijoni një paraqitje numerike të të dhënave të tekstit për të kapur kuptimin e tij semantik. Ky funksionalitet përdoret shpesh për të krahasuar ngjashmërinë semantike të dy pjesëve të tekstit duke përdorur teknika krahasimi matematikore si ngjashmëria e kosinusit. Kjo detyrë funksionon në të dhënat e tekstit me një model të mësimit të makinerive (ML) dhe nxjerr një paraqitje numerike të të dhënave të tekstit si një listë e vektorëve të veçorive me dimensione të larta, të njohura edhe si vektorë të ngulitur, në formë me pikë lundruese ose të kuantizuar.
Filloni
Filloni ta përdorni këtë detyrë duke ndjekur një nga këto udhëzues zbatimi për platformën tuaj të synuar. Këta udhëzues specifikë të platformës ju përcjellin një zbatim bazë të kësaj detyre, duke përfshirë një model të rekomanduar dhe shembull kodi me opsionet e rekomanduara të konfigurimit:
- Android - Shembull kodi - Udhëzues
- Python - Shembull Kodi - Udhëzues
- Web - Shembull Kodi - Udhëzues
Detajet e detyrës
Ky seksion përshkruan aftësitë, hyrjet, daljet dhe opsionet e konfigurimit të kësaj detyre.
Veçoritë
- Përpunimi i tekstit të hyrjes - Mbështet tokenizimin jashtë grafikut për modelet pa tokenizimin në grafik.
- Përfshirja e llogaritjes së ngjashmërisë - Funksioni i integruar i ndihmës për të llogaritur ngjashmërinë e kosinusit midis dy vektorëve të veçorive.
- Kuantizimi - Mbështet kuantizimin skalar për vektorët e veçorive.
Hyrjet e detyrave | Rezultatet e detyrave |
---|---|
Teksti Embedder pranon llojin e mëposhtëm të të dhënave hyrëse:
| Teksti Embedder nxjerr një listë të përfshirjeve që përbëhet nga:
|
Opsionet e konfigurimeve
Kjo detyrë ka opsionet e mëposhtme të konfigurimit:
Emri i opsionit | Përshkrimi | Gama e vlerave | Vlera e paracaktuar |
---|---|---|---|
l2_normalize | Nëse do të normalizohet vektori i tipareve të kthyera me normën L2. Përdoreni këtë opsion vetëm nëse modeli nuk përmban tashmë një L2_NORMALIZATION TFLite Op. Në shumicën e rasteve, ky është tashmë rasti dhe normalizimi i L2 arrihet në këtë mënyrë përmes përfundimit të TFLite pa pasur nevojë për këtë opsion. | Boolean | False |
quantize | Nëse futja e kthyer duhet të kuantizohet në bajt nëpërmjet kuantizimit skalar. Përfshirjet supozohen në mënyrë implicite si njësi-normë dhe për këtë arsye çdo dimension është i garantuar të ketë një vlerë në [-1.0, 1.0]. Përdorni opsionin l2_normalize nëse nuk është kështu. | Boolean | False |
Modelet
Ne ofrojmë një model të paracaktuar, të rekomanduar kur filloni të zhvilloni këtë detyrë.
Modeli i koduesit universal të fjalive (rekomandohet)
Ky model përdor një arkitekturë të koduesit të dyfishtë dhe është trajnuar mbi grupe të ndryshme të të dhënave pyetje-përgjigje.
Merrni parasysh çiftet e mëposhtme të fjalive:
- ("është një udhëtim simpatik dhe shpesh me ndikim", "çfarë udhëtimi i madh dhe fantastik")
- ("Më pëlqen telefoni im", "E urrej telefonin tim")
- ("Ky restorant ka një mashtrim të madh", "Duhet të kontrollojmë dy herë detajet e planit tonë")
Përfshirjet e tekstit në dy çiftet e para do të kenë një ngjashmëri më të lartë kosinusi sesa futjet në çiftin e tretë, sepse dy palët e para të fjalive ndajnë një temë të përbashkët përkatësisht "ndjenja e udhëtimit" dhe "mendimi i telefonit", ndërsa çifti i tretë i fjalive po nuk ndajnë një temë të përbashkët.
Vini re se megjithëse dy fjalitë në çiftin e dytë kanë ndjenja të kundërta, ato kanë një rezultat të lartë ngjashmërie sepse ndajnë një temë të përbashkët.
Emri i modelit | Forma e hyrjes | Lloji i kuantizimit | Versionet |
---|---|---|---|
Koduesi universal i fjalive | varg, varg, varg | Asnjë (float32) | E fundit |
Standardet e detyrave
Këtu janë standardet e detyrave për të gjithë tubacionin bazuar në modelet e mësipërme të para-trajnuara. Rezultati i vonesës është vonesa mesatare në Pixel 6 duke përdorur CPU / GPU.
Emri i modelit | Vonesa e CPU-së | Vonesa e GPU-së |
---|---|---|
Koduesi universal i fjalive | 18.21 ms | - |