PredictFromModel
Retourneert de voorspelde waarde van een getraind regressiemodel voor de opgegeven tekstinsluitvector.
Opmaak
PredictFromModel ( modelName ; v1 )
Parameters
modelName
- een tekstexpressie die de naam aangeeft van een getraind regressiemodel dat in het geheugen is geladen.
v1
- een tekstexpressie, veld of containerveld dat de invoerfuncties voor voorspelling bevat. Kan worden geleverd als een JSON-array (bijvoorbeeld [1.2, 3.4, 5.6]
) of als binaire containergegevens die insluitvectoren bevatten.
Resulterend gegevenstype
getal
Afkomstig uit versie
22.0
Beschrijving
PredictFromModel genereert numerieke voorspellingen met regressiemodellen die zijn getraind en geladen met de Regressiemodel configureren scriptstap. De functie gebruikt invoerfuncties (wat insluitvectoren kunnen zijn) en retourneert een enkele numerieke voorspelling op basis van de patronen die zijn afgeleid tijdens de modeltraining.
Voordat u deze functie gebruikt, moet u:
-
Een regressiemodel trainen met behulp van de Regressiemodel configureren scriptstap.
-
Controleren of het model in het geheugen is geladen. Modellen blijven geladen totdat het laden expliciet wordt geannuleerd of de FileMaker-sessie wordt beëindigd.
-
Invoerfuncties bieden die overeenkomen met dezelfde structuur en dimensionaliteit als de trainingsgegevens die zijn gebruikt om het model te maken.
De parameter v1
accepteert invoerfuncties in twee indelingen:
-
Tekst met een JSON-matrix van numerieke waarden, zoals
[1.2, 3.4, 5.6, 7.8]
. Deze indeling is menselijk leesbaar en geschikt voor eenvoudige gebruiksscenario's. De JSON-array kan ook bestaan uit een insluitvector die door een AI-model is gegenereerd. -
Een insluitvector die is opgeslagen als binaire containergegevens. Deze indeling biedt doorgaans betere prestaties voor grootschalige bewerkingen en is de voorkeursindeling bij het werken met een insluitvector gegenereerd door een AI-model.
Opmerkingen
-
Invoerfuncties in
v1
moeten hetzelfde aantal dimensies hebben en in dezelfde volgorde staan als de trainingsgegevens die zijn gebruikt om het model te maken. -
Als u AI-modellen wilt gebruiken om insluitvectoren te genereren voor v1, kunt u de Insluiting invoegen scriptstap, Insluiting invoegen in gevonden reeks scriptstap gebruiken, of de GetEmbedding functie.
-
Het gebruik van binaire containergegevens voor insluitvectoren levert over het algemeen betere prestaties dan JSON-arrays, met name voor functievectoren met een hoge dimensie.
-
Modelnamen zijn hoofdlettergevoelig en moeten exact overeenkomen met de naam van het model dat is geladen met de Regressiemodel configureren scriptstap.
-
Modellen blijven in het geheugen totdat ze expliciet worden verwijderd, zodat meerdere voorspellingen efficiënt kunnen worden gedaan zonder opnieuw te laden.
-
De functie retourneert "?" als:
-
De opgegeven modelnaam bestaat niet of is momenteel niet in het geheugen geladen.
-
De invoerfuncties hebben onjuiste dimensies of een onjuiste indeling in vergelijking met de trainingsgegevens van het model.
-
Voorbeeld 1
Een expressie die een eenvoudige voorspelling maakt met behulp van het huisprijsmodel dat is getraind in Voorbeeld 1 in Regressiemodel configureren. De invoerfuncties zijn voor oppervlakten, slaapkamers en leeftijd.
PredictFromModel ("HousePriceModel" ; "[1600, 3, 20]" )
Retourneert een voorspelde huizenprijs gebaseerd op 1600 square feet (150 vierkante meter), 3 slaapkamers en een leeftijd van 20 jaar. Een mogelijke geretourneerde waarde is 256.96153846153845279 (in dezelfde prijseenheden als de streefwaarden die in de trainingsgegevens worden gebruikt).
Voorbeeld 2
Voorspelt het aantal sterren van een klant op basis van de tekst van de beoordeling aan de hand van het model dat is getraind in Voorbeeld 2 in Regressiemodel configureren. Het script vraagt de gebruiker om een beoordeling in te voeren ($reviewInput), een AI-account te configureren en het account te gebruiken om tekstinsluitvectoren te krijgen voor $reviewInput. Vervolgens wordt het regressiemodel geladen dat is opgeslagen in het globale veld Reviews::ReviewModel, geeft vervolgens de voorspelde waardering weer met behulp van het geladen model "ReviewModel" en de insluitvector voor de beoordeling van de gebruiker ($reviewEmbedding). Als u klaar bent, wordt het model uit het geheugen verwijderd.
Aangepaste dialoogvenster tonen ["Voer uw beoordeling in"; $reviewInput ]
AI-account configureren [ Accountnaam: "AI-modelserver" ; Modelprovider: Aangepast ; Eindpunt: "https://myserver.example.com:8080/" ; SSL-certificaten configureren ; API-sleutel: Global::API_Key ]
Insluiting invoegen [ Accountnaam: "AI-modelserver" ; Insluitmodel: "all-MiniLM-L12-v2" ; Invoer: $reviewInput ; Doel: $reviewEmbedding ]
Regressiemodel configureren [ Actie: Model laden ; Modelnaam: "ReviewModel" ; Model laden vanuit: Reviews::ReviewModel ]
Aangepast dialoogvenster tonen [ "Voorspelde beoordeling"; PredictFromModel ( "ReviewModel" ; $reviewEmbedding ) ]
Regressiemodel configureren [ Actie: Laden model annuleren ; Modelnaam: "ReviewModel" ]
Een mogelijke voorspelde waardering voor een positieve beoordeling is 4,8700974666666665414 voor streefwaarden die worden gebruikt in training tussen 1 en 5.