ComputeModel

Restituisce un oggetto JSON contenente il risultato della valutazione del modello Core ML.

Formato 

Per modelli generali:

ComputeModel ( nomeModello ; nomeParametro1 ; valore1 )

Per modelli di visione:

ComputeModel ( nomeModello ; "immagine" ; valore1 ; "LimiteConfidenzaInferiore" ; restituisciAlmenoUno )

Parametri 

nomeModello - il nome del modello da valutare. Questo valore deve corrispondere al nome di un modello caricato in precedenza.

nomeParametro1 - il nome di un parametro di input come definito da chi ha progettato il modello. È necessario conoscere il nome di ciascuno di questi parametri prima di utilizzare il modello.

valore1 - il valore di un parametro di input del modello.

immagine (solo modelli di visione) - il tipo di dati valutati dal modello.

LimiteConfidenzaInferiore (solo modelli di visione) (opzionale) - un valore utilizzato che limita il numero di risultati restituiti dai modelli di visione escludendo i risultati inferiori al valore specificato. Questo valore deve essere compreso tra 0.0 e 1.0.

restituisciAlmenoUno (solo modelli di visione) - un valore Vero (diverso da zero) o Falso (zero). Se tutti i risultati sono esclusi dal valore LimiteConfidenzaInferiore e:

  • se restituisciAlmenoUno è Vero, viene restituito il risultato con livello massimo di confidenza
  • se restituisciAlmenoUno è Falso o non specificato, viene restituita una stringa vuota

Tipo di dati riportato 

Testo

Creata nella versione 

19.0

Descrizione 

L'oggetto restituito sarà una matrice di coppie nome-valore o una singola coppia nome-valore, a seconda della definizione del modello valutato.

Note 

  • Prima di poter utilizzare la funzione ComputeModel, è necessario caricare un modello Core ML con l'istruzione di script Configura modello di machine learning.
  • Un parametro di input deve essere seguito dal relativo valore ed è possibile utilizzare più coppie parametro di input-valore.
  • Se un risultato contiene due corrispondenze con la stessa confidenza, viene restituito solo il primo valore.
  • Questa funzione è supportata solo su iOS, iPadOS e macOS.

Esempio 1 

Presupponendo che sia stato caricato un modello MobileNet e che un campo Contenitore mioCampoImmagine si trovi nel formato corrente (o sia in altro modo disponibile per il calcolo):

ComputeModel ( "MobileNet" ; "immagine" ; mioCampoImmagine )

valuta l'immagine in mioCampoImmagine utilizzando il modello fornito e restituisce la seguente stringa JSON (formattata per non creare confusione e con alcune righe rimosse per brevità)

Copia
[
    {
        "classificazione" : "pianoforte a coda, coda",
        "confidenza" : 0.998073041439056
    },
    {
        "classificazione" : "verticale, pianoforte verticale",
        "confidenza" : 0.00192673446144909
    },
    {
        "classificazione" : "tavolo da biliardo, biliardo, tavolo verde",
        "confidenza" : 8.34678601790984e-08
    },
    {
        "classificazione" : "tavolo da pranzo, tavolo",
        "confidenza" : 2.60599577472931e-08
    },
    {
        "classificazione" : "palla, pescepalla, pesce, tetraodontide",
        "confidenza" : 5.19516656696278e-18
    }
]

Esempio 2 

Utilizzando lo stesso modello, campo Contenitore e immagine dell'esempio 1, il seguente calcolo:

ComputeModel("MobileNet"; "immagine"; mioCampoImmagine; "LimiteConfidenzaInferiore"; 1.0; "restituisciAlmenoUno"; 1)

restituisce la stringa JSON:

Copia
[
    {
        "classificazione" : "pianoforte a coda, coda",
        "confidenza" : 0.998073041439056
    }
]

Passando a LimiteConfidenzaInferiore un valore di 1.0, si escludono tutti i risultati. Ma poiché restituisciAlmenoUno è impostato su un valore diverso da zero, viene restituito il risultato con livello massimo di confidenza.