#!/usr/bin/awk -f
# This script is used to format sentences for a predictor network.
# It assumes you are using a 1-bit per word encoding.
# The first command-line argument is a vocab list which should contain
# the words in your language, one per line.
# The second argument is the name of a file containing sentences, one per line.
# If there is no second argument, they will be read from stdin.
# Note that the first input to the network for each sentence will be a special
# START symbol and the first output is the prediction for the first word.
BEGIN {
if (ARGC < 1 || ARGC > 2) {
print "usage: formatSentence vocab-file [sentence-file]" | "cat 1>&2"
exit(1);
}
Word[START] = 0;
while (getline < ARGV[1]) Word[$1] = ++NumWords;
ARGV[1] = ARGV[2]; ARGV[2] = "";
}
{
print "name:{" $0 "} " NF;
print "i:" Word[START];
for (i = 1; i < NF; i++) print "b:" Word[$i];
print "t:" Word[$NF]";"
}
syntax highlighted by Code2HTML, v. 0.9.1