1 điểm bởi GN⁺ 4 giờ trước | 1 bình luận | Chia sẻ qua WhatsApp
  • Epicure là một mô hình học embedding 300 chiều cho 1.790 nguyên liệu chuẩn từ 4,14 triệu công thức và dữ liệu hợp chất của FlavorDB
  • Được thiết kế để giảm các vấn đề của FlavorGraph trước đây như corpus thiên về tiếng Anh, sự pha trộn cố định giữa hóa học và công thức, cùng vốn từ nguyên liệu rời rạc
  • Cooc, Chem và Core dùng cùng một cấu trúc nhưng chỉ thay đổi lược đồ random walk để so sánh tỷ trọng của đồng xuất hiện trong công thức và tín hiệu hóa học
  • Ba embedding này khôi phục tuyến tính 27 hướng cảm quan·dinh dưỡng và 8 đại vùng ẩm thực, đồng thời thu được 20 yếu tố theo cách không giám sát
  • Có thể khám phá nguyên liệu bằng láng giềng gần nhất và phép toán hướng SLERP, như xoay rice theo hướng South-Asian, nhưng mã nguồn và đầu ra vẫn chưa được công bố

Mục tiêu của Epicure

  • Embedding nguyên liệu là nền tảng để tìm độ hợp nhau giữa các nguyên liệu, các nguyên liệu tương tự theo từng nền văn hóa, và vị trí của chúng trên các trục cảm quan·dinh dưỡng
    • Kiến thức kiểu như doenjang hợp với mirin, dashi, dầu mè, còn dầu olive hợp với basil, cà chua và prosciutto đã được tích lũy trong các corpus công thức của nhiều nền văn hóa và trong trực giác của đầu bếp
    • Có thể ứng dụng cho công cụ hỗ trợ menu·công thức, gợi ý dựa trên nguyên liệu đang có, khám phá chuyển từ nguyên liệu Địa Trung Hải sang nguyên liệu tương ứng ở Đông Á, hoặc tìm kiếm theo các trục như độ béo, lên men, vị đắng, hàm lượng protein cao
  • Nghiên cứu trước đây đã phát triển theo hướng mạng hương vị dựa trên hóa học và các cách tiếp cận dựa trên công thức·knowledge graph
    • Ahn et al. [2011] giới thiệu mạng hương vị và cho thấy sự khác biệt giữa các nền ẩm thực xuất hiện từ các hợp chất được chia sẻ
    • FlavorDB của Garg et al. [2017] liệt kê các phân tử mùi hương của 936 thực thể thực phẩm, còn FooDB mở rộng phạm vi hóa học lên 70.000 hợp chất
    • FlavorGraph [Park et al., 2021] là embedding thực phẩm công khai được huấn luyện bằng Metapath2Vec trên đồ thị dị thể kết hợp FlavorDB và Recipe1M+, gồm 6.653 nguyên liệu và 1.645 hợp chất
    • FoodKG [Haussmann et al., 2019] tích hợp dữ liệu công thức, dinh dưỡng và ontology thành knowledge graph RDF để phục vụ gợi ý

Giới hạn của FlavorGraph và thiết kế của Epicure

  • Phân tích trước đó xác nhận hơn 15 chiều ẩm thực có thể diễn giải trong embedding 300 chiều của FlavorGraph, bao gồm vị, kết cấu, dinh dưỡng, địa lý, văn hóa và chế biến; đồng thời cho thấy việc hợp nhất từ vựng có tăng cường LLM đã củng cố phần lớn tín hiệu
  • Việc tiền huấn luyện cố định của FlavorGraph có ba hạn chế
    • Phụ thuộc vào một corpus thiên về tiếng Anh
    • Tín hiệu hóa học và tín hiệu ngữ cảnh công thức được hòa trộn trong một thiên hướng quy nạp cố định, nên khó điều chỉnh như một trục thiết kế
    • Từ vựng nguyên liệu vẫn mang cấu trúc rời rạc, nơi chi tiết cách chuẩn bị và cả các mục không phải thực phẩm bị trộn lẫn
  • Để giảm những hạn chế này, Epicure được xây dựng từ đầu với ba embedding nguyên liệu skip-gram dạng anh em được huấn luyện lại hoàn toàn
    • Thu thập 4,14 triệu công thức từ 11 nguồn
    • Phạm vi ngôn ngữ gồm tiếng Anh, tiếng Trung, tiếng Nga, tiếng Việt, tiếng Tây Ban Nha, tiếng Thổ Nhĩ Kỳ, tiếng Indonesia, tiếng Đức và Indian-English
    • Chuẩn hóa các chuỗi nguyên liệu thô thành 1.790 mục nguyên liệu chuẩn bằng pipeline tăng cường LLM
    • Ba mô hình dùng chung kiến trúc và siêu tham số, chỉ khác ở lược đồ random walk mà hàm mục tiêu skip-gram quan sát

