spaCy/spacy/structs.pxd

136 lines
2.8 KiB
Cython
Raw Normal View History

2015-08-26 20:18:36 +03:00
from libc.stdint cimport uint8_t, uint32_t, int32_t, uint64_t
from .typedefs cimport flags_t, attr_t, hash_t
from .parts_of_speech cimport univ_pos_t
from libcpp.vector cimport vector
from libc.stdint cimport int32_t, int64_t
cdef struct LexemeC:
flags_t flags
2015-04-19 11:31:31 +03:00
attr_t lang
attr_t id
attr_t length
2015-01-22 18:08:25 +03:00
attr_t orth
attr_t lower
attr_t norm
attr_t shape
attr_t prefix
attr_t suffix
2015-04-19 11:31:31 +03:00
cdef struct SpanC:
hash_t id
2015-03-09 08:46:22 +03:00
int start
int end
int start_char
int end_char
2017-05-28 15:06:40 +03:00
attr_t label
attr_t kb_id
2015-03-09 08:46:22 +03:00
cdef struct TokenC:
const LexemeC* lex
uint64_t morph
univ_pos_t pos
2015-07-13 20:48:07 +03:00
bint spacy
2017-05-28 15:06:40 +03:00
attr_t tag
int idx
attr_t lemma
attr_t norm
int head
attr_t dep
uint32_t l_kids
uint32_t r_kids
uint32_t l_edge
uint32_t r_edge
int sent_start
int ent_iob
2017-05-28 15:06:40 +03:00
attr_t ent_type # TODO: Is there a better way to do this? Multiple sources of truth..
2019-03-14 17:48:40 +03:00
attr_t ent_kb_id
hash_t ent_id
2018-09-25 00:58:08 +03:00
2019-03-07 16:03:07 +03:00
cdef struct MorphAnalysisC:
univ_pos_t pos
2019-03-08 02:08:57 +03:00
int length
2019-03-07 16:03:07 +03:00
attr_t abbr
attr_t adp_type
attr_t adv_type
attr_t animacy
attr_t aspect
attr_t case
attr_t conj_type
attr_t connegative
attr_t definite
attr_t degree
attr_t derivation
attr_t echo
attr_t foreign
attr_t gender
attr_t hyph
attr_t inf_form
attr_t mood
attr_t negative
attr_t number
attr_t name_type
attr_t noun_type
attr_t num_form
attr_t num_type
attr_t num_value
attr_t part_form
attr_t part_type
attr_t person
attr_t polite
attr_t polarity
attr_t poss
attr_t prefix
attr_t prep_case
attr_t pron_type
attr_t punct_side
attr_t punct_type
attr_t reflex
attr_t style
attr_t style_variant
attr_t tense
attr_t typo
attr_t verb_form
attr_t voice
attr_t verb_type
2018-09-25 00:58:08 +03:00
# Internal struct, for storage and disambiguation of entities.
2019-06-26 16:55:26 +03:00
cdef struct KBEntryC:
# The hash of this entry's unique ID/name in the kB
hash_t entity_hash
# Allows retrieval of the entity vector, as an index into a vectors table of the KB.
# Can be expanded later to refer to multiple rows (compositional model to reduce storage footprint).
int32_t vector_index
# Allows retrieval of a struct of non-vector features.
# This is currently not implemented and set to -1 for the common case where there are no features.
int32_t feats_row
# log probability of entity, based on corpus frequency
2019-07-19 18:40:28 +03:00
float freq
# Each alias struct stores a list of Entry pointers with their prior probabilities
# for this specific mention/alias.
cdef struct AliasC:
# All entry candidates for this alias
vector[int64_t] entry_indices
# Prior probability P(entity|alias) - should sum up to (at most) 1.
vector[float] probs