Blame view
egs/wsj/s5/steps/nnet3/nnet3_to_dot.sh
1.47 KB
8dcb6dfcb first commit |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
#!/bin/bash # script showing use of nnet3_to_dot.py # Copyright 2015 Johns Hopkins University (Author: Vijayaditya Peddinti). # Begin configuration section. component_attributes="name,type" node_prefixes="" info_bin=nnet3-am-info echo "$0 $@" # Print the command line for logging [ -f ./path.sh ] && . ./path.sh; # source the path. . parse_options.sh || exit 1; if [ $# != 3 ]; then echo "Usage: $0 [opts] <nnet3-mdl-file> <output-dot-file> <output-png-file>" echo " e.g.: $0 exp/sdm1/nnet3/lstm_sp/0.mdl lstm.dot lstm.png" echo "" echo "Main options (for others, see top of script file)" echo " --info-bin <nnet3-am-info|nnet3-info> # Name of the binary to generate the nnet3 file" echo " --component-attributes <string|name,type> # attributes to be printed in nnet3 components" echo " --node-prefixes <string|Lstm1,Lstm2> # list of prefixes. Nnet3 components/component-nodes with the same prefix" echo " # will be clustered together in the dot-graph" exit 1; fi model=$1 dot_file=$2 output_file=$3 attr=${node_prefixes:+ --node-prefixes "$node_prefixes"} $info_bin $model | \ steps/nnet3/dot/nnet3_to_dot.py \ --component-attributes "$component_attributes" \ $attr $dot_file echo "Generated the dot file $dot_file" command -v dot >/dev/null 2>&1 || { echo >&2 "This script requires dot but it's not installed. Please compile $dot_file with dot"; exit 1; } dot -Tpdf $dot_file -o $output_file |