How to get the subject , verb and object from a complex sentence consisting of more than one verb and...
Previously I differentiated using the (NOUN)(VERB)(NOUN) RELATIONSHIP,
For example, it works well with:
(John) (went) (to the market)
My source code:
str = John went to the market
splited_str = str.split(" ")
String subject, verb, object;
Boolean flag = true;
for i=0 to i<splited_str.length
if (!isVerb(splited_str[i]) && flag)
subject += splited_str[i] + " "
if (isVerb)
flag = false
verb = splited_str[i]
else
object += splited_str[i] + " "
But my code fails, for complex sentences, like this one:
It is up to us to find the answer.
Any help would be appreciated.
java data-structures nlp predicate subject
add a comment |
Previously I differentiated using the (NOUN)(VERB)(NOUN) RELATIONSHIP,
For example, it works well with:
(John) (went) (to the market)
My source code:
str = John went to the market
splited_str = str.split(" ")
String subject, verb, object;
Boolean flag = true;
for i=0 to i<splited_str.length
if (!isVerb(splited_str[i]) && flag)
subject += splited_str[i] + " "
if (isVerb)
flag = false
verb = splited_str[i]
else
object += splited_str[i] + " "
But my code fails, for complex sentences, like this one:
It is up to us to find the answer.
Any help would be appreciated.
java data-structures nlp predicate subject
1
This is a difficult problem in computational linguistics, and too broad for a forum like Stack Overflow.
– Jim Mischel
Nov 12 '18 at 18:14
add a comment |
Previously I differentiated using the (NOUN)(VERB)(NOUN) RELATIONSHIP,
For example, it works well with:
(John) (went) (to the market)
My source code:
str = John went to the market
splited_str = str.split(" ")
String subject, verb, object;
Boolean flag = true;
for i=0 to i<splited_str.length
if (!isVerb(splited_str[i]) && flag)
subject += splited_str[i] + " "
if (isVerb)
flag = false
verb = splited_str[i]
else
object += splited_str[i] + " "
But my code fails, for complex sentences, like this one:
It is up to us to find the answer.
Any help would be appreciated.
java data-structures nlp predicate subject
Previously I differentiated using the (NOUN)(VERB)(NOUN) RELATIONSHIP,
For example, it works well with:
(John) (went) (to the market)
My source code:
str = John went to the market
splited_str = str.split(" ")
String subject, verb, object;
Boolean flag = true;
for i=0 to i<splited_str.length
if (!isVerb(splited_str[i]) && flag)
subject += splited_str[i] + " "
if (isVerb)
flag = false
verb = splited_str[i]
else
object += splited_str[i] + " "
But my code fails, for complex sentences, like this one:
It is up to us to find the answer.
Any help would be appreciated.
java data-structures nlp predicate subject
java data-structures nlp predicate subject
edited Nov 12 '18 at 10:04
Bsquare
2,55431031
2,55431031
asked Nov 12 '18 at 9:51
Args Sarkar
76
76
1
This is a difficult problem in computational linguistics, and too broad for a forum like Stack Overflow.
– Jim Mischel
Nov 12 '18 at 18:14
add a comment |
1
This is a difficult problem in computational linguistics, and too broad for a forum like Stack Overflow.
– Jim Mischel
Nov 12 '18 at 18:14
1
1
This is a difficult problem in computational linguistics, and too broad for a forum like Stack Overflow.
– Jim Mischel
Nov 12 '18 at 18:14
This is a difficult problem in computational linguistics, and too broad for a forum like Stack Overflow.
– Jim Mischel
Nov 12 '18 at 18:14
add a comment |
1 Answer
1
active
oldest
votes
You can use the Stanford CoreNLP OpenIE to extract this type of triplet.
When you use OpenIE in your Java, just add the annotator openie to your properties.
See this example from Stanford or this answer which uses a command line for examples of using triplets.
After you figure out the triplets you can remove triplets that are subsets of others to get only the more specific triplets.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53259560%2fhow-to-get-the-subject-verb-and-object-from-a-complex-sentence-consisting-of-m%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
You can use the Stanford CoreNLP OpenIE to extract this type of triplet.
When you use OpenIE in your Java, just add the annotator openie to your properties.
See this example from Stanford or this answer which uses a command line for examples of using triplets.
After you figure out the triplets you can remove triplets that are subsets of others to get only the more specific triplets.
add a comment |
You can use the Stanford CoreNLP OpenIE to extract this type of triplet.
When you use OpenIE in your Java, just add the annotator openie to your properties.
See this example from Stanford or this answer which uses a command line for examples of using triplets.
After you figure out the triplets you can remove triplets that are subsets of others to get only the more specific triplets.
add a comment |
You can use the Stanford CoreNLP OpenIE to extract this type of triplet.
When you use OpenIE in your Java, just add the annotator openie to your properties.
See this example from Stanford or this answer which uses a command line for examples of using triplets.
After you figure out the triplets you can remove triplets that are subsets of others to get only the more specific triplets.
You can use the Stanford CoreNLP OpenIE to extract this type of triplet.
When you use OpenIE in your Java, just add the annotator openie to your properties.
See this example from Stanford or this answer which uses a command line for examples of using triplets.
After you figure out the triplets you can remove triplets that are subsets of others to get only the more specific triplets.
answered Dec 27 '18 at 21:52
The Old Man and the C
106
106
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53259560%2fhow-to-get-the-subject-verb-and-object-from-a-complex-sentence-consisting-of-m%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
This is a difficult problem in computational linguistics, and too broad for a forum like Stack Overflow.
– Jim Mischel
Nov 12 '18 at 18:14