- Epicure adalah model yang melatih embedding 300 dimensi untuk 1.790 bahan baku standar menggunakan 4,14 juta resep dan data senyawa FlavorDB
- Dirancang untuk mengurangi masalah korpus yang berpusat pada bahasa Inggris pada FlavorGraph sebelumnya, campuran kimia-resep yang tetap, dan kosakata bahan yang tersebar
- Cooc, Chem, dan Core membandingkan bobot kemunculan bersama resep dan sinyal kimia dengan hanya mengubah skema random walk dalam struktur yang sama
- Ketiga embedding tersebut memulihkan secara linear 27 arah sensorik-gizi dan 8 wilayah makro kuliner, serta memperoleh 20 faktor secara tanpa supervisi
- Dengan tetangga terdekat dan aritmetika arah SLERP, eksplorasi bahan dimungkinkan, seperti memutar
rice ke arah South-Asian, tetapi kode dan hasilnya belum dipublikasikan
Tujuan Epicure
- Embedding bahan menjadi dasar untuk menemukan kecocokan antar bahan, bahan serupa lintas budaya, dan posisi pada sumbu sensorik maupun gizi
- Pengetahuan seperti doenjang cocok dengan mirin, dashi, dan minyak wijen, sementara minyak zaitun cocok dengan basil, tomat, dan prosciutto, terakumulasi dalam korpus resep lintas budaya dan intuisi para koki
- Dapat dimanfaatkan untuk alat bantu menu/resep, rekomendasi berbasis bahan yang dimiliki, eksplorasi perpindahan dari bahan Mediterania ke bahan padanan Asia Timur, serta pencarian berbasis sumbu seperti rasa berlemak, fermentasi, pahit, atau tinggi protein
- Riset sebelumnya berkembang dari jaringan rasa berbasis kimia menuju pendekatan berbasis resep dan graf pengetahuan
- Ahn et al. [2011] memperkenalkan jaringan rasa dan menunjukkan bahwa perbedaan antarkawasan budaya muncul dari senyawa yang dibagikan
- FlavorDB dari Garg et al. [2017] mencantumkan molekul aroma untuk 936 entitas pangan, dan FooDB memperluas cakupan kimianya menjadi 70.000 senyawa
- FlavorGraph [Park et al., 2021] adalah embedding makanan terbuka yang dilatih dengan Metapath2Vec setelah menggabungkan FlavorDB dan Recipe1M+ menjadi graf heterogen dengan 6.653 bahan dan 1.645 senyawa
- FoodKG [Haussmann et al., 2019] mengintegrasikan resep, gizi, dan data ontologi ke dalam graf pengetahuan RDF dengan tujuan rekomendasi
Keterbatasan FlavorGraph dan rancangan Epicure
- Analisis sebelumnya menunjukkan bahwa embedding 300 dimensi FlavorGraph memuat lebih dari 15 dimensi kuliner yang dapat ditafsirkan termasuk rasa, tekstur, gizi, geografi, budaya, dan pemrosesan, dan integrasi kosakata yang diperkuat LLM tampak memperkuat sebagian besar sinyal tersebut
- Pra-pelatihan tetap pada FlavorGraph memiliki tiga keterbatasan
- Bergantung pada satu korpus yang berpusat pada bahasa Inggris
- Sinyal kimia dan sinyal konteks resep digabungkan dalam satu bias induktif tetap sehingga sulit diatur sebagai sumbu desain
- Kosakata bahan masih memiliki struktur yang tersebar, dengan detail cara persiapan dan item non-pangan bercampur di dalamnya
- Untuk mengurangi keterbatasan ini, Epicure dibangun dari awal sebagai tiga embedding bahan skip-gram bersaudara yang dilatih ulang
- Mengumpulkan 4,14 juta resep dari 11 sumber
- Cakupan bahasa meliputi Inggris, Tionghoa, Rusia, Vietnam, Spanyol, Turki, Indonesia, Jerman, dan Indian-English
- String bahan mentah dinormalisasi menjadi 1.790 entri bahan standar melalui pipeline yang diperkuat LLM
- Ketiga model berbagi arsitektur dan hyperparameter yang sama, dan hanya berbeda pada skema random walk yang dilihat oleh objective skip-gram
Data dan tiga embedding
- Epicure berangkat dari dua jenis graf
- Graf NPMI bahan-bahan terdiri dari 203.508 edge
- Graf bahan-senyawa FlavorDB terdiri dari 80.019 edge dan mencakup 2.247 node senyawa bertipe dalam 15 kategori
- Tiga varian Metapath2Vec menempati posisi berbeda pada spektrum antara kimia dan konteks resep
-
Cooc
- Model yang hanya berjalan di graf kemunculan bersama resep
- Berfokus pada sinyal konteks ketika bahan benar-benar muncul bersama dalam resep
-
Chem
- Model yang hanya berjalan di metapath senyawa bertipe
- Berfokus pada sinyal kimia yang berasal dari relasi bahan dan senyawa
-
Core
- Menggunakan jalur berbasis senyawa dan jalur bahan-bahan sekaligus
- Menyuntikkan walk bahan-bahan dengan rasio campuran terkontrol untuk mencampur sinyal kimia dan sinyal konteks resep
- Konfigurasi ini menampilkan bobot kimia vs konteks resep sebagai sumbu desain dalam data input dan struktur pelatihan yang sama
- Perbedaan di antara ketiga model bersaudara ini sengaja dibatasi hanya pada skema random walk
- Sifat embedding yang berbeda dapat dibandingkan sebagai efek skema walk, bukan perbedaan data input
Makna kuliner yang dipulihkan dari ruang embedding
- Tiga model Epicure memulihkan secara linear 27 arah sensorik-gizi kontinu dan 8 wilayah makro kuliner melalui probe pembelajaran terawasi
- Rata-rata Cohen’s d untuk keterpisahan kawasan kuliner adalah 2,43/2,70/3,07 untuk Cooc/Core/Chem
- Cakupan probe meliputi cuisine, food-group, tingkat pemrosesan NOVA, makronutrien USDA, dan 19 kategori sensorik
- Analisis tanpa supervisi memulihkan 20 faktor yang dapat ditafsirkan pada tiap model
- FastICA stabil multi-seed diterapkan pada embedding yang telah diresidualisasi terhadap food-group
- Item kuartil atas dari tiap faktor dipartisi dengan GMM untuk memperoleh 150–200 mode kuliner bernama per model
- Konsistensi rata-rata mode GMM lebih tinggi daripada baseline pasangan acak
- Konsistensi rata-rata Cooc/Core/Chem adalah 0,611/0,833/0,703
- Baseline pasangan acak yang bersesuaian adalah 0,097/0,348/0,115
- Perspektif dari riset embedding sebelumnya juga digunakan untuk validasi
- Perspektif arah linear word2vec dari Mikolov et al. [2013] menjadi dasar bagi 27 probe kuliner terawasi, 20 faktor FastICA, dan operasi rotasi SLERP
- Mengikuti perspektif isotropi dari Mu et al. [2017], isotropi embedding diukur secara langsung dengan participation ratio dan rata-rata cosine berpasangan
- Ketiga model bersaudara menempati posisi yang jelas berbeda pada spektrum isotropi, dan hal ini diperlakukan sebagai sifat dari skema walk, bukan data input
- WEAT dari Caliskan et al. [2017] digunakan sebagai validasi tambahan untuk mendiagnosis apakah sumbu semantik bernama tercermin dalam struktur geometrinya
Operasi eksplorasi dan potensi pemanfaatan
- Epicure menyediakan dua keluarga operasi yang saling melengkapi dalam ruang embedding 300 dimensi yang sama
-
Pemasangan berbasis tetangga terdekat
- Pencarian tetangga top-K untuk menemukan item yang dekat di sekitar suatu bahan
- Pencarian keanggotaan mode untuk menelusuri item yang termasuk dalam mode kuliner tertentu
-
Aritmetika arah SLERP
- Memutar bahan seed ke arah pole vector hasil pembelajaran terawasi atau pole factor-mode yang muncul secara emergen
- Sudut kontinu θ menginterpolasi antara pencarian yang didominasi seed dan pencarian yang didominasi target
- Sebagai contoh, menambahkan arah South-Asian pada
rice akan menggesernya ke curry leaf, urad dal, chana dal, dan fenugreek seed
- Baik arah semantik terawasi maupun mode emergen tanpa supervisi dapat digunakan untuk eksplorasi bahan
- Alat untuk koki dapat mengeksplorasi bahan dengan memutar, mencampur, dan mencari sambil mengikuti arah yang konsisten secara sensorik, gizi, dan budaya
- Relasi berbasis kimia dan relasi berbasis konteks resep dapat diatur melalui pemilihan model dan skema walk
- Kode dan hasil pelatihan saat ini belum dipublikasikan
1 komentar
Komentar Hacker News
Penelitiannya sendiri menarik, tetapi judulnya menyesatkan
Judul yang lebih baik mungkin kira-kira “mengompresi bahan pangan yang digunakan manusia menjadi 1.800 elemen primitif”
Hampir tidak ada isi tentang resep yang sebenarnya, yaitu cara persiapan atau proporsi, tetapi informasi seperti tomat cocok dengan daging sapi di seluruh dunia bisa menjadi sumber yang cukup berguna dan menarik saat menyusun kombinasi rasa
Buku itu tidak memuat semua kombinasi dari 1.800 bahan, tetapi cukup baik membahas herba, rempah, sayuran, dan daging yang umum digunakan. Bahkan jika buku ini dikompresi, ukuran teksnya mungkin tidak akan terlalu besar
Masalah pada resep buatan LLM adalah ia melewatkan nuansa teknik memasak. Keberhasilan sering kali bergantung pada satu langkah atau satu rasio, dan misalnya “ayam goreng” punya begitu banyak variasi di seluruh dunia sehingga merata-ratakan resepnya tidak akan otomatis menghasilkan ayam goreng yang enak
Sebelas sumber data memang mencakup berbagai masakan umum, tetapi sumber berbahasa Inggris dan Mandarin menyumbang 90% dari dataset. Afrika dan dunia Arab juga tidak ada dalam data, padahal dua wilayah ini saja mencakup sekitar 25% populasi dunia
Semua istilah non-Inggris juga diterjemahkan ke bahasa Inggris dengan AI, yang secara metodologis bisa dipahami, tetapi jelas ada ruang untuk kesalahan
Daging sapi bisa menjadi alot jika direbus dengan cara yang salah, tetapi asam dari tomat membuatnya empuk lagi
Menarik
Saya sedang mencoba mengompresi resep menjadi diagram kecil: https://leontrolski.github.io/recipes.html
Saya selalu membayangkan hal seperti ini, dan saya selalu kesal pada resep yang menaruh bahan sebagai daftar besar tanpa pemisahan lalu berkata “campurkan bahan kering dalam mangkuk besar”
Untuk sementara saya pikir kalau implementasi seperti ini dibuat dengan baik, itu bisa menguntungkan, tetapi sekarang rasanya akan mudah ditiru begitu ada satu antarmuka yang kuat muncul
Tabelnya mengingatkan pada resep di Modernist Cuisine. Di sana bahan dikelompokkan per langkah, beserta beratnya, kadang juga volume dan rasio
Contoh: https://modernistcuisine.com/wp-content/uploads/2013/01/Mac-...
Sebagai referensi, seluruh https://publicdomainrecipes.com tersedia sebagai satu berkas 22MiB di https://browse.library.kiwix.org: https://browse.library.kiwix.org/viewer#publicdomainrecipes....
Penambahan resep bisa dilakukan di https://github.com/ronaldl29/public-domain-recipes
Kalau “11 sumber dalam 7 bahasa, yaitu Inggris, Mandarin, Rusia, Vietnam, Spanyol, Turki, Indonesia, Jerman, dan Indian English” maka sulit menyebutnya sebagai seluruh masakan umat manusia
Namun tetap tidak lengkap karena masakan Italia, Jepang, Yunani, dan Meksiko yang sangat populer di dunia tidak ada, begitu juga Afrika dan Timur Tengah sama sekali tidak ada
Makalahnya memang cepat mengakui hal itu, tetapi ini jelas bukan dataset yang seimbang
Di [1] bisa dilihat demo yang tampaknya merupakan iterasi sebelumnya dari apa yang dijelaskan makalah ini
Karena penasaran bahan apa saja yang dipilih demo itu, saya mencoba beberapa bahan yang asing dari “Organum: Nature, Texture, Intensity, Purity” karya Peter Gilmore[2]. Ia dikenal lewat restoran Quay di Sydney, Australia
Sistem ini tahu bahan-bahan yang cukup berani seperti juniper berry, macadamia, biji nigella, air bunga jeruk, dan lemon verbena, serta bisa membedakan minyak wijen dan minyak wijen panggang. Meskipun di daftar bahan hanya ada “beras”, “beras hitam”, “beras merah”, dan “beras ketan”, saat memilih “beras” ia cukup pintar untuk menyarankan memakai nasi melati matang yang didinginkan untuk nasi goreng, dan merendam serta membilas beras basmati untuk pilaf
Jika memilih “daging domba” dan sayuran yang umum dipakai untuk braising, ia akan merekomendasikan potongan seperti bahu atau sengkel
Ia tidak mengenal minyak biji anggur, orzo, manggis, atau lemon myrtle, dan tentu juga tidak tahu bahan seperti karkalla yang mungkin hanya dipakai orang seperti Peter Gilmore dan bahkan belum pernah didengar sebagian besar chef. Tetapi bahan seperti itu sangat regional atau khusus, jadi saya rasa ini bukan keterbatasan besar
Ia mengenal “biji labu” tetapi tidak mengenal “pumpkin”, melainkan menanganinya sebagai “squash”, jadi masih perlu pelokalan lebih lanjut untuk memperbaiki penggunaan bahasa Inggris Britania/Amerika. Saya berharap bisa membuat salad dari kombinasi “daging domba” dan “alpukat”, tetapi gagal; belakangan saya lihat daftar bahannya tidak punya selada atau arugula, hanya istilah Amerika “salad greens”. Saya juga mencoba dengan bahan salad lain, ayam, atau bahkan tanpa protein, tetapi ia tidak pernah membuat salad dan malah terus menghasilkan hidangan pura-pura mewah berupa gel tomat (agar) dan pure alpukat yang mengelilingi bongkahan protein
[1] https://epicure.kaikaku.ai/
[2] https://en.wikipedia.org/wiki/Peter_Gilmore_(chef)
Dari sudut pandang orang Amerika, ada banyak jenis squash yang umum dipakai, dan pumpkin hanyalah salah satunya. Yang terlintas misalnya acorn, butternut, spaghetti, dan kalau mau teliti zucchini juga termasuk
Saya melihat ini di X/Twitter, dan sulit percaya bahwa masakan manusia beserta semua teknik, bahan, dan cara memasaknya menurut konteks budaya bisa dikompresi menjadi 2 megabyte
Ini mirip seperti ketika orang bilang “model 1GB yang bisa tool calling dan coding”, lalu saat dicoba ternyata nyaris tidak berfungsi. Secara teknis itu memang model coding 1GB, tetapi bukan berarti model yang bagus
Sulit memercayai model/korpus makanan yang memasukkan bahasa Inggris dan Jerman tetapi mengecualikan bahasa Italia dan Prancis
Resep yang benar-benar ditulis dalam bahasa Prancis memang tidak ada, tetapi resep sup bawang Prancis dalam bahasa Inggris hampir pasti ada
Tertulis bahwa “[Claude] melakukan semua klasifikasi bahan dengan decoding deterministik (temperature 0–0.1)”, dan meskipun dalam konteks ini bukan masalah besar, temperature rendah tidak otomatis berarti deterministik
Di luar clickbait-nya, ini konsep yang cukup menarik. Saya penasaran apakah embedding seperti ini bisa menghasilkan momen word2vec untuk bahan makanan atau profil rasa
Seperti yang sudah ditunjukkan orang lain dengan tepat, ini bisa dibuat ulang memakai sumber data yang lebih representatif, dan saya tertarik melihat seberapa efektif pendekatan ini nantinya
Saya memasukkan data dan informasi terkait ke Claude Code untuk diimplementasikan, dan hasilnya terlihat cukup bagus
Mungkin ini lebih cocok untuk merekomendasikan bahan pengganti daripada menghasilkan resep: https://viz.roshangeorge.dev/recipe-model/