crf-chain1-constrained-0.3.2: First-order, constrained, linear-chain conditional random fields

Safe HaskellNone
LanguageHaskell98

Data.CRF.Chain1.Constrained.Dataset.Codec

Synopsis

Documentation

type Codec a b = (AtomCodec a, AtomCodec (Maybe b)) Source

A codec. The first component is used to encode observations of type a, the second one is used to encode labels of type b.

type CodecM a b c = Codec (Codec a b) c Source

Type synonym for the codec monad. It is important to notice that by a codec we denote here a structure of two AtomCodecs while in the monad-codec package it denotes a monad.

obMax :: Codec a b -> Ob Source

The maximum internal observation included in the codec.

lbMax :: Codec a b -> Lb Source

The maximum internal label included in the codec.

encodeWord'Cu :: (Ord a, Ord b) => Word a b -> CodecM a b X Source

Encode the word and update the codec.

encodeWord'Cn :: (Ord a, Ord b) => Word a b -> CodecM a b X Source

Encode the word and do *not* update the codec.

encodeSent'Cu :: (Ord a, Ord b) => Sent a b -> CodecM a b Xs Source

Encode the sentence and update the codec.

encodeSent'Cn :: (Ord a, Ord b) => Sent a b -> CodecM a b Xs Source

Encode the sentence and do *not* update the codec.

encodeSent :: (Ord a, Ord b) => Codec a b -> Sent a b -> Xs Source

Encode the sentence using the given codec.

encodeWordL'Cu :: (Ord a, Ord b) => WordL a b -> CodecM a b (X, Y) Source

Encode the labeled word and update the codec.

encodeWordL'Cn :: (Ord a, Ord b) => WordL a b -> CodecM a b (X, Y) Source

Encodec the labeled word and do *not* update the codec.

encodeSentL'Cu :: (Ord a, Ord b) => SentL a b -> CodecM a b (Xs, Ys) Source

Encode the labeled sentence and update the codec.

encodeSentL'Cn :: (Ord a, Ord b) => SentL a b -> CodecM a b (Xs, Ys) Source

Encode the labeled sentence and do *not* update the codec. Substitute the default label for any label not present in the codec.

encodeSentL :: (Ord a, Ord b) => Codec a b -> SentL a b -> (Xs, Ys) Source

Encode the labeled sentence with the given codec. Substitute the default label for any label not present in the codec.

encodeLabels :: Ord b => Codec a b -> [b] -> AVec Lb Source

Encode labels into an ascending vector of distinct label codes.

decodeLabel :: Ord b => Codec a b -> Lb -> Maybe b Source

Decode the label.

decodeLabels :: Ord b => Codec a b -> [Lb] -> [Maybe b] Source

Decode the sequence of labels.

mkCodec :: (Ord a, Ord b) => [SentL a b] -> Codec a b Source

Create codec on the basis of the labeled dataset.

encodeData :: (Ord a, Ord b) => Codec a b -> [Sent a b] -> [Xs] Source

Encode the dataset with the codec.

encodeDataL :: (Ord a, Ord b) => Codec a b -> [SentL a b] -> [(Xs, Ys)] Source

Encode the labeled dataset using the codec. Substitute the default label for any label not present in the codec.

unJust :: Ord b => Codec a b -> Word a b -> Maybe b -> b Source

Return the label when Just or one of the unknown values when Nothing.

unJusts :: Ord b => Codec a b -> Word a b -> [Maybe b] -> [b] Source

Replace Nothing labels with all unknown labels from the set of potential interpretations.