Есть ли что-то лучше, чем библиотека Какаси для сопоставления годжона? - PullRequest
9 голосов
/ 09 октября 2010

«Лучше» в первую очередь означает точность, но меня также интересуют любые другие критерии, по которым другие системы превосходят. Я выбрал привязку Perl Text::Kakasi для правильности по общему признанию ограниченным способом, и она прекрасно работает для наших нужд.

use utf8;
use Encode;
use Text::Kakasi;
use Unicode::Collate;

my $k = Text::Kakasi->new(qw(-iutf8 -outf8 -JH));
my $c = Unicode::Collate->new;

print encode_utf8 $_ for
    map  { $_->[0] }
    sort { $c->cmp($a->[1], $b->[1]) }
    map  { [$_, $k->get($_)] }
    <DATA>;

__DATA__
アメリカ合衆国
アラブ首長国連邦
ロシア連邦
中国
南アフリカ共和国
日本
北京(ペキン)
大阪
東京

Ответы [ 3 ]

5 голосов
/ 27 мая 2012

Единственный другой (серьезный) инструмент преобразования с открытым исходным кодом, о котором я знаю, это N-грамм , не самое явное имя ... У него огромные словари, и он может быть лучше, чем Kakasi.Но я не видел никаких сравнений там.

РЕДАКТИРОВАТЬ:

Я задумался над понятием "лучше" одной библиотеки над другими в этом контексте,Единственное, что можно сделать, это взять словари N-граммы и запустить их против какаси.Если kakasi не может преобразовать некоторые записи N-грамм, можно сказать, что N-грамм лучше, потому что его лексикон более богат - повышая точность сопоставления.

Однако, поскольку корпус на основе кандзислова (которые должны быть преобразованы в кана для правильного сопоставления) не являются конечными - фамилии среди прочих представляют большую проблему, так как их можно прочитать почти любым способом, который вы можете себе представить - не может быть решения, которое обеспечивает 100%охват.Но ОП попросил «лучшее» решение, а не идеальное ...

2 голосов
/ 22 мая 2012

Учитывая, что все, что делает Какаси, - это просто извлекает кана / ромадзи из поставляемых словарей для определенных японских строк, вряд ли вы сможете найти что-то более точное.Точность зависит от качества используемых словарей.

2 голосов
/ 10 октября 2010

Я не уверен в значении слова «авторитетный».

Но я могу сказать, что Какаши - это хорошо известная бесплатная библиотека, которая до сих пор не устарела.

Если вы можете преобразовать строки кандзи в строки хирагана (или катакана) по Какаши, результирующий порядок сортировки будет в порядке.

http://www.utf8 -chartable.de / unicode-utf8-table.pl

...