Update README.md
Browse files
README.md
CHANGED
@@ -32,3 +32,36 @@ model = load_model("path_to_your_model.h5")
|
|
32 |
input_data = ... # Replace with your preprocessed input
|
33 |
output = model.predict(input_data)
|
34 |
print(output)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
32 |
input_data = ... # Replace with your preprocessed input
|
33 |
output = model.predict(input_data)
|
34 |
print(output)
|
35 |
+
|
36 |
+
|
37 |
+
|
38 |
+
## Training Details
|
39 |
+
The model was trained using a Convolutional Neural Network (CNN) architecture on the [Face Shape Classification Dataset](https://www.kaggle.com/datasets/lucifierx/face-shape-classification).
|
40 |
+
|
41 |
+
### Preprocessing Steps
|
42 |
+
- **Image Size**: All input images were resized to 224x224 pixels.
|
43 |
+
- **Normalization**: Pixel values were normalized to the range [0, 1].
|
44 |
+
- **Data Augmentation**: Techniques like rotation, flipping, and zooming were applied to improve generalization.
|
45 |
+
|
46 |
+
### Training Configuration
|
47 |
+
- **Framework**: TensorFlow (Keras)
|
48 |
+
- **Optimizer**: Adam
|
49 |
+
- **Loss Function**: Categorical Crossentropy
|
50 |
+
- **Batch Size**: 32
|
51 |
+
- **Epochs**: 50
|
52 |
+
- **Validation Accuracy**: Achieved 85% on the validation set.
|
53 |
+
|
54 |
+
### Hardware
|
55 |
+
The model was trained on an NVIDIA GPU for faster computation.
|
56 |
+
|
57 |
+
## Limitations
|
58 |
+
- The model may not perform well with low-resolution or occluded images.
|
59 |
+
- The dataset may not represent all possible face shapes, which could limit generalization.
|
60 |
+
|
61 |
+
## Example Predictions
|
62 |
+
Here are some example predictions:
|
63 |
+
|
64 |
+
| Input Image | Predicted Class |
|
65 |
+
|--------------------|-----------------|
|
66 |
+
|  | Oval |
|
67 |
+
|  | Square |
|