<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>etymology on Kai Striega</title><link>http://kaistriega.com/tags/etymology/</link><description>Recent content in etymology on Kai Striega</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sun, 08 Dec 2024 08:25:52 +1100</lastBuildDate><atom:link href="http://kaistriega.com/tags/etymology/index.xml" rel="self" type="application/rss+xml"/><item><title>Curiously Related Words Constructing Our Query</title><link>http://kaistriega.com/blog/curiously-related-words/curiously-related-words-constructing-our-query/</link><pubDate>Sun, 08 Dec 2024 08:25:52 +1100</pubDate><guid>http://kaistriega.com/blog/curiously-related-words/curiously-related-words-constructing-our-query/</guid><description>&lt;h2 id="querying-data"&gt;Querying data&lt;a class="headerlink" href="#querying-data" title="Link to this heading"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Neo4j uses a query language called &lt;a href="https://neo4j.com/docs/cypher-manual/current/introduction/"&gt;Cypher&lt;/a&gt;&lt;sup id="fnref:1"&gt;&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref"&gt;1&lt;/a&gt;&lt;/sup&gt;. Cypher
was inspired by ASCII art and lets us represent our ideas very intuitively. Nodes are represented as being in
parentheses while relationships are shown as arrows between nodes. If you have some spare time I&amp;rsquo;d suggest you play
around with Cypher before continuing to familiarize yourself.&lt;/p&gt;
&lt;h2 id="what-did-we-want"&gt;What did we want?&lt;a class="headerlink" href="#what-did-we-want" title="Link to this heading"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;If we go way back to
the &lt;a href="https://kaistriega.com/blog/curiously-related-words/what-is-a-curiously-related-word/"&gt;original post&lt;/a&gt;
we said we wanted two things:&lt;/p&gt;</description></item><item><title>Curiously Related Words in Neo4j</title><link>http://kaistriega.com/blog/curiously-related-words/curiously-related-words-in-neo4j/</link><pubDate>Sun, 08 Dec 2024 08:08:07 +1100</pubDate><guid>http://kaistriega.com/blog/curiously-related-words/curiously-related-words-in-neo4j/</guid><description>&lt;h2 id="what-we-have"&gt;What we have&lt;a class="headerlink" href="#what-we-have" title="Link to this heading"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;In the previous &lt;a href="https://kaistriega.com/blog/curiously-related-words/curiously-related-words-preprocessing-our-data/"&gt;post&lt;/a&gt;
I showed how to parse EtymDB and convert it into a format usable by the &lt;code&gt;admin-import&lt;/code&gt; tool. We should now have five
csv files:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;vertex/full.csv&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;vertex/small.csv&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;vertex/with_embedding.csv&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;vertex/with_meaning.csv&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;relationships.csv&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="getting-neo4j"&gt;Getting Neo4j&lt;a class="headerlink" href="#getting-neo4j" title="Link to this heading"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="neo4j-in-the-cloud"&gt;Neo4j in the cloud&lt;a class="headerlink" href="#neo4j-in-the-cloud" title="Link to this heading"&gt;#&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Neo4j provides a cloud service with a free tier. Unfortunately, the free tier is capped at 200k nodes and 400k
relationships. We&amp;rsquo;ve 1.8M nodes and 640k relationships. Unfortunately the free tier is not going to cut it.&lt;/p&gt;</description></item><item><title>Curiously Related Words Preprocessing Our Data</title><link>http://kaistriega.com/blog/curiously-related-words/curiously-related-words-preprocessing-our-data/</link><pubDate>Sat, 07 Dec 2024 15:32:41 +1100</pubDate><guid>http://kaistriega.com/blog/curiously-related-words/curiously-related-words-preprocessing-our-data/</guid><description>&lt;p&gt;&lt;a href="https://kaistriega.com/blog/curiously-related-words/what-is-a-curiously-related-word/"&gt;Previously&lt;/a&gt; I&amp;rsquo;ve made up the
concept of a curiously connected word and a high level plan for finding such words. This post outlines the
interesting parts of how I parse EtymDB. For those who are interested in all the code, it is available on my
&lt;a href="https://github.com/Kai-Striega/curiously-connected-words/tree/main/src/neo4j_helper"&gt;GitHub&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="the-data-we-have-and-why-thats-not-enough"&gt;The data we have, and why that&amp;rsquo;s not enough&lt;a class="headerlink" href="#the-data-we-have-and-why-thats-not-enough" title="Link to this heading"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;As outlined previously we have two sources of data:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href="https://paperswithcode.com/dataset/etymdb-2-0"&gt;EtymDB&lt;/a&gt; a database of words and their etymological relationships&lt;/li&gt;
&lt;li&gt;&lt;a href="https://radimrehurek.com/gensim/"&gt;gensim&lt;/a&gt; a library of &lt;a href="https://en.wikipedia.org/wiki/Word2vec"&gt;Word2vec&lt;/a&gt;
models that model the semantic relationship between words&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Our goal is to combine these two datasets into something nerdy. But just &lt;strong&gt;having&lt;/strong&gt; data isn&amp;rsquo;t enough. We need to be
able to retrieve, analyse and work with our datasets efficiently. Furthermore, our data isn&amp;rsquo;t really tabular. What
we have are words, with some associated properties, and relationships between them. When you hear &amp;ldquo;relationships&amp;rdquo;
you may be tempted to think of a relational database. While these are often the right choice, our data is a
&lt;a href="https://en.wikipedia.org/wiki/Graph_(discrete_mathematics)"&gt;graph&lt;/a&gt; which can be difficult to work with in relational
databases &lt;sup id="fnref:1"&gt;&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref"&gt;1&lt;/a&gt;&lt;/sup&gt;. &lt;a href="https://neo4j.com/https://neo4j.com/"&gt;Neo4j&lt;/a&gt; provides a database that is specialised on graphs.
This seems like the right tool for the job. Plus I want to try a new tool&lt;sup id="fnref:2"&gt;&lt;a href="#fn:2" class="footnote-ref" role="doc-noteref"&gt;2&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;</description></item><item><title>What is a Curiously Related Word?</title><link>http://kaistriega.com/blog/curiously-related-words/what-is-a-curiously-related-word/</link><pubDate>Sat, 07 Dec 2024 12:53:46 +1100</pubDate><guid>http://kaistriega.com/blog/curiously-related-words/what-is-a-curiously-related-word/</guid><description>&lt;h2 id="contents"&gt;Contents:&lt;a class="headerlink" href="#contents" title="Link to this heading"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href="#what-brought-this-on"&gt;What brought this on?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#an-informal-definition-of-curiously-related-words"&gt;Defining a curiously related word pair&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#common-ancestors"&gt;Common Ancestors&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#similar-meanings"&gt;Similar Meanings&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#the-big-idea-of-our-algorithm"&gt;The big ideas&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="what-brought-this-on"&gt;What brought this on?&lt;a class="headerlink" href="#what-brought-this-on" title="Link to this heading"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Did you know that the words &amp;ldquo;Galaxy&amp;rdquo; and &amp;ldquo;Lactose&amp;rdquo; are related? They both derive from the Proto-Indo-European word
&amp;ldquo;glakt&amp;rdquo; which means &amp;ldquo;Milk&amp;rdquo;. I didn&amp;rsquo;t. And, when a friend told me this, I was intrigued. As a computer nerd, this
brought up another question: can I automate finding such words?&lt;/p&gt;</description></item></channel></rss>