API
2
( 239 ) 2019 3 3
n
n 1998 (2 )
n è ( )è
n
n HMM
n
n (HMM ( ))
n ( )
n (
( NICT))
n (NLC )
n ( )
1
nend-to-end
2
( )
( )
è
( )API
end-to-end
: 1
3
: ( ) end-to-end
: IF ( )
ç
2
(e.g. QA) (e.g. )A B
è B
( )
e.g.
/ /
( )
e.g. ( )
pizza(X) ::= { | } X
crust(Z) ::= Z
: NLC2015 2
+2016
(IPA, UniDic, Neologd..)
è
è
take(A,T)::= T { | | }
yearOld(A) < 20? yearOld(A) > 40?
A:
2015
(A,T)::= T A |
(A,T)| (A,T)| (A,T)
(A,T)
( )
IBM Watson (prolog), DIAL
Feldman+(2007) The Text Mining Handbook
(Feldman2007)
OpenCV R
n end-to-end
n or ( )
n and
n end-to-end
n
n end ( ) ( )ç
n e.g. FAQ ( )
n e.g. †
n
n ( )
n end-to-end / ?
n e.g.
n cf. Neologd †
n e.g. You’ve lost me kick the long bucket
4† 2016 2017
+2007
(2007) 13 pp. 396-399, NLP2007
n
5
e.g. ChatBot
2
(e.g. QA) (e.g. )A B
A
( )
1 1
IF ( )
( )
ç
( )
ç
:
n (QA)
6
e.g. ? è 3
?
A
Aggregation
classifier
TB
IF
SQL
count
select
Id Pi Cr N ...
1
2
3
4
from TB
where crust
=
SQL
3
3
(Domain Specific Language)
(Seq2SQL )
.
?
Select column
pointer
WHERE clause
pointer decoder
Zhong+ 2017, Seq2SQL : Generating Structured Queries from Natural Language using Reinforcement Learning
https://einstein.ai/static/images/pages/research/seq2sql/seq2sql.pdf
: ( = )
=> =>
select count from where =
:
n ( )
7
e.g. x (set)
:
(QA )
:
B
=
(DSL )
!
(take(A,x) )
( x )
A={a | x
(a)}
Y={y | A } take(A,T)::= T { | | }Y{y|take(A,x) &
yearOld(A)}
{20,
25,
23,
45,
56,
35,
...}
( A )
x
x
( )
†
(2006) /†
(2015) NLC
: DIAL:
8
: : ( )
concept Person{
attributes: Title, FirstName, MiddleName, LastName
}
rule Person{
pattern:
“mr.” -> title Capital-> first Capital->last
actions:
Add (Title<- title, FirstName<- first, LastName<-last)
}
rule Person{
pattern:
Captial->first MiddleNameConcept->mid Capital->last
actions:
Add(FirstName<- first,MiddleName<-mid, LastName<-last)
}
mr.
2 first, last
1
2
2 first, last
)
Feldman+09
: prolog
9
:QA (IBM Watson (Jeopady!) )
è
lemma(1, ‘‘he’’).
partOfSpeech(1,pronoun).
lemma(2, ‘‘publish’’).
partOfSpeech(2,verb).
lemma(3,‘‘Songs of a Sourdough’’).
partOfSpeech(3,noun).
subject(2,1).
object(2,3).
he publish Songs of a Sourdough
1 2 3
[pro] [verb] [noun]
Prolog
A. Lally+ 2012. Question analysis: How Watson reads a clue, IBM Research & Development Vol. 56,
No. ¾, Paper 2.
authorOf(Author, Composition) :-
createVerb(Verb), subject(Verb, Author),
author(Author),
object(Verb, Composition),
composition(Composition).
createVerb(Verb) :- partOfSpeech(Verb, verb),
lemma(Verb, VerbLemma),
[‘‘write’’, ‘‘publish’’, . . .].
• authorOf
• createVerb
• WordNet
Prolog
, and
:
10
NTT ( )
: ?
https://nttdata-nazuki.jp/index.html
(2014) Twitter
NLC 2014 9 11
(1) ( +NTT ) ( 2014)
è
A BB
C : : twitter
C
:
+
twitter
(2) (https://markezine.jp/article/detail/26132?p=3)
è ( )
( )
:
11
: (concordancer)
http://chasen.naist.jp/chaki/t/2009-09-30/doc/chaki-nlp-seminar090930.pdf
ChaKi.NET ( 2009)Sketch Engine:
12
n end-to-end
n
n
n IF
è ( )
è
n
SQL, ó
è
?
è
IF IF , ChatBot
QA
13
n
n OpenCV R API
n API
n
n
:
(A,T)::= {T A |
A T { | } |
{ (A,T) | #1(A,T) | (A,T)}}.
( # )
( )
(2003,2011) (2011) Meyers+2004
14
(A,T)::= {T A |
A T { | } |
{ (A,T) | #1(A,T) | (A,T)}}.
(Generative Lexicon )
è
Formal (X) (X) (X)
Constitutive
Telic ( , =X)
Agentive ( Z, X) ( X Y) ( X, Y)
+ (2015) ( WS)
(2011), + (2015)
(Constitutive role):
(Formal role):
(Telic role):
(Agentive role):
(Pustejovsky 1995)
X Y /Y X
:
15
:
, ,
(A,T)::= {T A |
A T { | } |
{ (A,T) | #1(A,T) | (A,T)}}.
1 2 3 4 5 6 7
A T
Span è
Span1 Span2
Agent Theme
A T ( ,
)
è
Span
(IF
)
(1,2)
API
16
9:00 16:00
15
1 2
?
?
) QA
( )
YobiFromTo(X1, X2):- {X1 X2}
Yobi(X1), Yobi(X2).
Yobi(Z):- [ , , ]{null| }
TimeFromTo(T1, T2):-
TimePattern(T1), TimePattern(T2),
{T1 T2|T1 T2}.
TimePattern(T1) :- {T1 = HHMM| HH:MM}
( 9:00 16:00 )
è IF (API)
API YobiFromTo( , )
TimeFromTo(9:00, 16:00)
Date Time
API
:
17
( + 2018)
, , , (2018)
JSAI 2018 2E2-02
:
E-2-1 -
- (V= , x) ::= {
x |
x |
x |
x }
- (V= , x) ::= {
x |
x |
x |
x }
:
:
n
18
ReasonP (X) :- {X “ ” | X “ ” | X “ ” | X “ ”}
Filered(c = “ ”,X) :- ReasonP(X), Filter(c, X).
3
, , . .
, Vol. 45, No. 3, pp. 919–933, 2004
, , , (2008). . NLP2014, 1144-1147
: API
19
Ju+KN Uni-M+Cab Kuro Sudachi
FrameNet
(A,T)
n
n (A,T)
n
n
n python
Contain(A, “ ”)
And
Get(T)
Get(T):-
Author(A,T),
Contain(A,” ”)
) API
T
{ ,
,
,
}
(2019 2 )
n FaceBook PyText ( )
n Semantic Parsing for Task Oriented Dialog using Hierarchical
Representations
20
(Intent slot)
Gupta+ (2018) Semantic Parsing for Task Oriented Dialog using Hierarchical Representations,
EMNLP2018, pp.2787-2792, http://aclweb.org/anthology/D18-1300/d18-1300
Get_Directions (Destination) ::= { “Driving directions to ” }
Destination (Name_event, Cat_event) ::= {event }
PyTorch
:
21
n API
Aggregation
classifier
TB
IF
SQL
count
select
Id Pi Cr N ...
1
2
3
4
from TB
where crust
=
3
3
(Seq2SQL )
.
?
Select column
pointer
WHERE clause
pointer decoder
or
NN
IF
SQL
count
select
Id Pi Cr N ...
1
2
3
4
from TB
where crust
=
3
NN
3
API( )
Neura lNetwork backprop API softmax
22
n
n Strubell+(2018) end-to-end parser
è Dozat & Manning (2017) parser
Strubell, E., Verga, P., Andor, D., Weiss, D. and Mc- Callum, A. (2018) Linguistically-Informed
Self-Attention for Semantic Role Labeling . Proceedings of the 2018 Conference on Empirical
Methods in Natural Language Processing, pp. 5027–5038
Dozat, T. and Manning, C. D.: Deep Biaffine Atten- tion for Neural Dependency Parsing,
Proceedings of the International Conference on Learning Representations (2017).
End-to-End
23
( )
Self-Supervised Learning
cbow skip-gram BERT
:
• NHK ? AI 2 1
• (2019). NeurIPS 2019 .
in 76 AI
AI 1 2019 3 1
• (2019) in (2018) .
(google
)
:
Q ?
? ( )
n
n ( )
n
n
n
n èAPI
n
n OpenCV R
n API
n ( )
n
n ( ?)
24
Reference
n : NLC2015 2
n (2016) , NLC2015-46
n Feldman+ (2007) The Text Mining Hnadbook ( : + (2010)
)
n (2011) .
n (2007) .
n (2003) .
n A. Meyers and R. Reeves and C. Macleod and R. Szekely and V. Zielinska and B. Young and R.
Grishman (2004) “AnnotaVng Noun Argument Structure for NomBank,” in Proceedings of
LREC2004, pp. 803–806.
n , (1987) .
n (2013)
n ,
, 6 , pp.51-56, 2014 .
n , :
No.2, pp.85-120, 2006.
n , , 10 , A5-3, 2004
n Liang+2017, Neural Symbolic Machines: Learning SemanVc Parsers on Freebase with Weak
Supervision, ACL2017 (SQL s2s).
25
n
26

構文や語彙意味論の分析成果をプログラムとして具現化する言語 パターンマッチAPIの可能性

  • 1.
    API 2 ( 239 )2019 3 3
  • 2.
    n n 1998 (2) n è ( )è n n HMM n n (HMM ( )) n ( ) n ( ( NICT)) n (NLC ) n ( ) 1
  • 3.
  • 4.
    : 1 3 : () end-to-end : IF ( ) ç 2 (e.g. QA) (e.g. )A B è B ( ) e.g. / / ( ) e.g. ( ) pizza(X) ::= { | } X crust(Z) ::= Z : NLC2015 2 +2016 (IPA, UniDic, Neologd..) è è take(A,T)::= T { | | } yearOld(A) < 20? yearOld(A) > 40? A: 2015 (A,T)::= T A | (A,T)| (A,T)| (A,T) (A,T) ( ) IBM Watson (prolog), DIAL Feldman+(2007) The Text Mining Handbook (Feldman2007) OpenCV R
  • 5.
    n end-to-end n or( ) n and n end-to-end n n end ( ) ( )ç n e.g. FAQ ( ) n e.g. † n n ( ) n end-to-end / ? n e.g. n cf. Neologd † n e.g. You’ve lost me kick the long bucket 4† 2016 2017 +2007 (2007) 13 pp. 396-399, NLP2007
  • 6.
    n 5 e.g. ChatBot 2 (e.g. QA)(e.g. )A B A ( ) 1 1 IF ( ) ( ) ç ( ) ç
  • 7.
    : n (QA) 6 e.g. ?è 3 ? A Aggregation classifier TB IF SQL count select Id Pi Cr N ... 1 2 3 4 from TB where crust = SQL 3 3 (Domain Specific Language) (Seq2SQL ) . ? Select column pointer WHERE clause pointer decoder Zhong+ 2017, Seq2SQL : Generating Structured Queries from Natural Language using Reinforcement Learning https://einstein.ai/static/images/pages/research/seq2sql/seq2sql.pdf : ( = ) => => select count from where =
  • 8.
    : n ( ) 7 e.g.x (set) : (QA ) : B = (DSL ) ! (take(A,x) ) ( x ) A={a | x (a)} Y={y | A } take(A,T)::= T { | | }Y{y|take(A,x) & yearOld(A)} {20, 25, 23, 45, 56, 35, ...} ( A ) x x ( ) † (2006) /† (2015) NLC
  • 9.
    : DIAL: 8 : :( ) concept Person{ attributes: Title, FirstName, MiddleName, LastName } rule Person{ pattern: “mr.” -> title Capital-> first Capital->last actions: Add (Title<- title, FirstName<- first, LastName<-last) } rule Person{ pattern: Captial->first MiddleNameConcept->mid Capital->last actions: Add(FirstName<- first,MiddleName<-mid, LastName<-last) } mr. 2 first, last 1 2 2 first, last ) Feldman+09
  • 10.
    : prolog 9 :QA (IBMWatson (Jeopady!) ) è lemma(1, ‘‘he’’). partOfSpeech(1,pronoun). lemma(2, ‘‘publish’’). partOfSpeech(2,verb). lemma(3,‘‘Songs of a Sourdough’’). partOfSpeech(3,noun). subject(2,1). object(2,3). he publish Songs of a Sourdough 1 2 3 [pro] [verb] [noun] Prolog A. Lally+ 2012. Question analysis: How Watson reads a clue, IBM Research & Development Vol. 56, No. ¾, Paper 2. authorOf(Author, Composition) :- createVerb(Verb), subject(Verb, Author), author(Author), object(Verb, Composition), composition(Composition). createVerb(Verb) :- partOfSpeech(Verb, verb), lemma(Verb, VerbLemma), [‘‘write’’, ‘‘publish’’, . . .]. • authorOf • createVerb • WordNet Prolog , and
  • 11.
    : 10 NTT ( ) :? https://nttdata-nazuki.jp/index.html (2014) Twitter NLC 2014 9 11 (1) ( +NTT ) ( 2014) è A BB C : : twitter C : + twitter (2) (https://markezine.jp/article/detail/26132?p=3) è ( ) ( )
  • 12.
  • 13.
    12 n end-to-end n n n IF è( ) è n SQL, ó è ? è IF IF , ChatBot QA
  • 14.
    13 n n OpenCV RAPI n API n n : (A,T)::= {T A | A T { | } | { (A,T) | #1(A,T) | (A,T)}}. ( # ) ( ) (2003,2011) (2011) Meyers+2004
  • 15.
    14 (A,T)::= {T A| A T { | } | { (A,T) | #1(A,T) | (A,T)}}. (Generative Lexicon ) è Formal (X) (X) (X) Constitutive Telic ( , =X) Agentive ( Z, X) ( X Y) ( X, Y) + (2015) ( WS) (2011), + (2015) (Constitutive role): (Formal role): (Telic role): (Agentive role): (Pustejovsky 1995) X Y /Y X
  • 16.
    : 15 : , , (A,T)::= {TA | A T { | } | { (A,T) | #1(A,T) | (A,T)}}. 1 2 3 4 5 6 7 A T Span è Span1 Span2 Agent Theme A T ( , ) è Span (IF ) (1,2)
  • 17.
    API 16 9:00 16:00 15 1 2 ? ? )QA ( ) YobiFromTo(X1, X2):- {X1 X2} Yobi(X1), Yobi(X2). Yobi(Z):- [ , , ]{null| } TimeFromTo(T1, T2):- TimePattern(T1), TimePattern(T2), {T1 T2|T1 T2}. TimePattern(T1) :- {T1 = HHMM| HH:MM} ( 9:00 16:00 ) è IF (API) API YobiFromTo( , ) TimeFromTo(9:00, 16:00) Date Time API
  • 18.
    : 17 ( + 2018) ,, , (2018) JSAI 2018 2E2-02 : E-2-1 - - (V= , x) ::= { x | x | x | x } - (V= , x) ::= { x | x | x | x } :
  • 19.
    : n 18 ReasonP (X) :-{X “ ” | X “ ” | X “ ” | X “ ”} Filered(c = “ ”,X) :- ReasonP(X), Filter(c, X). 3 , , . . , Vol. 45, No. 3, pp. 919–933, 2004 , , , (2008). . NLP2014, 1144-1147
  • 20.
    : API 19 Ju+KN Uni-M+CabKuro Sudachi FrameNet (A,T) n n (A,T) n n n python Contain(A, “ ”) And Get(T) Get(T):- Author(A,T), Contain(A,” ”) ) API T { , , , }
  • 21.
    (2019 2 ) nFaceBook PyText ( ) n Semantic Parsing for Task Oriented Dialog using Hierarchical Representations 20 (Intent slot) Gupta+ (2018) Semantic Parsing for Task Oriented Dialog using Hierarchical Representations, EMNLP2018, pp.2787-2792, http://aclweb.org/anthology/D18-1300/d18-1300 Get_Directions (Destination) ::= { “Driving directions to ” } Destination (Name_event, Cat_event) ::= {event } PyTorch
  • 22.
    : 21 n API Aggregation classifier TB IF SQL count select Id PiCr N ... 1 2 3 4 from TB where crust = 3 3 (Seq2SQL ) . ? Select column pointer WHERE clause pointer decoder or NN IF SQL count select Id Pi Cr N ... 1 2 3 4 from TB where crust = 3 NN 3 API( ) Neura lNetwork backprop API softmax
  • 23.
    22 n n Strubell+(2018) end-to-endparser è Dozat & Manning (2017) parser Strubell, E., Verga, P., Andor, D., Weiss, D. and Mc- Callum, A. (2018) Linguistically-Informed Self-Attention for Semantic Role Labeling . Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing, pp. 5027–5038 Dozat, T. and Manning, C. D.: Deep Biaffine Atten- tion for Neural Dependency Parsing, Proceedings of the International Conference on Learning Representations (2017). End-to-End
  • 24.
    23 ( ) Self-Supervised Learning cbowskip-gram BERT : • NHK ? AI 2 1 • (2019). NeurIPS 2019 . in 76 AI AI 1 2019 3 1 • (2019) in (2018) . (google ) : Q ? ? ( )
  • 25.
    n n ( ) n n n nèAPI n n OpenCV R n API n ( ) n n ( ?) 24
  • 26.
    Reference n : NLC20152 n (2016) , NLC2015-46 n Feldman+ (2007) The Text Mining Hnadbook ( : + (2010) ) n (2011) . n (2007) . n (2003) . n A. Meyers and R. Reeves and C. Macleod and R. Szekely and V. Zielinska and B. Young and R. Grishman (2004) “AnnotaVng Noun Argument Structure for NomBank,” in Proceedings of LREC2004, pp. 803–806. n , (1987) . n (2013) n , , 6 , pp.51-56, 2014 . n , : No.2, pp.85-120, 2006. n , , 10 , A5-3, 2004 n Liang+2017, Neural Symbolic Machines: Learning SemanVc Parsers on Freebase with Weak Supervision, ACL2017 (SQL s2s). 25
  • 27.