ddecosmo's picture
Update README.md
f6ea14a verified
---
'[object Object]': null
license: mit
datasets:
- maryzhang/hw1-24679-image-dataset
language:
- en
---
# Model Card for {{ model_id | default("Model ID", true) }}
<!-- Provide a quick summary of what the model is/does. -->
This is a fine tuned version of the RandomForestEntr_BAG_L1 model for classification. This was fine tuned on the EricCRX/books-tabular-datasetwhich is a dataset of the measurements of books.
In this case, it was used for binary classification between softcover and hardcover books.
## Model Details
### Model Description
This model uses the RandomForestEntr_BAG_L1 with accuracy as the main parameter and multi class accuracy and cross entropy as the main hyperparameters.
It also uses L1 regularization to reduce overfitting.
- **Developed by:** Devin DeCosmo
- **Model type:** Binary Classifier
- **Language(s) (NLP):** English
- **License:** MIT
- **Finetuned from model:** RandomForestEntr_BAG_L1
## Uses
<!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->
This is used for classification of books as softcover or hardcover based on their measurements.
### Out-of-Scope Use
<!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->
If the dataset was expanded, this could be used to classify other types of books or a larger dataset.
## Bias, Risks, and Limitations
<!-- This section is meant to convey both technical and sociotechnical limitations. -->
This is trained off a small dataset of 30 original books and 300 augmented rows.
This limited training dataset is liable to overfitting of the model and additional information is required to make it more robust.
### Recommendations
<!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->
The small dataset size means this model is not highly generalizable.
### How to Get Started with the Model
Use the code below to get started with the model.
This code is from the 24-679 Lecture on tabular datasets.
Download the zipped native predictor directory
zip_local_path = huggingface_hub.hf_hub_download(
repo_id=MODEL_REPO_ID,
repo_type="model",
filename="autogluon_predictor_dir.zip",
local_dir=str(download_dir),
local_dir_use_symlinks=False
)
Unzip to a folder
native_dir = download_dir / "predictor_dir"
if native_dir.exists():
shutil.rmtree(native_dir)
native_dir.mkdir(parents=True, exist_ok=True)
with zipfile.ZipFile(zip_local_path, "r") as zf:
zf.extractall(str(native_dir))
Load native predictor
predictor_native = autogluon.tabular.TabularPredictor.load(str(native_dir))
Inference on synthetic test
X_test = df_synth_test.drop(columns=[TARGET_COL])
y_true = df_synth_test[TARGET_COL].reset_index(drop=True)
y_pred = predictor_native.predict(X_test).reset_index(drop=True)
Combine results
results = pandas.DataFrame({
"y_true": y_true,
"y_pred": y_pred
})
display(results)
## Training Details
### Training Data
<!-- This should link to a Dataset Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->
EricCRX/books-tabular-dataset
This is the training dataset used.
It consists of 30 original measurements used for validation along with 300 synthetic pieces of data from training.
### Training Procedure
<!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
This model was trained with an AutoML process with accuracy as the main metrics.
This model used a max time_limit of 300 seconds to reduce training time and "best_quality" to improve results
#### Training Hyperparameters
- **Training regime:** {{ training_regime | default("[More Information Needed]", true)}} <!--fp32, fp16 mixed precision, bf16 mixed precision, bf16 non-mixed precision, fp16 non-mixed precision, fp8 mixed precision -->
## Evaluation
<!-- This section describes the evaluation protocols and provides the results. -->
### Testing Data, Factors & Metrics
#### Testing Data
<!-- This should link to a Dataset Card if possible. -->
maryzhang/hw1-24679-image-dataset
The testing data was the 'original' split, the 30 original images in this set.
#### Factors
<!-- These are the things the evaluation is disaggregating by, e.g., subpopulations or domains. -->
This dataset is evaluating whether the books are hardcovers "1", or softcovers "0"
#### Metrics
<!-- These are the evaluation metrics being used, ideally with a description of why. -->
The testing metric used was accuracy to ensure the highest accuracy of the model possible.
Training time was also considered to ensure final models were not computationally infeasible.
### Results
After training with the initial dataset, this model reached an accuracy of 97% in validation.
It also had an individual prediction time of 0.12 seconds making it fast with a high accuracy.
This validation should not be taken as a metric for robustness. Due to the small dataset, this cannot be confirmed to work for outside mearements.
Expanding this dataset could find issues or improvements to this model.
#### Summary
This model reached a high accuracy with our current model, but this perfomance can not be confirmed to continue as the dataset was very small.