|
|
--- |
|
|
license: apache-2.0 |
|
|
tags: |
|
|
- geometry |
|
|
- problem-solving |
|
|
- multi-modal |
|
|
- pytorch |
|
|
--- |
|
|
|
|
|
# PGPS: A Neural Geometric Solver |
|
|
|
|
|
## Model Description |
|
|
|
|
|
PGPS (Plane Geometry Problem Solver) is a neural geometric solver that uses multi-modal information through structural and semantic pre-training to solve plane geometry problems. This model was introduced in the IJCAI 2023 paper and represents the pre-trained language model component of the PGPSNet architecture. |
|
|
|
|
|
## Model Details |
|
|
|
|
|
- **Model Type:** Pre-trained Language Model for Geometric Problem Solving |
|
|
- **Model File:** `LM_MODEL.pth` |
|
|
- **File Size:** ~64MB |
|
|
- **Framework:** PyTorch |
|
|
- **Paper:** [PGPS: A Neural Geometric Solver at IJCAI 2023](https://www.ijcai.org/proceedings/2023/) |
|
|
- **Original Repository:** [https://github.com/mingliangzhang2018/PGPS](https://github.com/mingliangzhang2018/PGPS) |
|
|
|
|
|
## Intended Use |
|
|
|
|
|
This model is designed for: |
|
|
- Solving plane geometry problems |
|
|
- Parsing geometric diagrams |
|
|
- Understanding textual clauses in geometry problems |
|
|
- Generating solution programs for geometric problems |
|
|
|
|
|
## Requirements |
|
|
|
|
|
- Python 3.8 |
|
|
- PyTorch 1.7.1 |
|
|
- CUDA 10.2 |
|
|
- One GTX-RTX or two TITAN Xp GPUs (for training) |
|
|
|
|
|
## Installation |
|
|
|
|
|
1. Clone the original repository: |
|
|
```bash |
|
|
git clone https://github.com/mingliangzhang2018/PGPS.git |
|
|
cd PGPS |
|
|
``` |
|
|
|
|
|
2. Install dependencies: |
|
|
```bash |
|
|
pip install -r requirements.txt |
|
|
``` |
|
|
|
|
|
3. Download this pre-trained model and place it in the appropriate directory. |
|
|
|
|
|
## Usage |
|
|
|
|
|
### Training with Pre-trained Model |
|
|
|
|
|
```python |
|
|
python start.py --dataset Geometry3K --use_MLM_pretrain |
|
|
``` |
|
|
|
|
|
### Evaluation |
|
|
|
|
|
```python |
|
|
python start.py --dataset Geometry3K --evaluate_only --eval_method completion |
|
|
``` |
|
|
|
|
|
## Dataset |
|
|
|
|
|
The model works with the PGPS9K dataset, which contains: |
|
|
- Diagram annotations |
|
|
- Solution programs |
|
|
- Multi-modal geometric problem data |
|
|
|
|
|
Download the dataset from the [CASIA-PGPS9K homepage](https://sites.google.com/view/pgps9k). |
|
|
|
|
|
## Citation |
|
|
|
|
|
If you use this model in your research, please cite: |
|
|
|
|
|
```bibtex |
|
|
@inproceedings{zhang2023pgps, |
|
|
title={PGPS: A Neural Geometric Solver}, |
|
|
author={Zhang, Mingliang and others}, |
|
|
booktitle={Proceedings of the Thirty-Second International Joint Conference on Artificial Intelligence (IJCAI-23)}, |
|
|
year={2023} |
|
|
} |
|
|
``` |
|
|
|
|
|
## License |
|
|
|
|
|
Apache 2.0 |
|
|
|
|
|
## Authors |
|
|
|
|
|
The original PGPS model was developed by Mingliang Zhang and colleagues. This Hugging Face repository is a mirror of the pre-trained model from the [official GitHub repository](https://github.com/mingliangzhang2018/PGPS). |
|
|
|
|
|
## Acknowledgments |
|
|
|
|
|
Special thanks to the PGPS team for making their pre-trained models publicly available. |