「吃」,现在已经成了一种文化,对食物的不懈追求,可以说是人类历史的一种推动力。从烹饪的进化,到现在花样百出的美食,食物搭配又会出现哪些新意,对于食物相克的盲从,也预示着新的方法和技艺要大显身手了。

人类文明的发展,食物和烹饪的意义重大。从食用熟食、耕作农作物,到加入调料、丰富烹饪方式、发明冷藏等,一些列的饮食工具和手段的发明,都是为了提高生活水平。

饮食文化的书籍《食物的历史》中,就讨论到食物的第一次革命,才带动了人类一次大的进化。其中一个重要节点是烹饪的出现,书里描写了这样一个吃的场景:先把柠檬汁挤在牡蛎上,在小火烘烤下,它的质地、口感和味道都发生了奇妙的变化…


有观点认为:烹饪是人类进化的特别利器

从火的利用,到烹饪的出现,食物的制作过程逐渐变成了一种魔法,吃的花样也越来越多,食物早已不是生存和生活的充饥之物,而是在各色搭配制作中,成为了一种艺术和追求。

美食的进阶之路,从搭配开始

随着「吃」的内容越来越精致,吃饱了的人类,就开始思考这类问题:哪些食物可以放在一起吃?哪些东西搭配在一起更好吃?

知名段子手「毕导」研究过,香蕉与冬枣的体积比在 2:1 左右,同时吃的口感达到了恶心的巅峰

要解决这个问题,一般的吃货靠的是传承下来的厨房规则,资深一点的吃货,则是借鉴美食家或者高级菜谱的做法。但这类方法对于种类繁多的食物来说,覆盖面窄,而且都是经验为主,主观性偏强。

一个好消息是,我们现在有了新的选择:可以用神经网络的方法作出搭配,告诉你怎样才最好吃。

