EncoderVersion - Global

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 6 min. de leitura
  • Objeto programável usado em armazenamentos Inteligência preditiva.

    EncoderVersion A API requer o plug-in Inteligência preditiva (com.glide.platform_ml) e é fornecida no namespace sn_ml.

    Esta API é usada para trabalhar com versões de codificador com base em objetos de API do codificador na lojado codificador.

    O sistema ativa a versão mais recente da codificador ao concluir o treinamento e permite que somente uma versão esteja ativa por vez. No entanto, você pode ativar qualquer versão treinada anteriormente que queira usar para fazer previsões.

    Os métodos nesta API podem ser acessados usando os seguintes métodos de codificador :

    EncoderVersion – getProperties()

    Obtém propriedades do objeto codificador e número da versão.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 2. Retorna
    Tipo Descrição
    Objeto Conteúdo dos detalhes do conjunto de dados e do codificador. Os resultados variam de acordo com a configuração da propriedade do objeto.
    {
      "algorithmConfig" : {Object},
      "datasetsProperties": [Array],
      "domainName": "String",
      "isActive": "String",
      "label": "String",
      "name": "String",
      "predictedFieldName": "String",
      "processingLanguage": "String",
      "scope": "String",
      "stopwords": [Array],
      "trainingFrequency": "String",
      "versionNumber": "Number"
    }
    <Object>.algorithmConfig Opcional. Objeto JavaScript que contém propriedades de configuração do algoritmo.
    'algorithmConfig' : {
      "algorithm": "String"
    }

    Tipo de dados: objeto.

    <Object>.algoritmoConfig.algoritmo Nome do algoritmo para treinar este codificador.
    Valores possíveis:
    • paravec: incorporação de palavra de vetor de parágrafo.
    • tf-idf: Texto baseado em Frequência do termo–Frequência inversa do documento (TF-IDF).

    Tipo de dados: Cadeia de caracteres.

    <Object>.datasetProperties

    Lista de propriedades DatasetDefinition() associadas ao codificador.

    {
      "encodedQuery": "String",
      "fieldDetails": [Array],
      "fieldNames": [Array],
      "tableName": "String"
    }

    Tipo de dados: matriz.

    <Object>.datasetsProperties.tableName Nome da tabela para o conjunto de dados. Por exemplo, "tableName" : "Incidente".

    Tipo de dados: Cadeia de caracteres.

    <Object>.datasetsProperties.fieldNames Lista de nomes de campo da tabela especificada como cadeias de caracteres. Por exemplo, "fieldNames" : ["short_description", "priority"].

    Tipo de dados: matriz.

    <Object>.datasetsProperties.fieldNames.fieldDetails Lista de objetos JavaScript que especificam propriedades de campo.
    [
      {
        "name": "String",
        "type": "String"
      }
    ]

    Tipo de dados: matriz.

    <Object>.datasetsProperties.fieldNames.fieldDetails.<object>.name Nome do campo que define o tipo de informação ao qual restringir este conjunto de dados.

    Tipo de dados: Cadeia de caracteres.

    <Object>.datasetsProperties.fieldDetails.<object>.type Tipo de campo de aprendizado de máquina.

    Tipo de dados: Cadeia de caracteres.

    <Object>.datasetsProperties.fieldDetails.encodedQuery Cadeia de caracteres de consulta codificada no formato Glide padrão. Consulte Cadeias de caracteres de consulta codificadas.

    Tipo de dados: Cadeia de caracteres.

    <Object>.domainName Nome de domínio associado a este conjunto de dados. Consulte Domain Separation e Inteligência preditiva.

    Tipo de dados: Cadeia de caracteres.

    <Object>.isActive Sinalizador que indica se esta versão está ativa.
    Valores válidos:
    • verdadeiro: a versão está ativa.
    • false: a versão não está ativa.

    Tipo de dados: cadeia de caracteres

    <Object>.rótulo Identifica a tarefa de previsão.
    {
      "label": "my first prediction"
    }

    Tipo de dados: Cadeia de caracteres.

    <Object>.nome Nome atribuído pelo sistema.

    Tipo de dados: Cadeia de caracteres.

    <Object>.predictedFieldName Identifica um campo a ser treinado para previsibilidade.

    Tipo de dados: Cadeia de caracteres.

    <Object>.processingLanguage Idioma de processamento no formato de código de idioma ISO 639-1 de duas letras.

    Tipo de dados: Cadeia de caracteres.

    <Object>.escopo Escopo do objeto. Atualmente, o único valor válido é global.

    Tipo de dados: cadeia de caracteres

    <Object>palavras irrelevantes Opcional. Lista predefinida de cadeias de caracteres que o sistema gera automaticamente com base na configuração da propriedade language. Para obter detalhes, consulte Criar uma lista de palavras irrelevantes personalizadas.

    Tipo de dados: matriz.

    <Object>.trainingFrequency A frequência para retreinar o modelo.
    Valores possíveis:
    • a cada_30_dias
    • a cada_60_dias
    • a cada_90_dias
    • a cada_120_dias
    • a cada_180_dias
    • run_once
    Padrão: run_once

    Tipo de dados: Cadeia de caracteres.

    <Object>.versionNumber Objeto Número da versão do codificador.

    Tipo de dados: Cadeia de caracteres.

    O exemplo a seguir obtém as propriedades da versão do objeto ativo no armazenamento.

    // Get properties
    var mlEncoder = sn_ml.EncoderStore.get('ml_incident_categorization');
    
    gs.print(JSON.stringify(JSON.parse(mlEncoder.getActiveVersion().getProperties()), null, 2));

    Saída:

    *** Script: {
      "datasetsProperties": [
        {
          "tableName": "incident",
          "fieldNames": [
            "assignment_group",
            "short_description",
            "description"
          ],
          "encodedQuery": "activeANYTHING"
        }
      ],
      "domainName": "global",
      "isActive": "true",
      "label": "my encoder definition",
      "name": "ml_x_snc_global_global_my_encoder_definition",
      "processingLanguage": "en",
      "stopwords": [
        "Default English Stopwords"
      ],
      "versionNumber": "1"
    }

    EncoderVersion - getSentenceVectors(entrada de matriz)

    Retorna vetores para cada frase de entrada.

    Tabela 3. Parâmetros
    Nome Tipo Descrição
    entrada Matriz Matriz de cadeias de caracteres como frases das quais os vetores serão recebidos.
    Tabela 4. Retorna
    Tipo Descrição
    Cadeia de caracteres Matriz de vetores de frases.

    O exemplo a seguir mostra como retornar um vetor para uma única frase.

    var myEncoderName = 'GloVe';
    
    var myEncoder = sn_ml.EncoderStore.get(myEncoderName);
    
    var input = ["I like to code."];
    
    var vectors = myEncoder.getActiveVersion().getSentenceVectors(input);
    
    gs.print(vectors);
    

    Saída:

    *** Script: [-0.16243751347064972,0.30614474415779114,0.08489049971103668,
    -0.48100000619888306,-0.170997753739357,0.08779674768447876,-0.07848624140024185,-0.15123701095581055,
    -0.07843250036239624,-1.9505999088287354,0.3007825016975403,-0.07804800570011139,-0.04779449850320816,
    0.04803549498319626,0.09848674386739731,0.2427891194820404,-0.41138750314712524,0.10880374908447266,
     … ,
    0.21227750182151794,0.18478751182556152,-0.3113832473754883,-0.16560424864292145,0.09052124619483948]

    EncoderVersion - getSimilarWords(entrada de matriz, opções de objeto)

    Retorna palavras semelhantes a cada palavra de entrada na ordem decrescente de semelhança.

    Tabela 5. Parâmetros
    Nome Tipo Descrição
    entrada Matriz Matriz de palavras para as quais encontrar palavras semelhantes.
    opções Objeto Mapeie para refinar os resultados.
    { "topN":"String" }
    opções.topN Cadeia de caracteres Se fornecido, retorna os principais resultados até o número especificado de palavras. Por exemplo, use "10" para retornar as 10 principais palavras mais semelhantes.
    Tabela 6. Retorna
    Tipo Descrição
    Matriz Lista de elementos que contêm palavras semelhantes para a palavra de entrada na posição correspondente. Essas palavras semelhantes são representadas por uma matriz de pares no formato [palavra, pontuação de semelhança].

    O exemplo a seguir mostra como obter palavras semelhantes usando o codificador GloVe.

    var myEncoderName = 'GloVe';
    var myEncoder = sn_ml.EncoderStore.get(myEncoderName);
    var input =  ["apple"];
    var options = {"topN":"5"};
    gs.print(myEncoder.getActiveVersion().getSimilarWords(input, options));	

    Saída:

    *** Script: [[["iphone",0.5987],["macintosh",0.5836],["ipod",0.5761],["microsoft",0.5664],["ipad",0.5628]]]

    EncoderVersion - getStatus(booliano includeDetails)

    Obtém o status de conclusão do treinamento.

    Tabela 7. Parâmetros
    Nome Tipo Descrição
    includeDetails Booliano

    Sinalizador que indica se o status detailsdeve ser retornado.

    Valores válidos:
    • verdadeiro: retorna detalhes adicionais.
    • false: não retorna detalhes adicionais.

    Padrão: Falso

    Tabela 8. Retorna
    Tipo Descrição
    Objeto Objeto JavaScript que contém informações de status de treinamento para um objeto Encoder.
    {
      "state": "String",
      "percentComplete": "Number as a String",
      "hasJobEnded": "Boolean value as a String",
      "details": {Object}
    }
    <Object>.estado Estado de conclusão do treinamento. Se o trabalho de treinamento atingir um estado terminal, o trabalho não sairá desse estado. Se o estado for terminal, a propriedade hasJobEnded será definida como verdadeiro.
    Valores possíveis:
    • buscando_arquivos_para_treinamento
    • preparação_dados
    • tentar novamente
    • solution_cancelled (terminal)
    • solution_complete (terminal)
    • solution_error (terminal)
    • solution_incomplete
    • treinamento_solicitação_recebido
    • treinamento_request_timed_out (terminal)
    • treinamento_solução
    • carregando_solução
    • aguardando_treinamento

    Tipo de dados: cadeia de caracteres

    <Object>.hasJobEnded

    Sinalizador que indica se o treinamento foi concluído.

    Valores válidos:
    • verdadeiro: o treinamento está concluído.
    • false: o treinamento está incompleto.

    Tipo de dados: valor booliano como cadeia de caracteres

    <Object>.percentComplete Número entre zero e 100 que representa o percentual de conclusão do treinamento. Se a porcentagem de conclusão for inferior a 100, o trabalho poderá estar em um estado terminal. Por exemplo, se o treinamento expirar.

    Tipo de dados: número como cadeia de caracteres

    <Object>.detalhes Objeto que contém uma lista de detalhes adicionais de treinamento.

    Tipo de dados: objeto

    O exemplo a seguir mostra um resultado bem-sucedido com o treinamento concluído.

    // Get status
    var mlEncoder = sn_ml.EncoderStore.get('ml_incident_categorization');
    
    gs.print(JSON.stringify(JSON.parse(mlEncoder.getActiveVersion().getStatus(true), null, 2)));

    Saída:

    {
     "state":"solution_complete",
     "percentComplete":"100",
     "hasJobEnded":"true",
     "details":{"stepLabel":"Encoder Complete"} // This information is only returned if getStatus(true);
    }

    O exemplo a seguir mostra um resultado malsucedido com o treinamento concluído.

    // Get status
    var encoderName = 'ml_x_snc_global_global_encoder';
    var mlEncoder = sn_ml.EncoderStore.get(encoderName);
    var trainingStatus = mlEncoder.getLatestVersion().getStatus();
    
    gs.print(JSON.stringify(JSON.parse(trainingStatus), null, 2));

    Saída:

    {
     "state":"solution_error",
     "percentComplete":"100",
     "hasJobEnded":"true"
    }

    EncoderVersion – getVersionNumber()

    Obtém o número da versão de um objeto de solução.

    Tabela 9. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 10. Retorna
    Tipo Descrição
    Cadeia de caracteres Número da versão.

    O exemplo a seguir mostra como obter um número de versão.

    // Get version number
    var mlEncoder = sn_ml.EncoderStore.get('ml_incident_categorization');
    
    gs.print("Version number: "+JSON.stringify(JSON.parse(mlEncoder.getActiveVersion().getVersionNumber()), null, 2));

    Saída:

    Version number: 1

    EncoderVersion - getWordVectors(entrada de matriz)

    Retorna vetores para cada palavra de entrada.

    Tabela 11. Parâmetros
    Nome Tipo Descrição
    entrada Matriz Lista de cadeias de caracteres como palavras das quais os vetores serão recebidos.
    Tabela 12. Retorna
    Tipo Descrição
    Matriz Lista de vetores para cada palavra fornecida.

    O exemplo a seguir mostra como obter um vetor da palavra olá.

    var myEncoderName = 'GloVe';
    var myEncoder = sn_ml.EncoderStore.get(myEncoderName);
    var input =  ["hello"];
    
    gs.print(myEncoder.getActiveVersion().getWordVectors(input));

    Saída:

    *** Script: [[-0.337119996547699,-0.2169100046157837,-0.006636499892920256,
    -0.41624999046325684,-1.2554999589920044,-0.0284659992903471,-0.7219499945640564,
    -0.5288699865341187,0.0072085000574588776,0.3199700117111206,0.02942500077188015,
    -0.013236000202596188,0.4351100027561188,0.2571600079536438,0.3899500072002411,
     … ,
    0.3384299874305725,0.4055800139904022,0.18073000013828278,0.6424999833106995]]