Misc updates WGU

main
Eric Ihli 3 years ago
parent 15517a862a
commit 620e55560d

@ -1,5 +1,6 @@
defaults
timeout connect 30s
timeout client 60s
timeout server 120s
mode http

@ -9,4 +9,5 @@ docker run \
--sysctl net.ipv4.ip_unprivileged_port_start=0 \
--mount type=bind,source=$FULLCHAIN_PEM,target=/etc/ssl/cert.pem \
--mount type=bind,source=$(pwd)/haproxy.cfg,target=/usr/local/etc/haproxy/haproxy.cfg \
--rm -it haproxy
--name haproxy \
-d --rm -it haproxy

@ -845,30 +845,35 @@ Provide rhyming lyric suggestions optionally constrained by syllable count.
*** Requirements
- [ ] Given a word or phrase, suggest rhymes (ranked by quality) (Trie)
- [ ] Given a word or phrase, suggest lyric completion (Hidden Markov Model)
- [X] Given a word or phrase, suggest rhymes (ranked by quality) (Trie)
- [-] Given a word or phrase, suggest lyric completion (Hidden Markov Model)
+ [ ] (Future iteration) Restrict suggestion by syllable count
+ [ ] Restrict suggestion by rhyme quality
+ [X] Sort suggestions by frequency of occurrence in training corpus
+ [X] Sort suggestions by rhyme quality
+ [ ] (Future iteration) Show graph of suggestions with perplexity on one axis and rhyme quality on the other
** Data Sets
The dataset was obtained from http://darklyrics.com.
I obtained the dataset from http://darklyrics.com.
The code that I used to download all of the lyrics is at [[https://github.com/eihli/prhyme/blob/master/src/com/owoga/corpus/darklyrics.clj]].
In the interest of being nice to the owners of http://darklyrics.com, I'm keeping private the files containing the lyrics.
The trained data model is available.
See ~resources/darklyrics-markov.tpt~
** Data Analysis
See ~src/com/owoga/darklyrics/core.clj~
I wrote code to perform certain types of data analysis, but I didn't find it useful to meet the business requirements of this project.
See https://github.com/eihli/prhyme
For example, there is natural language processing code at [[https://github.com/eihli/prhyme/blob/master/src/com/owoga/prhyme/nlp/core.clj]] that parses a line into a grammar tree. I wrote several functions to manipulate and aggregate information about the grammar trees that compose the corpus. But I didn't use any of that information in creation of the n-gram Hidden Markov Model nor in the user display. For tasks related to brainstorming rhyming lyrics, that extra information lacked significant value.
** Assessment
See visualization of rhyme suggestion in action.
See perplexity?
** Visualizations
See visualization of smoothing technique.

Loading…
Cancel
Save