在近段时间,一篇叫做《KitcheNette: Predicting and Recommending Food Ingredient Pairings using Siamese Neural Networks》(https://arxiv.org/abs/1905.07261)的论文,就叙述了高丽大学实验团队的食材智能搭配系统,以及在食物搭配上的硬核研究。

KitchenNette :用算法 解开食物搭配的奥秘

这个系统是基于孪生神经网络(Siamese Neural Networks)的一个模型框架。

孪生神经网络用于衡量两个输入的相似程度。它有两个输入,分别传输进两个神经网络,以此将输入映射到新的空间,形成新的空间中的表示。然后通过对 Loss 的计算,评价两个 Input 的相似度。

而这个研究中,研究人员来开发了的食物搭配模型 KitchenNette ,将两种食材作为输入,能计算出它们搭配在一起的合适度。最终的表现成从 -1 到 1 之间的分数,分数越高表示这两种食物的搭配越好吃。

为了训练 KitchenNette,他们制作了一个美食数据集 Recipe1M,通过采集了大量的食谱信息,收录了多种食物的文本和图片,包含了了成分列表和配方说明。

依据数百万个菜谱和配对统计

从这些食谱中,经过词向量提取等手法,过滤得到了食物,并进行了配对操作,最终共获得了 356,451 个有效的已知搭配,剩下的 6,003,500 个食物对,则是非常见或者未出现过的,作为测试集使用

他们还使用 Im2Recipe  算法,从图片中提取出食材名称。

而 KitchenNette 模型的架构由两个主要组件构成。

KitchenNette 模型用 Gin 酒和汤力水进行评分测试

第一个是使用孪生神经网络的 「成分表示组件」(Ingredient Representation Component),其中有 权重 相同的两个多层感知器(MLP),各自接收食材的输入。每个 MLP 有两个完全连接层,用于处理输入的成分向量。

第二个组件是 配对分数预测组件」(Pairing Score Prediction Component),采用 Deep& Wide Layers,进行评分流程。在 Deep Layer,两层学习表示向量被连接,并传递给另一个计算两种成分联合代表的 MLP,用来提取语义特征,而 Wide Layer 用来抓取稀疏特征。

搭建好模型后,先让模型学习已标注的食物搭配,从 30 万个已经评好分数的配对中,分析和找出「好搭配」的规律,然后用剩下的 95% 的食物组合,进行最后的测试

不同搭配的组合评定分数:左侧为常见搭配的评分,右侧为不常见搭配

根据他们的论文,只需对 KitchenNette  输入两种食物,就给出是否合适配对的判定分数,而且这个结果好于其他的模型。

调酒和糕点,最适合模型搭配!

为了评估这个模型预测的准确性,他们进行了几种定性分析。

通过将已知的经典搭配输入,检测了模型能够给出中肯的分数;同时和其他的经典模型进行对比,发现 KitchenNette  的预测更要符合人们的饮食习惯,最后和美食家的推荐作比之后,发现判断的结果十分接近。

尤其是酒精饮品和糕点,他们都有标准化的配方成分,而能够更加精准的把控口味。

比如,「香槟+橙皮」以及 「气泡酒+橙皮」的搭配得分较高(0.33-0.42),而 「气泡酒+洋葱」「普罗赛克+洋葱」这样奇怪的组合,得到了很低的分数。

红酒、白酒、杜松子酒、清酒的最佳搭配建议,以及和另一工具的推荐结果对比

在英国布里斯托,另一支创新团队 TinyGiant 就专注于开发由 AI 制定的创新食物,这支团队截至目前为止,已经制作出了几款 AI 定制的鸡尾酒和纸杯蛋糕。

TinyGiant 制作出了四款 AI 的鸡尾酒

而对于这项研究的后续,研究者表示接下来会进一步作出优化,比如考虑食品成分的化学信息使用百科全书食品成分的详细信息,以及更多「新颖」和「真实」的食谱,对模型进行训练,以推荐出更加多样化的食品成分配对。

TinyGiant 根据 AI 得出的结果,还定制了四种口味的纸杯蛋糕

近几年来,《舌尖上的中国》、《人生一串》等美食节目的大火,让我们看到了美食的惊人魅力,而现在看来,AI 或许会比我们更快地,打开美食搭配的新天地。

人工智能帮你做菜,创意菜大厨可能只是个 AI相关推荐

  1. MIT要用人工智能帮你做菜:上传美食照片,给你一份菜谱

    本文来自AI新媒体量子位(QbitAI) 在朋友圈看见美食照片总想自己做一份?MIT来帮忙了. MIT的计算机科学及人工智能实验室(CSAIL)本周和卡塔尔计算机研究中心(QCRI)一起训练了一个人工 ...

  2. 老板电器的新“大厨”,能否在厨电行业炒出新菜?

    萧伯纳曾经说过,"任何一种爱,都不比对美食的热爱真切." 当代人正在变得越来越懒,但同时对于吃的要求却在不断提升.在"既要吃的好,但又懒得动"的矛盾之中,集合了 ...

  3. 厨子与大厨:伊隆·马斯克的独家配方(下)

    source: http://dongfei.blog.caixin.com/archives/144957 01 部落群 我思考的有些事很保守,有些事很不拘泥.当所有人都一边倒的时候我还在思考,我时 ...

  4. 疫情宅家厨艺秀 | 究竟是自学成大厨,还是厨房大翻车?

    CDA数据分析师 出品 岁末年初的这场疫情,让宅家"做贡献"的我们,被迫成为了"大厨".一个方便面,微博上都可以炒出好多种花样.但话说回来,网络上看到宅家大神们 ...

  5. 我在湖北新东方烹饪学校上的12次课——大厨笔记

    前言:本人将在2017年八月出国留学.在出国之前,决定去新东方学习烹饪,这样可以在异国他乡更好的生存和生活.练就一番好的烹饪手艺,做出自己喜欢的菜肴,在国外哪里都能品尝到家的味道. 我报名的专业是:大 ...

  6. 中餐菜单分类名称创意_10款新颖创意菜换新菜单必备

    10 款新颖创意菜,换新菜单必备! 说到创意,咱中餐大厨从来都不缺!以下这一道道出自 中餐大厨们之手的新颖创意菜,就是最好的证明!你的菜单 还没有更换新品种吗?那就赶快往下拉,把它们装进你的菜 单里吧 ...

  7. 大厨小鲜——基于Netty自己动手实现RPC框架

    今天我们要来做一道小菜,这道菜就是RPC通讯框架.它使用netty作为原料,fastjson序列化工具作为调料,来实现一个极简的多线程RPC服务框架. 我们暂且命名该RPC框架为rpckids. 食用 ...

  8. 大厨小鲜——基于Netty自己动手编写RPC框架

    今天我们要来做一道小菜,这道菜就是RPC通讯框架.它使用netty作为原料,fastjson序列化工具作为调料,来实现一个极简的多线程RPC服务框架. 我们暂且命名该RPC框架为rpckids. 食用 ...

  9. 日本公司用人工智能帮人做金融交易

    日本公司用人工智能帮人做金融交易 2015-10-31 20:21 中文科技资讯 [大][中][小]我有话说 近日,日本人工智能初创公司Alpaca宣布获得100万美元投资,而他们打算用这笔钱来建立一 ...

最新文章

  1. python视频教学视频哪个好-python视频教程哪家好
  2. linux刷windows要重新校色吗,ThinkPad T470s 在 openSUSE KDE 桌面环境中安装显示器校色文件...
  3. tomcat开发远程调试端口以及利用eclipse进行远程调试
  4. 矩阵 计算机应用,《计算机视觉算法:基于OpenCV的计算机应用开发》 —3.3 元素级矩阵操作...
  5. 二.全局定位--开源定位框架livox-relocalization实录数据集测试
  6. c 转易语言源码,易语言代码转HTML 测试(源码方式)
  7. 网卡不兼容linux系统,CentOS与Broadcom 5709兼容性问题导致业务网络中断
  8. theano入门学习
  9. 第三章 准备工作 极值点
  10. Pandas: Drop函数(Dataframe删除指定行列)
  11. Django优化(减少数据库查询次数)---select_related和prefetch_related的使用
  12. NAR:MicrobiomeAnalyst微生物组分析师——统计、可视化和元分析微生物组数据的网页工具
  13. app界面设计是什么?需要学习什么UI软件
  14. java 输出反斜杠_Java 反斜杠如何转义的问题
  15. 转载 英语一千句
  16. 关于虚拟机与操作系统
  17. Anaconda pytorch cpu版本安装——图文详情版
  18. 兴趣遍地都是,专注和持之以恒才是真正稀缺的
  19. 思维导图软件TheBrain零基础教程:如何创建新的“想法”
  20. CPU卡程序设计实例(八)ESAM模块卡上、下电

热门文章

  1. 关于电子、通信专业学生、工程师学习方法分享
  2. 萝卜家园GHOST WIN7 装机版 2013 03
  3. 关于c#:GC.Collect()之后是否立即运行垃圾回收?
  4. 详教腾讯云搭建Linux环境(点对点超详教程)
  5. 【前端】HTML基础(学习笔记)
  6. OSChina 周五乱弹 —— 如果有一天不让我写代码了
  7. 小白自学笔记——JAVA基础 2.12 项目一 家庭记账软件
  8. 怎么用计算机计算not,计算机如何进行逻辑计算—(计算机基础课十四)
  9. POJ 2111 Millenium Leapcow(记忆化搜索+dfs记录路径)
  10. spring的@Bean用法