aibox.nlp.features.portuguese.referential_cohesion

Características relacionadas à Coesão Referencial.

Classes

ReferentialCohesion(adj_arg_ovl, adj_cw_ovl, ...)

Características de coesão referencial.

ReferentialCohesionExtractor([nlp, stemmer])

Extrator de características relacionadas à coesão referencial.

class aibox.nlp.features.portuguese.referential_cohesion.ReferentialCohesion(adj_arg_ovl: float, adj_cw_ovl: float, adj_stem_ovl: float, arg_ovl: float, adjacent_refs: float, coreference_pronoun_ratio: float, anaphoric_refs: float, stem_ovl: float, demonstrative_pronoun_ratio: float)[código-fonte]

Base: DataclassFeatureSet

Características de coesão referencial.

Para mais informações sobre as características, checar as referências.

Referências:

[1]: Oliveira, H., Ferreira Mello, R., Barreiros Rosa, B. A., Rakovic, M., Miranda, P., Cordeiro, T., Isotani, S., Bittencourt, I., & Gasevic, D. (2023). Towards explainable prediction of essay cohesion in Portuguese and English. In LAK23: 13th International Learning Analytics and Knowledge Conference (pp. 509–519). LAK 2023: 13th International Learning Analytics and Knowledge Conference. ACM.

Parâmetros:
as_dict() dict[str, float]

Retorna os valores das características desse conjunto para um dado texto.

Retorna:

características contidas nesse FeatureSet para um dado texto.

Tipo de retorno:

dict[str, float]

as_numpy() ndarray[float32]

Retorna as características como uma NumPy array. Os valores de cada índice são correspondentes às características na ordem de names().

Retorna:

array de np.float32 representando os valores das características.

Tipo de retorno:

ndarray[float32]

as_tensor(device: str | None = None) Tensor

Retorna as características como um tensor. Os valores de cada índice são correspondentes às características na ordem de names().

Parâmetros:

device (str, opcional) – dispositivo de armazenamento.

Retorna:

Tensor do torch representado os valores das características.

Tipo de retorno:

Tensor

names() list[str]

Retorna os nomes das características em ordem lexicográfica. Todos os outros métodos apresentam os valores conforme essa ordem.

Retorna:

nome das características desse conjunto.

Tipo de retorno:

list[str]

class aibox.nlp.features.portuguese.referential_cohesion.ReferentialCohesionExtractor(nlp: Language | None = None, stemmer: SnowballStemmer | None = None)[código-fonte]

Base: FeatureExtractor

Extrator de características relacionadas à coesão referencial.

Parâmetros:
  • nlp (Language | None) – modelo do spaCy a ser utilizado. Defaults to “pt_core_news_md”.

  • stemmer (SnowballStemmer | None) – stemmer do NLTK a ser utilizado. Defaults to SnowballStemmer.

Exemplo de uso em FeatureExtractor

property feature_set: type[ReferentialCohesion]

Retorna a classe que contém o conjunto de características retornado por esse extrator.

Retorna:

classe do conjunto de características retornado por esse extrator.

extract(text: str, **kwargs) ReferentialCohesion[código-fonte]

Realiza a extração de características para o texto de entrada.

Parâmetros:
  • text (str) – texto.

  • **kwargs – argumentos extras que pode ser utilizados por alguns extratores para controlar o processo de extração.

Retorna:

características para o texto de entrada.

Tipo de retorno:

ReferentialCohesion

compute_adj_arg_ovl(doc) float[código-fonte]

Método que computa a quantidade média de referentes (substantivos e pronomes) que se repetem nos pares de sentenças adjacentes do texto.

Tipo de retorno:

float

compute_adj_cw_ovl(doc) float[código-fonte]

Método que computa a quantidade média de palavras de conteúdo (substantivos, verbos, adjetivos e advérbios) que se repetem nos pares de sentenças adjacentes do texto.

Tipo de retorno:

float

compute_adj_stem_ovl(doc) float[código-fonte]

Método que computa a quantidade média de radicais de palavras de conteúdo (substantivos, verbos, adjetivos e advérbios) que se repetem nos pares de sentenças adjacentes do texto.

Tipo de retorno:

float

compute_arg_ovl(doc) float[código-fonte]

Método que computa a quantidade média de referentes (substantivos ou pronomes) que se repetem nos pares de sentenças do texto.

Tipo de retorno:

float

compute_adjacent_refs(doc) float[código-fonte]

Método que computa a média de candidatos a referente, na sentença anterior, por pronome anafórico

Tipo de retorno:

float

compute_anaphoric_refs(doc) float[código-fonte]

Método que computa a média de candidatos a referente, em até 5 sentenças anteriores, por pronome anafórico.

Tipo de retorno:

float

compute_stem_ovl(doc) float[código-fonte]

Método que computa a quantidade média de radicais de palavras de conteúdo (substantivos, verbos, adjetivos e advérbios) que se repetem nos pares de sentenças do texto.

Tipo de retorno:

float

compute_coreference_pronoun_ratio(doc) float[código-fonte]

Método que computa a média de candidatos a referente, na sentença anterior, por pronome anafórico do caso reto (ele, ela, eles e elas).

Tipo de retorno:

float

compute_demonstrative_pronoun_ratio(doc) float[código-fonte]

Método que computa a média de candidatos a referente, na sentença anterior, por pronome demonstrativo anafórico (‘esse’, ‘essa’, ‘esses’, ‘essas’, ‘desse’, ‘dessa’, ‘desses’, ‘dessas’).

Tipo de retorno:

float

vectorize(text: str | list[str] | ndarray[str_], vector_type: str = 'numpy', device: str | None = None, **kwargs) ndarray | Tensor

Método para vetorização de textos. A vetorização de múltiplos textos é realizada de forma paralela sempre que possível.

Aceita os campos n_workers (default=`min(4, cpu_count)`) e show_bar (default=`true`) quando array-like de string. Demais parâmetros são passados para _vectorize().

n_workers é utilizado quando a implementação utiliza multiprocessing. Caso n_workers <= 1, um for.

Parâmetros:
  • text (str | list[str] | ndarray[str_]) – texto ou textos de entrada.

  • vector_type (str, opcional) – tipo do vetor de saída (‘numpy ou ‘torch’).

  • device (str, opcional.) – dispositivo para armazenamento do tensor Torch. Padrão é CPU.

  • **kwargs – parâmetros extras que podem ser utilizados por alguns vetorizadores para controlar o processo de vetorização.

Retorna:

representação numérica do texto.

Tipo de retorno:

ndarray | Tensor