fix: reformat Phonetisaurus to something reasonable #31
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Run Tests | |
on: | |
- push | |
- pull_request | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
path: sphinxtrain | |
submodules: recursive | |
- name: Install | |
run: | | |
sudo apt-get install libfst-dev libngram-dev cmake \ | |
ninja-build libopenblas-dev python3-numpy python3-scipy | |
- name: Build | |
run: | | |
cmake -S sphinxtrain -B sphinxtrain/build -G Ninja -DBUILD_G2P=ON | |
cmake --build sphinxtrain/build | |
- name: Run tests | |
run: | | |
cmake --build sphinxtrain/build --target test | |
- name: Checkout PocketSphinx | |
uses: actions/checkout@v3 | |
with: | |
repository: cmusphinx/pocketsphinx | |
path: pocketsphinx | |
- name: Build PocketSphinx | |
run: | | |
cmake -S pocketsphinx -B pocketsphinx/build -G Ninja | |
cmake --build pocketsphinx/build | |
cp pocketsphinx/build/pocketsphinx_batch sphinxtrain/build/ | |
- name: Archive build | |
run: | | |
tar --exclude=.git -cf build.tar sphinxtrain pocketsphinx | |
- name: Upload archive | |
uses: actions/upload-artifact@v3 | |
with: | |
name: build | |
path: build.tar | |
train-inplace: | |
runs-on: ubuntu-latest | |
needs: [build] | |
steps: | |
- name: Download build | |
id: download | |
uses: actions/download-artifact@v3 | |
with: | |
name: build | |
- name: Install | |
run: | | |
tar xf build.tar | |
sudo apt-get install libfst-dev libngram-dev cmake \ | |
ninja-build libopenblas-dev python3-numpy python3-scipy | |
- name: Checkout AN4 | |
uses: actions/checkout@v3 | |
with: | |
repository: cmusphinx/an4 | |
path: an4 | |
- name: Train AN4 (inplace) | |
run: | | |
cd an4 | |
python3 ../sphinxtrain/scripts/sphinxtrain -t an4 setup | |
python3 ../sphinxtrain/scripts/sphinxtrain run | |
- name: Archive AN4 logs | |
if: success() || failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: an4-logdir-${{ github.job }} | |
path: an4/logdir | |
train-installed: | |
runs-on: ubuntu-latest | |
needs: [build] | |
steps: | |
- name: Download build | |
id: download | |
uses: actions/download-artifact@v3 | |
with: | |
name: build | |
- name: Install | |
run: | | |
tar xf build.tar | |
sudo apt-get install libfst-dev libngram-dev cmake \ | |
ninja-build libopenblas-dev python3-numpy python3-scipy | |
sudo cmake --build sphinxtrain/build --target install | |
sudo cmake --build pocketsphinx/build --target install | |
- name: Checkout AN4 | |
uses: actions/checkout@v3 | |
with: | |
repository: cmusphinx/an4 | |
path: an4 | |
- name: Train AN4 (installed) | |
run: | | |
cd an4 | |
sphinxtrain -t an4 setup | |
sphinxtrain run | |
- name: Archive AN4 logs | |
if: success() || failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: an4-logdir-${{ github.job }} | |
path: an4/logdir | |
train-parallel: | |
runs-on: ubuntu-latest | |
needs: [build] | |
steps: | |
- name: Download build | |
id: download | |
uses: actions/download-artifact@v3 | |
with: | |
name: build | |
- name: Install | |
run: | | |
tar xf build.tar | |
sudo apt-get install libfst-dev libngram-dev cmake \ | |
ninja-build libopenblas-dev python3-numpy python3-scipy | |
sudo cmake --build sphinxtrain/build --target install | |
sudo cmake --build pocketsphinx/build --target install | |
- name: Checkout AN4 | |
uses: actions/checkout@v3 | |
with: | |
repository: cmusphinx/an4 | |
path: an4 | |
- name: Train AN4 (parallel) | |
run: | | |
cd an4 | |
sphinxtrain -t an4 setup | |
perl -i -pe 's/(NPART.*)1/${1}4/' etc/sphinx_train.cfg | |
perl -i -pe 's/(QUEUE_TYPE.*Queue)/${1}::POSIX/' etc/sphinx_train.cfg | |
sphinxtrain run | |
- name: Archive AN4 logs | |
if: success() || failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: an4-logdir-${{ github.job }} | |
path: an4/logdir | |
train-align: | |
runs-on: ubuntu-latest | |
needs: [build] | |
steps: | |
- name: Download build | |
id: download | |
uses: actions/download-artifact@v3 | |
with: | |
name: build | |
- name: Install | |
run: | | |
tar xf build.tar | |
sudo apt-get install libfst-dev libngram-dev cmake \ | |
ninja-build libopenblas-dev python3-numpy python3-scipy | |
sudo cmake --build sphinxtrain/build --target install | |
sudo cmake --build pocketsphinx/build --target install | |
- name: Checkout AN4 | |
uses: actions/checkout@v3 | |
with: | |
repository: cmusphinx/an4 | |
path: an4 | |
- name: Train AN4 (align) | |
run: | | |
cd an4 | |
sphinxtrain -t an4 setup | |
perl -i -pe 's/((?:FORCEDALIGN|FALIGN).*)no/${1}yes/' etc/sphinx_train.cfg | |
sphinxtrain run | |
- name: Archive AN4 logs | |
if: success() || failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: an4-logdir-${{ github.job }} | |
path: an4/logdir | |
train-g2p-lda-vtln: | |
runs-on: ubuntu-latest | |
needs: [build] | |
steps: | |
- name: Download build | |
id: download | |
uses: actions/download-artifact@v3 | |
with: | |
name: build | |
- name: Install | |
run: | | |
tar xf build.tar | |
sudo apt-get install libfst-dev libngram-dev cmake \ | |
ninja-build libopenblas-dev python3-numpy python3-scipy | |
sudo cmake --build sphinxtrain/build --target install | |
sudo cmake --build pocketsphinx/build --target install | |
- name: Checkout AN4 | |
uses: actions/checkout@v3 | |
with: | |
repository: cmusphinx/an4 | |
path: an4 | |
- name: Train AN4 (G2P+LDA+VTLN) | |
run: | | |
cd an4 | |
sphinxtrain -t an4 setup | |
perl -i -pe 's/(NPART.*)1/${1}2/' etc/sphinx_train.cfg | |
perl -i -pe 's/(QUEUE_TYPE.*Queue)/${1}::POSIX/' etc/sphinx_train.cfg | |
perl -i -pe 's/((?:G2P|LDA|VTLN).*)no/${1}yes/' etc/sphinx_train.cfg | |
perl -i -pe 's/(VTLN_START.*)0\.80/${1}0.90/' etc/sphinx_train.cfg | |
perl -i -pe 's/(VTLN_END.*)1\.40/${1}1.10/' etc/sphinx_train.cfg | |
sphinxtrain run | |
- name: Archive AN4 logs | |
if: success() || failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: an4-logdir-${{ github.job }} | |
path: an4/logdir | |
train-semi: | |
runs-on: ubuntu-latest | |
needs: [build] | |
steps: | |
- name: Download build | |
id: download | |
uses: actions/download-artifact@v3 | |
with: | |
name: build | |
- name: Install | |
run: | | |
tar xf build.tar | |
sudo apt-get install libfst-dev libngram-dev cmake \ | |
ninja-build libopenblas-dev python3-numpy python3-scipy | |
sudo cmake --build sphinxtrain/build --target install | |
sudo cmake --build pocketsphinx/build --target install | |
- name: Checkout AN4 | |
uses: actions/checkout@v3 | |
with: | |
repository: cmusphinx/an4 | |
path: an4 | |
- name: Train AN4 (semi) | |
run: | | |
cd an4 | |
sphinxtrain -t an4 setup | |
perl -i -pe 's/^(\$CFG_HMM_TYPE.*cont)/#$1/' etc/sphinx_train.cfg | |
perl -i -pe 's/^#(\$CFG_HMM_TYPE.*semi)/$1/' etc/sphinx_train.cfg | |
perl -i -pe 's/(DENSITIES.*= )\d+/${1}64/' etc/sphinx_train.cfg | |
perl -i -pe 's/(MAX_ITERATIONS.*= )\d+/${1}5/' etc/sphinx_train.cfg | |
sphinxtrain run | |
- name: Archive AN4 logs | |
if: success() || failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: an4-logdir-${{ github.job }} | |
path: an4/logdir | |
train-ptm: | |
runs-on: ubuntu-latest | |
needs: [build] | |
steps: | |
- name: Download build | |
id: download | |
uses: actions/download-artifact@v3 | |
with: | |
name: build | |
- name: Install | |
run: | | |
tar xf build.tar | |
sudo apt-get install libfst-dev libngram-dev cmake \ | |
ninja-build libopenblas-dev python3-numpy python3-scipy | |
sudo cmake --build sphinxtrain/build --target install | |
sudo cmake --build pocketsphinx/build --target install | |
- name: Checkout AN4 | |
uses: actions/checkout@v3 | |
with: | |
repository: cmusphinx/an4 | |
path: an4 | |
- name: Train AN4 (PTM) | |
run: | | |
cd an4 | |
sphinxtrain -t an4 setup | |
perl -i -pe 's/^(\$CFG_HMM_TYPE.*cont)/#$1/' etc/sphinx_train.cfg | |
perl -i -pe 's/^#(\$CFG_HMM_TYPE.*ptm)/$1/' etc/sphinx_train.cfg | |
perl -i -pe 's/(DENSITIES.*= )\d+/${1}16/' etc/sphinx_train.cfg | |
perl -i -pe 's/(MAX_ITERATIONS.*= )\d+/${1}5/' etc/sphinx_train.cfg | |
sphinxtrain run | |
- name: Archive AN4 logs | |
if: success() || failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: an4-logdir-${{ github.job }} | |
path: an4/logdir |