À la recherche

du sens

@matarld
@afup

À la recherche

du sens

@matarld
@afup

Moi, c'est

Mathias.

@matarld
@afup

Je m'appelle

Mathias.

@matarld
@afup

4A65206D27617070656C6C65

4D6174686961732E

4D6F692C206327657374

4D6174686961732E

Moi, c'est Mathias.

Je m'appelle Mathias.

@matarld
@afup
@matarld
@afup

4.8

Comment quitter VIM?

Quitter son emploi avec rupture conventionnelle

Salon du

vigneron indépendant

VIM pour les nuls

Impossible de fermer VIM

2.4

1.2

0.6

@matarld
S_d = \sum_{t}^{T_q} [\sqrt{|t_d|} \cdot (1+\log (\frac{|D|}{|D_t|+1}))] \cdot \frac{|T_d|}{|T_q|}
\sum_{t}^{T_q}
\sqrt{|t_d|}
(1+\log (\frac{|D|}{|D_t|+1}))
\frac{|T_d|}{|T_q|}
@afup

Pour chaque mot de la requête

Term frequency (TF)

Inverse document frequency (IDF)

Coordination factor (C)

@matarld
@afup
\sum [TF \cdot IDF] \cdot C
\sum
TF
IDF
C
@matarld
@afup

VIM pour les nuls

\sum
S= \sum [TF \cdot IDF] \cdot C
TF
IDF
C
= [TF_{VIM} \cdot IDF_{VIM} + TF_{pour} \cdot IDF_{pour} + TF_{les} \cdot IDF_{les} + TF_{nuls} \cdot IDF_{nuls}] \cdot C
TF_{VIM}
TF_{pour}
TF_{les}
TF_{nuls}
IDF_{VIM}
IDF_{pour}
IDF_{les}
IDF_{nuls}
C
@matarld
@afup

Term Frequency (n.f):

Ce mot apparaît souvent dans le document?

\sum [TF \cdot IDF] \cdot C
TF
@matarld
@afup
TF_t = \sqrt{|t_d|}

Nombre d'occurences du mot "t" dans le document "d"

Racine carrée

@matarld
@afup
TF_t \approx |t_d|
@matarld
@afup

VIM et développeurs

Développer avec VIM, introduction pour développeurs débutants

VIM et nano, la comparaison

@matarld
@afup

VIM et développeurs

= [1 \cdot IDF_{VIM} + 1 \cdot IDF_{et}] \cdot C
= [1 \cdot IDF_{VIM} + 1 \cdot IDF_{devs}] \cdot C

Développer avec VIM, introduction pour développeurs débutants

VIM et nano, la comparaison

TF_{VIM} = \sqrt1
TF_{et} = \sqrt1
TF_{devs} = \sqrt0
TF_{VIM} = \sqrt1
TF_{et} = \sqrt0
TF_{devs} = \sqrt1
S = [\sqrt1 \cdot IDF_{VIM} + \sqrt1 \cdot IDF_{et} + \sqrt0 \cdot IDF_{devs}] \cdot C
S = [\sqrt1 \cdot IDF_{VIM} + \sqrt0 \cdot IDF_{et} + \sqrt1 \cdot IDF_{devs}] \cdot C
@matarld
@afup

Inverse Document Frequency (n.f):

Ce mot est vraiment intéressant pour notre recherche ?

\sum [TF \cdot IDF] \cdot C
IDF
@matarld
@afup

Nombre de documents contenants le mot "t"

IDF_t = 1+\log (\frac{|D|}{|D_t|+1})

Nombre de documents

@matarld
@afup
IDF_t \approx \frac{|D|}{|D_t|}
@matarld
@afup

VIM et développeurs

= 2.5 \cdot C

Développer avec VIM, introduction pour développeurs débutants

VIM et nano, la comparaison

IDF_{VIM} = 1.7
IDF_{et} = 0.8
IDF_{devs} = 1.3
IDF_{VIM} = 1.7
IDF_{et} = 0.8
IDF_{devs} = 1.3
S = [1 \cdot IDF_{VIM} + 1 \cdot IDF_{et}] \cdot C
= [1 \cdot 1.7 + 1 \cdot 0.8] \cdot C
= 3 \cdot C
S = [1 \cdot IDF_{VIM} + 1 \cdot IDF_{devs}] \cdot C
= [1 \cdot 1.7 + 1 \cdot 1.3] \cdot C
@matarld
@afup

