Converter para SVMLight
Importante
O suporte para o Estúdio de ML (clássico) terminará a 31 de agosto de 2024. Recomendamos a transição para o Azure Machine Learning até essa data.
A partir de 1 de dezembro de 2021, não poderá criar novos recursos do Estúdio de ML (clássico). Até 31 de agosto de 2024, pode continuar a utilizar os recursos existentes do Estúdio de ML (clássico).
- Consulte informações sobre projetos de machine learning em movimento de ML Studio (clássico) para Azure Machine Learning.
- Saiba mais sobre Azure Machine Learning.
A documentação do Estúdio de ML (clássico) está a ser descontinuada e poderá não ser atualizada no futuro.
Converte a entrada de dados no formato utilizado pelo quadro SVM-Light
Categoria: Conversões de formato de dados
Nota
Aplica-se a: Machine Learning Studio (clássico) apenas
Módulos semelhantes de arrasto e queda estão disponíveis em Azure Machine Learning designer.
Visão geral do módulo
Este artigo descreve como utilizar o módulo Converte para SVMLight no Machine Learning Studio (clássico), para converter os seus conjuntos de dados no formato que é utilizado pela SVMLight.
O quadro SVM-Light foi desenvolvido por investigadores da Universidade de Cornell. A biblioteca SVM-Light implementa a máquina vetorial de suporte de Vapnik, mas o formato foi adotado em outros lugares e pode ser usado para muitas tarefas de aprendizagem automática, incluindo classificação e regressão.
Para mais informações, consulte a máquina de vetor de suporte SVMLight.
Como configurar Converter para SVMLight
A conversão para o formato SVMLight implica a conversão de cada caso numa linha de dados que começa com a etiqueta, seguida de pares de valor de recurso expressos em números separados pelo cólon. O processo de conversão não identifica automaticamente as colunas corretas, pelo que é importante que prepare as colunas no seu conjunto de dados antes de tentar a conversão. Para obter mais informações, consulte preparar dados para conversão.
Adicione o módulo Converte-se a SVMLight à sua experiência. Pode encontrar este módulo na categoria De Conversão de Formato de Dados no Machine Learning Studio (clássico).
Ligação o conjunto de dados ou a saída que pretende converter para o formato SVMLight.
Execute a experimentação.
Clique com o botão direito na saída do módulo, selecione Download e guarde os dados para um ficheiro local para modificação ou para reutilização com um programa que suporte o SVMLight.
Preparação de dados para conversão
Para ilustrar o processo de conversão, este exemplo utiliza o conjunto de dados do dador de sangue no Studio (clássico).
Este conjunto de dados da amostra tem o seguinte formato, na forma tabular.
Recessão | Frequência | Monetário | Hora | Classe |
---|---|---|---|---|
2 | 50 | 12500 | 98 | 1 |
0 | 13 | 3250 | 28 | 1 |
1 | 1 | 4000 | 35 | 1 |
2 | 20 | 5000 | 45 | 1 |
1 | 24 | 6000 | 77 | 0 |
Note que a coluna de etiquetas, denominada [Classe] neste conjunto de dados, é a última coluna na tabela. No entanto, se converter o conjunto de dados para SVMLight sem primeiro indicar qual a coluna que contém o rótulo, a primeira coluna, [Receção], é usada como etiqueta, e a coluna [Classe] é tratada como uma característica:
2 1:50 2:12500 3:98 4:1
0 1:13 2:3250 3:28 4:1
1 1:16 2:4000 3:35 4:1
Para se certificar de que as etiquetas são geradas corretamente no início da linha para cada caso, deve adicionar duas instâncias do módulo editar metadados .
No primeiro caso de Editar Metadados, selecione a coluna de etiqueta ([Classe]) e para Campos, selecione Label.
Na segunda instância de Editar Metadados, selecione todas as colunas de funcionalidades de que necessita no ficheiro convertido ([Receção], [Frequência], [Valor], [Tempo]) e para Campos, selecione Funcionalidades.
Depois de as colunas terem sido identificadas corretamente, pode executar o módulo Converte para SVMLight . Após a conversão, as primeiras linhas do conjunto de dados do dador de sangue têm agora este formato:
O valor da etiqueta precede cada entrada, seguido dos valores de [Receção], [Frequência], [Valor], [Tempo], identificados como as características 1, 2, 3 e 4, respectivamente.
O valor da etiqueta de 0 na quinta linha foi convertido para -1. Isto porque a SVMLight suporta apenas etiquetas de classificação binárias.
1 1:2 2:50 3:12500 4:98
1 1:0 2:13 3:3250 4:28
1 1:1 2:16 3:4000 4:35
1 1:2 2:20 3:5000 4:45
-1 1:1 2:24 3:6000 4:77
Não é possível utilizar diretamente estes dados de texto para modelos em Azure ML ou visualizar os mesmos. No entanto, você pode descarregá-lo para uma partilha local.
Apesar de ter o ficheiro aberto, recomendamos que adicione uma linha de comentários, prefaciada por , para #
que possa adicionar notas sobre a origem ou os nomes originais da coluna de funcionalidades.
Para utilizar um ficheiro SVMLight em Vowpal Wabbit, e fazer modificações adicionais como descrito aqui: Conversão para Formato Wabbit Vowpal. Quando o ficheiro estiver pronto, faça o upload para o armazenamento da bolha Azure e ligue-o diretamente de um dos módulos Vowpal Wabbit.
Exemplos
Não existem exemplos na Galeria Azure AI: que são específicas deste formato.
Notas técnicas
Esta secção contém detalhes de implementação, dicas e respostas a perguntas frequentes.
Dicas de utilização
Os executáveis fornecidos no quadro SVM-Light requerem tanto um ficheiro de exemplo como um ficheiro modelo. No entanto, este módulo cria apenas o ficheiro exemplo. Tem de criar o ficheiro modelo separadamente utilizando as bibliotecas SVMLight.
O ficheiro de exemplo é o ficheiro que contém os exemplos de treino.
Cabeçalho opcional
As primeiras linhas podem conter comentários. Os comentários devem ser pré-fixados com o sinal de número (#).
A saída do formato de ficheiro por Converta para SVMLight não cria cabeçalhos. Pode editar o ficheiro para adicionar comentários, uma lista de nomes de colunas, etc.
Dados de preparação
Cada caso está na sua própria fileira. Um caso consiste num valor-alvo seguido de uma série de índices e dos valores de características associados.
O valor de resposta deve ser 1 ou -1 para classificação, ou um número para regressão.
O valor-alvo e cada um dos pares de valor de índice são separados por um espaço.
Exemplo de dados de formação
O quadro a seguir mostra como os valores nas colunas do conjunto de dados Two-Class Iris são convertidos para uma representação na qual cada coluna é representada por um índice, seguida de um cólon, e, em seguida, o valor nessa coluna:
Conjunto de dados da Íris | Conjunto de dados da Íris convertido em SVMLight |
---|---|
1 6.3 2.9 5.6 1.8 | 1 1:6.3 2:2.9 3:5.6 4:1.8 |
0 4.8 3.4 1.6 0.2 | -1 1:4.8 2:3.4 3:1.6 4:0.2 |
1 7.2 3.2 6 1.8 | 1 1:7.2 2:3.2 3:6 4:1.8 |
Note que os nomes das colunas de recurso são perdidos na conversão.
Utilização do SVMLight para preparar um ficheiro Vowpal Wabbit
O formato SVMLight é semelhante ao formato utilizado pela Vowpal Wabbit. Para alterar o ficheiro de saída SVMLight para um formato utilizável para a formação de um modelo Vowpal Wabbit, basta adicionar um símbolo de tubo entre a etiqueta e a lista de funcionalidades.
Por exemplo, compare estas linhas de entrada:
Formato Vowpal Wabbit, incluindo comentário opcional
# features are [Recency], [Frequency], [Monetary], [Time]
1 | 1:2 2:50 3:12500 4:98
1 | 1:0 2:13 3:3250 4:28
Formato SVMLight, incluindo comentário opcional
# features are [Recency], [Frequency], [Monetary], [Time]
1 1:2 2:50 3:12500 4:98
1 1:0 2:13 3:3250 4:28
Entradas esperadas
Nome | Tipo | Description |
---|---|---|
Conjunto de dados | Tabela de Dados | Conjunto de dados de entrada |
Saída
Nome | Tipo | Description |
---|---|---|
Conjunto de dados de resultados | SvmLight | Conjunto de dados de saída |