Next: , Previous: , Up: Examples   [Contents][Index]


Example 11

$ cat gram/11.pcfg

  W: "h" "e" A    [0.67]
   | "d"          [0.20]
   | "i" "k" "j"  [0.13]
  ;

  A: "b" "f" "g"  [0.67]
   | "c"          [0.33]
  ;

$ ./pcfg-generate-seq -i1 -n60000 -o seq/11-60k.seq gram/11.pcfg
$ ../scripts/mk-rg-vit.sh 5 5 3 2 >gram/11.rg
$ ./topdown -i1 --det-niter-goal=50 --od=td-learn/11_det.rg  \
            --oo=td-learn/11.log gram/11.rg seq/11-60k.seq
$ ./topdown -i1 --od=td-learn/11_out.rg --op=td-learn/11_out.pcfg  \
            --oo=- --simplify td-learn/11_det.rg seq/11-60k.seq

  Iteration 1:
  P: prob_gram 0.68192993, prob_term 1.00000000, prob_wpredict 0.84267817,
     prob_npredict 0.84210877, cycle_period 0
  T: prob_gram 0.68192993, prob_term 1.00000000, prob_wpredict 0.84267817,
     prob_npredict 0.84210877, cycle_period 0
  Finished.

$ cat td-learn/11_out.rg

  S: "c" . .
   | "d"
   | "e" . . .
   | "f" .
   | "i" . .
   | "j"
   | "k" .
   | "b" . . ( [ "b" "d" "i" "j" ]
             | [ "c" "e" "k" ]
             | [ "f" "h" ] .
             | "g" .
             )
   | "g" ( [ "c" "g" ]
         | "e" . . .
         | "h" . . .
         | [ "i" "k" ] .
         | "j"
         | "b" . ( [ "b" "h" ] .
                 | [ "c" "d" "e" "f" "k" ]
                 | [ "g" "i" "j" ]
                 )
         | "d" ( "b"
               | "c"
               | [ "d" "k" ] . .
               | "g" .
               | "h" . .
               | "i" .
               | [ "e" "f" ] ( [ "b" "k" ] .
                             | "c"
                             | "g"
                             | [^ "b" "c" "g" "k" ] .
                             )
               | "j" ( [ "c" "i" ] .
                     | "e"
                     | "k"
                     | [^ "c" "e" "i" "k" ] .
                     )
               )
         | "f" . ( [ "b" "c" "e" "k" ]
                 | [ "d" "f" "g" "j" ]
                 | "h" .
                 | "i" .
                 )
         )
   | "h" . ( "b" . .
           | "c"
           | [ "g" "h" ] .
           | "j"
           | [ "d" "f" ] ( [ "b" "f" "i" ] .
                         | [ "c" "e" "k" ]
                         | [ "d" "g" "j" ]
                         | "h" .
                         )
           | [ "e" "i" "k" ] ( [ "b" "h" ] .
                             | [ "c" "e" "j" ]
                             | [ "d" "f" "i" "k" ]
                             | "g" .
                             )
           )
  ;

$ cat td-learn/11_out.pcfg

  S: "d"           [0.19994171]  // 3430   1.00000000
   | "i" "k" "j"   [0.12859225]  // 2206   1.00000000
   | "h" "e" L3_2  [0.67146604]  // 11519
  ;  // 17155
  
  L3_2: "b" "f" "g"  [0.66811355]  // 7696  1.00000000
      | "c"          [0.33188645]  // 3823  1.00000000
  ;  // 11519

$ ./topdown -i-1 --os=seq/11_random.seq --oo=- gram/11.rg seq/11-60k.seq

  [0]: prob_gram 0.06708177, prob_term 0.07007359, prob_wpredict 0.59180247,
       prob_npredict 0.55956131, cycle_period 3392
  prob_epredict 0.55956131

$ ./topdown -i1 --os=seq/11_predict.seq --oo=- td-learn/11_out.rg seq/11-60k.seq

  [0]: prob_gram 0.68192993, prob_term 1.00000000, prob_wpredict 0.84267817,
       prob_npredict 0.84210877, cycle_period 0
  prob_epredict 0.84210877

$ ./pcfg-predict-eval --prob-rand=0.55956131 gram/11.pcfg seq/11_predict.seq

  {
      "seq_len"              : 59997,
      "wpredict_max"         : 50534.57999997,
      "npredict_actual"      : 50524,
      "wpredict_rand"        : 33572.0,
      "prob_wpredict_max"    : 0.84228511,
      "prob_npredict_actual" : 0.84210877,
      "prob_npredict_rand"   : 0.55956131,
      "efficiency_rand, %"   : 99.9
  }

Next: , Previous: , Up: Examples   [Contents][Index]