A more elegant and convenient CRF built on tensorflow-addons.
Project description
keras-crf
A more elegant and convenient CRF built on tensorflow-addons.
Python Compatibility is limited to tensorflow/addons, you can check the compatibility from it's home page.
Installation
pip install keras-crf
Usage
Here is an example to show you how to build a CRF model easily:
import tensorflow as tf
from keras_crf import CRF, CRFLoss, CRFCategoricalAccuracy
sequence_input = tf.keras.layers.Input(shape=(None,), dtype=tf.int32, name='sequence_input')
sequence_mask = tf.keras.layers.Lambda(lambda x: tf.greater(x, 0))(sequence_input)
outputs = tf.keras.layers.Embedding(100, 128)(sequence_input)
outputs = tf.keras.layers.Dense(256)(outputs)
crf = CRF(7)
# mask is important to compute sequence length in CRF
outputs = crf(outputs, mask=sequence_mask)
model = tf.keras.Model(inputs=sequence_input, outputs=outputs)
model.compile(
loss=CRFLoss(crf),
metrics=[CRFCategoricalAccuracy(crf)],
optimizer=tf.keras.optimizers.Adam(5e-5)
)
model.summary()
The model summary:
Model: "functional_1"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
sequence_input (InputLayer) [(None, None)] 0
_________________________________________________________________
embedding (Embedding) (None, None, 128) 12800
_________________________________________________________________
dense (Dense) (None, None, 256) 33024
_________________________________________________________________
crf (CRF) (None, None) 1862
=================================================================
Total params: 47,686
Trainable params: 47,686
Non-trainable params: 0
_________________________________________________________________
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
keras_crf-0.0.2.tar.gz
(3.4 kB
view hashes)
Built Distribution
Close
Hashes for keras_crf-0.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4e89d48511bf55c1a03b3cabc3eab9fcc20ad670938a898eaee70e3a6e34a55d |
|
MD5 | e36deec2210ee768c74d9760a8eb1759 |
|
BLAKE2b-256 | 6f7f8e27437389d74d905939b025e4fd778b0f743c5067744255b05ab24f7598 |