Turkish Grammar by Predicate Logic
pypi.org
pypi.org
I supposed, this makes it a much more simple language to do NLP than a lot of other language.
With Turkish, it's very trivial.
Mert is actually also a foreign word. Well, most (I'd guess 90%) of the words starting with "me" are of Arabic or Persian origin.
But the difference is there in Turkish words as well. Geri, gerzek (which is interestingly a shortcut for "geri zeka") and gevrek.
There are many "e"s in Turkish, difference among which is very sparsely documented.
Don't even get me started on the "ğ" (which is normally supposed to just make the previous vocal letter longer but took on many other roles).
Tell that to people of Samsun :)
https://github.com/ahmetaa/zemberek-nlp/tree/master/morpholo...
These include monolingual lexicons and bilingual dictionaries that can be compiled to finite state transducers, as well as disambiguators/parsers (in vislcg3 Constraint Grammar format) and annotated corpora. For some pairs in the language group, there are also full machine translation systems and spellcheckers (for LibreOffice, Firefox and Microsoft Office).
Much of the data is already available in Debian/Ubuntu/Fedora/OpenSUSE, if you don't need the newest git:
$ sudo apt install apertium-tur
$ apertium -l |grep tur
tur-disam
tur-gener
tur-lexc
tur-morph
tur-tagger
tur-twol
$ echo 'aynı maruldaydık' | apertium tur-disam
"<aynı>"
"aynı" det dem SELECT:144
; "aynı" adj SELECT:144
; "aynı" adj subst nom SELECT:144
; "aynı" adj SELECT:144
; "i" cop p3 sg
; "aynı" adj SELECT:144
; "i" cop aor p3 sg
; "aynı" adj subst nom SELECT:144
; "i" cop p3 sg
; "aynı" adj subst nom SELECT:144
; "i" cop aor p3 sg
"<maruldaydık>"
"marul" n loc
"i" cop ifi p1 pl
"<.>"
"." sent
Or use the stuff from beta.apertium.org for a quick test; click "analyse" to go from form to analysis:
http://beta.apertium.org/index.html?choice=tur&qA=ayn%C4%B1%...Click "generate" to go from analysis to form: http://beta.apertium.org/index.html?choice=tur&qG=%5Eayn%C4%...
There's no "predicate logic" yet, but the Constraint Grammars already used for disambiguation in Apertium are very well suited for syntax and dependency parsing (there are some quite advanced ones for the Saami languages that could be used as a basis)
hanımelinin çiçeği (flower of a plant called hanımeli)
That's subtly wrong. The flower is called hanımeli çiçeği just like portakal çiçeği etc.I fear that the inability of computers to deal with Turkish will end up morphing Turkish into something computers can deal with instead of improving computers.
Turks have done great damage to Turkish since the junta. Just a simple example: Almost everyone says "Deniz Sokak" instead of the correct "Deniz Sokağı" while somehow getting things like "Anafartalar Caddesi", "Çanakkale Apartmanı" etc right.
Adding computers to the mix is not going to improve things.
Understanding a Turkish speaker requires a grasp of the entire context at all times. "Matematikten çakmak" can mean to be good at math or to flunk math.
Another example which I noticed because it involved my name is "Uçak düşsün ama sadece Sinan ölsün!"[2] which Google Translate translates as "The plane is your dream, but only Sinan!"[3].
In fact, it means "I wish the plane crashes and only Sinan dies". Of course, "düş" as a noun is "dream" but "düşsün" is derived from the verb "düşmek" which means "to fall" but when it is coupled with a plane means "crash". Interestingly, there is not a good general purpose translation of "plane crash" to Turkish. Sure, you can get away with "uçak kazası" in most cases, but not all crashes are accidents. In fact, something as simple as "five perished in the crash" is perilous to translate. Most will translate that as "kazada beş kişi hayatını kaybetti" even in cases where the crash was not an accident. To deal with similar things, people end up over-using the word "olay" (event).
Now, ponder the difference between "Sinan bir düş" and "Sinan bir düş".
Turkish and machines don't mix.
Now, let's briefly consider the claim that Turkish pronunciation is easy compared to English. It is not. I am not even going to get into regional differences, but leave this one example which became even harder after the military junta abolished the circumflex. List the meanings of the sentence "Karı severim". Which one is pronounced differently? Note that at least one of those meanings can get you in trouble in polite company.
Edumacated Turkish native speakers always had a tendency to resort to English or French words even when completely unnecessary and I've been observing in the press and social media many examples of automated translation errors making it into daily use.
PS: A related rants[4,5].
[1]: https://news.ycombinator.com/item?id=17737333
[2]: http://www.hurriyet.com.tr/kelebek/magazin/ucak-dussun-ama-s...
[3]: https://translate.google.com/#auto/en/U%C3%A7ak%20d%C3%BC%C5...!
[4]: https://www.nu42.com/2013/04/translation-of-programming-term...
[5]: https://www.nu42.com/2014/08/replacing-hash-keys-with-values...
In English, a sentence[1] is "a set of words that is complete in itself, typically containing a subject and predicate, conveying a statement, question, exclamation, or command, ...".
In Turkish, sometimes you need a paragraph, sometimes you need a page, and sometimes you need the whole story to provide "a set of words that is complete in itself".
Try these for size[2,3].
I especially love the translations of the word "tane". Or "say" here[4].
I am going to stop before I keel over. Sure, you can try to codify a rule for each and every "set of words that is complete in itself", but I doubt that set is finite.
The way things are going I full expect to see people being required to use Turkish in a way computers can understand before computers can deal with Turkish.
[1]: https://www.google.com/search?q=define%3Asentence
[2]: https://translate.google.com/#tr/en/%C3%A7akmak%20%C3%A7akma...
[3]: https://translate.google.com/#tr/en/%C3%A7ak%20bir%20tane
https://translate.google.com/#en/tr/fruit%20flies%20like%20a...
Computers cannot deal with the ambiguities of Turkish. That says nothing about English being superior to Turkish.
However, not having a central controlling authority and not having gone through censorship drives, English does have a much richer vocabulary in common daily use to more specifically express various subtle distinctions whereas a Turkish speaker has to rely on context that is not embedded in the grammatical structure and specific words used.
Lately there are bigger advances in the area (e.g. https://arxiv.org/pdf/1805.07946.pdf)
The reality, however, is that "to fall" actually does explain what it is happening to the plane, it does not mean something completely different. The word "dus" still conveys the meaning.
> I am not even going to get into regional differences.
That's called an accent, it exists almost in every language. I have a friend from work who pronounces "latency" with LAT (as in latitude) instead of LATE-ncy. He is from midwest.
Turkish pronunciation is _easier_ than English. I don't remember having a spelling competition, but it's common with american schools (and it made its way to hollywood movies). Nitpicking examples on circumflex is not fair - how many words does Turkish even have of that kind?
> Turkish pronunciation is easy compared to English.
Yes, it is, and by a high margin! There are some exceptions. Unlike English, where almost everything is an exception.
As a bilingual person Turkish feels way more logical and structured to me. I also get frustrated when I try to map expressions from English to Turkish, which doesn't always work, but that's not the fault of the Turkish language per se.
> Turkish and machines don't mix.
That's a huge claim. I don't think enough effort has been put into it yet to make it. There's a lot of good work being done and the state of NLP in Turkish might get better soon. It's no small feat, and I'm optimistic about it.
Which synonyms?