<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Publications | Languages, Territory and AI Research Group</title><link>https://giltia.github.io/publication/</link><atom:link href="https://giltia.github.io/publication/index.xml" rel="self" type="application/rss+xml"/><description>Publications</description><generator>Hugo Blox Builder (https://hugoblox.com)</generator><language>en-us</language><lastBuildDate>Thu, 09 Jul 2026 00:00:00 +0000</lastBuildDate><image><url>https://giltia.github.io/media/icon_hu_4650b61b0e05ba9e.png</url><title>Publications</title><link>https://giltia.github.io/publication/</link></image><item><title>Whisper-LM with a Maya Lexicon: Correcting Yucatec Maya ASR Transcriptions Using Gemini and a Dictionary as Reference</title><link>https://giltia.github.io/publication/whisper-lm-yua-lexicon-rag/</link><pubDate>Thu, 09 Jul 2026 00:00:00 +0000</pubDate><guid>https://giltia.github.io/publication/whisper-lm-yua-lexicon-rag/</guid><description>&lt;h2 id="what-problem-does-this-notebook-address"&gt;What problem does this notebook address?&lt;/h2&gt;
&lt;p&gt;Whisper, OpenAI&amp;rsquo;s automatic speech recognition (ASR) system, does not include Yucatec Maya among its supported languages. When transcribing Maya audio, the model produces very noisy output and frequently &amp;ldquo;detects&amp;rdquo; the wrong language: in our data, Maya segments were labeled as Spanish, English, and even Japanese. This notebook explores a practical question: &lt;strong&gt;how much can a large language model (LLM) improve Whisper&amp;rsquo;s output if we give it a Maya lexicon as reference?&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="pipeline-architecture"&gt;Pipeline architecture&lt;/h2&gt;
&lt;p&gt;The full flow is:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Audio → Whisper (turbo) → Rule-based normalizer → Gemini + lexicon → Normalizer → Evaluation (CER/WER)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="1-input-data"&gt;1. Input data&lt;/h3&gt;
&lt;p&gt;The starting point is a CSV file (&lt;code&gt;transcription_results41Turbo.csv&lt;/code&gt;) with 1,010 audio segments already transcribed by Whisper turbo. Each row includes the human reference transcription (&lt;code&gt;original_transcription&lt;/code&gt;), Whisper&amp;rsquo;s prediction (&lt;code&gt;whisper_prediction&lt;/code&gt;), the detected language, and initial metrics (chrF, WER, CER).&lt;/p&gt;
&lt;h3 id="2-maya-lexicon-as-reference-rag-component"&gt;2. Maya lexicon as reference (RAG component)&lt;/h3&gt;
&lt;p&gt;A Maya–Spanish dictionary in TSV format (&lt;code&gt;yua_dictionary.tsv&lt;/code&gt;) with &lt;strong&gt;2,988 entries&lt;/strong&gt; is loaded. A &lt;code&gt;YuaLexicon&lt;/code&gt; class provides exact lookup and fuzzy matching (via &lt;code&gt;difflib.get_close_matches&lt;/code&gt;), making it possible to find the closest valid Maya word for a mis-transcribed token.&lt;/p&gt;
&lt;h3 id="3-rule-based-orthographic-normalizer"&gt;3. Rule-based orthographic normalizer&lt;/h3&gt;
&lt;p&gt;Before and after the LLM pass, the text is normalized with Yucatec Maya linguistic rules taken from a reference grammar:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Root morphology rules&lt;/strong&gt;: for example, &lt;em&gt;bin&lt;/em&gt; (to go) with the irregular root &lt;em&gt;xi&amp;rsquo;&lt;/em&gt; in the intransitive indefinite future, or positionals such as &lt;em&gt;chil&lt;/em&gt;, &lt;em&gt;kul&lt;/em&gt;, and &lt;em&gt;wa&amp;rsquo;al&lt;/em&gt; that lose the &lt;em&gt;l&lt;/em&gt; before &lt;em&gt;-tal&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&amp;ldquo;Safe&amp;rdquo; regex patterns&lt;/strong&gt;: &lt;em&gt;bins&lt;/em&gt; → &lt;em&gt;bis&lt;/em&gt;, &lt;em&gt;taals&lt;/em&gt; → &lt;em&gt;taas&lt;/em&gt;, and verbs whose final &lt;em&gt;b&lt;/em&gt; changes to a glottalized structure (&lt;em&gt;jáalk&amp;rsquo;ab&lt;/em&gt; → &lt;em&gt;jáalk&amp;rsquo;a&amp;rsquo;a&lt;/em&gt;).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Lexicon verification&lt;/strong&gt;: if the normalized form exists in the dictionary it is kept; if the original form was already valid, it is preserved.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="4-correction-with-gemini-whisper-lm"&gt;4. Correction with Gemini (Whisper-LM)&lt;/h3&gt;
&lt;p&gt;Each normalized transcription is sent to &lt;strong&gt;Gemini 2.0 Flash&lt;/strong&gt; with a prompt that includes up to 500 words from the Maya lexicon as an orthographic reference. The key prompt instructions are: correct the text following standard Yucatec Maya grammar and orthography, &lt;strong&gt;do not translate into Spanish&lt;/strong&gt;, choose the most likely option according to the lexicon, and return only the corrected text.&lt;/p&gt;
&lt;h3 id="5-evaluation"&gt;5. Evaluation&lt;/h3&gt;
&lt;p&gt;Character error rate (CER) and word error rate (WER) are computed with &lt;code&gt;editdistance&lt;/code&gt; against the human reference transcription:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Metric&lt;/th&gt;
&lt;th&gt;Whisper turbo&lt;/th&gt;
&lt;th&gt;Whisper-LM (this pipeline)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Mean CER&lt;/td&gt;
&lt;td&gt;1.0743&lt;/td&gt;
&lt;td&gt;1.0725&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Mean WER&lt;/td&gt;
&lt;td&gt;1.1796&lt;/td&gt;
&lt;td&gt;1.1692&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="what-did-we-learn"&gt;What did we learn?&lt;/h2&gt;
&lt;p&gt;The improvement is &lt;strong&gt;marginal&lt;/strong&gt;: LLM post-processing with a lexicon recovers some orthographic form, but it cannot reconstruct information the acoustic model never captured. With CER/WER values above 1.0, Whisper&amp;rsquo;s output is so far from the reference that text-level correction has little material to work with. The practical takeaway is that, for Yucatec Maya, &lt;strong&gt;the bottleneck is the acoustic model&lt;/strong&gt;: what is needed is fine-tuning Whisper on Maya speech data, not just downstream correction.&lt;/p&gt;
&lt;h2 id="next-steps"&gt;Next steps&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fine-tune Whisper with transcribed Yucatec Maya audio.&lt;/li&gt;
&lt;li&gt;Extend the orthographic rules (&lt;code&gt;ORTHO_RULES&lt;/code&gt;) with recurrent errors observed in the transcriptions.&lt;/li&gt;
&lt;li&gt;Grow the lexicon and experiment with selective retrieval (sending only the entries relevant to each segment to the prompt, instead of a fixed list).&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="access-to-the-notebook"&gt;Access to the notebook&lt;/h2&gt;
&lt;p&gt;If you are interested in the Colab notebook, you can contact the author at &lt;a href="mailto:jaziel.carballo@gmail.com"&gt;jaziel.carballo@gmail.com&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>The YUA-ES Communicative Contexts Corpus: An Open Parallel Dataset of Everyday Yucatec Maya–Spanish Phrases</title><link>https://giltia.github.io/publication/yua-es-corpus/</link><pubDate>Wed, 17 Jun 2026 00:00:00 +0000</pubDate><guid>https://giltia.github.io/publication/yua-es-corpus/</guid><description/></item><item><title>Generating a Culturally and Linguistically Adapted Word Similarity Benchmark for Yucatec Maya</title><link>https://giltia.github.io/publication/maya-word-similarity-benchmark/</link><pubDate>Thu, 25 Sep 2025 00:00:00 +0000</pubDate><guid>https://giltia.github.io/publication/maya-word-similarity-benchmark/</guid><description/></item><item><title>Findings of the AmericasNLP 2024 Shared Task on the Creation of Educational Materials for Indigenous Languages</title><link>https://giltia.github.io/publication/americasnlp-2024-findings/</link><pubDate>Fri, 21 Jun 2024 00:00:00 +0000</pubDate><guid>https://giltia.github.io/publication/americasnlp-2024-findings/</guid><description/></item><item><title>Mayasoundex: A Phonetically Grounded Algorithm for Information Retrieval in the Maya Language</title><link>https://giltia.github.io/publication/mayasoundex/</link><pubDate>Sun, 16 Jun 2024 00:00:00 +0000</pubDate><guid>https://giltia.github.io/publication/mayasoundex/</guid><description/></item></channel></rss>