esl-mixdchlet(1)

πŸ“¦
version 3.3.2 Β· 2 versions
, in fedora 43, fedora 44

✨ esl-mixdchlet ✨

okay bestie, sit down, we're doing math and it's gonna be cute πŸ’… this one lives in the Easel manual, section 1, and it's literally called esl-mixdchlet. say it with me: esl-mixdchlet. iconic. it's giving "fancy statistics but make it a little CLI miniapp" πŸŽ€


🌸 NAME 🌸

esl-mixdchlet β€” fitting mixture Dirichlets to count data

like, it takes your counts and it fits a mixture Dirichlet to them. obsessed fr fr πŸ’–


🌈 SYNOPSIS 🌈

esl-mixdchlet fit [options] Q K in_countfile out_mixchlet
  (train a new mixture Dirichlet)

esl-mixdchlet score [options] mixdchlet_file counts_file
  (calculate log likelihood of count data, given mixture Dirichlet)

esl-mixdchlet gen [options] mixdchlet_file
  (generate synthetic count data from mixture Dirichlet)

esl-mixdchlet sample [options]
  (sample a random mixture Dirichlet for testing)

four subcommands, four little vibes, all in one tiny program ✨


πŸ’œ DESCRIPTION πŸ’œ

so esl-mixdchlet is a miniapp whose whole personality is training mixture Dirichlet priors β€” yes, the exact kind of priors that HMMER and Infernal use πŸ‘‘ it has four subcommands: fit, score, gen, and sample.

the main character here is absolutely fit β€” that's the subcommand that fits a brand new mixture Dirichlet distribution to a whole collection of count vectors. think emission or transition count vectors from Pfam or Rfam training sets, bestie 🧚

more specifically: esl-mixdchlet fit fits a new mixture Dirichlet distribution with Q mixture components to the count vectors (of alphabet size K) in the input file in_countfile, and then saves that mixture Dirichlet into the output file out_mixchlet. slay.

now about that input file, in_countfile: it holds one count vector of length K fields per line, and honestly it can have any number of lines, we're not gatekeeping 🫢 blank lines and lines starting in # (comments, periodt) get ignored. the fields are nonnegative real values β€” and ngl they do not have to be integers, because they're allowed to be weighted counts. yes, decimals are welcome here πŸ’…

the format of a mixture Dirichlet file out_mixchlet goes like this, and I need you to lock in:

  • the first line has two fields, K Q, where K is the alphabet size and Q is the number of mixture components.
  • the next Q lines consist of K+1 fields. the first field is the mixture coefficient q_k, followed by K fields with the Dirichlet alpha[k][a] parameters for this component.

that's it, that's the whole file shape ✨

and the other subcommands:

  • esl-mixdchlet score calculates the log likelihood of the count vector data in counts_file, given the mixture Dirichlet in mixdchlet_file.
  • esl-mixdchlet gen generates synthetic count data, given a mixture Dirichlet.
  • esl-mixdchlet sample creates a random mixture Dirichlet distribution and outputs it to standard output.

πŸŽ€ OPTIONS FOR FIT SUBCOMMAND πŸŽ€

  • -h β€” print brief help specific to the fit subcommand.
  • -s <seed> β€” set the random number generator seed to nonnegative integer <seed>. the default is 0, which means "use a quasirandom arbitrary seed" (chaotic of it, honestly πŸ™ˆ). values >0 give you reproducible results, so if you want to re-run and get the same thing twice, this is your girl πŸ’–

πŸ¦‹ OPTIONS FOR SCORE SUBCOMMAND πŸ¦‹

  • -h β€” print brief help specific to the score subcommand.

that's the whole list. short king behavior, respect 🫑


🌸 OPTIONS FOR GEN SUBCOMMAND 🌸

  • -h β€” print brief help specific to the gen subcommand.
  • -s <seed> β€” set the random number generator seed to nonnegative integer <seed>. default is 0, which means use a quasirandom arbitrary seed. values >0 give reproducible results.
  • -M <M> β€” generate <M> counts per sampled vector. (default 100.)
  • -N <N> β€” generate <N> count vectors. (default 1000.)

so by default you're getting 1000 vectors of 100 counts each. volume, honey πŸ”Š


⭐ OPTIONS FOR SAMPLE SUBCOMMAND ⭐

  • -h β€” print brief help specific to the sample subcommand.
  • -s <seed> β€” set the random number generator seed to nonnegative integer <seed>. default is 0, meaning quasirandom arbitrary seed. values >0 give reproducible results.
  • -K <K> β€” set the alphabet size to <K>. (default is 20, for amino acids 🧬)
  • -Q <Q> β€” set the number of mixture components to <Q>. (default is 9.)

πŸ”₯ SEE ALSO πŸ”₯


Copyright (C) 2020 Howard Hughes Medical Institute. Freely distributed under the BSD open source license.


πŸ‘‘ AUTHOR πŸ‘‘

http://eddylab.org


no cap, that's the whole page. go fit something pretty πŸ’…

this was Easel 0.48, dated Nov 2020, and that's the esl-mixdchlet(1) manual page β€” thanks for reading, mwah 🫢✨

πŸ“¦ where this page comes from