sunset behind an airplane

This year I have had a chance to travel all around the world in the name of science publishing a great deal of papers and having a chance to attend conferences of so many different fields from NLP and computational creativity to a video game conference. ☺️ As Finland is a bit remotely located, there's often only one option for an airline with the least number of layovers: Finnair and its one world partners. As a result, I ended up gaining sapphire status and an access to airport lounges. In this post, I will share some ideas of a lounge access.

(more…)
text saying you got this

Turku dependency parsers, both the statistical and neural ones, are no doubt among the most important recent NLP tools developed for Finnish. Without them, doing NLP for Finnish would be extremely difficult. This posts explains how to use them easily to parse Finnish from your Python code. 🐍

(more…)
make games in Python with Unity

Python is a great programming language due to a multitude of reasons such as a long list of libraries ready to solve almost any problem you might encounter. For me, however, the biggest reason to prefer coding in Python with Unity over C# is that I simply don't have to type as much; no type declarations, semicolons or curly brackets, not to mention return types, scopes and so on… 😴

Yet, online I can only find outdated guides or worse yet "why don't you just learn C#, it's easy and blah blah" comments. 😫 But I like Python. 🥺Therefore, this post teaches you how to use IronPython with Unity. Just remember that IronPython only supports Python 2.

(more…)
How to install VISL CG3 on Mac, Windows and Linux

VISL CG3 is a neat tool for running constraint grammars (CGs) for things such as morphological disambiguation or syntactic parsing. Grammars of this formalism have been developed for a great many endangered Uralic languages boosting their NLP. And these CGs are actually easily available in UralicNLP for Python programmers.

Even for UralicNLP, a tool called vislcg3 needs to be installed on your machine, and it might be a tricky task if you cannot find the correct binaries for your operating system. Therefore I tailored this guide.

(more…)
How to use Omorfi for Finnish morphology

Omorfi is inarguably an amazing tool for processing Finnish morphology both in analysis and generation. However, using it might be quite a challenge for the users who are not too (H)FST savvy. 😅That is one of the motivations for my UralicNLP library the purpose of which is to provide an easy Python interface for a multitude NLP tools for Uralic languages. (more…)
crossword puzzle

Morphology can be described as the smallest information bearing unit of the human language. Words that are inflected can be divided into morphemes, e.g. -ed in talked is a morpheme that adds the meaning of a past tense into the verb talk-s in dogs pluralizes the noun and so on. These morphemes that are added to words are known as affixes. There are different kinds of affixes and in this post we are going to look at them more closely. 🤓 (more…)

Why everyone should visit Japan

I have been to many countries, also outside of my home Europe, but there's one above all of them: Japan. This is a claim I make and people tilt their heads a bit and ask why. Because it is so different to what I have used to… In a positive way. When you go to Japan, you have to forget everything you know about the world. What you know is not valid there, for the Japanese do things differently. A thing as simple as going to the bathroom isn't quite the same in Japan. Press the wrong button to flush and you will get a spray of warm water directed precisely to your butt hole. 🤣 Book a traditional inn now!  (more…)

Korp and Python. Access corpora from your Python code!

If you have done language technology in a Nordic country, you have probably heard about Korp. And by now, you have probably developed some sort of a love-hate relationship to it. My initial thought was: Korp is nice, but so what 🤷🏼‍♂️, I need to access it programmatically for it to serve any use. The fact that the API description is somewhat hidden online and that not all Korp services are open about the url of their API doesn't really help at all. 😩

Luckily, once again, yours truly has been typing in some code to make your life easier. 🤓 Behold, my very own python library for querying Korp. 😊 (more…)

a leaf

When you hear the word ethics you probably think of things that are considered ethical in the society such as sustainable development, fair trade and all other overwhelmingly world embracing ideologies eco hippies are a bit too vocal about. But there's a lot more to the term than that! Ethics is a set of values that we used in our reasoning. It's closely related to moral which refers to understanding what is right and wrong. As it turns out, ethical thinking can be a lot more than just world embracing handwaving and pretentious strive for anything that is considered ethically desirable in the society. We can actually do ethical thinking from three different points of view covered in this post. 😊  (more…)

Cognitive modelling - bringing computers closer to human brains

Cognitive science's gift to the artificial intelligence development is, by no doubt, cognitive modelling. In short, cognitive modelling is about coming up with some sort of a mathematical or computational model of how the brain operates. These models can then be used in various AI tasks to solve issues the human brain excels at. In this post we will go through three different ways to do cognitive modelling. 😊 (more…)