| --- |
| '[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. |
|
|
|
|