Comments (8)
I agree that frequencies will benefit from a more systematic approach. It's a bit tricky because there is a range of frequency types. I'm afraid we can't easily decompose all these cases using existing roles and concepts. So I think we might benefit from a dedicated frame such as the following (specific role names are only a first quick take, maybe we should use :ARG1, :ARG2 ...):
frequency-entity
:quant
:per-quant
:every-interval
:every-entity
Here are a number of examples how the arguments would be used:
$42,000 per year [salary, which might paid on a monthly schedule]
(f / frequency-entity
:quant (m / monetary-quantity :quant 42000 :unit (d / dollar))
:per-quant (t / temporal-quantity :quant 1 :unit (y / year)))
every 3000 miles [oil change]
(f / frequency-entity
:every-interval (d / distance-quantity :quant 3000 :unit (m / mile)))
every Wednesday afternoon
(f / frequency-entity
:every-entity (d / date-entity :weekday (w / wednesday) :dayperiod (a / afternoon)))
every other Wednesday
(f / frequency-entity
:every-interval (t / temporal-quantity :quant 2 :unit (w / week))
:every-entity (d / date-entity :weekday (w2 / wednesday)))
twice a year [e.g. Thanksgiving and Christmas]
(f / frequency-entity
:quant 2
:per-quant (t / temporal-quantity :quant 1 :unit (y / year)))
several times per month
(f / frequency-entity
:quant (s / several)
:per-quant (t / temporal-quantity :quant 1 :unit (m / month)))
every day
(f / frequency-entity
:every-interval (t / temporal-quantity :quant 1 :unit (d / day)))
every day at 8am and 5pm
(f / frequency-entity
:every-interval (t / temporal-quantity :quant 1 :unit (d / day))
:every-entity (a / and :op1 (d2 / date-entity :time "8:00")
:op2 (d3 / date-entity :time "17:00")))
every once in a while
(f / frequency-entity
:every-interval (w / while))
from amr-guidelines.
We discussed the proposal above at our AMR meeting on June 11, 2013. Participants generally like the idea but most have not had the chance to look at it before and would like some time to think about it. Ulf was asked to provide a few full-sentence examples. Here they are, along with date-entity analogies.
Frequency-entities are typically used with role :frequency, just as date-entities are typically used with :time.
Frequency-entities are used for certain expressions of somewhat regular frequency, often involving "every" or "per",
just as date-entities are used for certain expressions including an absolute time component such as "December" or "4pm".
Frequency-entities are not used for some simple expressions such as sometimes or very often, just as date-entities are not used for some time expressions such as yesterday or next year.
We meet every Tuesday morning.
(m / meet-03
:ARG0 (w / we)
:frequency (f / frequency-entity
:every-entity (d / date-entity :weekday (t / tuesday)
:dayperiod (m2 / morning))))
We meet often.
(m / meet-03
:ARG0 (w / we)
:frequency (o / often))
We met on Tuesday morning.
(m / meet-03
:ARG0 (w / we)
:time (d / date-entity
:weekday (t / tuesday)
:dayperiod (m2 / morning)))
We met yesterday.
(m / meet-03
:ARG0 (w / we)
:time (y / yesterday))
from amr-guidelines.
2 thumbs up for standardizing our approach to frequencies!
I'm not sure I understand the semantic distinction between :per-quant
and :every-interval
. Syntactically, per and similar constructions require a :quant
, whereas every and each do not:
- We talk every/each/_per/_a day. (no
:quant
) - We talk once every/each/per/a day. (
:quant 1
) - We talk a few times every/each/per/a day. (
:quant a-few
)
But this strikes me as a syntactic, not semantic, restriction. Can we simply use :interval
for all of these?
A possible objection might be that per admits a wider range of things than just time intervals: e.g., 20 students per teacher. Are these frequencies? Superficially it is not so different than every 3000 miles, but miles can be understood metonymically as implying a temporal interval in a recurring event.
I am definitely in favor of dropping times (as in several times per month) from the AMR.
from amr-guidelines.
Nathan raises a good point with his 20 students per teacher example.
So we might want to generalize frequency-entity to something like rate-entity for which frequencies (with role :frequency) would be a common specific case. A rate-entity would accommodate a wider range of expressions, including
- $4 a gallon
- $10,000 per capita
- $10,000 a student per year
We meet every Tuesday morning.
(m / meet-03
:ARG0 (w / we)
:frequency (f / rate-entity
:every-entity (d / date-entity :weekday (t / tuesday)
:dayperiod (m2 / morning))))
The city spends $10,000 a student per year on education.
(s / spend-01
:ARG0 (c / city)
:ARG1 (e / educate-01)
:ARG3 (r / rate-entity
:quant (m / monetary-quantity :quant 10000 :unit (d / dollar))
:per-quant (s2 / student)
:per-quant (t / temporal-quantity :quant 1 :unit (y / year))))
Gas costs $4 per gallon.
(c / cost-01
:ARG1 (g / gas)
:ARG2 (r / rate-entity
:quant (m / monetary-quantity :quant 4 :unit (d / dollar))
:per-quant (v / volume-quantity :quant 1 :unit (g2 / gallon))))
Nathan eats two bagels a day.
(e / eat-01
:ARG0 (p / person :name (n / name :op1 "Nathan"))
:ARG1 (r / rate-entity
:quant (b / bagel :quant 2)
:per-quant (t / temporal-quantity :quant 1 :unit (d / day))))
Mexico has a GDP of $10,000 per capita.
(r / rate-entity
:quant (m / monetary-quantity :quant 10000 :unit (d / dollar))
:per-quant (p / person)
:domain (p2 / product
:mod (g / gross)
:mod (d2 / domestic)
:poss (c / country :name (n / name :op1 "Mexico"))))
:every-interval is more specific than :per-quant.
- I have to renew my car insurance every six months. (a special case of twice a year, at regular intervals, on June 27 and on December 27)
- John and Mary go Christmas caroling twice a year. (always in December, not every six months)
from amr-guidelines.
Ah OK, I guess the difference is 'in every' (:per-quant
) vs. 'regularly at a fixed interval of' (:every-interval
) vs. 'regularly at a recurring point in time of' (:every-entity
).
In meet every Tuesday morning, I feel like every is just a normal quantifier, so it is equivalent to all Tuesday mornings. (The interpretation of this as a once-a-day meeting is an inference.) So this would motivate
(m / meet-03
:time (d / date-entity :weekday (t / tuesday)
:dayperiod (m2 / morning)
:quant (e / every)))
In once per day or one time during each day, we could just quantify the event:
(m / meet-03
:quant 1
:time (t / temporal-quantity :quant 1 :unit (d / day) :quant (e / every)))
(There may be a scalar implicature that this means "once and only once," but it seems unnecessary to encode this.)
If the recurrence is expressed in terms of the interval, such as once every five minutes, this would call for an explicit :frequency
:
(m / meet-03
:frequency (r / rate-entity
:quant 1
:interval (t / temporal-quantity :quant 5 :unit (m2 / minute))))
Combining the time-locator and the interval, as in every other Tuesday:
(m / meet-03
:time (d / date-entity :weekday (t / tuesday)))
:frequency (r / rate-entity
:interval (t / temporal-quantity :quant 2 :unit (w / week))))
I did not modify the date-entity
with every
because that would imply the meeting takes place every Tuesday, which is false. However, the entailments are that (a) the meeting takes place on Tuesdays, and (b) the meeting recurs at an interval of 2 weeks.
from amr-guidelines.
"to meet (once) every a day"
(m / meet-03
:quant 1
:time (t / temporal-quantity :quant 1 :unit (d / day) :quant (e / every)))
AMRs such as the above strike me as somewhat syntactic. These type of frequency expressions are tricky in that one can not just semantically decompose "once every day" into "once" and "every day". The AMR above suggests a single meeting whereas in fact there are many. The temporal-quantity has two :quant's: both "1" and "every". What is that supposed to mean semantically?
from amr-guidelines.
I agree it's not as deep. But it strikes me as consistent with the sort of compromise between syntax and semantics that AMR typically makes.
In general, AMR does not guarantee that removing modifiers will produce a valid inference. "We met once on Tuesday" would presumably be meet-03 :quant 1 :time [Tuesday]
, yet that sentence does not imply "We met (only) once", either.
from amr-guidelines.
The double quant thing was a mistake. It should have read:
In once per day or one time during each day, we could just quantify the event:
(m / meet-03
:quant 1
:time (t / temporal-quantity :unit (d / day) :quant (e / every)))
from amr-guidelines.
Related Issues (20)
- Disjunction of predicates under a relative clause HOT 2
- Represent Transitivity law using AMR
- Segmenting utterances for speech AMR
- How AMR distinguish passive and active sentence? HOT 2
- What kinds of reasoning can AMR represent? HOT 2
- How to represent Double Negation by automatically modifying AMR? HOT 2
- Can AMR distinguish the different meanings for `and` in different scenarios? HOT 2
- Explanation mismatch in README
- Annotation changes between AMR versions HOT 1
- Reification, examples HOT 4
- :poss and its reification HOT 2
- The astronaut said the doctor thinks the teacher likes her, the astronaut HOT 1
- Presumed typo in guidelines: have-degree-92 HOT 1
- Is there an open-source version of the AMR checker? HOT 6
- Ambiguous reification of ":poss" HOT 7
- How represent (novel) predicates not in propbank HOT 2
- Reification of :accompanier, :example in the Table -> switch domain and range? HOT 5
- Reference for citation HOT 2
- AMR in AMR HOT 5
- Question about politeness in English AMR HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from amr-guidelines.