Dữ liệu và ba embedding

  • Epicure bắt đầu từ hai loại đồ thị
    • Đồ thị NPMI nguyên liệu-nguyên liệu gồm 203.508 cạnh
    • Đồ thị nguyên liệu-hợp chất của FlavorDB gồm 80.019 cạnh và chứa 2.247 nút hợp chất có kiểu thuộc 15 danh mục
  • Ba biến thể Metapath2Vec nằm ở các vị trí khác nhau trên phổ giữa hóa học và ngữ cảnh công thức
    • Cooc

      • Là mô hình chỉ đi trên đồ thị đồng xuất hiện trong công thức
      • Tập trung vào tín hiệu ngữ cảnh nơi các nguyên liệu thật sự xuất hiện cùng nhau trong công thức
    • Chem

      • Là mô hình chỉ đi trên metapath của các hợp chất có kiểu
      • Tập trung vào tín hiệu hóa học đến từ quan hệ giữa nguyên liệu và hợp chất
    • Core

      • Dùng đồng thời các đường đi dựa trên hợp chất và các đường đi nguyên liệu-nguyên liệu
      • Bơm thêm ingredient-ingredient walk theo tỷ lệ pha trộn được kiểm soát để trộn tín hiệu hóa học với tín hiệu ngữ cảnh công thức
      • Cấu hình này làm lộ rõ tỷ trọng hóa học-vs-ngữ cảnh công thức như một trục thiết kế trong cùng dữ liệu đầu vào và cấu trúc huấn luyện
      • Khác biệt giữa ba mô hình anh em được thiết kế để chỉ phát sinh từ lược đồ random walk
      • Nhờ đó có thể so sánh sự khác nhau về tính chất embedding như là hiệu ứng của lược đồ walk chứ không phải của dữ liệu đầu vào

Ý nghĩa ẩm thực được khôi phục trong không gian embedding

  • Ba mô hình Epicure khôi phục tuyến tính 27 hướng cảm quan·dinh dưỡng liên tục8 đại vùng ẩm thực trong các probe học có giám sát
    • Cohen’s d trung bình về khả năng tách biệt vùng ẩm thực lần lượt là 2,43/2,70/3,07 cho Cooc/Core/Chem
    • Phạm vi probe bao gồm cuisine, food-group, cấp độ chế biến NOVA, dưỡng chất đa lượng USDA và 19 nhóm cảm quan
  • Phân tích không giám sát khôi phục 20 yếu tố có thể diễn giải ở mỗi mô hình
    • Áp dụng FastICA đa seed ổn định trên embedding đã residual hóa theo food-group
    • Chia các mục ở tứ phân vị trên của từng yếu tố bằng GMM để thu được 150–200 mode ẩm thực có gắn tên cho mỗi mô hình
  • Độ nhất quán trung bình của các mode GMM cao hơn đường cơ sở cặp ngẫu nhiên
    • Độ nhất quán trung bình của Cooc/Core/Chem là 0,611/0,833/0,703
    • Đường cơ sở cặp ngẫu nhiên tương ứng là 0,097/0,348/0,115
  • Góc nhìn từ các nghiên cứu embedding trước đó cũng được dùng để kiểm chứng
    • Góc nhìn về tính định hướng tuyến tính của word2vec từ Mikolov et al. [2013] là nền tảng cho 27 probe ẩm thực có giám sát, 20 yếu tố FastICA và phép xoay SLERP
    • Theo góc nhìn về tính đẳng hướng của Mu et al. [2017], nghiên cứu đo trực tiếp tính đẳng hướng của embedding bằng participation ratio và mean pairwise cosine
    • Ba mô hình anh em nằm ở những vị trí khác biệt rõ trên phổ đẳng hướng, và điều này được xem như thuộc tính của lược đồ walk chứ không phải dữ liệu đầu vào
    • WEAT của Caliskan et al. [2017] được dùng như kiểm chứng bổ trợ để chẩn đoán xem các trục ngữ nghĩa có gắn nhãn có phản ánh trong cấu trúc hình học hay không

