Package edu.washington.cs.knowitall.nlp.extraction

Examples of edu.washington.cs.knowitall.nlp.extraction.ChunkedArgumentExtraction


     */
    public static PosFeature rightAfterArg2(String... posTags) {
        return new PosFeature(posTags) {
            @Override
            protected Range rangeToExamine(ChunkedBinaryExtraction cbe) {
                ChunkedArgumentExtraction arg2 = cbe.getArgument2();
                int index = arg2.getStart() + arg2.getLength();
                if (index < 0 || index >= arg2.getSentence().getLength()) {
                    return Range.EMPTY;
                } else
                    return Range.fromInterval(index, index + 1);
            }
        };
View Full Code Here


        return new Predicate<ChunkedBinaryExtraction>() {
            @Override
            public boolean apply(ChunkedBinaryExtraction extr) {

                ChunkedSentence sentence = extr.getSentence();
                ChunkedArgumentExtraction arg1 = extr.getArgument1();
                ChunkedExtraction rel = extr.getRelation();
                for (int i = arg1.getStart() + arg1.getLength(); i < rel
                        .getStart(); ++i) {
                    String token = sentence.getToken(i);
                    String pos = sentence.getPosTag(i);

                    String lemma = stemmer.stemSingleToken(token, pos);
View Full Code Here

        return new Predicate<ChunkedBinaryExtraction>() {
            @Override
            public boolean apply(ChunkedBinaryExtraction extr) {

                ChunkedSentence sentence = extr.getSentence();
                ChunkedArgumentExtraction arg1 = extr.getArgument1();
                int i = arg1.getStart() - 1;
                if (i < 0)
                    return false;
                String token = sentence.getToken(i);
                String pos = sentence.getPosTag(i);
                String lemma = stemmer.stemSingleToken(token, pos);
View Full Code Here

     */
    public static ChunkFeature rightBeforeArg1(String... chunkTags) {
        return new ChunkFeature(chunkTags) {
            @Override
            protected Range rangeToExamine(ChunkedBinaryExtraction cbe) {
                ChunkedArgumentExtraction arg1 = cbe.getArgument1();
                int index = arg1.getStart() - 1;
                if (index < 0 || index >= arg1.getSentence().getLength()) {
                    return Range.EMPTY;
                } else
                    return Range.fromInterval(index, index + 1);
            }
        };
View Full Code Here

        return new Predicate<ChunkedBinaryExtraction>() {
            @Override
            public boolean apply(ChunkedBinaryExtraction extr) {
                // find all matches to the list pattern. If arg2 overlaps with
                // the match, return true.
                ChunkedArgumentExtraction arg2 = extr.getArgument2();
                ChunkedSentence sentence = arg2.getSentence();
                List<Match<ChunkedSentenceToken>> matchList = listPattern2
                        .findAll(ChunkedSentenceToken.tokenize(sentence));
                for (Match<ChunkedSentenceToken> match : matchList) {
                    Range matchRange = new Range(match.startIndex(),
                            match.endIndex() - match.startIndex());
                    if (matchRange.overlapsWith(arg2.getRange())) {
                        return true;
                    }
                }
                matchList = listPattern1.findAll(ChunkedSentenceToken
                        .tokenize(sentence));
                for (Match<ChunkedSentenceToken> match : matchList) {
                    Range matchRange = new Range(match.startIndex(),
                            match.endIndex() - match.startIndex());
                    if (matchRange.overlapsWith(arg2.getRange())) {
                        return true;
                    }
                }
                return false;
            }
View Full Code Here

    public static ChunkFeature rightAfterArg2(String... chunkTags) {
        return new ChunkFeature(chunkTags) {
            @Override
            protected Range rangeToExamine(ChunkedBinaryExtraction cbe) {

                ChunkedArgumentExtraction arg2 = cbe.getArgument2();
                int index = arg2.getStart() + arg2.getLength();
                if (index < 0 || index >= arg2.getSentence().getLength()) {
                    return Range.EMPTY;
                } else
                    return Range.fromInterval(index, index + 1);
            }
        };
View Full Code Here

    private Predicate<ChunkedBinaryExtraction> tokenBeforeArg1(
            final String token) {
        return new Predicate<ChunkedBinaryExtraction>() {
            public boolean apply(ChunkedBinaryExtraction e) {
                ChunkedArgumentExtraction arg1 = e.getArgument1();
                int arg1Start = arg1.getStart();
                if (arg1Start > 0) {
                    String precTok = e.getSentence().getTokens()
                            .get(arg1Start - 1);
                    if (precTok.equalsIgnoreCase(token)) {
                        return true;
View Full Code Here

    }

    private Predicate<ChunkedBinaryExtraction> tokenAfterArg2(final String token) {
        return new Predicate<ChunkedBinaryExtraction>() {
            public boolean apply(ChunkedBinaryExtraction e) {
                ChunkedArgumentExtraction arg2 = e.getArgument2();
                int arg1End = arg2.getStart() + arg2.getLength() - 1;
                if (arg1End + 1 < e.getSentence().getLength() - 1) {
                    String nextTok = e.getSentence().getTokens()
                            .get(arg1End + 1);
                    if (nextTok.equalsIgnoreCase(token)) {
                        return true;
View Full Code Here

        ChunkedSentence sent = extr.getSentence();
        out.println(sent.getTokensAsString());
        out.println(sent.getPosTagsAsString());
        out.println(sent.getChunkTagsAsString());

        ChunkedArgumentExtraction arg1 = extr.getArgument1();
        out.println(arg1.getTokensAsString());
        out.println(arg1.getRange().getStart() + " "
                + arg1.getRange().getLength());

        ChunkedExtraction rel = extr.getRelation();
        out.println(rel.getTokensAsString());
        out.println(rel.getRange().getStart() + " "
                + rel.getRange().getLength());

        ChunkedArgumentExtraction arg2 = extr.getArgument2();
        out.println(arg2.getTokensAsString());
        out.println(arg2.getRange().getStart() + " "
                + arg2.getRange().getLength());

        int label = extr.isPositive() ? 1 : 0;
        out.println(label);
    }
View Full Code Here

TOP

Related Classes of edu.washington.cs.knowitall.nlp.extraction.ChunkedArgumentExtraction

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.