This is the 6th Place Solution for the USPTO - Explainable AI for Patent Professionals (Kaggle competition).
The script released has been refactored after the competition ended. Additionally, due to processes that change randomly at each execution or are cut off by time, it is impossible to completely reproduce the submission made during the contest. However, since the essential parts have not been changed, almost the same Private Score can be achieved.
- Detailed documentation
- Submission notebook
Host:
- OS: macOS Sonoma 14.3.1
- Model Name: MacBook Pro
- Chip: Apple M1 Pro
- Total Number of Cores: 10 (8 performance and 2 efficiency)
- Memory: 32 GB
Docker Container:
- OS: Ubuntu 22.04.2 LTS
- Docker version 20.10.12, build e91ed57
- Python 3.10.12
- gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04)
(assumes the Kaggle API is installed)
mkdir -p dataset/me
kaggle competitions download -c uspto-explainable-ai -p dataset
cd dataset
unzip uspto-explainable-ai.zip
cd ..
First, place test.csv in the path specified by TESTFILE in SETTINGS.json. If you want to prepare it yourself, you can run the following script to generate an equivalent test.csv with 2500 rows.
python script/0_calc_test.py -f SETTINGS.json
Next, generates the files (dataset/me/*
) used in the submission notebook. It took 2-3 days in my environment.
sh preprocess.sh
Finally, generate the files to be used with the C++ solver.
python script/1_convert_to_id.py -f SETTINGS.json -m solver
NOTE:
- Including temporary files, approximately 100GB of disk space is required. All temporary files will be output under dataset/temporary, so please delete them as needed.
- The files corresponding to
dataset/me/*
output bysh preprocess.sh
are uploaded to https://www.kaggle.com/datasets/sash2104/uspto2024dataset2 . Please use them as needed.
sh solve.sh
Licensed under the MIT License - see the LICENSE file for details.
The following files are third-party code licensed under the MIT License:
src/argparse.hpp
find_twoshot/argparse.hpp
For more details, please refer to the respective files.