DatasetDefinition - Global

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 4 min. de leitura
  • A API DatasetDefinition fornece métodos para identificar um conjunto de registros, incluindo um nome de tabela, colunas e critérios de seleção de linha a serem usados como entrada para algoritmos de treinamento de ML. Os conjuntos de dados não contêm os dados reais.

    Este A API requer o plug-in Inteligência preditiva (com.glide.platform_ml) e é fornecida no namespace sn_ml. Para obter informações, consulte Inteligência preditiva.

    Use o conjunto de dados para estimar informações mútuas PredictabilityEstimate ou treinar dados especificados por um codificador. Você também pode usar o conjunto de dados para treinar dados especificados por um dos seguintes tipos de solução:

    Para obter diretrizes de uso, consulte Como usar APIs de ML.

    DatasetDefinition - DatasetDefinition(Object)

    Cria uma instância da classe DatasetDefinition, permitindo que você defina um conjunto de dados por nome de tabela, campos e consulta.

    Crie sua definição de conjunto de dados aprovando uma tabela e uma lista de campos. Você também pode passar uma consulta para restringir os conjuntos de dados para incluir linhas com características específicas.

    Depois de criado, um objeto DatasetDefinition não pode ser modificado.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    config Objeto Objeto JavaScript que contém as propriedades de definição do conjunto de dados.
    {
      "encodedQuery": "String",
      "fieldDetails": [Array],
      "fieldNames": [Array],
      "tableName": "String"
    }
    config.tableName Cadeia de caracteres Nome da tabela para o conjunto de dados. Por exemplo, "tableName" : "Incidente".
    config.NomesDeCampos Matriz Opcional. Lista de nomes de campo da tabela especificada como cadeias de caracteres. Por exemplo, "fieldNames" : ["short_description", "priority"].

    Padrão: todos os campos

    config.DetalhesDeCampo Matriz Opcional. Lista de objetos JavaScript que especificam propriedades de campo.

    Use esta propriedade para forçar os algoritmos de aprendizado de máquina a interpretar os campos como sendo de um tipo específico. Você não precisa obter detalhes de campo para cada campo listado na propriedade fieldNames. Todos os detalhes devem corresponder a um campo listado na matriz fieldNames.

    [
      {
        "name": "String",
        "type": "String"
      }
    ]
    config.fieldDetails.name Cadeia de caracteres Nome do campo que define o tipo de informação ao qual este conjunto de dados será restrito. Se usado, este nome de campo deve corresponder ao nome correspondente listado na propriedade fieldNames.
    config.fieldDetails.type Cadeia de caracteres Tipo de campo de aprendizado de máquina. Especificar o tipo de dados força o instrutor de ML a interpretar um campo como tendo esse tipo. Se nenhum tipo de dados for especificado, o sistema determinará o tipo.
    Tipos compatíveis:
    • nominal: o ML interpreta este campo como contendo classes ou categorias.
    • numeric: o ML interpreta este campo como contendo números.
    • text: o ML interpreta este campo como contendo texto.

    Esses tipos identificam tipos de dados de uma perspectiva de aprendizado de máquina. O tipo de ML pode ser diferente do tipo listado na tabela de origem. Um campo pode ser um tipo de cadeia de caracteres, mas sua finalidade pode ser codificar um valor nominal. Por exemplo, tamanhos de camiseta como "XL", "L" ou "M" são tipos de cadeia de caracteres na tabela, mas cada valor representa uma categoria de um atributo nominal de uma perspectiva de ML.

    config.ConsultaCodificada Cadeia de caracteres Opcional. Cadeia de caracteres de consulta codificada no formato Glide padrão. Consulte Cadeias de caracteres de consulta codificadas.

    Você pode construir a consulta para ser absoluta ou relativa. Por exemplo, sua consulta pode retornar linhas dos 3 meses anteriores (relativo) ou do período de maio a julho (absoluto). Seja usando um padrão absoluto ou relativo, os dados que uma definição identifica podem mudar se as linhas na tabela subjacente mudarem.

    O exemplo a seguir mostra como criar uma definição de conjunto de dados.

    var myData = new sn_ml.DatasetDefinition(
      { 
         'tableName' : 'incident', 
         'fieldNames' : ['category', 'short_description', 'priority', 'assignment_group.name'],
         'fieldDetails' : [
           {
             'name' : 'category',
             'type' : 'nominal'
           },
           {
             'name' : 'short_description',
             'type' : 'text'
           }], 
         'encodedQuery' : 'sys_created_onONLast%202%20quarters@javascript:gs.beginningOfLast2Quarters()@javascript:gs.endOfLast2Quarters()^state=3'
      });

    DatasetDefinition - getEligibleFields(capacidade de cadeia de caracteres)

    Retorna uma lista de campos que são qualificados como campos de entrada (recursos) ou campos previstos em relação a uma solução de uma determinada capacidade, por exemplo, uma solução de classificação. A qualificação é determinada com base nos campos que têm os tipos de dados do glide apropriados.

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    capacidade Cadeia de caracteres Capacidade para a qual os campos qualificados para treinamento são recuperados. No momento, este método só oferece suporte a soluções de classificação. Qualquer outro valor para a capacidade gera uma exceção de "capacidade sem suporte".

    Valores válidos: "classificação"

    Tabela 3. Retorna
    Tipo Descrição
    Objeto Objeto que contém nomes de campo de entrada qualificados e nomes de campo de saída qualificados.
    {	 
      "eligibleInputFieldNames" : [Array],
      "eligibleOutputFieldNames" : [Array] 
    }
    <Object>.eligibleInputFieldNames Lista de cadeias de caracteres indicando campos de entrada qualificados para treinamento.

    Tipo de dados: matriz

    <Object>.eligibleOutputFieldNames Lista de cadeias de caracteres indicando campos de saída qualificados para treinamento.

    Tipo de dados: matriz

    O exemplo a seguir mostra como exibir campos qualificados para uma solução de classificação.

    var myIncidentData = new sn_ml.DatasetDefinition({
      'tableName' : 'incident',
      'encodedQuery' : 'activeANYTHING'
    });
    
    var eligibleFields = JSON.parse(myIncidentData.getEligibleFields('classification'));
    
    gs.print(JSON.stringify(eligibleFields, null, 2));

    Saída:

    {
      "eligibleInputFieldNames": [
        "resolved_by",
        "short_description",
        "description",
        "notify"
      ],
      "eligibleOutputFieldNames": [
        "parent",
        "caused_by",
        "location",
        "category"
      ]
    }