Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
O comando train principal de topo etesteval/são descritos na página Train, Test, Eval. Outros comandos de topo são detalhados abaixo.
Comando Adapt
Este comando adapta um modelo já treinado usando regularização de divergência KL. Aconselha-se que todas as outras adaptações sejam realizadas através de edição de modelos. O comando adapt é muito semelhante ao comando de comboio, exceto que carrega mais dois parâmetros:
originalModelFileName: o nome do ficheiro do modelo que será adaptado.refNodeName: o nome do nó na rede computacional que será usado para a regularização de divergência KL.
Currículo
Este comando avalia uma série de modelos de diferentes épocas num conjunto de desenvolvimento (ou validação cruzada) e apresenta a informação do melhor modelo. Para além dos parâmetros usados para o comando de teste, este comando também utiliza os parâmetros
crossValidationInterval: o array de 3 inteiros que identificam a época inicial, o incremento da época e a época final a avaliar. Por exemplo, 3:2:9 significa que os modelos 3, 5, 7 e 9 serão avaliados.sleepTimeBetweenRuns: quantos segundos esperar entre as tentativas. Isto só é necessário se a tua GPU estiver demasiado quente.
Comando de Escrita
Este comando escreve o valor de um nó de saída num ficheiro. Os parâmetros relacionados são
reader: o bloco de configuração do leitor para ler os dados de entrada.writer: o bloco de configuração do escritor para determinar como escrever os dados de saída. Se este valor não for especificado, será utilizado o parâmetro outputPath.minibatchSize: o tamanho do minibatch a usar na leitura e processamento do conjunto de dados.epochSize: o tamanho do conjunto de dados. O padrão é 0. Todo o conjunto de dados será avaliado se estiver definido para 0.modelPath: o caminho até ao modelo a ser usado para calcular a saída.outputPath: o caminho até ao ficheiro para escrever a saída num formato de texto. Se existir bloqueio de escritor, este parâmetro será ignorado. Ou outputPath ou writer devem existir.outputNodeNames: um array de um ou mais nomes de nós de saída a serem escritos num ficheiro.
Editar Comando
Este comando edita um modelo e guarda o modelo modificado no ficheiro. Isso está obsoleto. Os parâmetros associados são:
-
editPath: o caminho para o script MEL a ser executado. -
ndlMacros: o caminho para o ficheiro de macros NDL que será carregado e usado no script MEL.
Comando SVD
Este comando realiza uma aproximação de baixo nível com decomposição SVD dos parâmetros aprendíveis. A principal motivação é fatorizar uma matriz de pesos com duas matrizes de ordem inferior para melhorar a velocidade de inferência, preservando a precisão. Por exemplo:
svd = [
action = "SVD"
modelPath = "train\lstm.model.67"
outputModelPath = "train\lstm.model.svd"
SVDConfig = "nodeConfigs"
]
Os blocos de parâmetros associados são:
modelPath: especifica onde carregar o modelo inicial.outputModelPath: especifica onde guardar o modelo revisto.SVDConfig: um ficheiro de configuração que especifica como o SVD é executado para diferentes grupos de nós. Esta configuração tem um formato de duas colunas:<NodeNameRegex> <float>
A primeira coluna é uma expressão regular que corresponde ao nome do nó num grupo. A segunda coluna é um float que indica qual a percentagem da energia SVD que será mantida após a SVD, onde a energia SVD é definida como a soma dos valores singulares. Por exemplo, a configuração
`LSTMoutput[1-3].Wx[ifco] 0.4`
`LSTMoutput[1-3].Wh[ifco] 0.6`
causará uma decomposição SVD (0,4) mais agressiva para as ligações não recorrentes (de x para portas i,f,c,o) em LSTM e uma decomposição SVD menos agressiva para ligações recorrentes (de h para portas i,f,c,o), onde os nomes dos parâmetros são definidos no NDL.
Comando Dumpnode
Este comando despeja a informação do(s) nodo(s) para um ficheiro de saída, o que também pode ser realizado no MEL com maior controlo. Os parâmetros relacionados são:
modelPath: o caminho para o ficheiro do modelo que contém os nós a despejar.nodeName: o nome do nó a ser escrito num ficheiro. Se não for especificado, todos os nós serão deslocados.nodeNameRegex: a expressão regular para os nomes dos nós a serem escritos num ficheiro. Se especificado, onodeNameparâmetro é ignorado.outputFile: o caminho para o ficheiro de saída. Se não for especificado, um nome de ficheiro será gerado automaticamente com base no modelPath.printValues: determina se imprime os valores associados a um nó se os valores do nó forem mantidos no modelo. A predefinição é verdadeira.printMetadata: determina se deve imprimir os metadados (nome do nó, dimensões, etc.) associados a um nó. A predefinição é verdadeira.
Comando WriteWordAndClass (obsoleto)
Este comando lê os dados de treino do texto, conta o número de ocorrências de cada palavra no conjunto de treino, ordena as palavras pela ordem decrescente das contagens, atribui a cada palavra um id único, atribui cada palavra a uma classe e gera um ficheiro de vocabulário de quatro colunas e um ficheiro de mapeamentoto-id palavra para serem usados pelo (obsoleto) LMSequenceReader para treinar modelos de linguagem baseados em classes. Os parâmetros relacionados são:
inputFile: o caminho para o ficheiro de treino de texto.outputVocabFile: o nome do ficheiro de vocabulário gerado em quatro colunas. A primeira coluna é o id da palavra, a segunda coluna é a contagem da palavra, a terceira coluna é a palavra e a quarta coluna é o id da classe.outputWord2Cls: o caminho para o ficheiro de mapeamento gerado palavra-para-classe.outputCls2Index: o caminho para o ficheiro de mapeamento gerado da classe para o wordId.vocabSize: o tamanho desejado do vocabulário.nbrClass: o número desejado de classes.cutoff: a contagem de corte. Quando a contagem de uma palavra é inferior ou igual a esse valor, a palavra será tratada como <unk>. O padrão é 2. Note que este parâmetro é usado apenas se o tamanho desejado do vocabulário for maior do que o número real de palavras existentes no conjunto de treino.
Comando CreateLabelMap
Muitas vezes é fácil criar manualmente o ficheiro de mapeamento de etiquetas. Por vezes, no entanto, prefere que o ficheiro de mapeamento de etiquetas seja gerado automaticamente, que é o objetivo do comando CreateLabelMap. Atualmente, o UCIFastReader é o único leitor que apoia esta ação. Os parâmetros relacionados são
section: o nome do bloco de parâmetros (normalmente um bloco de comboio) que tem o subbloco leitor que será usado para gerar o ficheiro de mapeamento de etiquetas. O ficheiro de mapeamento de etiquetas gerado será guardado no labelMappingFile especificado no subbloco leitor deste bloco de parâmetros.minibatchSize: o tamanho do minibatch a usar ao criar o ficheiro de mapeamento de etiquetas.
Comando DoEncoderDecoder
Redes neuronais podem ser usadas para formar uma cadeia de redes. As primeiras redes podem funcionar como codificadores e as redes seguintes podem servir como descodificadores. Um nó especial, PairNetworkNode, é usado em cada rede para servir um socket a ser ligado por outras redes. Os parâmetros relacionados são
section: o codificadorReader e decoderReader são os leitores para codificador e decodificador. De forma semelhante, para encoderCVReader e decoderCVReader para conjunto de validação.encoderNetworkBuilderedecoderNetworkBuilder: Estes especificam o construtor de rede simples a utilizar.
Comando BNStat
Avaliar a média e a variância da avaliação e teste do conjunto de dados para o nó de normalização por lote é complicado. Embora a média e a variância possam ser calculadas através da média contínua ou exp durante o treino, tendemos ainda a fornecer um método mais estável e robusto para gerar a média e a variância da normalização em lote — estatísticas pós-normalização em lote. O comando tem de ser chamado após o treino. Gera a média e a variância para cada camada BN.
-
modelPath: o caminho para o ficheiro do modelo que contém o modelo treinado -
minibatchSize: o tamanho do mini-lote durante a avaliação, o mesmo com o minibatchSize de treino -
itersPerNode: as iterações estatísticas para cada nó de normalização por lote -
reader: o bloco de configuração do leitor para ler os dados de teste. Para mais detalhes, veja Bloco de leitor -
enableDistributedMBReading: leitura distribuída em treino paralelo