Các phép khám phá và khả năng ứng dụng

  • Epicure cung cấp hai họ phép toán bổ sung trong cùng không gian embedding 300 chiều
    • Ghép cặp dựa trên láng giềng gần nhất

      • Dùng tìm kiếm láng giềng top-K để tìm các mục gần quanh một nguyên liệu
      • Dùng tra cứu mode membership để khám phá các mục thuộc một mode ẩm thực cụ thể
    • Phép toán hướng SLERP

      • Xoay nguyên liệu seed về phía pole vector học có giám sát hoặc pole của factor-mode emergent
      • Góc liên tục θ nội suy giữa tìm kiếm bị seed chi phối và tìm kiếm bị target chi phối
      • Ví dụ, thêm hướng South-Asian vào rice sẽ dịch chuyển về phía curry leaf, urad dal, chana dal và fenugreek seed
      • Cả các hướng ngữ nghĩa có giám sát lẫn các mode emergent không giám sát đều có thể dùng để khám phá nguyên liệu
      • Công cụ cho đầu bếp có thể xoay, trộn và tìm kiếm nguyên liệu theo các hướng nhất quán về cảm quan, dinh dưỡng và văn hóa
      • Quan hệ dựa trên hóa học và quan hệ dựa trên ngữ cảnh công thức có thể được điều chỉnh bằng lựa chọn mô hình và lược đồ walk
      • Mã nguồn và các đầu ra đã huấn luyện hiện chưa được công bố

