An open API service indexing awesome lists of open source software.

https://github.com/wassname/phoneme2grapheme

Teaching machines to spell with deep learning (acc=>80%) e.g. a model hears "pɹˈaʊd˺ɚ" and writes "prowder" (but it should be "prouder")
https://github.com/wassname/phoneme2grapheme

cmudict deep-learning deeplearning machine-learning nlp pronunciation spelling

Last synced: 4 months ago
JSON representation

Teaching machines to spell with deep learning (acc=>80%) e.g. a model hears "pɹˈaʊd˺ɚ" and writes "prowder" (but it should be "prouder")

Awesome Lists containing this project

README

          


readme


.markdown-preview-enhanced pre.editor-colors.editor-colors,
.markdown-preview-enhanced code {
background-color: #f7f7f7 !important;
}
pre.editor-colors {
background-color: #fff;
color: #333;
}
pre.editor-colors .line.cursor-line {
background-color: #f5f5f5;
}
pre.editor-colors .invisible {
color: #c0c0c0;
}
pre.editor-colors .cursor {
border-left: 2px solid #000;
}
pre.editor-colors .selection .region {
background-color: #c8c8fa;
}
pre.editor-colors .bracket-matcher .region {
border-bottom: 1px solid #000;
box-sizing: border-box;
}
pre.editor-colors .invisible-character {
color: #c0c0c0;
}
pre.editor-colors .indent-guide {
color: #c0c0c0;
}
pre.editor-colors .wrap-guide {
background-color: #c0c0c0;
}
pre.editor-colors .gutter {
background-color: #fff;
color: #333;
}
pre.editor-colors .gutter .line-number {
color: #333;
-webkit-font-smoothing: antialiased;
}
pre.editor-colors .gutter .line-number.cursor-line {
color: #333;
background-color: #f5f5f5;
}
pre.editor-colors .gutter .line-number.cursor-line-no-selection {
background-color: transparent;
}
pre.editor-colors .gutter .line-number .icon-right {
color: #333;
}
pre.editor-colors .gutter:not(.git-diff-icon) .line-number.git-line-removed.git-line-removed::before {
bottom: -3px;
}
pre.editor-colors .gutter:not(.git-diff-icon) .line-number.git-line-removed::after {
content: "";
position: absolute;
left: 0px;
bottom: 0px;
width: 25px;
border-bottom: 1px dotted rgba(255, 236, 236, 0.5);
pointer-events: none;
}
pre.editor-colors .gutter .line-number.folded,
pre.editor-colors .gutter .line-number:after,
pre.editor-colors .fold-marker:after {
color: #333;
}
pre.editor-colors .search-results .mpe-syntax--marker .region {
background-color: transparent;
border: 1px solid #ed6a43;
}
pre.editor-colors .search-results .mpe-syntax--marker.current-result .region {
border: 1px solid #fff;
}
.mpe-syntax--comment,
.mpe-syntax--punctuation.mpe-syntax--definition.mpe-syntax--comment,
.mpe-syntax--string.mpe-syntax--comment {
color: #969896;
}
.mpe-syntax--constant,
.mpe-syntax--entity.mpe-syntax--name.mpe-syntax--constant,
.mpe-syntax--variable.mpe-syntax--other.mpe-syntax--constant,
.mpe-syntax--variable.mpe-syntax--language {
color: #0086b3;
}
.mpe-syntax--entity,
.mpe-syntax--entity.mpe-syntax--name {
font-weight: normal;
font-style: normal;
text-decoration: none;
color: #795da3;
}
.mpe-syntax--variable.mpe-syntax--parameter.mpe-syntax--function {
color: #333;
}
.mpe-syntax--entity.mpe-syntax--name.mpe-syntax--tag {
font-weight: normal;
font-style: normal;
text-decoration: none;
color: #63a35c;
}
.mpe-syntax--keyword {
font-weight: normal;
font-style: normal;
text-decoration: none;
color: #a71d5d;
}
.mpe-syntax--storage,
.mpe-syntax--storage.mpe-syntax--type {
color: #a71d5d;
}
.mpe-syntax--storage.mpe-syntax--modifier.mpe-syntax--package,
.mpe-syntax--storage.mpe-syntax--modifier.mpe-syntax--import,
.mpe-syntax--storage.mpe-syntax--type.mpe-syntax--java {
color: #333;
}
.mpe-syntax--string,
.mpe-syntax--punctuation.mpe-syntax--definition.mpe-syntax--string,
.mpe-syntax--string .mpe-syntax--punctuation.mpe-syntax--section.mpe-syntax--embedded .mpe-syntax--source {
font-weight: normal;
font-style: normal;
text-decoration: none;
color: #183691;
}
.mpe-syntax--support {
font-weight: normal;
font-style: normal;
text-decoration: none;
color: #0086b3;
}
.mpe-syntax--meta.mpe-syntax--property-name {
font-weight: normal;
font-style: normal;
text-decoration: none;
color: #0086b3;
}
.mpe-syntax--variable {
font-weight: normal;
font-style: normal;
text-decoration: none;
color: #ed6a43;
}
.mpe-syntax--variable.mpe-syntax--other {
color: #333;
}
.mpe-syntax--invalid.mpe-syntax--broken {
font-weight: bold;
font-style: italic;
text-decoration: underline;
color: #b52a1d;
}
.mpe-syntax--invalid.mpe-syntax--deprecated {
font-weight: bold;
font-style: italic;
text-decoration: underline;
color: #b52a1d;
}
.mpe-syntax--invalid.mpe-syntax--illegal {
font-style: italic;
text-decoration: underline;
background-color: #b52a1d;
color: #f8f8f8;
}
.mpe-syntax--carriage-return {
font-style: italic;
text-decoration: underline;
background-color: #b52a1d;
color: #f8f8f8;
undefined: ^M;
}
.mpe-syntax--invalid.mpe-syntax--unimplemented {
font-weight: bold;
font-style: italic;
text-decoration: underline;
color: #b52a1d;
}
.mpe-syntax--message.mpe-syntax--error {
color: #b52a1d;
}
.mpe-syntax--string .mpe-syntax--source {
font-weight: normal;
font-style: normal;
text-decoration: none;
color: #333;
}
.mpe-syntax--string .mpe-syntax--variable {
font-weight: normal;
font-style: normal;
text-decoration: none;
color: #0086b3;
}
.mpe-syntax--source.mpe-syntax--regexp,
.mpe-syntax--string.mpe-syntax--regexp {
font-weight: normal;
font-style: normal;
text-decoration: none;
color: #183691;
}
.mpe-syntax--string.mpe-syntax--regexp.mpe-syntax--character-class,
.mpe-syntax--string.mpe-syntax--regexp .mpe-syntax--constant.mpe-syntax--character.mpe-syntax--escape,
.mpe-syntax--string.mpe-syntax--regexp .mpe-syntax--source.mpe-syntax--ruby.mpe-syntax--embedded,
.mpe-syntax--string.mpe-syntax--regexp .mpe-syntax--string.mpe-syntax--regexp.mpe-syntax--arbitrary-repitition {
color: #183691;
}
.mpe-syntax--string.mpe-syntax--regexp .mpe-syntax--constant.mpe-syntax--character.mpe-syntax--escape {
font-weight: bold;
color: #63a35c;
}
.mpe-syntax--support.mpe-syntax--constant {
font-weight: normal;
font-style: normal;
text-decoration: none;
color: #0086b3;
}
.mpe-syntax--support.mpe-syntax--variable {
color: #0086b3;
}
.mpe-syntax--meta.mpe-syntax--module-reference {
color: #0086b3;
}
.mpe-syntax--markup.mpe-syntax--list {
color: #693a17;
}
.mpe-syntax--markup.mpe-syntax--heading,
.mpe-syntax--markup.mpe-syntax--heading .mpe-syntax--entity.mpe-syntax--name {
font-weight: bold;
color: #1d3e81;
}
.mpe-syntax--markup.mpe-syntax--quote {
color: #008080;
}
.mpe-syntax--markup.mpe-syntax--italic {
font-style: italic;
color: #333;
}
.mpe-syntax--markup.mpe-syntax--bold {
font-weight: bold;
color: #333;
}
.mpe-syntax--markup.mpe-syntax--raw {
font-weight: normal;
font-style: normal;
text-decoration: none;
color: #0086b3;
}
.mpe-syntax--markup.mpe-syntax--deleted,
.mpe-syntax--meta.mpe-syntax--diff.mpe-syntax--header.mpe-syntax--from-file,
.mpe-syntax--punctuation.mpe-syntax--definition.mpe-syntax--deleted {
background-color: #ffecec;
color: #bd2c00;
}
.mpe-syntax--markup.mpe-syntax--inserted,
.mpe-syntax--meta.mpe-syntax--diff.mpe-syntax--header.mpe-syntax--to-file,
.mpe-syntax--punctuation.mpe-syntax--definition.mpe-syntax--inserted {
background-color: #eaffea;
color: #55a532;
}
.mpe-syntax--markup.mpe-syntax--changed,
.mpe-syntax--punctuation.mpe-syntax--definition.mpe-syntax--changed {
background-color: #ffe3b4;
color: #ef9700;
}
.mpe-syntax--markup.mpe-syntax--ignored,
.mpe-syntax--markup.mpe-syntax--untracked {
color: #d8d8d8;
background-color: #808080;
}
.mpe-syntax--meta.mpe-syntax--diff.mpe-syntax--range {
color: #795da3;
font-weight: bold;
}
.mpe-syntax--meta.mpe-syntax--diff.mpe-syntax--header {
color: #0086b3;
}
.mpe-syntax--meta.mpe-syntax--separator {
font-weight: bold;
color: #1d3e81;
}
.mpe-syntax--meta.mpe-syntax--output {
color: #1d3e81;
}
.mpe-syntax--brackethighlighter.mpe-syntax--tag,
.mpe-syntax--brackethighlighter.mpe-syntax--curly,
.mpe-syntax--brackethighlighter.mpe-syntax--round,
.mpe-syntax--brackethighlighter.mpe-syntax--square,
.mpe-syntax--brackethighlighter.mpe-syntax--angle,
.mpe-syntax--brackethighlighter.mpe-syntax--quote {
color: #595e62;
}
.mpe-syntax--brackethighlighter.mpe-syntax--unmatched {
color: #b52a1d;
}
.mpe-syntax--sublimelinter.mpe-syntax--mark.mpe-syntax--error {
color: #b52a1d;
}
.mpe-syntax--sublimelinter.mpe-syntax--mark.mpe-syntax--warning {
color: #ed6a43;
}
.mpe-syntax--sublimelinter.mpe-syntax--gutter-mark {
color: #c0c0c0;
}
.mpe-syntax--constant.mpe-syntax--other.mpe-syntax--reference.mpe-syntax--link,
.mpe-syntax--string.mpe-syntax--other.mpe-syntax--link {
color: #183691;
text-decoration: underline;
}
.scrollbar-style::-webkit-scrollbar {
width: 8px;
}
.scrollbar-style::-webkit-scrollbar-track {
border-radius: 10px;
background-color: #fff;
}
.scrollbar-style::-webkit-scrollbar-thumb {
border-radius: 5px;
background-color: rgba(150, 150, 150, 0.66);
border: 4px solid rgba(150, 150, 150, 0.66);
background-clip: content-box;
}
.markdown-preview-enhanced-container .mpe-toolbar {
position: fixed;
top: 64px;
right: 24px;
opacity: 0;
display: block;
}
.markdown-preview-enhanced-container .mpe-toolbar .back-to-top-btn,
.markdown-preview-enhanced-container .mpe-toolbar .refresh-btn,
.markdown-preview-enhanced-container .mpe-toolbar .sidebar-toc-btn {
float: right;
width: 32px;
margin-right: 4px;
opacity: 0.4;
}
.markdown-preview-enhanced-container .mpe-toolbar .back-to-top-btn:hover,
.markdown-preview-enhanced-container .mpe-toolbar .refresh-btn:hover,
.markdown-preview-enhanced-container .mpe-toolbar .sidebar-toc-btn:hover {
opacity: 1.0;
}
.markdown-preview-enhanced-container:hover .back-to-top-btn,
.markdown-preview-enhanced-container:hover .refresh-btn,
.markdown-preview-enhanced-container:hover .sidebar-toc-btn {
display: block;
}
.markdown-preview-enhanced-container.show-sidebar-toc .mpe-sidebar-toc {
font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, freesans, sans-serif;
position: absolute;
top: 0;
right: 0;
width: 268px;
height: 100%;
padding: 32px 0 12px 0;
overflow: auto;
background-color: #fff;
color: #333;
font-size: 14px;
}
.markdown-preview-enhanced-container.show-sidebar-toc .mpe-sidebar-toc a {
color: #333;
}
.markdown-preview-enhanced-container.show-sidebar-toc .mpe-sidebar-toc ul {
padding: 0 1.6em;
}
.markdown-preview-enhanced-container.show-sidebar-toc .mpe-sidebar-toc p {
margin-bottom: 0.8em;
}
.markdown-preview-enhanced-container.show-sidebar-toc .mpe-sidebar-toc ul {
list-style-type: none;
}
.markdown-preview-enhanced-container.show-sidebar-toc .mpe-toolbar {
right: 300px;
}
.markdown-preview-enhanced-container.show-sidebar-toc .markdown-preview-enhanced {
width: calc(100% - 268px);
}
.markdown-preview-enhanced-container .mpe-sidebar-toc::-webkit-scrollbar,
.markdown-preview-enhanced-container .markdown-preview-enhanced::-webkit-scrollbar {
width: 8px;
}
.markdown-preview-enhanced-container .mpe-sidebar-toc::-webkit-scrollbar-track,
.markdown-preview-enhanced-container .markdown-preview-enhanced::-webkit-scrollbar-track {
border-radius: 10px;
background-color: #fff;
}
.markdown-preview-enhanced-container .mpe-sidebar-toc::-webkit-scrollbar-thumb,
.markdown-preview-enhanced-container .markdown-preview-enhanced::-webkit-scrollbar-thumb {
border-radius: 5px;
background-color: rgba(150, 150, 150, 0.66);
border: 4px solid rgba(150, 150, 150, 0.66);
background-clip: content-box;
}
.markdown-preview-enhanced {
font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, freesans, sans-serif;
font-size: 16px;
line-height: 1.6;
color: #333;
background-color: #fff;
overflow: initial;
margin: 10px 13px 10px 13px;
padding: 2em;
box-sizing: border-box;
word-wrap: break-word;
}
.markdown-preview-enhanced > :first-child {
margin-top: 0;
}
.markdown-preview-enhanced[for="preview"] {
width: 100%;
height: 100%;
margin: 0;
overflow: auto;
font-size: 16px;
display: block;
position: absolute;
}
.markdown-preview-enhanced h1,
.markdown-preview-enhanced h2,
.markdown-preview-enhanced h3,
.markdown-preview-enhanced h4,
.markdown-preview-enhanced h5,
.markdown-preview-enhanced h6 {
line-height: 1.2;
margin-top: 1em;
margin-bottom: 16px;
color: #000000;
}
.markdown-preview-enhanced h1 {
font-size: 2.25em;
font-weight: 300;
padding-bottom: 0.3em;
border-bottom: 1px solid #d6d6d6;
}
.markdown-preview-enhanced h2 {
font-size: 1.75em;
font-weight: 400;
padding-bottom: 0.3em;
border-bottom: 1px solid #d6d6d6;
}
.markdown-preview-enhanced h3 {
font-size: 1.5em;
font-weight: 500;
}
.markdown-preview-enhanced h4 {
font-size: 1.25em;
font-weight: 600;
}
.markdown-preview-enhanced h5 {
font-size: 1.1em;
font-weight: 600;
}
.markdown-preview-enhanced h6 {
font-size: 1.0em;
font-weight: 600;
}
.markdown-preview-enhanced h1,
.markdown-preview-enhanced h2,
.markdown-preview-enhanced h3,
.markdown-preview-enhanced h4,
.markdown-preview-enhanced h5 {
font-weight: 600;
}
.markdown-preview-enhanced h5 {
font-size: 1em;
}
.markdown-preview-enhanced h6 {
color: #5c5c5c;
}
.markdown-preview-enhanced h1,
.markdown-preview-enhanced h2 {
border-bottom: 1px solid #d6d6d6;
}
.markdown-preview-enhanced strong {
color: #000000;
}
.markdown-preview-enhanced del {
color: #5c5c5c;
}
.markdown-preview-enhanced a:not([href]) {
color: inherit;
text-decoration: none;
}
.markdown-preview-enhanced a {
color: #08c;
text-decoration: none;
}
.markdown-preview-enhanced a:hover {
color: #0050a3;
text-decoration: none;
}
.markdown-preview-enhanced img,
.markdown-preview-enhanced svg {
max-width: 100%;
}
.markdown-preview-enhanced > p {
margin-top: 0;
margin-bottom: 16px;
word-wrap: break-word;
}
.markdown-preview-enhanced > ul,
.markdown-preview-enhanced > ol {
margin-bottom: 16px;
}
.markdown-preview-enhanced ul,
.markdown-preview-enhanced ol {
padding-left: 2em;
}
.markdown-preview-enhanced ul.no-list,
.markdown-preview-enhanced ol.no-list {
padding: 0;
list-style-type: none;
}
.markdown-preview-enhanced ul ul,
.markdown-preview-enhanced ul ol,
.markdown-preview-enhanced ol ol,
.markdown-preview-enhanced ol ul {
margin-top: 0;
margin-bottom: 0;
}
.markdown-preview-enhanced li {
margin-bottom: 0;
}
.markdown-preview-enhanced li.task-list-item {
list-style: none;
}
.markdown-preview-enhanced li > p {
margin-top: 0;
margin-bottom: 0;
}
.markdown-preview-enhanced .task-list-item-checkbox {
margin: 0 0.2em 0.25em -1.6em;
vertical-align: middle;
}
.markdown-preview-enhanced .task-list-item-checkbox:hover {
cursor: pointer;
}
.markdown-preview-enhanced blockquote {
margin: 16px 0;
font-size: inherit;
padding: 0 15px;
color: #5c5c5c;
border-left: 4px solid #d6d6d6;
}
.markdown-preview-enhanced blockquote > :first-child {
margin-top: 0;
}
.markdown-preview-enhanced blockquote > :last-child {
margin-bottom: 0;
}
.markdown-preview-enhanced hr {
height: 4px;
margin: 32px 0;
background-color: #d6d6d6;
border: 0 none;
}
.markdown-preview-enhanced table {
margin: 10px 0 15px 0;
border-collapse: collapse;
border-spacing: 0;
display: block;
width: 100%;
overflow: auto;
word-break: normal;
word-break: keep-all;
}
.markdown-preview-enhanced table th {
font-weight: bold;
color: #000000;
}
.markdown-preview-enhanced table td,
.markdown-preview-enhanced table th {
border: 1px solid #d6d6d6;
padding: 6px 13px;
}
.markdown-preview-enhanced dl {
padding: 0;
}
.markdown-preview-enhanced dl dt {
padding: 0;
margin-top: 16px;
font-size: 1em;
font-style: italic;
font-weight: bold;
}
.markdown-preview-enhanced dl dd {
padding: 0 16px;
margin-bottom: 16px;
}
.markdown-preview-enhanced code {
font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;
font-size: 0.85em !important;
color: #000000;
background-color: #f0f0f0;
border-radius: 3px;
padding: 0.2em 0;
}
.markdown-preview-enhanced code::before,
.markdown-preview-enhanced code::after {
letter-spacing: -0.2em;
content: "\00a0";
}
.markdown-preview-enhanced pre > code {
padding: 0;
margin: 0;
font-size: 0.85em !important;
word-break: normal;
white-space: pre;
background: transparent;
border: 0;
}
.markdown-preview-enhanced .highlight {
margin-bottom: 16px;
}
.markdown-preview-enhanced .highlight pre,
.markdown-preview-enhanced pre {
font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;
padding: 16px;
overflow: auto;
font-size: 0.85em !important;
line-height: 1.45;
color: #333;
background-color: #f0f0f0 !important;
border: #d6d6d6;
border-radius: 3px;
}
.markdown-preview-enhanced .highlight pre {
margin-bottom: 0;
word-break: normal;
}
.markdown-preview-enhanced pre {
word-wrap: break-word;
white-space: normal;
word-break: break-all;
}
.markdown-preview-enhanced pre .section {
opacity: 1;
}
.markdown-preview-enhanced pre code,
.markdown-preview-enhanced pre tt {
display: inline;
max-width: initial;
padding: 0;
margin: 0;
overflow: initial;
line-height: inherit;
word-wrap: normal;
background-color: transparent;
border: 0;
}
.markdown-preview-enhanced pre code:before,
.markdown-preview-enhanced pre tt:before,
.markdown-preview-enhanced pre code:after,
.markdown-preview-enhanced pre tt:after {
content: normal;
}
.markdown-preview-enhanced p,
.markdown-preview-enhanced blockquote,
.markdown-preview-enhanced ul,
.markdown-preview-enhanced ol,
.markdown-preview-enhanced dl,
.markdown-preview-enhanced pre {
margin-top: 0;
margin-bottom: 16px;
}
.markdown-preview-enhanced pre.editor-colors.lineno {
counter-reset: lineNo;
}
.markdown-preview-enhanced pre.editor-colors.lineno .line::before {
display: inline-block;
counter-increment: lineNo;
content: counter(lineNo);
text-align: right;
padding: 0;
margin-left: -1em;
margin-right: 1.5em;
}
.markdown-preview-enhanced pre.editor-colors.lineno.lineno-100 .line::before {
width: 2em;
}
.markdown-preview-enhanced pre.editor-colors.lineno.lineno-1000 .line::before {
width: 2.5em;
}
.markdown-preview-enhanced pre.editor-colors.lineno.lineno-10000 .line::before {
width: 3em;
}
.markdown-preview-enhanced pre.editor-colors.lineno.lineno-100000 .line::before {
width: 3.5em;
}
.markdown-preview-enhanced kbd {
color: #000000;
border: 1px solid #d6d6d6;
border-bottom: 2px solid #c7c7c7;
padding: 2px 4px;
background-color: #f0f0f0;
border-radius: 3px;
}
.markdown-preview-enhanced .pagebreak,
.markdown-preview-enhanced .newpage {
page-break-before: always;
}
@media screen and (min-width: 914px) {
.markdown-preview-enhanced {
width: 980px;
margin: 10px auto;
background: #fff;
}
}
@media screen and (max-width: 400px) {
.markdown-preview-enhanced {
font-size: 14px;
margin: 0 auto;
padding: 15px;
}
}
@media print {
.markdown-preview-enhanced {
background-color: #fff;
/*table,*/
}
.markdown-preview-enhanced h1,
.markdown-preview-enhanced h2,
.markdown-preview-enhanced h3,
.markdown-preview-enhanced h4,
.markdown-preview-enhanced h5,
.markdown-preview-enhanced h6 {
color: #000000;
page-break-after: avoid;
}
.markdown-preview-enhanced blockquote {
color: #5c5c5c;
}
.markdown-preview-enhanced pre {
page-break-inside: avoid;
}
.markdown-preview-enhanced table {
display: table;
}
.markdown-preview-enhanced img {
display: block;
max-width: 100%;
max-height: 100%;
}
.markdown-preview-enhanced pre,
.markdown-preview-enhanced code {
word-wrap: break-word;
white-space: normal;
}
}
.markdown-preview-enhanced[for="preview"] .code-chunk {
position: relative;
}
.markdown-preview-enhanced[for="preview"] .code-chunk .output-div {
overflow-x: auto;
}
.markdown-preview-enhanced[for="preview"] .code-chunk .output-div svg {
display: block;
}
.markdown-preview-enhanced[for="preview"] .code-chunk pre {
cursor: text;
}
.markdown-preview-enhanced[for="preview"] .code-chunk .btn-group {
position: absolute;
right: 0;
top: 0;
display: none;
}
.markdown-preview-enhanced[for="preview"] .code-chunk .btn-group .run-btn,
.markdown-preview-enhanced[for="preview"] .code-chunk .btn-group .run-all-btn {
float: right;
margin-left: 4px;
border-radius: 3px;
font-size: 0.8em;
color: #eee;
background-color: #528bff;
background-image: none;
border: none;
}
.markdown-preview-enhanced[for="preview"] .code-chunk .btn-group .run-btn:hover,
.markdown-preview-enhanced[for="preview"] .code-chunk .btn-group .run-all-btn:hover {
background-color: #4b7fe8;
cursor: pointer;
}
.markdown-preview-enhanced[for="preview"] .code-chunk:hover .btn-group {
display: block;
}
.markdown-preview-enhanced[for="preview"] .code-chunk .status {
position: absolute;
right: 0;
top: 0;
font-size: 0.85em;
color: inherit;
padding: 2px 6px;
background-color: rgba(0, 0, 0, 0.04);
display: none;
}
.markdown-preview-enhanced[for="preview"] .code-chunk.running .btn-group {
display: none;
}
.markdown-preview-enhanced[for="preview"] .code-chunk.running .status {
display: block;
}
.markdown-preview-enhanced:not([for="preview"]) .code-chunk .btn-group {
display: none;
}
.markdown-preview-enhanced:not([for="preview"]) .code-chunk .status {
display: none;
}
/*
* Reveal.js styles
*/
[data-presentation-preview-mode] {
background-color: #f4f4f4;
}
[data-presentation-preview-mode] .preview-slides {
width: 100%;
}
[data-presentation-preview-mode] .preview-slides .slide {
position: relative;
background-color: #fff;
padding: 2em !important;
margin-bottom: 12px;
text-align: left !important;
display: flex;
align-items: center;
border: 1px solid #e6e6e6;
box-shadow: 0px 0px 16px 4px #eeeeee;
font-size: 24px;
}
[data-presentation-preview-mode] .preview-slides .slide h1,
[data-presentation-preview-mode] .preview-slides .slide h2,
[data-presentation-preview-mode] .preview-slides .slide h3,
[data-presentation-preview-mode] .preview-slides .slide h4,
[data-presentation-preview-mode] .preview-slides .slide h5,
[data-presentation-preview-mode] .preview-slides .slide h6 {
margin-top: 0;
}
[data-presentation-preview-mode] .preview-slides .slide .background-video {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
[data-presentation-preview-mode] .preview-slides .slide .background-iframe,
[data-presentation-preview-mode] .preview-slides .slide .background-iframe-overlay {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
border: none;
z-index: 1;
}
[data-presentation-preview-mode] .preview-slides .slide .background-iframe-overlay {
z-index: 2;
}
[data-presentation-preview-mode] section {
display: block;
width: 100%;
transform-style: preserve-3d;
font-size: 100%;
font: inherit;
}
.markdown-preview-enhanced[data-presentation-mode] {
font-size: 24px;
width: 100%;
box-sizing: border-box;
margin: 0;
padding: 0;
}
.markdown-preview-enhanced[data-presentation-mode] h1,
.markdown-preview-enhanced[data-presentation-mode] h2,
.markdown-preview-enhanced[data-presentation-mode] h3,
.markdown-preview-enhanced[data-presentation-mode] h4,
.markdown-preview-enhanced[data-presentation-mode] h5,
.markdown-preview-enhanced[data-presentation-mode] h6 {
margin-top: 0;
}
.markdown-preview-enhanced[data-presentation-mode] strong {
font-weight: bold;
}
.markdown-preview-enhanced[data-presentation-mode]::-webkit-scrollbar {
display: none;
}
.markdown-preview-enhanced .slides {
text-align: left !important;
}

/*
* Your Stylesheet
*
* This stylesheet is loaded when Atom starts up and is reloaded automatically
* when it is changed.
*
* If you are unfamiliar with LESS, you can read more about it here:
* http://www.lesscss.org
*/
/* from github https://discuss.atom.io/t/use-the-gutter-without-enabling-linenumbers/2461/6*/



phoneme2grapheme


Using a sequence 2 sequence model with attention to convert from pronunciation to spelling.


installation


Install the requirements pip install --upgrade -r requirements.txt


Then start a jupyter notebook and open main.ipynb


results


It reaches a character error rate of <20%, and here are the results . The machine has made some reasonable mistakes but becomes confused by the end of the word.


Note if you view the readme in html you will see lighter letters show where the model was uncertain.


pronunciationguessspellingkˈɑkəsˌɔidcockosoid caucasoid bɹˈæsfˌildbrasfielddbrassfieldflˈæʃbl̩b flashbllb flashbulb hˈɛstiə hestia hestia kɹˈæbi crabby crabby tɹədˈus traduse traduce təlˈulə talula tallulah bˈitn̩ beetnn beaton hˈɑlɪtʃɛk holicckk holecek beidˈɔiə bedoia bedoya sɪvˈiɹ siverr severe nɑɪsˈɪpi nicipp nicippe lˈoʊɹntʃəɹlornnchrr launcher bɹɪtˈɔil bretoil britoil ˈɔɹtnɚ ortner ortner bˈɪljn̩ɵs billiants billionthssˈɛmijˌɑn semiyon semillon lˈɔntʃɪŋ launching launching zˌubɪlˈɑgəzubilagaa zubillaga ɹɪfɹˈɛʃɪz refreshes refreshes ˈɪgnəɹn̩s igneranceeignorance tɪsˈɪpəs tesippus ctesippus vɪtkˈɔfskivitkowski witkowski dˈɑdɹɪdʒ dodrrdge doddridge tˈɛnn̩t tennnnt tennent dˈɪŋk dink dink ˈeiljənəɹ alliner alienor dˈuln̩ dullnn doolan hˈʌlki hulkee hulky mˈɛmwˌɑɹz memwars memoirs kɑɹdɑɹˈɛlicardarelllcardarellifˈɝmɚ furmer firmer kwˈɑpjɑ quapya kuopio kɚˈɛktɪd careected corrected ɹˈɔɵmn̩ rothman rothman stɹʊk strook strook ɹˈɛnkwɪst renquist renquist ɛspɪnˈoʊzəespinosa espinosa bˈɪgɪnz biggins biggins pəɹfˈɛkʃn̩perfectionperfectionˈændəɹsn̩ anderson andersen ˈænɪnæt aninatt aninat ˈɔlɹɪd alredd alred ɑɹkˈoʊlə arcola arcola pɹˈimiəm premium premium bˈɑlmʊŋ bolmung balmung ɹˌɑbˈʌstəsrobustoss robustas dɪsˈɔɹdɚz disorddrrsdisorders ˈæsɪtˌæl asitall acetal bjˈuz buse buse wˈeif waff waif ˈæɹənˌoʊs aronose arenose kwˈeiswˈeiquaseeay kweisui ɪmbˈɑdiɪŋ imbodiinggembodying mˈʌlkɚn mulkern mulkern kˈɪmɪtʃ kimiich kimmich tˈupəlˌoʊ tupelow tupelo tɹɑɪˈʌmf triumf triumph pɹˈaʊd˺ɚ prowder prouder wˈɛdʒ wedge wedge ɹˈɛznɪk resnikk reznik flˈeid flayed flayed ˈæsɪlɪn asilinn asselin dɪkɹˈitl̩ dicrettl decretal sɪndˈɛt˺ɪksindetic syndetic spˈænɪʃ spannsh spanish ɹˈæli rally rallye aʊtʃˈoʊn ouchone outshone sˈɑsəɹˌɑɪtsosserite saussuriteɪspˈaʊzd ispousd espoused bɹˈɪklɪn bricklin bricklin ɛskˈɑləp escolop escallop hˈɔɹdz hordss hordes kˈæɹəkɚ carrcker caraker wˈɑɪthˌɝstwiithhorstwhitehurstmˈɛɹɪmæk merimac merrimac tʃɑɪnˈi chinee chinee hˈænlɪn hanlin hanlin dɑɪˈækənl̩diacinal diaconal kwˈɪnin quinnnn quinine bɹʊjˈɛɹ bruyerr bruyeres pitsˈutoʊ pitsuto pizzuto liˈændəɹ liander leander əblˈɑɪdʒɪŋobligingg obliging mˈɔɹfju morfuu morphew glˈækn̩z glacknns glackens bukˈeiz buccass bouquets hˈɝɹmɪt hermit hermit mˈʌsl̩ mussle mussell mˈʌt˺əɹ mutter mutter pəhˈoʊki pahoki pahokee gɑlˈɑsoʊ galasso galasso ˈoʊvɚlˌɑk overlock overlock tˈɪŋktʃəɹ tincturr tincture pjˈudʒɪn pugin pugin spˌɛʃəlˌi speshale especiallyhˈʊfpɹˌɪnthoofprint hoofprint pˈɑntɪk pontic pontic pɹˈɑɪsɪz prices prices nˈeivi navi navy gɹˈɪmʃˌɔ grimshau grimshaw pɹəvˈɑɪzoʊpravizo proviso sˈoʊlɪtɹɑnsoletron solitron ˈænəɵˌoʊl anathol anethole pɑmpˈɛɹoʊ pampero pampero ˈɑɪməs immu imus hˈoʊfəɹ hoffer hofer smˈɑɹts smarts smarts mɔɹtˈimɔɹ mortemorr mortimore blˈɛkmn̩ bleckman blechman ʃˈæfɹn̩ shaffron shafran tn̩dɹˈoʊ tondrow tondreau ˈɝdʒn̩tli urgentlyy urgently ˌɑksˈænə oxanaa oksana flˈɪntʃiɹ flinchir flintshireʃɹˈɛŋk shhrenk schrenk plˈæzə plaza plaza dˈunədɪn dunadin dunedin dɪsmˈɪʃn̩ dismition dismissionskwˈɪfi squiffy squiffy skˈɑɪwˌei skiway skyway fˈæʃɪst fashist fascist pˈɑləpˌɛɹipoloparyy polypary ɑɪˈælmənəsialmonoss ialmenus ˈɑzmn̩dsn̩osmandson osmundson ˈɑɪlˌæʃɪz illases eyelashes gˈæsp gasp gasp ɪnwˈɑɪnd inwindd inwind kˈoʊldli coldlyy coldly bˈækʃi bacchyy bakshi æbˈɛsɪv abessiv abessive tʃɪkˈɔin chicoin chicoine skˌɪmz skims skims kɹɪsp crisp crisp hˈɑɪdɹˌɑɪdhiddrdd hydride bɹˈæmlɪt bramlet bramlett jˈɛsəf yessff iosif gˈɑɹdhˌaʊsgardhouss guardhousesˈɪliəs silius syleus zˈɪŋə zinga zinga tˈɪŋkɚd tinkerdd tinkered tˈægəɹ tagger tagger ˈʌltəmˌoʊ ultimo ultimo ʃˈɛɹɪl sherill sherrill poʊstwˈoʊɹpostworr postwar lˈɔɹiəts loriets laureates dʒˈɑskɪn joskin joskin kˈinɪŋ keening keening slˈoʊli slolly slowly spoʊsˈɑtoʊsposatoo sposato wˌɑt˺əɹˈi wattere wateree æmfˈɪbiə amphibia amphibia dʒˌæpənˈizjappnnes japanese əntɹˈu untruu untrue pˈɛɹəbl̩ perrbbe parable kʊɹzˈɑwə curzawa kurzawa sˈʌmwˌɛɹ summaar somewhere zˈɪlviə zilvia zilvia oʊsˈɔɹioʊ osorio osorio swˈɪtʃɚ switcher switcher ɚˈɛndsˌi areedse arendsee kɑɹvɑjˈæl carvaial carvajal blˈæknɪs blackniss blackness pɚˈɪsiˌɛn perisien parisiennekˈænjn̩z caniins canyons pɔɹtˈɛndz portends portends lˈuɪn luin lewin slˈɪmɪŋ slimming slimming mʊɹˈɑt murrtt murat tˈɑɪmn̩ timen timon hˈimɪn heemi hemin tˈɝɹnkˌi ternkee turnkey ɹɪdˈiməbl̩redemmbbl redeemablelˈɑkəs lockos lochus skˈɛɹiɚ scarierr scarier ˌænəkjˈuʒəanacujia anacusia stɹˈut stroot stroot tɑɪmˈiəs timeus timaeus səbmˈɝs submerse submerse stˈɑlwəɹɵ stolwwrth stalworth ˈiniəs enius oeneus ləzˈɪɹ lazirr lazear bˈɑoʊ bao booe ɪkspˈændɪdexpanded expanded zəɹkˈɑnɪk zerconic zirconic ˈɑbleit oblatee oblate gˈɪbi gibby gibby sˈʌmnɚz sumnners sumners tˈeiln̩ tallnn taillon tɹˈɪbjut tributt tribute pˈʌzl̩mn̩tpussleman puzzlementlˈændfˌɪlzlandfilss landfills