|
112 | 112 | "costus": ["costunolide", "dehydrocostus lactone", "costol", "costic acid", |
113 | 113 | "dihydrocostunolide", "alpha-costene", "aplotaxene"], |
114 | 114 | "green": ["cis-3-hexenal", "trans-2-hexenal", "cis-3-hexen-1-ol", "hexanal"], |
| 115 | + # --- INDICATIVE heads (#262): right less than half the time when they fire, because 11-30 |
| 116 | + # positives cannot draw a boundary against 2,400 negatives. These are the ones with deep, |
| 117 | + # uncontroversial public chemistry, so the fix is straightforward: more structurally diverse |
| 118 | + # positives. Probability calibration was tested first and does NOT work here — isotonic |
| 119 | + # regression needs data too, so it lifted `fruity` (101 positives) and made `marine` and |
| 120 | + # `gardenia` worse. Data is the lever. |
| 121 | + "citrus": ["limonene", "citral", "geranial", "neral", "citronellal", "linalool", |
| 122 | + "gamma-terpinene", "beta-pinene", "sabinene", "myrcene", "terpinolene", |
| 123 | + "octanal", "decanal", "nonanal", "dodecanal", "nootkatone", "valencene", |
| 124 | + "citronellol", "neryl acetate", "geranyl acetate"], |
| 125 | + "almond": ["benzaldehyde", "benzyl alcohol", "benzyl acetate", "furfural", "5-methylfurfural", |
| 126 | + "heliotropin", "p-tolualdehyde", "phenylacetaldehyde", "benzyl benzoate", |
| 127 | + "2-phenylethanol", "salicylaldehyde", "cinnamaldehyde"], |
| 128 | + "bready": ["2-acetyl-1-pyrroline", "6-acetyl-2,3,4,5-tetrahydropyridine", "maltol", "furfural", |
| 129 | + "methional", "2,3-butanedione", "2-acetylpyrazine", "5-hydroxymethylfurfural", |
| 130 | + "2-acetylfuran", "3-methylbutanal", "2,5-dimethylpyrazine", "furfuryl alcohol"], |
| 131 | + "earthy": ["geosmin", "2-methylisoborneol", "2-isopropyl-3-methoxypyrazine", |
| 132 | + "2-isobutyl-3-methoxypyrazine", "2-ethyl-3-methoxypyrazine", "patchoulol", |
| 133 | + "alpha-humulene", "1-octen-3-ol", "2-methoxy-3-methylpyrazine", "borneol"], |
| 134 | + "cumin": ["cuminaldehyde", "p-cymene", "gamma-terpinene", "beta-pinene", "safranal", |
| 135 | + "perillaldehyde", "cuminyl alcohol", "myrcene", "alpha-terpinene"], |
| 136 | + "oregano": ["carvacrol", "thymol", "p-cymene", "gamma-terpinene", "linalool", "borneol", |
| 137 | + "alpha-terpinene", "myrcene", "terpinen-4-ol", "carvacrol methyl ether"], |
| 138 | + "thyme": ["thymol", "carvacrol", "p-cymene", "gamma-terpinene", "linalool", "borneol", |
| 139 | + "camphene", "alpha-thujene", "terpinen-4-ol", "geraniol"], |
| 140 | + "dill": ["carvone", "dillapiole", "alpha-phellandrene", "limonene", "myristicin", |
| 141 | + "dihydrocarvone", "myrcene", "p-cymene", "anethofuran"], |
| 142 | + "bergamot": ["linalyl acetate", "linalool", "limonene", "gamma-terpinene", "nerol", |
| 143 | + "beta-pinene", "myrcene", "neryl acetate", "geranial", "sabinene"], |
| 144 | + "violet": ["alpha-ionone", "beta-ionone", "methyl ionone", "alpha-irone", "beta-irone", |
| 145 | + "dihydro-beta-ionone", "alpha-isomethylionone", "2,6-nonadienal", |
| 146 | + "dihydro-alpha-ionone"], |
| 147 | + "soapy": ["decanal", "undecanal", "dodecanal", "2-methylundecanal", "1-decanol", |
| 148 | + "1-dodecanol", "lauric aldehyde", "nonanal", "1-undecanol", "methyl laurate"], |
| 149 | + "powdery": ["heliotropin", "vanillin", "coumarin", "alpha-ionone", "musk ketone", |
| 150 | + "ethylvanillin", "anisyl alcohol", "benzyl salicylate", "4-methylacetophenone"], |
| 151 | + "melon": ["melonal", "cis-3-hexenyl acetate", "cis-6-nonenal", "2,6-nonadienal", "cis-3-nonen-1-ol", "benzyl acetate", "nonanal", "cis-6-nonen-1-ol"], |
| 152 | + "mango": ["3-carene", "gamma-decalactone", "alpha-terpinene", "gamma-octalactone", "terpinolene", "cis-ocimene"], |
| 153 | + "guava": ["ethyl butyrate", "cis-3-hexenol", "ethyl hexanoate", "3-sulfanylhexyl acetate", "hexanal", "beta-caryophyllene", "limonene", "ethyl acetate", "1-hexanol"], |
| 154 | + "cassis": ["4-methoxy-2-methyl-2-butanethiol", "beta-caryophyllene", "linalool", "terpinen-4-ol", "delta-3-carene", "gamma-terpinene", "alpha-pinene"], |
| 155 | + "blackberry":["2-heptanone", "methyl anthranilate", "furaneol", "linalool", "alpha-ionone"], |
| 156 | + "blueberry":["linalool", "trans-2-hexenal", "geraniol", "eucalyptol", "alpha-terpineol"], |
| 157 | + "passionfruit":["hexyl butyrate", "3-sulfanylhexyl acetate", "3-sulfanylhexan-1-ol", "beta-ionone", "linalool", "hexyl hexanoate"], |
| 158 | + "lime": ["limonene", "gamma-terpinene", "citral", "beta-pinene", "terpinolene", |
| 159 | + "geranial", "neral", "alpha-terpineol", "myrcene", "sabinene"], |
| 160 | + "mandarin": ["limonene", "gamma-terpinene", "methyl N-methylanthranilate", "myrcene", |
| 161 | + "alpha-pinene", "linalool", "octanal", "decanal", "thymol", "terpinolene"], |
| 162 | + "ginger": ["zingiberene", "6-gingerol", "6-shogaol", "zingerone", "beta-sesquiphellandrene", |
| 163 | + "ar-curcumene", "alpha-farnesene", "camphene", "geranial", "beta-bisabolene"], |
| 164 | + "blackpepper": ["piperine", "beta-caryophyllene", "limonene", "sabinene", "alpha-pinene", |
| 165 | + "beta-pinene", "delta-3-carene", "myrcene", "alpha-phellandrene", "linalool"], |
| 166 | + "nutmeg": ["myristicin", "sabinene", "alpha-pinene", "beta-pinene", "elemicin", |
| 167 | + "safrole", "terpinen-4-ol", "limonene", "myrcene", "eugenol"], |
| 168 | + "cardamom": ["1,8-cineole", "alpha-terpinyl acetate", "linalool", "limonene", "sabinene", |
| 169 | + "alpha-terpineol", "myrcene", "geraniol", "linalyl acetate", "nerolidol"], |
| 170 | + "sage": ["camphor", "1,8-cineole", "alpha-thujone", "beta-thujone", "borneol", "camphene", |
| 171 | + "alpha-pinene", "bornyl acetate", "viridiflorol", "humulene"], |
| 172 | + "juniper": ["alpha-pinene", "myrcene", "sabinene", "limonene", "terpinen-4-ol", |
| 173 | + "beta-pinene", "gamma-cadinene", "alpha-terpinene", "germacrene D", "borneol"], |
| 174 | + "tea": ["linalool", "geraniol", "cis-jasmone", "methyl jasmonate", "beta-ionone", |
| 175 | + "indole", "benzyl alcohol", "2-phenylethanol", "hexanal", "trans-2-hexenal"], |
| 176 | + "tobacco": ["megastigmatrienone", "solanone", "beta-damascenone", "neophytadiene", |
| 177 | + "beta-ionone", "furfural", "phenylacetaldehyde", "damascone", "cyclotene"], |
| 178 | + "marine": ["2,6-nonadienal", "cis-3-hexenol", "dimethyl sulfide", "1-octen-3-ol", |
| 179 | + "cis-4-heptenal", "geosmin", "trans-2-nonenal", "benzothiazole", "octanal"], |
| 180 | + "elderflower": ["linalool", "cis-rose oxide", "nerol oxide", "hotrienol", "alpha-terpineol", |
| 181 | + "beta-damascenone", "hexanal", "phenylacetaldehyde", "nonanal"], |
| 182 | + "lilac": ["lilac aldehyde", "lilac alcohol", "linalool", "alpha-terpineol", "indole", |
| 183 | + "benzyl alcohol", "cinnamyl alcohol", "hotrienol", "nerol oxide"], |
| 184 | + "mimosa": ["anisaldehyde", "heliotropin", "benzyl alcohol", "2-phenylethanol", |
| 185 | + "methyl anisate", "palmitic acid", "linalool", "benzaldehyde", "anisyl alcohol"], |
| 186 | + "violetleaf": ["2,6-nonadienal", "trans-2-hexenal", "cis-3-hexenol", "2-nonenal", |
| 187 | + "cis-3-hexenyl acetate", "1-octen-3-ol", "hexanal", "trans-2-nonenal"], |
| 188 | + "tomato": ["2-isobutylthiazole", "cis-3-hexenal", "trans-2-hexenal", "hexanal", |
| 189 | + "beta-ionone", "6-methyl-5-hepten-2-one", "1-penten-3-one", "geranylacetone", |
| 190 | + "methional", "cis-3-hexenol"], |
| 191 | + "medicinal": ["phenol", "guaiacol", "thymol", "eugenol", "methyl salicylate", |
| 192 | + "carvacrol", "1,8-cineole", "camphor", "menthol", "m-cresol"], |
| 193 | + "rancid": ["butyric acid", "isovaleric acid", "hexanoic acid", "octanoic acid", |
| 194 | + "trans-2-nonenal", "heptanoic acid", "valeric acid", "propionic acid", |
| 195 | + "2,4-decadienal", "4-methyloctanoic acid"], |
| 196 | + # fig and magnolia sat just under the 0.70 AUROC bar and fell off the roster when the corpus |
| 197 | + # shifted around them. Rather than let two heads go, give each its documented character |
| 198 | + # chemistry — sesquiterpenes and the creamy lactone for fig, the ocimene/anthranilate floral |
| 199 | + # set for magnolia — and keep the generic fruit esters OUT, which is what cost blackberry. |
| 200 | + "fig": ["germacrene D", "beta-caryophyllene", "gamma-decalactone", "methyl salicylate", |
| 201 | + "trans-2-hexenal", "alpha-copaene", "alpha-ylangene", "delta-cadinene", |
| 202 | + "gamma-dodecalactone", "alpha-humulene"], |
| 203 | + "magnolia": ["methyl anthranilate", "trans-beta-ocimene", "citral", "geraniol", |
| 204 | + "alpha-terpineol", "methyl benzoate", "isoeugenol", "nerolidol", |
| 205 | + "benzyl alcohol", "cis-beta-ocimene"], |
| 206 | + "alcoholic": ["ethanol", "1-propanol", "isobutanol", "isoamyl alcohol", "1-butanol", |
| 207 | + "2-methylbutanol", "1-hexanol", "phenethyl alcohol", "1-pentanol"], |
115 | 208 | # pungent (an odor/chemesthesis head, also tagged mouthfeel): sharp biting Piper long/black-pepper |
116 | 209 | # amides on top of the corpus's documented pungent molecules (piperine, isothiocyanates, etc.) |
117 | 210 | "pungent": ["piperlongumine", "piperlonguminine", "pipernonaline", "sarmentine", |
|
0 commit comments