a6e708f37f
Revert "Replacing old implementation with working implementation"
This reverts commit 1e121f45e2
.
Please enter the commit message for your changes. Lines starting
with '#' will be ignored, and an empty message aborts the commit.
Committer: tom <tom@lim.(none)>
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: _old/app/Makefile
deleted: _old/app/conf/Makefile
deleted: _old/app/conf/compiledic.conf
deleted: _old/app/conf/cor.conf
deleted: _old/app/conf/dgc.conf
deleted: _old/app/conf/dgp.conf
deleted: _old/app/conf/gph.conf
deleted: _old/app/conf/grp.conf
deleted: _old/app/conf/gue.conf
deleted: _old/app/conf/kor.conf
deleted: _old/app/conf/lem.conf
deleted: _old/app/conf/mar.conf
deleted: _old/app/conf/ser.conf
deleted: _old/app/conf/utt.conf
modified: _old/app/src/common/Makefile
modified: _old/app/src/compiledic/Makefile
modified: _old/app/src/compiledic/aut2fsa.cc
modified: _old/app/src/cor/Makefile
modified: _old/app/src/dgp/Makefile
new file: _old/app/src/dgp/canonize
new file: _old/app/src/dgp/dgc
modified: _old/app/src/dgp/grammar.hh
modified: _old/app/src/dgp/mgraph.hh
modified: _old/app/src/dgp/sgraph.hh
modified: _old/app/src/dgp/thesymbols.hh
new file: _old/app/src/dgp/tre
modified: _old/app/src/gue/Makefile
modified: _old/app/src/gue/guess.cc
modified: _old/app/src/kor/Makefile
modified: _old/app/src/kor/corlist.cc
modified: _old/app/src/kor/corr.cc
new file: _old/app/src/kor/corr.hh
modified: _old/app/src/kor/main.cc
modified: _old/app/src/lem/Makefile
modified: _old/app/src/lem/lem.cc
modified: _old/app/src/lib/Makefile
modified: _old/app/src/lib/auttools.cc
modified: _old/app/src/lib/symtab.cc
modified: _old/app/src/lib/tft.h
modified: _old/app/src/lib/tfti.h
modified: _old/app/src/lib/ttrans.h
modified: _old/app/src/lib/word.cc
modified: _old/app/src/lib/word.h
modified: _old/app/src/tok.c/Makefile
modified: _old/app/src/tok.c/cmdline_tok.ggo
modified: _old/app/src/tok.c/common_tok.cc
modified: _old/app/src/tok/Makefile
modified: _old/nawszelkiwypadek/tools/aut2fsa
modified: _old/nawszelkiwypadek/tools/cor_dic/makeLabels.pl
modified: _old/nawszelkiwypadek/tools/cor_dic/prep.pl
modified: _old/nawszelkiwypadek/tools/fsm2aut
modified: _old/nawszelkiwypadek/tools/gue_dic/canon.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/compile_user_dict.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/count_prefs.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/cut_prefs.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/makeLabels.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/prep.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/prep_user_dict.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/rmDup.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/stat.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/stat_pre.pl
modified: _old/nawszelkiwypadek/tools/lem_dic/makeLabels.pl
modified: _old/nawszelkiwypadek/tools/lem_dic/prep.pl
modified: auto/defaults
modified: auto/options
modified: auto/output/Makefile
modified: auto/output/config_h
modified: auto/summary
modified: configure
96 lines
2.2 KiB
Raku
Executable File
96 lines
2.2 KiB
Raku
Executable File
#! /usr/bin/perl
|
|
|
|
use locale;
|
|
|
|
######################################################
|
|
# na wejściu znajduje się plik zawierający linie #
|
|
# postaci: #
|
|
# slowo;opis #
|
|
# #
|
|
# na wyjściu ma się znaleźć plik zawierający linie: #
|
|
# końcówka(rev);prawdopodobieństwo;opis #
|
|
# gdzie: #
|
|
# - końcówka(rev) jest końcówką wyrazu zapisaną #
|
|
# w odwrotnej kolejności, dla każdego wyrazu #
|
|
# w słowniku wypisujemy końcówki o długościach #
|
|
# od 1 do długości wyrazu, #
|
|
# - prawdopodobieństwo jest prawdopodobieństwem #
|
|
# wystąpienia danego opisu dla danej końcówki #
|
|
# (obliczonym na podstwie statystycznej analizy #
|
|
# słownika), np: 250 oznacza, ze opis popjawia sie #
|
|
# 1 raz na 4 wystąpienia końcówki. #
|
|
# Zapisana zostaje odwrotność prawdopodobieństwa #
|
|
# aby scieżka najbardziej prawdopodobna miała #
|
|
# najmniejszy koszt. #
|
|
######################################################
|
|
|
|
######
|
|
#STALE
|
|
#
|
|
# Jak bardzo prawdopodobna musi być dana ścieżka, aby
|
|
# brać ją pod uwagę? (w promilach)
|
|
$MIN_PROB = 0;
|
|
#
|
|
# Maksymalna ilość powtórzeń danej końcówki (brane od
|
|
# najbardziej prawdopodbnej w dół
|
|
$MAX_PATH = 10;
|
|
#
|
|
######
|
|
|
|
@input = <>;
|
|
|
|
#$max = 0;
|
|
|
|
#for $m (@input) {
|
|
# $m =~ /(\w+);.*$/;
|
|
# if (length($1) > $max) {
|
|
# $max = length($1);
|
|
# }
|
|
#}
|
|
|
|
$n = 1; #$max;
|
|
|
|
$go = 1;
|
|
|
|
while ($n<7) {
|
|
|
|
my %prefiksy;
|
|
my $sumy;
|
|
|
|
$go = 0;
|
|
for $m (@input) {
|
|
if ($m =~ /^(\w{$n})\w*;(.*)$/) {
|
|
$go = 1;
|
|
$prefiksy{$1.";".$2}++;
|
|
$sumy{$1}++;
|
|
}
|
|
}
|
|
|
|
print "\n";
|
|
|
|
for $prefiks (keys %prefiksy) {
|
|
$prefiks =~ /^(.*);(.*)$/;
|
|
$p = $prefiksy{$prefiks} / $sumy{$1};
|
|
$p *= 1000; #wartosc w promilach
|
|
|
|
if ($p <= $MIN_PROB) {
|
|
next;
|
|
}
|
|
|
|
#if ($p == 1000) {
|
|
# $p--;
|
|
#}
|
|
|
|
$p = 1000 - $p; #odwrotnosc
|
|
# $rev = reverse($1);
|
|
# opakowujemy znak '-' znakami [] ;)
|
|
$opis = $2;
|
|
$opis =~ s/-/\[-\]/;
|
|
|
|
printf "%s~%.0f;%s\n", $1, $p, $opis;
|
|
}
|
|
|
|
$n++;
|
|
|
|
}
|