Use mkRuleSeason for KO language

Summary: Use mkRuleSeason for KO language.

Reviewed By: patapizza

Differential Revision: D16441908

fbshipit-source-id: 94c450461fe788561dbf41e7b811de3d699f504d
This commit is contained in:
Jae Lee 2019-07-31 16:07:20 -07:00 committed by Facebook Github Bot
parent 70dde3bc60
commit fa386a548e
2 changed files with 30 additions and 64 deletions

View File

@ -316,13 +316,6 @@ classifiers
("mm/ddafter <time-of-day>", -4.863680881139593),
("todayafter <time-of-day>", -4.863680881139593)],
n = 94}}),
("season",
Classifier{okData =
ClassData{prior = 0.0, unseen = -1.3862943611198906,
likelihoods = HashMap.fromList [("", 0.0)], n = 2},
koData =
ClassData{prior = -infinity, unseen = -0.6931471805599453,
likelihoods = HashMap.fromList [], n = 0}}),
("year (grain)",
Classifier{okData =
ClassData{prior = -1.0608719606852628,
@ -1238,6 +1231,13 @@ classifiers
koData =
ClassData{prior = -infinity, unseen = -0.6931471805599453,
likelihoods = HashMap.fromList [], n = 0}}),
("Winter",
Classifier{okData =
ClassData{prior = 0.0, unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [("", 0.0)], n = 1},
koData =
ClassData{prior = -infinity, unseen = -0.6931471805599453,
likelihoods = HashMap.fromList [], n = 0}}),
("<time-of-day> - <time-of-day> (interval)",
Classifier{okData =
ClassData{prior = -0.49247648509779407,
@ -1358,6 +1358,13 @@ classifiers
koData =
ClassData{prior = -infinity, unseen = -0.6931471805599453,
likelihoods = HashMap.fromList [], n = 0}}),
("Summer",
Classifier{okData =
ClassData{prior = 0.0, unseen = -1.0986122886681098,
likelihoods = HashMap.fromList [("", 0.0)], n = 1},
koData =
ClassData{prior = -infinity, unseen = -0.6931471805599453,
likelihoods = HashMap.fromList [], n = 0}}),
("compose by multiplication",
Classifier{okData =
ClassData{prior = 0.0, unseen = -1.791759469228055,
@ -1413,15 +1420,17 @@ classifiers
likelihoods = HashMap.fromList [], n = 0}}),
("this <time>",
Classifier{okData =
ClassData{prior = 0.0, unseen = -2.639057329615259,
ClassData{prior = 0.0, unseen = -2.70805020110221,
likelihoods =
HashMap.fromList
[("season", -1.466337068793427), ("day", -1.466337068793427),
("hour", -1.466337068793427), ("morning", -1.8718021769015913),
("week-end", -1.8718021769015913)],
[("day", -1.540445040947149), ("hour", -1.540445040947149),
("Winter", -1.9459101490553135),
("morning", -1.9459101490553135),
("week-end", -1.9459101490553135),
("Summer", -1.9459101490553135)],
n = 4},
koData =
ClassData{prior = -infinity, unseen = -1.791759469228055,
ClassData{prior = -infinity, unseen = -1.9459101490553135,
likelihoods = HashMap.fromList [], n = 0}}),
("day-of-week",
Classifier{okData =

View File

@ -50,6 +50,14 @@ ruleHolidays = mkRuleHolidays
, monthDay 5 5 )
]
ruleSeasons :: [Rule]
ruleSeasons = mkRuleSeasons
[ ( "Summer" , "여름" , monthDay 6 21, monthDay 9 23 )
, ( "Fall" , "가을" , monthDay 9 23, monthDay 12 21 )
, ( "Winter" , "겨울" , monthDay 12 21, monthDay 3 20 )
, ( "Spring" , "" , monthDay 3 20, monthDay 6 21 )
]
ruleNamedday :: Rule
ruleNamedday = Rule
{ name = "<named-day>에"
@ -188,18 +196,6 @@ ruleMonth = Rule
_ -> Nothing
}
ruleSeason4 :: Rule
ruleSeason4 = Rule
{ name = "season"
, pattern =
[ regex ""
]
, prod = \_ ->
let from = monthDay 3 20
to = monthDay 6 21
in Token Time <$> interval TTime.Open from to
}
ruleYearLatent2 :: Rule
ruleYearLatent2 = Rule
{ name = "year (latent)"
@ -526,30 +522,6 @@ ruleExactlyTimeofday = Rule
_ -> Nothing
}
ruleSeason3 :: Rule
ruleSeason3 = Rule
{ name = "season"
, pattern =
[ regex "겨울"
]
, prod = \_ ->
let from = monthDay 12 21
to = monthDay 3 20
in Token Time <$> interval TTime.Open from to
}
ruleSeason :: Rule
ruleSeason = Rule
{ name = "season"
, pattern =
[ regex "여름"
]
, prod = \_ ->
let from = monthDay 6 21
to = monthDay 9 23
in Token Time <$> interval TTime.Open from to
}
ruleDayWithKoreanNumeral :: Rule
ruleDayWithKoreanNumeral = Rule
{ name = "day with korean number - 십일..삼십일일"
@ -894,18 +866,6 @@ ruleYesterday = Rule
, prod = \_ -> tt . cycleNth TG.Day $ - 1
}
ruleSeason2 :: Rule
ruleSeason2 = Rule
{ name = "season"
, pattern =
[ regex "가을"
]
, prod = \_ ->
let from = monthDay 9 23
to = monthDay 12 21
in Token Time <$> interval TTime.Open from to
}
ruleAfterTimeofday :: Rule
ruleAfterTimeofday = Rule
{ name = "after <time-of-day>"
@ -1231,10 +1191,6 @@ rules =
, ruleNoon
, ruleNow
, ruleQuarter
, ruleSeason
, ruleSeason2
, ruleSeason3
, ruleSeason4
, ruleSinceTimeofday
, ruleTheDayAfterTomorrow
, ruleTheDayBeforeYesterday
@ -1271,3 +1227,4 @@ rules =
, ruleTimezone
]
++ ruleHolidays
++ ruleSeasons