HFST3: различия между версиями

Материал из Wiki FU-Lab
Перейти к навигации Перейти к поиску
 
(не показано 50 промежуточных версий 2 участников)
Строка 6: Строка 6:
Эта библиотека была разработана в исследовательской лаборатории Google и в Courant Institute (Courant Institute of Mathematical Sciences). Она предназначено для комплексной, гибкой, эффективной работы и хорошо масштабируется для крупных проблем. Это проект с открытым исходным кодом распространяется под лицензией Apache.
Эта библиотека была разработана в исследовательской лаборатории Google и в Courant Institute (Courant Institute of Mathematical Sciences). Она предназначено для комплексной, гибкой, эффективной работы и хорошо масштабируется для крупных проблем. Это проект с открытым исходным кодом распространяется под лицензией Apache.


Чтобы установить OpenFST, выполните следующие команды:
Чтобы установить OpenFST, скачайте [http://www.openfst.org/twiki/bin/view/FST/WebHome '''последнюю версию'''] и, распаковав архив, установите:


wget http://komikyv.ru/downloads/openfst-1.3.1.tar.gz
tar -xzvf openfst-1.3.1.tar.gz
cd openfst-1.3.1/
  ./configure
  ./configure
  make
  make
  sudo make install
  sudo make install


'''Примечание''': все команды (в данном случае и в дальнейшем), кроме '''sudo make install''', выполняйте под обычным (своим) пользователем, а '''sudo make install''' - под root-ом.
Если у вас не установлен компилятор C++, на команде ./configure система выдаст ошибку и соответствующее сообщение. Установите компилятор C++, например, для Mint или Ubuntu:
 
sudo apt-get install g++


== Установка Foma ==
== Установка Foma ==
Строка 22: Строка 21:


  svn co http://foma.googlecode.com/svn/trunk/foma/
  svn co http://foma.googlecode.com/svn/trunk/foma/
cd foma
make
sudo make install
или
wget http://dingo.sbs.arizona.edu/~mhulden/foma-0.9.15alpha.tar.gz
tar -xzvf foma-0.9.15alpha.tar.gz
  cd foma
  cd foma
  make
  make
Строка 28: Строка 35:
'''Примечания''': (установка нижеследующих библиотек стандартная: ./configure, make и sudo make install)
'''Примечания''': (установка нижеследующих библиотек стандартная: ./configure, make и sudo make install)


- для успешной инсталяции Foma установите [http://komikyv.ru/downloads/flex-2.5.37.tar.gz '''flex'''], если он у вас не установлен;
- для успешной инсталяции Foma установите [http://sourceforge.net/projects/flex/files/ '''flex'''], если он у вас не установлен;
 
- также понадобится [ftp://ftp.gnu.org/gnu/bison/ '''bison'''] при его отсутствии, а перед его установкой возможно и [ftp://ftp.gnu.org/gnu/m4/ '''m4'''];
 
- возможно [ftp://ftp.gnu.org/gnu/readline/ '''readline'''];
 
- и, наконец, [ftp://ftp.gnu.org/gnu/termcap/ '''termcap'''].
 
Например, для Mint или Ubuntu '''flex''', '''m4''' и '''bison''' можно установить:


- также понадобится [http://komikyv.ru/downloads/bison-2.6.tar.gz '''bison'''] при его отсутствии, а перед его установкой возможно и [http://komikyv.ru/downloads/m4-1.4.16.tar.gz '''m4'''];
sudo apt-get install flex m4 bison


- возможно [http://komikyv.ru/downloads/readline-6.2.tar.gz '''readline'''];
Также, если в Mint или Ubuntu "ругается" на "zlib.h", то:


- и, наконец, [http://komikyv.ru/downloads/termcap-1.3.1.tar.gz '''termcap'''].
sudo apt-get install zlib1g-dev


== Установка SFST ==
== Установка SFST ==
Строка 40: Строка 55:
Скачайте и установите '''SFST''':
Скачайте и установите '''SFST''':


  wget ftp://ftp.ims.uni-stuttgart.de/pub/corpora/SFST/SFST-1.4.6a.tar.gz
  wget ftp://ftp.ims.uni-stuttgart.de/pub/corpora/SFST/SFST-1.4.6g.tar.gz
  tar -xzf SFST-1.4.6a.tar.gz
  tar -xzvf SFST-1.4.6g.tar.gz
  cd SFST/src
  cd SFST/src
  make
  make
Строка 48: Строка 63:
  sudo make libinstall # - required for sfst support in HFST
  sudo make libinstall # - required for sfst support in HFST


'''Примечание''': для успешной инсталяции SFST возможно понадобится [http://komikyv.ru/downloads/ncurses-5.9.tar.gz '''ncurses'''] (установка стандартная: ./configure, make и sudo make install).
'''Примечание''': для успешной инсталяции SFST возможно понадобится [ftp://ftp.gnu.org/gnu/ncurses/ '''ncurses'''] (установка стандартная: ./configure, make и sudo make install).


== Установка HFST3 ==
== Установка HFST3 ==
Строка 57: Строка 72:
  cd hfst3/
  cd hfst3/
  ./autogen.sh
  ./autogen.sh
  ./configure --with-foma --enable-proc --enable-lexc
  ./configure --enable-all-tools --with-unicode-handler=glib
./scripts/generate-cc-files.sh
  make
  make
  sudo make install
  sudo make install
 
При ошибке configure: WARNING: foma licensing exception is limited to HFST team’s redistribution;
if you consider GPLv2 strict and Apache licence conflicting you may not _redistribute_ your
binaries
Использовать --without-foma
'''Примечания''':
'''Примечания''':


- после выполнения команды '''./autogen.sh''' у вас может появиться ошибка, если не установлен '''libtool''', установите [http://komikyv.ru/downloads/libtool-2.2.10.tar.gz '''libtool'''] (установка стандартная: ./configure, make и sudo make install);
- после выполнения команды '''./autogen.sh''' у вас может появиться ошибка, если не установлен '''libtool''', установите [ftp://ftp.gnu.org/gnu/libtool/ '''libtool'''] (установка стандартная: ./configure, make и sudo make install);


- если после команды '''./configure --with-foma --enable-proc --enable-lexc''' выдаст ошибку:
- если после команды '''./configure --with-foma --enable-proc --enable-lexc''' выдаст подобную ошибку:


  ./configure: line 19950: syntax error near unexpected token `fi'
  ./configure: line 19950: syntax error near unexpected token `fi'
  ./configure: line 19950: `fi'
  ./configure: line 19950: `fi'


откройте в любом текстовом редакторе файл '''nfst3/configure''' и найдите строчку: '''if test "x$with_unicode_handler" != "xglib"; then''', перед этой строчкой и следующей '''fi''' поставьте знак '''#''':
то обновите [ftp://ftp.gnu.org/gnu/autoconf/ '''AutoConf'''] и [ftp://ftp.gnu.org/gnu/automake/ '''AutoMake'''] на более свежие версии.
 
Если в Mint или Ubuntu после команды '''make''' ругается на "glib.h", то установите:
 
sudo apt-get install libglib2.0-dev
 
А затем заново начните с "./configure --..."
 
==Установка Finite State Morphology==
Перейдите по ссылке: [http://www.stanford.edu/~laurik/.book2software/ Finite State Morphology] и нажмите "принять условия лицензионного соглашения". Далее нажмите "скачать", например, "Linux 32" и "бинарные файлы". Распакуйте файл '''bin.tar.gz''' и скопируйте файлы: '''lexc, lookup, tokenize, twolc, xfst''' в папку: /bin.
 
==Установка Saxon==
После компиляции командой '''make''' может выдать следующую ошибку:
 
...
Could not find the main class: net.sf.saxon.Transform. Program will exit.
...
 
Это означает, что не установлен Saxon. Перейдите по ссылке: [http://sourceforge.net/projects/saxon/files/Saxon-HE/ Saxon-HE] и скачайте файл, например: [http://sourceforge.net/projects/saxon/files/Saxon-HE/9.5/SaxonHE9-5-1-6J.zip/download '''SaxonHE9-5-1-6J.zip''']. Распакуйте файлы и поместите их, например, в папку: /home/user/lib/. Файл saxon9he.jar для удобства можно переименовать в saxon9.jar.
 
Отредактируйте .bash_profile, например: gedit .bash_profile. Он должен быть примерно таким: (В [[Mint]] данный файл называется '''.profile''')
 
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
export CLASSPATH=$CLASSPATH=/home/user/lib/saxon9.jar
export GTHOME=/home/user/main
export GTCORE=$GTHOME/gtcore
test -r /home/user/main/gt/script/init.d/init.sh && . /home/user/main/gt/script/init.d/init.sh
 
Далее выполните следующую команду:
 
. .bash_profile
 
А для [[Mint]]:
 
. .profile
 
==Установка Hfst-ospell==
Скачайте и распакуйте архив: [https://github.com/libarchive/libarchive/archive/v3.1.2.zip libarchive-3.1.2]
 
Установите '''cmake''', для Mac OS:
 
sudo port install cmake
 
А для Mint или Ubuntu, например:
 
sudo apt-get install cmake
 
Перейдите в распакованную папку '''libarchive-3.1.2''' и выполните команды:
 
./build/autogen.sh
autoreconf -i -v
./configure --without-xml2 --without-nettle --without-bz2lib --without-lzo2 --without-lzma --without-iconv
make
sudo make install


  # remove if not needed
Скачайте и распакуйте архив: [https://github.com/leethomason/tinyxml2/archive/master.zip TinyXML2]
  # if test "x$with_unicode_handler" != "xglib"; then
 
Перейдите в распакованную папку '''tinyxml2-master''' и выполните команды:
# fi
 
  cmake CMakeLists.txt
  make
sudo make install
 
Скачайте, например, в домашнюю папку библиотку '''hfst-ospell''':
 
svn co svn://svn.code.sf.net/p/hfst/code/trunk/hfst-ospell
 
Далее:
 
cd hfst-ospell
./configure --enable-zhfst --enable-xml
make
sudo make install
 
== Ссылки ==
*[[SVN]]
*[http://giellatekno.uit.no/doc/infra/compiling_HFST3.html Центр саамских языковых технологий "Гиеллатекно" (компиляция HFST)]
*[http://giellatekno.uit.no/doc/infra/BuildingHfst-ospellForInclusionInVoikko.html Компиляция hfst-ospell]
*[http://giellatekno.uit.no/doc/infra/CompilingVoikkoWithHfst.html Compiling Voikko With Hfst]
*[http://en.wikipedia.org/wiki/Foma_%28software%29 Foma (software)]
*[https://code.google.com/p/foma/ Сайт проекта Foma]
*[http://www.ims.uni-stuttgart.de/projekte/gramotron/SOFTWARE/SFST.html SFST - Stuttgart Finite State Transducer Tools]
*[http://www.ling.helsinki.fi/kieliteknologia/tutkimus/hfst/ Helsinki Finite-State Transducer Technology (HFST)]
*[ftp://prep.ai.mit.edu/pub/gnu/ GNU библиотеки]
*[http://web.stanford.edu/~laurik/fsmbook/home.html Finite State Morphology--The Book]
*[https://kitwiki.csc.fi/twiki/bin/view/KitWiki/HfstHome Helsinki Finite-State Transducer Technology (HFST) (Wiki)]


далее сохраните файл '''nfst3/configure''' и запустите снова: '''./configure --with-foma --enable-proc --enable-lexc'''.
[[Category:Linux]]

Текущая версия от 11:15, 29 сентября 2015

Установка OpenFST

OpenFST — библиотека для конструирования, комбинирования и поиска взвешенных конечных преобразователей (англ. weighted finite-state transducers — FSTs).

Конечные преобразователи играют ключевую роль в распознавании и синтезе речи, машинном переводе, оптическом распознавании символов. Часто они используются для представления вероятностных моделей (например, n-грамм модели (n-gram)).

Эта библиотека была разработана в исследовательской лаборатории Google и в Courant Institute (Courant Institute of Mathematical Sciences). Она предназначено для комплексной, гибкой, эффективной работы и хорошо масштабируется для крупных проблем. Это проект с открытым исходным кодом распространяется под лицензией Apache.

Чтобы установить OpenFST, скачайте последнюю версию и, распаковав архив, установите:

./configure
make
sudo make install

Если у вас не установлен компилятор C++, на команде ./configure система выдаст ошибку и соответствующее сообщение. Установите компилятор C++, например, для Mint или Ubuntu:

sudo apt-get install g++

Установка Foma

Скачайте и установите Foma с официального сайта проекта:

svn co http://foma.googlecode.com/svn/trunk/foma/
cd foma
make
sudo make install

или

wget http://dingo.sbs.arizona.edu/~mhulden/foma-0.9.15alpha.tar.gz
tar -xzvf foma-0.9.15alpha.tar.gz
cd foma
make
sudo make install

Примечания: (установка нижеследующих библиотек стандартная: ./configure, make и sudo make install)

- для успешной инсталяции Foma установите flex, если он у вас не установлен;

- также понадобится bison при его отсутствии, а перед его установкой возможно и m4;

- возможно readline;

- и, наконец, termcap.

Например, для Mint или Ubuntu flex, m4 и bison можно установить:

sudo apt-get install flex m4 bison

Также, если в Mint или Ubuntu "ругается" на "zlib.h", то:

sudo apt-get install zlib1g-dev

Установка SFST

Скачайте и установите SFST:

wget ftp://ftp.ims.uni-stuttgart.de/pub/corpora/SFST/SFST-1.4.6g.tar.gz
tar -xzvf SFST-1.4.6g.tar.gz
cd SFST/src
make
sudo make install    # - optional when building for the HFST package
sudo make maninstall # - optional (installs man pages)
sudo make libinstall # - required for sfst support in HFST

Примечание: для успешной инсталяции SFST возможно понадобится ncurses (установка стандартная: ./configure, make и sudo make install).

Установка HFST3

Скачайте HFST3 по svn и установите его:

svn co http://svn.code.sf.net/p/hfst/code/trunk/hfst3/
cd hfst3/
./autogen.sh
./configure --enable-all-tools --with-unicode-handler=glib
./scripts/generate-cc-files.sh
make
sudo make install

При ошибке configure: WARNING: foma licensing exception is limited to HFST team’s redistribution; 
if you consider GPLv2 strict and Apache licence conflicting you may not _redistribute_ your 
binaries
Использовать --without-foma

Примечания:

- после выполнения команды ./autogen.sh у вас может появиться ошибка, если не установлен libtool, установите libtool (установка стандартная: ./configure, make и sudo make install);

- если после команды ./configure --with-foma --enable-proc --enable-lexc выдаст подобную ошибку:

./configure: line 19950: syntax error near unexpected token `fi'
./configure: line 19950: `fi'

то обновите AutoConf и AutoMake на более свежие версии.

Если в Mint или Ubuntu после команды make ругается на "glib.h", то установите:

sudo apt-get install libglib2.0-dev

А затем заново начните с "./configure --..."

Установка Finite State Morphology

Перейдите по ссылке: Finite State Morphology и нажмите "принять условия лицензионного соглашения". Далее нажмите "скачать", например, "Linux 32" и "бинарные файлы". Распакуйте файл bin.tar.gz и скопируйте файлы: lexc, lookup, tokenize, twolc, xfst в папку: /bin.

Установка Saxon

После компиляции командой make может выдать следующую ошибку:

...
Could not find the main class: net.sf.saxon.Transform. Program will exit.
...

Это означает, что не установлен Saxon. Перейдите по ссылке: Saxon-HE и скачайте файл, например: SaxonHE9-5-1-6J.zip. Распакуйте файлы и поместите их, например, в папку: /home/user/lib/. Файл saxon9he.jar для удобства можно переименовать в saxon9.jar.

Отредактируйте .bash_profile, например: gedit .bash_profile. Он должен быть примерно таким: (В Mint данный файл называется .profile)

# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
	. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
export CLASSPATH=$CLASSPATH=/home/user/lib/saxon9.jar
export GTHOME=/home/user/main
export GTCORE=$GTHOME/gtcore
test -r /home/user/main/gt/script/init.d/init.sh && . /home/user/main/gt/script/init.d/init.sh

Далее выполните следующую команду:

. .bash_profile

А для Mint:

. .profile

Установка Hfst-ospell

Скачайте и распакуйте архив: libarchive-3.1.2

Установите cmake, для Mac OS:

sudo port install cmake

А для Mint или Ubuntu, например:

sudo apt-get install cmake

Перейдите в распакованную папку libarchive-3.1.2 и выполните команды:

./build/autogen.sh
autoreconf -i -v
./configure --without-xml2 --without-nettle --without-bz2lib --without-lzo2 --without-lzma --without-iconv
make
sudo make install

Скачайте и распакуйте архив: TinyXML2

Перейдите в распакованную папку tinyxml2-master и выполните команды:

cmake CMakeLists.txt
make
sudo make install

Скачайте, например, в домашнюю папку библиотку hfst-ospell:

svn co svn://svn.code.sf.net/p/hfst/code/trunk/hfst-ospell

Далее:

cd hfst-ospell
./configure --enable-zhfst --enable-xml
make
sudo make install

Ссылки