Start breaking down `class_names` into more easily understandable foods
mrdbourke opened this issue · comments
There can be a few kinds of models here, one for higher-level foods and one for lower-level foods.
For example:
- Higher-level model = predicts high-level classes, e.g. onion, pasta, potato
- Lower-level model = predicts lower-level classes, e.g. onion -> brown_onion, white_onion, green_onion (get as specific as possible)
For now (Jan 2023), I'll start by getting as specific as possible (lower-level) and can go up to higher level if necessary.
I'd like to take Nutrify's current 199 classes and break them down into more specific classes, for example:
See the Google Sheet: https://docs.google.com/spreadsheets/d/1f6kuauduiKm9i2t8XnchzYuSb-ruoB3p0ajYx_rb_vM/edit?usp=sharing
nuts
->mixed_nuts
I should create some kind of simple app (Streamlit?) where a bunch of analytics about the labels/results of Nutrify are viewable.
See Streamlit docs for connecting an app to Google Sheets: https://docs.streamlit.io/knowledge-base/tutorials/databases/private-gsheet
For example, a simple dashboard where different class results can be viewed and examined.
Label style: [HIGHER_FOOD_NAME]_[SPECIFIC_TYPE]
For example:
- "Red onion" ->
onion_red
- "Banana bread" ->
bread_banana
- "Brown potato" ->
potato_brown
- "Green apple" ->
apple_green
I could also have a dictionary/JSON that maps all of these back to their proper names + any other names they might have.
For example:
foods = [{"food_id": 123456,
"details": {"food_name": "eggplant",
"other_names": ["aubergine"]}
}
...]