classifier

package module
v0.1.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 11, 2022 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ErrClassNotFound = "[AstrA] Не удалось найти класс"
	ErrNotClassified = "[AstrA] Не удалось определить класс текста"
	ErrEmptyText     = "[AstrA] Передан пустой текст"
)

Variables

This section is empty.

Functions

func Filter

func Filter(vs chan string, filters ...Predicate) chan string

Filter применяет функции фильтров к каждому элементу входного потока

func IsNotStopWord

func IsNotStopWord(v string) bool

IsNotStopWord обратна IsStopWord

func IsStopWord

func IsStopWord(v string) bool

IsStopWord выполняет бинарный поиск по списку распространенных русских стоп-слов Возвращает true, если v является стоп-словом, иначе false

func Map

func Map(vs chan string, f ...Mapper) chan string

Map применяет функцию f к каждому элементу входного канала

func WordCounts

func WordCounts(data string) (map[string]int, error)

WordCounts возращает данных по частоте встреченных стоп-слов

Types

type Classifier

type Classifier struct {
	MapTokenToCategory map[string]map[string]int
	CategoriesCount    map[string]int
	// contains filtered or unexported fields
}

Classifier описывает структуру классификатора

func New

func New(opts ...Option) *Classifier

New создает новый классификатор со стандартным токенизатором

func (*Classifier) Classify

func (c *Classifier) Classify(data string) (guessedClass string, coincidenceIndex float64, err error)

Classify производит попытку определить класс переданного текста в документа testData

func (*Classifier) GetProb

func (c *Classifier) GetProb(str string) (map[string]float64, string)

GetProb определяет индекс совпадения str с категориями модели и выдает лучший результат

func (*Classifier) Train

func (c *Classifier) Train(trainData string, category string) error

Train производит обучение на категорию category по данным документа trainData

type ClassifierInterface

type ClassifierInterface interface {
	Train(string, string) error      // Вызов фукнции обучения по массиву данных
	Classify(string) (string, error) // Определение класса входного массива данных
}

Classifier оборачивает методы работы с сетью

type Mapper

type Mapper func(string) string

Mapper описывает функцию-маппер

type Option

type Option func(c *Classifier) error

Option описывает дополнительный настройки классификатора

func TokenizerCustom

func TokenizerCustom(t Tokenizer) Option

TokenizerCustom перезаписывает стандартный токенизатор

type Predicate

type Predicate func(string) bool

Predicate описывает функцию предиката

type StdOption

type StdOption func(*StdTokenizer)

StdOption содержит настройки tokenizer

func BufferSize

func BufferSize(size int) StdOption

BufferSize определяет размер входящего канала

func Filters

func Filters(f ...Predicate) StdOption

Filters...

func Transforms

func Transforms(m ...Mapper) StdOption

Transforms...

type StdTokenizer

type StdTokenizer struct {
	// contains filtered or unexported fields
}

StdTokenizer содержит tokenizer для обработки входных данных по разделителю

func NewTokenizer

func NewTokenizer(opts ...StdOption) *StdTokenizer

NewTokenizer создает новый экзмепляр tokenizer

func (*StdTokenizer) Tokenize

func (t *StdTokenizer) Tokenize(data string) chan string

Tokenize разбивает переданный документ на токены

type Tokenizer

type Tokenizer interface {
	Tokenize(string) chan string
}

Tokenizer содержит методы для обработки входных данных на токены

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL