Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Implementation of handwriting generation with use of recurrent neural networks in tensorflow. Based on Alex Graves paper (https://arxiv.org/abs/1308.0850).
| Date | Stars |
|---|---|
| 2026-07-24 | 594 |
| 2026-07-25 | 594 |
| 2026-07-28 | 594 |
| 2026-07-30 | 594 |
| 2026-07-31 | 594 |
| 2026-08-05 | 595 |
| 2026-08-06 | 595 |
Today
— stars today
This week
+1 stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.17%/day
## Handwriting generation
Implementation of handwriting generation with use of recurrent neural networks in tensorflow. Based on Alex Graves paper (https://arxiv.org/abs/1308.0850).
## How to train a model and generate handwriting
#### 1. Download dataset
First you need to download dataset. This requires you to register on [this page](http://www.fki.inf.unibe.ch/databases/iam-on-line-handwriting-database) ("Download" section). After registration you will be able to download the [data/original-xml-part.tar.gz](http://www.fki.inf.unibe.ch/databases/iam-on-line-handwriting-database/download-the-iam-on-line-handwriting-database). Unpack it in repository directory.
#### 2. Preprocess dataset
```
python preprocess.py
```
This scipt searches local directory for `xml` files with handwriting data and does some preprocessing like normalizing data and spliting strokes in lines. As a result it should create `data` directory with preprocessed dataset.
#### 3. Train model
```
python train.py
```
This will launch training with default settings (for experimentation look at `argparse` options). By default it creates `summary` directory with separate `experiment` directories for each run. If you want to restore training provide a path to the experiment you want to continue. Like:
```
python train.py --restore=summary\experiment-0
```
You can lookup losses in command line or with tensorboard. Example loss plot:

With default settings training took about 5h (using tensorflow 1.2, with GTX 1080).
#### 4. Generate handwriting!
```
python generate.py --model=path_to_model
```
When model is trained you can use `generate.py` scipt to test how it works. Without providing `--text` argument this script will ask you what to generate in a loop.
Additional options for generation:
* `--bias` (`float`) - with higher bias generated handwriting is more _clear_ so to speak (read paper for more info)
* `--noinfo` - plots only generated handwriting (without attention window)
* `--animation` - animation of writing
* `--style` - style of handwriting, `int` from 0 to 7 (functionality added thanks to [@kristofbc](https://github.com/kristofbc), you can look how each style looks like in `imgs` folder)
#### Examples
```
python generate.py --noinfo --text="this was generated by computer" --bias=1.
```

```
python generate.py --noinfo --animation --text="example of animation " --bias=1.
```

Any feedback is welcome :smile:
Excerpt of 2,716 characters
Read on GitHub12
1
Would you bet a product on this? Bounded 0–100 and slow moving.
matched fp:1a713673e7ccad8e, topic:tensorflow