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

Safe HaskellNone

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) cSource

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 -> ObSource

The maximum internal observation included in the codec.

lbMax :: Codec a b -> LbSource

The maximum internal label included in the codec.

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

Encode the word and update the codec.

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

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

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

Encode the sentence and update the codec.

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

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

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

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 LbSource

Encode labels into an ascending vector of distinct label codes.

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

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 bSource

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 -> bSource

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.