duckling/Duckling/Ranking/Classifiers
Bartosz Nitka 003604dce7 Optimize simple time predicates
Summary:
This is the next step for:
https://fb.facebook.com/groups/527352907463243/permalink/600056483526218/

This:
* changes the time language to be able to track contradictions (`EmptyPredicate`)
* changes the time language to be able to collect non-contradicting pieces, like month and hour and unify them
* provides an efficient way to convert those pieces into (past,future) time series
* adds AMPM predicate runner - there's a bit of overlap with is12H, but it basically works
* changes a test case that was wrong before
* regenerates classifiers, I'm not sure why they changed exactly

Before:
```
res <- H.io $ let sentence = "10am thurs 4.30 thurs 12pm sat" in (debugTokens sentence $ analyze sentence (testContext {lang = EN}) HashSet.empty)
(15.50 secs, 6,171,188,928 bytes)

res <- H.io $ let sentence = "I have 9 am 12 pm 1 pm 2pm 4 pm 3 pm on Saturday" in (debugTokens sentence $ analyze sentence (testContext {lang = EN}) HashSet.empty)
(110.82 secs, 44,031,569,512 bytes)
```

After:
```
res <- H.io $ let sentence = "10am thurs 4.30 thurs 12pm sat" in (debugTokens sentence $ analyze sentence (testContext {lang = EN}) HashSet.empty)
(1.24 secs, 703,020,912 bytes)

res <- H.io $ let sentence = "I have 9 am 12 pm 1 pm 2pm 4 pm 3 pm on Saturday" in (debugTokens sentence $ analyze sentence (testContext {lang = EN}) HashSet.empty)
(9.51 secs, 5,891,109,592 bytes)
```

Reviewed By: JonCoens

Differential Revision: D4676812

fbshipit-source-id: 9810203
2017-03-13 17:04:10 -07:00
..
AR.hs Initial commit 2017-03-08 10:33:56 -08:00
DA.hs Optimize simple time predicates 2017-03-13 17:04:10 -07:00
DE.hs Optimize simple time predicates 2017-03-13 17:04:10 -07:00
EN.hs Optimize simple time predicates 2017-03-13 17:04:10 -07:00
ES.hs Optimize simple time predicates 2017-03-13 17:04:10 -07:00
ET.hs Initial commit 2017-03-08 10:33:56 -08:00
FR.hs Optimize simple time predicates 2017-03-13 17:04:10 -07:00
GA.hs Initial commit 2017-03-08 10:33:56 -08:00
ID.hs Initial commit 2017-03-08 10:33:56 -08:00
IT.hs Optimize simple time predicates 2017-03-13 17:04:10 -07:00
JA.hs Initial commit 2017-03-08 10:33:56 -08:00
KO.hs Fix 'tomorrow July' + IT fixes 2017-03-13 12:04:17 -07:00
MY.hs Initial commit 2017-03-08 10:33:56 -08:00
NB.hs Optimize simple time predicates 2017-03-13 17:04:10 -07:00
NL.hs Initial commit 2017-03-08 10:33:56 -08:00
PL.hs Optimize simple time predicates 2017-03-13 17:04:10 -07:00
PT.hs Optimize simple time predicates 2017-03-13 17:04:10 -07:00
RO.hs Initial commit 2017-03-08 10:33:56 -08:00
RU.hs Initial commit 2017-03-08 10:33:56 -08:00
SV.hs Optimize simple time predicates 2017-03-13 17:04:10 -07:00
TR.hs Initial commit 2017-03-08 10:33:56 -08:00
UK.hs Initial commit 2017-03-08 10:33:56 -08:00
VI.hs Initial commit 2017-03-08 10:33:56 -08:00
ZH.hs Initial commit 2017-03-08 10:33:56 -08:00