Taxonomy of concepts project

Just opensourced a ‘taxonomy of concepts‘ project. The aim of this project is to create a library in Python based on a taxonomy of commonly used concepts, so that it can be used in projects related to artificial intelligence (AI) and natural language understanding and processing. The library that is part of the module is intended to allow an AI to answer a broad range of questions such as:

  • What is the opposite of generosity?
  • What is the contrary of prodigality?
  • Can you complete the following sentence, where the last word is missing: cowardice and cautiousness are in the same type of relationship as stinginess and …
  • Can you complete the following sentence, where the last word is missing: prodigality and avarice are in the same type of relationship as inclemency and …

Speed text again

Continuing the tests with the new version ported to Python. Here, the full text of Jules Verne’s Journey to the Center of the Earth. The text is 85929 words long (about 350 pages). The translation time is about 6 seconds (Intel Core i7 with 16 GO RAM).

Praise for Python

Python is the perfect language for analytical philosophers. We share a common goal of clarity. For it seems that the difficult things are only a confused and tangled assembly of numerous sub-things.

Python also has a great expressive power, with its battery of dictionaries, sets, lists and tuples.

Currently transferring the whole thing to python

Currently transferring the whole thing to python. The main goal is to realize a module for versatile grammatical disambiguation, i.e. a disambiguation module per grammatical type, suitable for many languages, without major and complicated code changes. The flexibility allowed by the dictionaries and the different types of lists in python seems to be better suited to this project.

On versatile grammatical disambiguation

If we want to realize a rule-based translation eco-system (with many language pairs), a disambiguation module for grammatical types is necessary. Indeed, for the French language, such a module performs disambiguation with respect to about 100 categories. The number of pairs (or 3-tuples, 4-tuples, etc.) of disambiguation, for French, is about 250. We need a module that disambiguates each of these n-tuples. So these n-tuples are different from one language to another and necessitates a language-specific module. However, in the context of an eco-system, it is too complex and time-consuming to implement a disambiguation module for each language pair and each ambiguous type. What is needed is a disambiguation module that is not language-specific and that can be simply adapted to a given language pair. A versatile grammatical disambiguator seems to be the crux of the matter here.

About modifiers of indefinite pronouns

If we consider indefinite pronouns, and in particular: ‘ceci, cela, les autres, quelques-uns, tous, toutes’ (this, that, the others, some, all, all), it turns out that they are likely to appear in sequences such as: ‘tout ceci, tout cela, tous les autres, toutes les autres, au moins quelques-uns, quasiment tous, presque tous, quasiment toutes, presque toutes’ (all this, all that, all the others, all the others, at least some, almost all, almost all, almost all, almost all‘; tuttu quissu, tuttu quissa, tutti l’altri, tutti l’altri, alminu calchiadunu, guasgi tutti, guasgi tutti, guasgi tutti, guasgi tutti) and followed by a verb. In the present context, ‘tout’ (all) in ‘tout ceci’ (all this; tuttu quissu) and ‘tout cela’ (all that; tuttu quissa), ‘tous’ (all) in ‘tous les autres’ (all others; tutti l’altri), ‘toutes’ (all) in ‘toutes les autres’ (all others; tutti l’altri), ‘au moins’ (at least) in ‘au moins quelques-uns’ (at least some), ‘quasiment’ (almost; guasgi) in ‘quasiment tous’ (almost all; guasgi tutti) and ‘quasiment toutes’ (almost all; guasgi tutti), ‘presque’ (almost; guasgi) in ‘presque tous’ (almost all; guasgi tutti) and ‘presque toutes’ (almost all; guasgi tutti) play the role of a modifier of an indefinite pronoun, as they change its meaning and scope.

About so-called tonic personal pronouns again

Let’s consider the so-called ‘tonic personal pronouns’ used in the imperative, in an affirmative (non-negative) form: parle-moi, _ , parle-lui, parlez-nous, parlez-vous, parle-leur (talk to me, , talk to him/her, talk to us, talk to you, talk to them; parla mi, _, parla li, parleti ci, parleti vi, parla li). Here again, we have the equivalence of meaning: parle-moi = parle à moi, _ , parle-lui = parle à lui/elle, parlez-nous = parlez à nous, parlez-vous = parlez à vous, parle-leur = parle à eux/elles (no difference in english; parla mi = parla à mè, _, parla li = parla ad eddu/edda, parleti ci = parleti à no, parleti vi = parleti à vo, parla li = parla ad eddi). Therefore, once again: ‘me = à moi, te = à toi, lui = à lui/elle, nous = à nous, vous = à vous, leur = eux/elles’ (mi = à mè, ti = à tè, li = ad eddu/edda, ci = à no, vi = à vo, li = ad eddi). Thus, in the so-called ‘tonic personal pronoun’ used in the imperative, the preposition placed before the personal pronoun is included. In the present model, ‘tonic personal pronouns’ cannot be considered as a category of personal pronouns, but are viewed here as a contraction, i.e. a preposition+personal pronoun group.

About personal pronouns

To begin with, there is (i) the class of autonomous personal pronouns: ‘moi, toi, lui/elle, nous, vous, eux/elles’ (me, you, he/she, we, you, they).

There is also (ii) the class of personal pronouns as direct object complements: ‘me te le/la nous vous les’ (me you him/her us you them; mi ti u/a ci vi i/e), as in ‘il me comprend, elle te comprend, je le comprends, nous nous comprenons, ils vous comprennent, je les comprends’: (he understands me, she understands you, I understand him, we understand us, they understand you, I understand them; mi capisci, ti capisci, u capiscu, ci capimu, vi capiscini, i capiscu).

There are also (iii) the so-called ‘tonic personal pronouns’: ‘moi toi lui/elle nous vous eux/elles’ (me you him/her we you them), used after a preposition: ‘de moi, à toi, devant lui, après elle, par nous, chez vous, à eux, à elles’ (of me, to you, in front of him, after her, by us, at your place, to them, to them; di mè, à tè, davanti ad eddu, dopu ad edda, da no, ind’è vo, ad eddi, ad eddi).

Finally, there is the class of person pronouns as indirect object complement: ‘me te lui nous vous leur’ (not applicable to english; mi ti li ci vi li). For example: ‘il me parle, elle te parle, je lui parle, il nous parle, elle vous parle, je leur parle’ (he talks to me, she talks to you, I talk to her, he talks to us, she talks to you, I talk to them; mi parla, ti parla, li parlu, ci parla, vi parla, li parlu). If we now analyse the personal pronouns as indirect object complements, it turns out that each of them is equivalent to the preposition followed by the tonic personal pronoun: ‘il me parle = il parle à moi, elle te parle = elle parle à toi, je lui parle = je parle à lui/elle, il nous parle = il parle à nous, elle vous parle = elle parle à vous, je leur parle = je parle à eux/elles’ (mi parla = parla à mè, ti parla = parla à tè, li parlu = parlu ad eddu/edda, ci parla = parla à no, vi parla = parla à vo, li parlu = parla ad eddi). Therefore: ‘me = à moi, te = à toi, lui = à lui/elle, nous = à nous, vous = à vous, leur = eux/elles’ (mi = à mè, ti = à tè, li = ad eddu/edda, ci = à no, vi = à vo, li = ad eddi). Thus, in the so-called ‘tonic personal pronoun’, the preposition placed before the personal pronoun is included. It is therefore a preposition+personal pronoun group. In the present context, ‘tonic personal pronouns’ cannot be considered as a category of personal pronouns: in the present model, it is it is a contraction, i.e. a group consisting of a preposition followed by a personal pronoun: PS+PRPERS.