1. 04 Apr, 2017 1 commit
    • delanoe's avatar
      [FEAT] Growth on graph · fb87c813
      delanoe authored
             First select a period on Documents view.
      
             Then compute a graph chosing one distance (distributional or
             conditional).
      
             Then in Graph Explorer view (TinaWebJS), user can get colors of
             node with growth attributes.
      
             Red nodes are increasing.
             Yellow nodes are decreasing.
      
             Growth computed with previous period which is equal to the
             selected period in duration (but before).
      
             TODO: make some tests with Users to validate the fact that
             previous period is not all the corpus but the selected period.
      fb87c813
  2. 20 Mar, 2017 1 commit
  3. 24 Feb, 2017 1 commit
  4. 07 Feb, 2017 1 commit
  5. 06 Feb, 2017 3 commits
  6. 31 Jan, 2017 3 commits
  7. 30 Jan, 2017 2 commits
  8. 20 Jan, 2017 2 commits
  9. 18 Jan, 2017 12 commits
    • delanoe's avatar
      CHANGELOG · fa610f47
      delanoe authored
      fa610f47
    • delanoe's avatar
      [TAG] Version 3.0.6.4 · 0371e00d
      delanoe authored
      0371e00d
    • delanoe's avatar
      [FIX] SQL query for cooc fix. · cd993055
      delanoe authored
      cd993055
    • delanoe's avatar
      f06e1d8a
    • delanoe's avatar
      [SQL] reset mem option. · d94b6ab6
      delanoe authored
      d94b6ab6
    • delanoe's avatar
      [FIX] Cooc opti. · 40564587
      delanoe authored
      40564587
    • delanoe's avatar
      [FIX] Cooc SQL. · 56943042
      delanoe authored
      56943042
    • delanoe's avatar
      [TAG] Version 3.0.6.3 · dd331cff
      delanoe authored
      dd331cff
    • delanoe's avatar
      updating changelog · 0996e65b
      delanoe authored
      0996e65b
    • delanoe's avatar
      [BUG #92] increasing size of graph. · 64b1de48
      delanoe authored
      64b1de48
    • delanoe's avatar
      7d6d345e
    • delanoe's avatar
      [FIX] 2 MAJOR BUGS on COOC SQL QUERY · c08a3b6b
      delanoe authored
          - [OLD] Performance regression
              -> lengthening and slowing the toolchain queue
              -> 2 secondes on 21 Europresse, documents is too much for instance)
          - [OLD] Some ngrams included whereas there are not in the corpus
          + [NEW] Clarity in the query
          + [NEW] Improved: 2000 ms before less than 500 ms after (factor 4
          optimization on a very small corpus); should be ok in bigger corpora
      
      New behavior of the query tested with real corpus and this simple
      example; copy paste these lines in test.sql and run it in a test
      database (createdb test).
      
      -- let be:
      
      drop table nodes_ngrams;
      drop table synonyms;
      drop table ngrams;
      drop table nodes;
      
      create table nodes (
          id serial PRIMARY KEY not null
      );
      
      create table ngrams (
          id serial PRIMARY KEY not null,
          text varchar(50)
      );
      
      create table synonyms (
          id serial PRIMARY KEY not null,
          node_id INTEGER not null,
          ngram1_id INTEGER not null references ngrams(id),
          ngram2_id INTEGER not null references ngrams(id)
      );
      
      create table nodes_ngrams (
          id serial PRIMARY KEY not null,
          node_id INTEGER not null references nodes(id),
          ngram_id INTEGER not null references ngrams(id)
      );
      
      insert into nodes (id) values(1);
      insert into nodes (id) values(2);
      insert into nodes (id) values(3);
      
      insert into ngrams (text) values('object');
      insert into ngrams (text) values('table');
      insert into ngrams (text) values('animal');
      insert into ngrams (text) values('cat');
      insert into ngrams (text) values('dog');
      insert into ngrams (text) values('other');
      insert into ngrams (text) values('abc');
      insert into ngrams (text) values('xyz');
      --select * from ngrams;
      ---- id |  text
      --------+--------
      ----  1 | object
      ----  2 | table
      ----  3 | animal
      ----  4 | cat
      ----  5 | dog
      ----  6 | other
      ----  7 | abc
      ----  8 | xyz
      
      insert into synonyms (node_id,ngram1_id,ngram2_id) values(1,1,2);
      insert into synonyms (node_id,ngram1_id,ngram2_id) values(1,3,4);
      insert into synonyms (node_id,ngram1_id,ngram2_id) values(1,3,5);
      --select * from synonyms;
      -- id | node_id | ngram1_id | ngram2_id
      ------+---------+-----------+-----------
      --  1 |       1 |         1 |         2
      --  2 |       1 |         3 |         4
      --  3 |       1 |         3 |         5
      
      insert into nodes_ngrams (node_id, ngram_id) values(1,1);
      insert into nodes_ngrams (node_id, ngram_id) values(1,6);
      insert into nodes_ngrams (node_id, ngram_id) values(1,2);
      insert into nodes_ngrams (node_id, ngram_id) values(2,4);
      insert into nodes_ngrams (node_id, ngram_id) values(2,5);
      insert into nodes_ngrams (node_id, ngram_id) values(3,4);
      insert into nodes_ngrams (node_id, ngram_id) values(3,5);
      insert into nodes_ngrams (node_id, ngram_id) values(3,6);
      --select * from nodes_ngrams;
      -- id | node_id | ngram_id
      ------+---------+----------
      --  1 |       1 |        1
      --  2 |       1 |        6
      --  3 |       1 |        2
      --  4 |       2 |        4
      --  5 |       2 |        5
      --  6 |       3 |        4
      --  7 |       3 |        5
      --  8 |       3 |        6
      
      select n1.ngram_id, n2.ngram_id, count(*)
      from nodes n
      INNER JOIN nodes_ngrams n1 ON n1.node_id = n.id
      INNER JOIN nodes_ngrams n2 ON n2.node_id = n.id
      where
      n1.ngram_id <= n2.ngram_id
      --AND
      --n1.node_id = n2.node_id
      group by 1,2
      order BY n1.ngram_id ASC
      ;
      -- ngram_id | ngram_id | count
      ------------+----------+-------
      --        5 |        6 |     1
      --        1 |        6 |     1
      --        4 |        6 |     1
      --        2 |        2 |     1
      --        4 |        4 |     2
      --        1 |        1 |     1
      --        1 |        2 |     1
      --        6 |        6 |     2
      --        2 |        6 |     1
      --        4 |        5 |     2
      --        5 |        5 |     2
      --(11 lignes)
      
      select coalesce(n11.id, n1.ngram_id), coalesce(n22.id,n2.ngram_id), count(*)
      from nodes n
      INNER JOIN nodes_ngrams n1 ON n1.node_id = n.id
      LEFT JOIN synonyms s1 on n1.ngram_id = s1.ngram2_id AND s1.node_id=1
      LEFT JOIN ngrams n11 on s1.ngram1_id = n11.id
      
      INNER JOIN nodes_ngrams n2 ON n2.node_id = n.id
      LEFT JOIN synonyms s2 on n2.ngram_id = s2.ngram2_id AND s2.node_id=1
      LEFT JOIN ngrams n22 on s2.ngram1_id = n22.id
      where
      n1.ngram_id <= n2.ngram_id
      AND
      n1.node_id = n2.node_id
      group by 1,2
      ;
      -- coalesce | coalesce | count
      ------------+----------+-------
      --        1 |        6 |     2
      --        3 |        3 |     6
      --        1 |        1 |     3
      --        3 |        6 |     2
      --        6 |        6 |     2
      --(5 lignes)
      --> les sommes comptées correspondent
      c08a3b6b
  10. 30 Nov, 2016 1 commit
  11. 29 Nov, 2016 3 commits
  12. 28 Nov, 2016 1 commit
  13. 17 Nov, 2016 1 commit
  14. 15 Nov, 2016 4 commits
  15. 09 Nov, 2016 2 commits
  16. 08 Nov, 2016 2 commits