MemCardsBuilder готов

Завершил работу над экспериментом по написанию кода на Scala и знакомством с библиотекой LuceneMorphology – проектиком MemCardsBuilder. Дабы не тратить время совсем уж впустую, я старался сделать эксперимент максимально полезным при минимальном функционале. Поэтому, функций не так уж и много:

  1. Анализ заданных текстов и выявление частот вхождения слов с учетом морфологии. Благодаря учету морфологии see, saw, seen расцениваются как одно слово, а не 3.
  2. Загрузка переводов с lingvo.yandex.ru для полученного словаря.
  3. Построение ментальных карт в формате разделения при помощи табуляций. Данный формат воспринимает такое замечательное приложение как Anki. При импорте карт в Anki, необходимо выставить галочку “Allow HTML in fields”.

На данный момент, да и скорей всего не только на данный момент, приложение поддерживает только en -> ru построение карт. В принципе, библиотека LuceneMorphology позволяет организовать ru -> en построение без особых проблем и в MemCardsBuilder заложена такая возможность, просто она не реализована. А вот для организации поддержки чего-то за пределами русский<->английский я не вижу возможностей, т.к. я не нашел какой-то аналогичной библиотеки поддерживающий морфологический анализ для, например, испанского или немецкого языков.

Пример того, как можно запустить приложение:

java -jar MemCardsBuilder-1.0-SNAPSHOT-jar-with-dependencies.jar --from-pos 100 --to-pos 110  -s /path/to/analysed/file/data.txt -d ~/out.txt

Приложение понимает следующие ключи:

  • –from-pos (не обязательный параметр, по умолчанию равен 0) минимальный индекс обрабатываемого слова. Например, был построен словарь из 1000 слов, при задании ключа –from-pos 100, все слова с индексом от 0 до 99 не войдут в результирующую выборку.
  • –to-pos (не обязательный параметр, по умолчанию равен количеству слов) максимальный индекс обрабатываемого слова.
  • –meanings-count (не обязательный параметр, по умолчанию равен 2) максимальное количество значений слова, для каждой из частей речи, включаемых в ментальную карту.
  • -s (обязательный параметр) файл с данными для анализа. Ключ -s может быть использован несколько раз в этом случае все указанные файлы будут обработаны как единый объект.
  • -d (обязательный параметр) файл для записи ментальных карт.

Собранное приложение можно загрузить в двух форматах:

  1. Все в одном флаконе: MemCardsBuilder-1.0-SNAPSHOT-jar-with-dependencies.jar
  2. Только сам проект: MemCardsBuilder-1.0-SNAPSHOT.jar

Leave a Reply