3 ms·
OK, that's a good start, but I hope you're devoting a fair amount of effort to improving your decision algorithm. At the moment, it considers tretz.com to be 6
by etfb 14y ago
OK, that's a good start, but I hope you're devoting a fair amount of effort to improving your decision algorithm. At the moment, it considers tretz.com to be 60% pronounceable, but llmyw.com, qenis.com and domyh.com to be 100%. I can kind of see how a naive algorithm would calculate that, and I'm pretty sure you can tweak it to make it better. Bonus points for using some sort of neural net or Bayesian technique to improve scores, perhaps with a button next to the score to allow people to adjust it.
- mrmaddog 14y agoDoing a naive dictionary lookup would also help your algorithm, i.e. limoship.com should rank higher than leonadare.com in my opinion. Cool website though! I've always wondered how often decent domain names lapsed.
- verroq 14y agoI'm fairly sure qenis's high ranking is the result of using Levenshtein distance on dictionary words. You want phonetics based analysis instead. Then again qenis isn't that hard to pronounce either, so I don't know.
- s_henry_paulson 14y agoqueenis... kewnis... kenis... Yeah, I don't know about that.
- sejje 14y agoNone of those are hard to pronounce. Not knowing which pronunciation to use is secondary.
- pbhjpbhj 14y agoLeonaDare.com would be an exact match for a name check whilst limoship would be a made-up word but pretty good for a local limo-to-port service or a high class pleasure-cruise or something.
- jules 14y agoHere's a Python program that builds a markov chain model of a corpus (with laplace smoothing) and then calculates the probability of the domain name being generated by that markov chain. from collections import Counter from math import log corpus = """training corpus here""" n = 1 # token size def trans(w): return ((w[i:i+n], w[i+n]) for i in range(len(w)-n)) tokens = Counter(t for t,l in trans(corpus)) transitions = Counter(trans(corpus)) def score(w): return sum(log(transitions[t,l]+1)-log(tokens[t]+26**n) for t,l in trans(w)) for w in [" llmyw "," domyh "," tretz "," qenis "," debts "]: print w, ': ', score(w) When I use the European sovereign-debt crisis Wikipedia article as the corpus, I get llmyw : -25.9316238289 domyh : -23.311005645 tretz : -21.4220068707 qenis : -20.7421233042 debts : -15.3287127006 Higher numbers are considered more pronounceable, so that's in order of pronounceability. Note that scores of words of different length are incomparable. The variable `n` sets the number of letters of memory the markov chain has. If you set `n` higher then you need a bigger corpus. If you set n=2 and get a larger corpus and preprocess it to filter out anything that isn't [a-z]+ it would probably work fairly well (I just copied the article in as is).
- pbhjpbhj 14y agoLlmyw is probably easy to pronounce in Welsh. Apparently ... Lli is a variant of llif - life. Ll is a letter - [phlegm production noise]. Myw is a mutation of byw - tide. So in Welsh it's most likely as hard to pronounce as "ktide" in English. Maybe he's using a multilingual dictionary.