Leia-me geral
O objetivo principal do WDS-JniPMML-XLL é fornecer avaliadores de modelos para Excel. Em particular, o acesso ao avaliador PMML padrão é um ponto de partida, tanto para uso quanto para comparação. Versões posteriores incluirão outras especificações do modelo e implementarão outros avaliadores.
Consulte os artigos de documentação para uma breve introdução sobre o uso.
Deixando de lado outros avaliadores, há um desafio técnico em fornecer acesso ao avaliador PMML padrão, jpmml, que é uma linguagem de programação cruzada. Nos bastidores, para criar uma interface Excel rápida e eficiente que isole o usuário dos detalhes técnicos, as linguagens adicionais usuais (C#/VB/VBA) devem pegar dados da pasta de trabalho (em múltiplas colunas e possivelmente múltiplas linhas), transformá-los, chame o jpmml em Java e retorne os dados apropriados (possivelmente com múltiplas colunas e linhas) de volta para a pasta de trabalho.
Este esforço não impede escrever um avaliador PMML (ou reescrever o jpmml, o que pode ser uma boa ideia) em outra linguagem. No entanto, à medida que outros avaliadores são adicionados, uma interface comum baseada em Excel fornece uma base para comparação.
Através desta versão, o WDS-JniPMML-XLL fornece:
- Um par de suplementos do Excel (XLLs) e suporte VBA para:
- Avaliando modelos PMML
- Como uma chamada de função do Excel
- Usando a implementação padrão de fato , jpmml.evaluator
- Usando dados de entrada de uma tabela na planilha
Usa ListObjects exportáveis do XmlMap, mas fornece ferramentas para facilitar- Pode avaliar uma ou múltiplas observações (linhas) por chamada
- Resultados retornados como saídas normais de função
- Com modelos armazenáveis em cache para eficiência
- Ferramentas adicionais de organização de dados para
- Importação/exportação de conjuntos de dados compostos HDF5
- Importando/Exportando arquivos simples
- Manipulação adicional de módulo VBA
- Um wrapper Java de jpmml.evaluator
- Pode ser chamado do XLL via jni
- Testável como autônomo na linha de comando
Porém, pode ser chamado através do Excel AddIn usando a JVM.- Os dados de entrada e saída podem ser:
- Conjuntos de dados compostos HDF5
- Arquivos simples
- Na memória (como quando chamado por jni)
- Um script de lançamento e exemplos estão incluídos
- WDS-JniPMML-XLL-Launch.bat: um script para iniciar uma nova instância do Excel, executando os AddIns sem instalar
- WDS-JniPMML-XLL-Test-Launch.bat: um script para executar os AddIns e a pasta de trabalho de exemplo WDS-JniPMML-XLL-Test.xlsm
- teste/dados: um conjunto de testes dos casos usuais de PMML
Algumas notas sobre a organização do projeto
- JniPMML-[AAA]: Bibliotecas específicas de linguagem diretamente relacionadas aos objetivos do projeto
- Sempre que possível e o mais próximo possível, as convenções e estrutura de nomenclatura de código são mantidas semelhantes entre os idiomas.
- WDS-[AAA]: bibliotecas de utilitários específicos de linguagem que podem ser usadas independentemente das bibliotecas JniPMML-[AAA]
- lib: produtos finais compilados que podem ser usados diretamente
- scripts: crie scripts, para construção de documentação em vários idiomas, em particular
Pré-requisitos
- Excel de 64 bits
Embora, se estiver compilando, 32 bits possam ser adicionados.- Acesso ao modelo de objeto do projeto VBA (se estiver usando os manipuladores de módulo VBA
- HDF5 e HDFView
- As bibliotecas HDF5 e HDFView são necessárias para compilar, mas a funcionalidade pode ser removida.
- Os jars fornecidos exigem que pelo menos HDFView esteja no caminho ou no caminho passado como uma opção de linha de comando ao iniciar o Excel
- Java jdk-12
Obrigatório ao usar a instalação mais recente do HDFView.- Ambiente de compilação
As configurações do github são para Visual Studio Community Edition e Intellij Community Edition.- DocFx
DocFx é usado para a construção da documentação, incluindo DocFxDoclet no lado JavaDoc.
Nota de licença
Todas as contribuições e desenvolvimento de código da Wypasek Data Science, Inc. (WDataSci) publicados em seu site público no github são liberados sob a licença do MIT. Código de outras fontes é indicado como tal, e quaisquer assemblies, XLLs e/ou jars que possam conter outro software (por exemplo, como Maven ou ExcelDna do Apache podem ser agrupados de outras fontes) são lançados junto com o projeto IDE comumente usado e/ ou arquivos de solução usados para gerá-los.