Giter VIP home page Giter VIP logo

minimal_example's Introduction

#See also pipeline.png 

#input
[file]: original article text. a000000 is an artificial simplified example, a1111111 an original (Volkskrant) article/.

#basic linguistic data
[file].naf: output of Newsreader linguistic module. This is the raw linguistic data we work with.

#ALTERNATIVE: basic linguistic data AFTER OPTIONAL COREFERENCE MODULE
coreferenced_[file]: output of Newsreader + coreference resolution module. This is the raw linguistic data we work with.
If we use this module, we use the prefix "coreferenced" in all subsequent output, i.e. [file] becomes corefereced_[file]

#.naf spinoffs
[file].naf.csv: output of Microportrait module. This is a filtered, restructured representation of the .naf data.
[file].naf_NEs: output of naf_to_NEs.py, which uses KafNafParserPy to extract NEs. Name and entity type. 
[file]_morphology: output of naf_to_morphofeats.py. This is the pronoun data from the .naf to detect mentions of F/M.

alias_fullname_firstname.csv: output of NEdata_to_nameinfo.R, which uses common sense to derive the name info. Lists all recognised persons that are NEs (see [file].naf_NEs) and their label in the text (alias).
Also does coreference resolution: fullname is the longest name occurring in the same document of which the alias is a substring.
Fullname is then used to derive the first name (as the first string).
This script operates on all [file].naf_NEs in parallel, to make it easier to apply the Genderize API on the firstname info. 

firstname_gender.csv: output of genderize.py. This uses the first names from alias_fullname_firstname.csv and derives their sex + confidence level.

#data per article
[file].csv: output of mp_to_data.R. This forms the input to the classification step. Still includes gender giveaways (pronouns etc).
The data is basically filtered and gender-annotated Microportrait data: all microportrait data that we can relate to M/F either through the pronouns or the gender API.
NOTE: key role for preprocess_mpdf() function. At the minute I keep all non-head elements (constituent etc).  
TODO: use an alternative filter method: filter(dep_rel!="constituent" | relation == "label").
This ensures that a) labels are kept entirely even if first name is (wrongly) recognised as a constituent and b) crucial complements (e.g. hd/mod) are preserved.


minimal_example's People

Watchers

James Cloos avatar AVA avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.