Lexical Tools

Optimizing 2017 SD-Rule Set - Baseline

I. Get the stats (yes|no) from current year data

  • DIR: ${SUFFIXD_DIR}
  • Program:
    shell> cd ${SUFFIXD_DIR}/bin
    shell> GetSuffixD ${YEAR}
    11
    ALL
  • Outputs:
    • sdRules.stats.rpt.* (sdRules.stats.rpt.pipe is used in this analysis)

II. Establish the baseline: remove all Child SD-Rules and use it as the baseline

  • Create a new directory: ${SUFFIXD_DIR}/data/${YEAR}/dateR/SdRulesOptimum/00.baseline
  • shell> cd ${SUFFIXD_DIR}/data/${YEAR}/dateR/SdRulesOptimum/00.baseline
  • shell> cp -p ../../../data/sdRules.stats.rpt.pipe sdRules.stats.in.${YEAR}
  • shell> cp -p sdRules.stats.in.${YEAR} sdRules.stats.in.${YEAR}.removeChild
  • Comment out (#) all CHILD rules (23)
    shell> fgrep "|CHILD" sdRules.stats.in.2017.removeChild | wc -l
  • shell> ln -sf ./sdRules.stats.in.${YEAR}.removeChild sdRules.stats.in

III. Get the Optimal Set

  • Program:
    shell> cd ${SUFFIXD_DIR}/bin
    shell> GetSdRule ${YEAR}
    1
    others
    00.baseline
    0
  • Outputs:
    • ${SUFFIXD_DIR}/data/${YEAR}/dateR/SdRulesOptimum/00.baseline/sdRules.stats.out.*

IV. Results

The result of this baseline set of SD-Rules includes 119 unique parents/self SD-Rules (no child rules). They are sorted by a descending order of precision (= relevant, retrieved No./retrieved No.) and then retrieved No. rate. The top 85 SD-Rules are used as the optimized SD-Rule set to cover 95.06% system (accumulated) precision and 94.47% system (accumulated) recall rate with a system performance of 1.8953. The total valid instance number is 51,788 (from the last column in ./sdRules.stats.out).

-- Total line no: 145
-- Total comment no: 26
-- Total Sd-Rule no: 119
---------------------------------------
-- Optimum SD-Rules: 85|63.14%|331|209|122|0|$|noun|ist$|noun|2013|ORG_RULE|SELF|95.06%|94.47%|1.8953|48925|51470