Coordination factor (n.m):

Récompense les documents avec le plus haut pourcentage de mots présents dans la requête

\sum [TF \cdot IDF] \cdot C
C
@matarld
@afup

Nombre de mots dans la requête

C = \frac{|T_d|}{|T_q|}

Nombre de mots de la requête dans le document

@matarld
@afup

VIM et développeurs

= 1.6

Développer avec VIM, introduction pour développeurs débutants

VIM et nano, la comparaison

C = \frac{2}{3}
C = \frac{2}{3}
S = 2.5 \cdot C
= 2.5 \cdot \frac{2}{3}
= 2
S = 3 \cdot C
= 3 \cdot \frac{2}{3}
@matarld
@afup

VIM et développeurs

1.6

2

Développer avec VIM, introduction pour développeurs débutants

VIM et nano, la comparaison

\approx
@matarld
@afup

Les Développeurs 🥰 développer avec,VIM!

@matarld
@afup

...

Les Développeurs 🥰 développer avec,VIM!
[token1]  [token2]  [token3]  [...]   

filtres de caractères

générateur de tokens

filtres de tokens

@matarld
@afup
un secret

Filtres de caractères:

xq vhfuhw
|| ||||||

html_strip, mapping, pattern_replace

@matarld
@afup

html_strip

Les Développeurs 🥰 développer avec,VIM!

filtres de caractères

Les Développeurs 🥰 développer avec,VIM!
||| ||||||||||||    |||||||||| ||||||||
@matarld
@afup
foo+bar=baz

Générateurs de tokens:

[foo]  [bar]  [baz]

letter, whitespace, simple_pattern, ...

@matarld
@afup

whitespace

Les Développeurs 🥰 développer avec,VIM!
[Les]  [Développeurs]  [🥰]  [développer]  [avec,VIM!]

générateurs de tokens

@matarld
@afup
[👍]  [and]  [D0WN]

Filtres de tokens:

[up]         [down]

synonym, phonetic, stopwords, ...

 |             |
@matarld
@afup

word_delimiter

[Les]  [Développeurs]  [🥰]  [développer]  [avec,VIM!]

filtres de tokens

[Les]  [Développeurs]  [🥰]  [développer]  [avec]  [VIM]
@matarld
@afup

lowercase

filtres de tokens

[Les]  [Développeurs]  [🥰]  [développer]  [avec] [VIM]
[les]  [développeurs]  [🥰]  [développer]  [avec] [vim]
@matarld
@afup

stopwords

filtres de tokens

[les]  [développeurs]  [🥰]  [développer]  [avec] [vim]
[développeurs]  [🥰]  [développer]  [vim]
@matarld
@afup

synonym

filtres de tokens

[développeurs]  [🥰]  [développer]  [vim]
[développeurs]  [aimer]  [développer]  [vim]
@matarld
@afup

stemmer

filtres de tokens

[développeurs]  [aimer]  [développer]  [vim]
[développ]  [aim]  [développ]  [vim]
@matarld
@afup

...

Les Développeurs 🥰 développer avec,VIM!
[développ]  [aim]  [développ]  [vim]
@matarld
@afup

VIM et développeurs

Développer avec VIM, introduction pour développeurs débutants

VIM et nano, la comparaison

1.6

2

\approx
@matarld
@afup

[VIM] [et] [développeurs]

1.6

2

[1 \cdot 1.7 + 1 \cdot 0.8] \cdot \frac{2}{3} =
[1 \cdot 1.7 + 1 \cdot 1.3] \cdot \frac{2}{3} =
[VIM] [et] [nano]
[la] [comparaison]
[Développer] [avec] [VIM]
[introduction] [pour] [développeurs] [débutants]
\approx
@matarld
@afup

[vim]  [développ]

1.6

2

[développ] [vim] [introduct] [développ] [début]
[vim] [nano] [compar]
[1 \cdot 1.7] \cdot \frac{1}{2} =

0.9

[1 \cdot 1.7 + \sqrt2 \cdot 1.3] \cdot \frac{2}{2} =

3.5

\lt
\approx
@matarld
@afup

Merci!

[AFUP] Elasticsearch

By Mathias Arlaud

[AFUP] Elasticsearch

  • 3,210