1 bình luận

 
Ý kiến trên Hacker News
  • Bản thân nghiên cứu thì thú vị, nhưng tiêu đề dễ gây hiểu lầm
    Một tiêu đề tốt hơn có lẽ là “nén các nguyên liệu con người sử dụng thành 1.800 yếu tố nguyên thủy”
    Hầu như không có thông tin về công thức nấu ăn thực tế, tức là cách chuẩn bị hay tỷ lệ, nhưng những thông tin như cà chua hợp với thịt bò trên phạm vi toàn cầu có thể là một nguồn tài nguyên khá hữu ích và thú vị khi tạo ra các tổ hợp hương vị

    • Có một cuốn sách rất hay về bản đồ các hương vị hợp nhau là The Flavor Bible
      Dù không chứa mọi tổ hợp của 1.800 nguyên liệu, nó bao quát khá tốt các loại thảo mộc, gia vị, rau củ và thịt được dùng rộng rãi. Ngay cả khi nén cuốn sách này, kích thước văn bản có lẽ cũng không lớn đến vậy
      Vấn đề với công thức do LLM tạo ra là chúng bỏ lỡ sự tinh tế của kỹ thuật nấu nướng. Thành công thường phụ thuộc vào chỉ một bước hoặc một tỷ lệ, và ví dụ như “gà rán” có vô số biến thể trên khắp thế giới, nhưng lấy trung bình các công thức thì không tạo ra gà rán ngon
    • Nếu tôi không bỏ sót gì thì dường như trong bài báo không có căn cứ nào cho thấy nó bao quát toàn bộ nguyên liệu của nhân loại
      11 nguồn dữ liệu có đề cập đến nhiều món ăn phổ biến, nhưng các nguồn tiếng Anh và tiếng Trung chiếm 90% bộ dữ liệu. Châu Phi và khối Ả Rập cũng không có trong dữ liệu, mà chỉ riêng hai khu vực này đã chiếm khoảng 25% dân số thế giới
      Việc dùng AI để dịch toàn bộ thuật ngữ không phải tiếng Anh sang tiếng Anh thì có thể hiểu được về mặt phương pháp luận, nhưng rõ ràng có chỗ cho sai sót
    • Trước đây khi tôi làm món hầm bò cho 12 người, tôi đã cứu nó bằng cách cho sốt cà chua vào
      Thịt bò nếu nấu sai có thể bị dai, nhưng độ axit của cà chua giúp làm mềm lại
    • Nếu bạn quan tâm đến chủ đề này thì bài báo này cũng đáng xem: https://www.nature.com/articles/srep00196
    • Cà chua chứa nhiều glutamate, nên càng làm nổi bật hương vị của thịt bò
  • Thú vị đấy
    Tôi đang thử nén công thức thành các sơ đồ nhỏ: https://leontrolski.github.io/recipes.html

    • Tôi thích nó. Hơi gợi nhớ đến định dạng bảng của Cooking for Engineers. Có thể xem ở cuối công thức: https://www.cookingforengineers.com/recipe/19/Erics-Chocolat...
    • Hay đấy. Nó gợi nhớ đến https://www.reddit.com/r/flowchartrecipes/ và kiểu xem bảng trên trang https://www.cookingforengineers.com/recipe/87/Carrot-Pulp-Ca...
    • À, đây là thẻ công thức dạng đồ thị phụ thuộc. Thật sự rất hay
      Tôi luôn hình dung về kiểu này, và lúc nào cũng khó chịu khi công thức liệt kê nguyên liệu thành một danh sách khổng lồ không phân nhóm rồi bảo “trộn các nguyên liệu khô trong một tô sâu”
      Có thời gian tôi nghĩ nếu làm tốt một cách triển khai như vậy thì sẽ có khả năng sinh lời, nhưng giờ thì có vẻ ngay khi một giao diện mạnh xuất hiện, nó sẽ dễ bị sao chép
    • Đúng là một trang web tuyệt vời. Tôi thích các đồ thị vẽ tay
      Bảng biểu gợi tôi nhớ đến công thức trong Modernist Cuisine. Ở đó họ nhóm nguyên liệu theo từng bước, rồi ghi cả khối lượng, đôi khi cả thể tích và tỷ lệ
      Ví dụ: https://modernistcuisine.com/wp-content/uploads/2013/01/Mac-...
    • Tôi thật sự thích cách này. Nếu làm một sách công thức khổ lớn dựa trên sơ đồ có thể đọc từ xa khi đang làm việc trong bếp, có lẽ sẽ thành công
  • Nhân tiện, toàn bộ https://publicdomainrecipes.com được cung cấp dưới dạng một tệp đơn 22MiB tại https://browse.library.kiwix.org: https://browse.library.kiwix.org/viewer#publicdomainrecipes....
    Có thể thêm công thức tại https://github.com/ronaldl29/public-domain-recipes

  • Nếu là “11 nguồn từ 7 ngôn ngữ gồm tiếng Anh, tiếng Trung, tiếng Nga, tiếng Việt, tiếng Tây Ban Nha, tiếng Thổ Nhĩ Kỳ, tiếng Indonesia, tiếng Đức, tiếng Anh Ấn Độ, v.v.” thì khó mà gọi là ẩm thực của toàn nhân loại

    • Dù vậy, nó vẫn đại diện cho khoảng 70% dân số thế giới hiện nay. Không phải 100%, nhưng đúng là bao gồm một phần đáng kể của các nhóm lớn
      Tuy nhiên, các nền ẩm thực Ý, Nhật, Hy Lạp, Mexico vốn rất phổ biến trên toàn cầu lại bị thiếu, và châu Phi cùng Trung Đông cũng hoàn toàn vắng mặt, nên vẫn chưa đầy đủ
    • Đúng vậy. Nếu nhìn vào ngữ liệu thì gần một nửa công thức là phía Trung Quốc/Hàn Quốc
      Bài báo cũng nhanh chóng thừa nhận điều đó, nhưng rõ ràng đây không phải là một bộ dữ liệu cân bằng chắc chắn rồi
  • Có thể xem bản demo có vẻ là một phiên bản lặp trước của nội dung bài báo này mô tả ở [1]
    Tôi tò mò không biết bản demo đã chọn những nguyên liệu nào, nên đã thử vài nguyên liệu lạ xuất hiện trong “Organum: Nature, Texture, Intensity, Purity” của Peter Gilmore[2]. Ông nổi tiếng với nhà hàng Quay ở Sydney, Úc
    Nó biết khá nhiều nguyên liệu mang tính phiêu lưu như quả bách xù, hạt macadamia, hạt nigella, nước hoa cam, cỏ roi ngựa chanh, và còn phân biệt được dầu mè với dầu mè rang. Dù trong danh sách nguyên liệu chỉ có “gạo”, “gạo đen”, “gạo lứt”, “gạo nếp”, nhưng khi chọn “gạo” thì nó đủ thông minh để bảo dùng cơm hoa nhài đã nấu chín rồi để nguội cho món cơm rang, còn với pilaf thì bảo ngâm và vo gạo basmati
    Nếu chọn “thịt cừu” rồi thêm các loại rau thường dùng để hầm, nó sẽ gợi ý các phần như vai hoặc bắp chân
    Nó không biết dầu hạt nho, orzo, măng cụt, lemon myrtle, và dĩ nhiên cũng không biết những nguyên liệu như karkalla, kiểu chỉ cỡ Peter Gilmore mới dùng còn đa số đầu bếp chưa chắc đã từng nghe qua. Nhưng tôi không xem đó là hạn chế lớn, vì các nguyên liệu như vậy thường mang tính địa phương mạnh hoặc rất đặc thù
    Nó biết “hạt bí” nhưng không biết “pumpkin”, mà lại xử lý dưới mục “squash”, nên muốn cải thiện cách dùng tiếng Anh Anh/Mỹ thì cần bản địa hóa thêm. Tôi kỳ vọng nó sẽ tạo một món salad khi kết hợp “thịt cừu” với “bơ”, nhưng không được; về sau mới thấy trong danh sách nguyên liệu không có xà lách hay arugula mà chỉ có cách gọi kiểu Mỹ là “salad greens”. Tôi thử với các nguyên liệu salad khác và cả thịt gà, thậm chí không có protein, nhưng nó vẫn không làm salad mà chỉ liên tục sinh ra mấy món giả kiểu cao cấp với thạch cà chua (agar) và purée bơ bao quanh một khối protein
    [1] https://epicure.kaikaku.ai/
    [2] https://en.wikipedia.org/wiki/Peter_Gilmore_(chef)

    • Việc “pumpkin” lại là “squash” là vấn đề lớn hơn nhiều so với khác biệt từ vựng đơn thuần
      Với người Mỹ, có nhiều loại squash được dùng phổ biến, và pumpkin chỉ là một trong số đó. Những loại hiện ra ngay là acorn, butternut, spaghetti, và nếu xét kỹ thì cả zucchini cũng tính vào
  • Tôi thấy trên X/Twitter, nhưng khó mà tin rằng có thể nén ẩm thực của loài người cùng mọi kỹ thuật, nguyên liệu, và cách nấu theo từng bối cảnh văn hóa xuống còn 2 megabyte
    Nó cũng giống như câu “mô hình 1GB có thể gọi công cụ và lập trình” — dùng thử thì thấy gần như không hoạt động. Về mặt kỹ thuật thì đúng là mô hình lập trình 1GB, nhưng không phải một mô hình tốt

    • Không gian của món ăn con người có thể ăn được là nhỏ. Nguyên liệu chỉ vài nghìn loại, kỹ thuật nấu cũng chỉ vài nghìn, nên có thể dễ dàng nén thành một mô hình độ trung thực cao
  • Một mô hình/ngữ liệu về ẩm thực mà có tiếng Anh và tiếng Đức nhưng lại loại tiếng Ý và tiếng Pháp thì khó đáng tin

    • Trong bảng có nhiều nền ẩm thực như Ý, Pháp, v.v. Danh sách 11 nguồn là theo ngôn ngữ
      Có thể thiếu các công thức thật sự được viết bằng tiếng Pháp, nhưng chắc chắn vẫn có các công thức súp hành kiểu Pháp viết bằng tiếng Anh
  • Có đoạn ghi rằng “[Claude] đã thực hiện toàn bộ việc phân loại nguyên liệu bằng giải mã quyết định (temperature 0–0.1)”, mà trong ngữ cảnh này tuy không phải vấn đề lớn, nhưng temperature thấp không đồng nghĩa với tính quyết định

    • Đúng vậy. temperature 0 không phải là điều kiện cần cũng không phải là điều kiện đủ cho suy luận có tính quyết định
  • Bỏ qua phần giật tít thì đây là một khái niệm khá thú vị. Tôi tò mò liệu với kiểu embedding này, nguyên liệu hay hồ sơ hương vị có thể có một khoảnh khắc word2vec hay không
    Như những người khác đã chỉ ra đúng chỗ, có thể làm lại với nguồn dữ liệu mang tính đại diện hơn, và tôi rất mong xem cách tiếp cận này sẽ hiệu quả đến đâu

  • Tôi đã đưa dữ liệu và thông tin đó vào Claude Code để nó triển khai, và trông khá ổn
    Có lẽ nó hợp với gợi ý nguyên liệu thay thế hơn là tạo công thức: https://viz.roshangeorge.dev/recipe-model/