A TensorFlow CNN implementation for Chinese character recognition, achieving 92.5% top-1 accuracy with batch normalization.
Chinese-Character-Recognition is a TensorFlow-based project that implements a convolutional neural network (CNN) for recognizing handwritten Chinese characters. It solves the complex problem of Chinese character recognition, which involves distinguishing between thousands of characters compared to just 10 digits in MNIST. The project includes a clean codebase with batch normalization and achieves 92.5% top-1 accuracy.
Machine learning practitioners, students, and researchers interested in computer vision, particularly those working on optical character recognition (OCR) for non-Latin scripts like Chinese.
Developers choose this project for its clean, modular implementation that outperforms previous versions, its inclusion of batch normalization for better generalization, and the availability of preprocessed datasets and trained checkpoints for quick experimentation.
This project shows how to use CNN to perform Chinese character recognition, a much more complicated task compared to MNIST digit recognition.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Achieves 92.50% top-1 and 97.48% top-3 accuracy after 16,000 training steps, with batch normalization improving generalization beyond previous implementations.
Offers a well-structured TensorFlow CNN with a data iterator class for separate training and testing pipelines, based on but cleaner than a prior repo.
Includes access to a preprocessed Chinese character dataset and shared model checkpoints, reducing setup time for experimentation.
Emphasizes practical deep learning techniques like batch normalization, making it a valuable resource for learning complex OCR tasks.
Training takes approximately 30 hours on a workstation with 8 CPU cores, and the README notes it hasn't fully converged, requiring significant resources for optimal performance.
Specifically designed for handwritten Chinese characters, not easily extensible to other scripts or printed text without major code modifications.
The README provides minimal guidance on model architecture details, hyperparameter tuning, or deployment, and relies on external links for datasets which may have access issues.