As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Solucionar erros Ambarella
SageMaker O Neo exige que os modelos sejam empacotados em um arquivo TAR compactado ()*.tar.gz
. Os dispositivos Ambarella exigem que arquivos adicionais sejam incluídos no arquivo TAR compactado antes que ele seja enviado para compilação. Inclua os seguintes arquivos em seu arquivo TAR comprimido se quiser compilar um modelo para destinos Ambarella com o Neo: SageMaker
Um modelo treinado usando uma estrutura suportada pelo SageMaker Neo
Um arquivo de configuração JSON
Imagens de calibração
Por exemplo, o conteúdo do seu arquivo TAR compactado será semelhante ao seguinte exemplo:
├──amba_config.json ├──calib_data | ├── data1 | ├── data2 | ├── . | ├── . | ├── . | └── data500 └──mobilenet_v1_1.0_0224_frozen.pb
O diretório é configurado da seguinte forma:
amba_config.json
: Arquivo de configuraçãocalib_data
: Pasta contendo imagens de calibraçãomobilenet_v1_1.0_0224_frozen.pb
: TensorFlow modelo salvo como um gráfico congelado
Para obter informações sobre estruturas suportadas pelo SageMaker Neo, consulteEstruturas compatíveis.
Configurando o arquivo de configuração
O arquivo de configuração fornece as informações exigidas pela cadeia de ferramentas Ambarella para compilar o modelo. O arquivo de configuração deve ser salvo como um arquivo JSON e o nome do arquivo deve terminar com *config.json
. O gráfico a seguir mostra o conteúdo do arquivo de configuração.
Chave | Descrição | Exemplo |
---|---|---|
inputs |
Dicionário camadas entradas de mapa para atributo. |
|
“data” |
Nome da camada de entrada. Nota: “data” é um exemplo do nome que você pode usar para rotular a camada de entrada. |
“data” |
formato |
Descreve a forma da entrada para o modelo. Isso segue as mesmas convenções que SageMaker o Neo usa. |
“forma”: “1,3,224.224" |
filePath |
Caminho relativo para o diretório contendo imagens de calibração. Eles podem ser arquivos binários ou de imagem, como JPG ou PNG. |
“caminho do arquivo”: “calib_data/” |
colorformat |
Formato de cor que o modelo espera. Isso será usado ao converter imagens em binário. Valores suportados: [RGB, BGR]. O padrão é RGB. |
"colorformat":"RGB" |
médio |
Valor médio a ser subtraído da entrada. Pode ser um valor único ou uma lista de valores. Quando a média é fornecida como uma lista, o número de entradas deve corresponder à dimensão do canal da entrada. |
“média”: 128,0 |
escalar |
Valor da escala a ser usado para normalizar a entrada. Pode ser um valor único ou uma lista de valores. Quando a escala é fornecida como uma lista, o número de entradas deve corresponder à dimensão do canal da entrada. |
“escala”: 255,0 |
O exemplo a seguir é um arquivo de configuração de amostra:
{ "inputs": { "data": { "shape": "1, 3, 224, 224", "filepath": "calib_data/", "colorformat": "RGB", "mean":[128,128,128], "scale":[128.0,128.0,128.0] } } }
Imagens de calibração
Quantize seu modelo treinado fornecendo imagens de calibração. Quantizar seu modelo melhora o desempenho do motor CVflow em um sistema Ambarella em um chip (SoC). O conjunto de ferramentas Ambarella usa as imagens de calibração para determinar como cada camada no modelo deve ser quantizada para obter desempenho e precisão ideais. Cada camada é quantizada independentemente dos formatos INT8 ou INT16. O modelo final tem uma mistura de camadas INT8 e INT16 após a quantização.
Quantas imagens você deve usar?
É recomendável incluir entre 100 e 200 imagens que representem os tipos de cenas que o modelo deve manipular. O tempo de compilação do modelo aumenta linearmente com o número de imagens de calibração no arquivo de entrada.
Quais são os formatos de imagem recomendados?
As imagens de calibração podem estar em um formato binário bruto ou em formatos de imagem como JPG e PNG.
Sua pasta de calibração pode conter uma mistura de imagens e arquivos binários. Se a pasta de calibração contiver imagens e arquivos binários, o conjunto de ferramentas primeiro converterá as imagens em arquivos binários. Quando a conversão é concluída, ela usa os arquivos binários recém-gerados junto com os arquivos binários que estavam originalmente na pasta.
Posso converter as imagens em formato binário primeiro?
Sim. Você pode converter as imagens para o formato binário com pacotes de código aberto, como OpenCV
Média e escala
Você pode especificar as opções de pré-processamento médio e de escala para o conjunto de ferramentas Amberalla. Essas operações são incorporadas à rede e aplicadas durante a inferência em cada entrada. Não forneça dados processados se você especificar a média ou a escala. Mais especificamente, não forneça dados dos quais você tenha subtraído a média ou aplicado a escala.
Verifique seu registro de compilação
Para obter informações sobre como verificar o registro de compilação de dispositivos Ambarella, consulte Verifique seu registro de compilação.