浙大博士130页论文,教你用人工智能挑西瓜

作者 | 神经小姐姐
来源 | HyperAI超神经(ID:HyperAI)
【导读】要问什么水果和夏天最搭,答案一定是西瓜。作为西瓜生产与消费大国,中国在 2018 年以全世界 20% 的人口消耗掉全世界 70% 的西瓜,人均 100 斤。如何挑选最甜的瓜,也成了「吃瓜群众」十分关心的问题。一位浙江大学的博士,用机器学习的方法判断西瓜的成熟度,十分接地气。
大数据表明,今年夏天,是 140 年来最热的夏天。「热」已成为全球热词,我们经历了最热六月,刚送走最热七月,正在进入最热八月……
在难熬的酷暑面前,抱着半块冰凉的西瓜大快朵颐,无疑是最佳解暑选择了。啃着吃,勺子挖着吃,打成沙冰吃,炒着吃,烤着吃,怎么吃都好吃……
世界上,恐怕没有比中国人更爱吃、更能吃也更会吃西瓜的了。
自从 1000 多年前南北朝时期,西瓜传入中国,它就慢慢开始登上夏日水果霸主的地位。
有史学家考证,1000 多年前北京地区已有西瓜种植,而古人最早的「吃西瓜」场面,是在内蒙古辽代墓葬壁画上发现的,此墓筑于公元 1026~1027 年间。
1000 多年来,西瓜的外貌基本没什么变化
刚传入中国时,西瓜还属于贵族专享。直到公元 1143 年,南宋官员洪皓出使金国回来之时,带回了金人种植的西瓜种子,从此江南有了西瓜,老百姓也能吃上西瓜了。
洪皓回到南宋后,将见闻整理成书(图来源:网络)
洪皓撰写的《松漠纪闻》中,有一段对西瓜的描述:「西瓜形如匾蒲而圆,色极青翠,经岁则变黄。其瓞类甜瓜,味甘脆,中有汁,尤冷。予携以归,今禁圃乡囿皆有。」
此后,西瓜开始频现于南宋文人笔端,「年来处处食西瓜」、「西瓜黄处藤如织」、「醉拾西瓜擘」等文字,都表明西瓜已经越来越普及。
湖北恩施发现了北宋咸淳年间的「西瓜碑」
碑文记载了当地所种植的四种西瓜(图来源:网络)
西瓜,已经成为了中国文化的一部分。很多成语都和西瓜有关:老王卖瓜,滚瓜烂熟,瓜熟蒂落,顺藤摸瓜……
2004 年,位于北京大兴区庞各庄镇的「中国西瓜博物馆」,正式开馆,其外形效果主题为「飞翔的西瓜」,寓意中国西瓜飞出国门。这是国内首家以「西瓜」为主题的博物馆。博物馆内向人们展示西瓜历史、西瓜种植、西瓜文化以及科技等内容。

根据联合国粮农组织 FAO 公布的数据,当前,我国已成为世界上最大的西瓜生产国和消费国,2018 年我国消化了超过 7000万吨西瓜,也就是人均消费掉了 100 斤。
所以,在西瓜面前,我们都可以骄傲地说:我终于实现了水果自由!
全球通用挑瓜大法:敲它
不过,吃瓜容易挑瓜难。面对一堆长相相似的西瓜,如何才能选中最好最甜的瓜?全球通用的办法是:敲它。

西瓜西瓜告诉我,你是不是最甜的瓜
但是,事实上,很多「吃瓜群众」最后敲来敲去,也听不到西瓜的回答。
于是,一位浙江大学的博士写了一篇 130 页的论文《西瓜成熟度和内部空心的声学检测技术及装置研究》(论文地址:http://t.cn/AiYcAYei),告诉我们,如何利用人工智能技术,从敲西瓜的声音来判别最甜的西瓜。
除了这位博士,还有很多硕博士也都在做这方面的研究
当然,他做这项研究的初衷,是为了提高瓜农收入,扩大西瓜的对外出口。也顺便造福一下我们广大「吃瓜群众」。
传统方法如何判断西瓜成熟
我国西瓜产量和种植面积居世界第一,但是出口量却不到产量的 1%,不仅是因为我们自己消耗的多,还因为西瓜产后检测和处理的手段落后,导致质量良莠不齐,商品化程度较低。
西瓜是否适时采收对西瓜品质影响极大,过熟或者不熟采摘都会影响西瓜的品质与口感。在我国,采收时机主要还是依赖于瓜农的主观经验,他们往往通过生长周期、气候(主要是气温)以及观察瓜皮颜色、纹理来判断西瓜成熟情况。
当然,还有一个技巧,就是上文提到的,敲瓜皮听声音。这是目前瓜农最常用的方法。
从左至右西瓜成熟度分别为:未熟,成熟,过熟
一般来说,未熟西瓜声音较清脆,敲打时会发出「咚咚咚」的声音,成熟瓜声音比较低浊,发声为「嘭嘭嘭」,而过熟西瓜则会发出「扑扑扑」的声音。靠人工一个一个去检测,费时费力且依赖经验,准确率无法保证。
如今,计算机、图像处理、传感器等技术飞速发展,将这些技术广泛用于农产品品质检测中,可以大大提高检测效率与准确率。
用机器学习判断,准确又高效
通过研究,论文作者发现西瓜成熟度的变化,一般与内部成分(如糖度)和结构(如体积质量变大、内部空心)的变化密切相关,而这些变化也会导致声学特征参数发生变化,因此他认为利用声学无损检测方法,通过不同建模方法与技术,来判断西瓜熟度比较合适。
而且,对比其他检测方法,比如激光、核磁共振等技术,声学特征检测具有价格低廉、检测效率高、准确度高的优点。试验之后,作者得出结论,LS-SVM 方法在西瓜成熟度分类建模中表现最佳,预测准确率为 73.6%。
声学检测装置实物图
在声学检测装置结构和材料优化基础上,并对敲击信号去噪之后,作者进行了两种试验,分别为成熟度分类试验和空心判定试验。
试验中选用了麒麟西瓜作为样本,为杭州市余杭区仓前镇吴山前村五组瓜农于温室瓜棚分批次采摘,采摘后便立刻搬至实验室。
成熟度分类试验中,选用 147 个非空心瓜,随机分为两组:建模集 75 个,预测集 72 个。
空心判定试验中,选取 190 个样本(包含有空心瓜),随机分为两组,建模集 97 个,预测集 93 个。
建模集用来建立样本的分类或空心判定模型,预测集用来测试模型的性能。
试验采用了四种常见有监督机器学习算法和模式识别算法,分别是线性判别分析法(LDA)、K-最小近邻法(KNN)、BP 神经网络技术(ANN)和最小二乘-支持向量机法(LS-SVM),以声学特征对未熟、成熟和过熟三种西瓜进行了分类,此外还对空心瓜进行鉴别。
空心瓜样本中,空心体积位置与形状都有所不同
为了消除敲击西瓜声音频谱中峰值分裂所造成的不利影响,作者定义了一阶矩指数 MI1 和二阶矩指数 MI2,因为在西瓜穿刺试验中(判断果肉坚实度)判定这两个参数与西瓜成熟度关联性较高,因此将其作为西瓜成熟度分类的声学特征参数。
最适配辨瓜算法:LS-SVM
试验结果表明,LS-SVM 算法建模集和预测集的准确率分别为 76% 和 73.6%,均高于其他三种分类器的分类结果。
三种不同成熟度西瓜的 LS-SVM 分类结果
另外,神经网络建模集和预测集准确率分别 73.3% 和 66.6%,仅次于 LS-SVM。
作者由此得出结论:LS-SVM 采用了线性方程组对 SVM 的二次规划问题加以简化,分类效率得到大幅度提高,并且引入惩罚因子使结构风险化最小。该方法更适用于处理小样本集合不均衡样本集不均衡西瓜样本集的分类;
而 LDA 算法适用于线性分类问题;KNN 算法对不均衡样本集分类时,易使位置样本偏向数量多的样本类,造成分类误差变大;神经网络分类器则存在过拟合、易陷入局部极值的缺点。
此外,作者还采用了上述四类方法以及能量比经验阈值法,以 MI1、MI2 和能量比 Er为特征参数,对不均衡样本进行空心瓜判别。
作者采用 Fβ 分数作为分类器的评价指标,其物理含义是通过给予准确率和召回率不同的权重,将二者合并一个分数,综合评判分类器对样本总体和某类样本分类的准确程度。
Fβ 的定义
定义公式中,TP 为被正确划分为空心瓜的样本数,TN 为被正确划分为好瓜的样本数,P 为实际的空心瓜样本数,N 为实际的好瓜样本数。本文中 β = 2.
这些判别方法中,仍然是 LS-SVM 分类效果最佳,其建模集和预测集的 Fβ 分数分别为 88.1% 和 74.7%。
看来,关于如何挑到最甜的瓜,浙大博士已经帮我们算得清清楚楚了。
上千年的积累之下,西瓜已经越来越成为国人生活中的一部分。所谓「夏天没有吃过西瓜的人,不足以语人生。」
如今非常流行的网络热词「吃瓜群众」,也充分显示了我们对于西瓜的热爱。原本「吃瓜群众」中的「瓜」,指的是瓜子,但是由于西瓜的深入民心,这个「瓜」就渐渐演变成了「西瓜」。
而对于人工智能领域的同学来说,最熟悉的「瓜」一定是南大周志华教授撰写的《机器学习》西瓜书了。
日本 Shibuya 公司的挑西瓜设备,下次大家可以带着它去买瓜
(*本文为 AI科技大本营转载文章,转载请联系作者)
社群福利
扫码添加小助手,回复:大会,加入2019 AI开发者大会福利群,每周一、三、五更新技术福利,还有不定期的抽奖活动~
◆
精彩推荐
◆

60+技术大咖与你相约 2019 AI ProCon!大会早鸟票已售罄,优惠票速抢进行中......2019 AI开发者大会将于9月6日-7日在北京举行,这一届AI开发者大会有哪些亮点?一线公司的大牛们都在关注什么?AI行业的风向是什么?2019 AI开发者大会,倾听大牛分享,聚焦技术实践,和万千开发者共成长。
推荐阅读
认知智能的突围:NLP、知识图谱是AI下一个“掘金地”?
自动驾驶激荡风云录:来自圈内人的冷眼解读
华人“霸榜”ACL最佳长短论文、杰出论文一作,华为、南理工等获奖
5G+AI重新定义生老病死
干货 | 20个Python教程,掌握时间序列的特征分析(附代码)
2019 年度程序员吸金榜:你排第几?
字节跳动入局全网搜索;思科回应中国区裁员;IntelliJ IDEA 新版发布! | 极客头条
AI+DevOps正当时
知名饮料制造商股价暴涨500%惊动FBI,只因在名字中加入了"区块链" ?

相关文章:

一些要注意的地方
1、tomcat启动一直保持在starting状态时,最简单的原因就是时间过短,将时间变长就可以了。若还不能解决时,还可能就是端口号被占用了。通过netstat -nao | findstr ""可以看到占用你所使用的端口号的进程id,然后通过tasklist | find…

NEON在Android中的使用举例
1、 打开Eclipse,File-->New-->AndroidApplication Project-->Application Name:Hello-Neon, Project Name: Hello-Neon,Package Name:com.hello_neon.android, Minimum Required SDK:API 9:Android 2.3(Gingerbread),Next-->去掉Create custom launch…

Android中的JSON详细总结
1、JSON(JavaScript Object Notation) 定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性。业内主流技术为其提供了完整的解决方案(有点类似于正则表达式,获得了当今大部分语言的支持),从…

新一届最强预训练模型上榜,出于BERT而胜于BERT
作者 | Facebook AI译者 | Lucy编辑 | Jane出品 | AI科技大本营(ID: rgznai100)【导读】预训练方法设计有不同的训练目标,包括语言建模、机器翻译以及遮蔽语言建模等。最近发表的许多论文都使用了微调模型,并预先训练了一些遮蔽语…

Ubuntu 32下Android NDK+NEON的配置过程及简单使用举例
1、 利用VMware在Windows7 64位下安装Ubuntu13.10 32位虚拟机; 2、 从 https://developer.android.com/tools/sdk/ndk/index.html下载android-ndk32-r10-linux-x86.tar.bz2; 3、 将android-ndk32-r10-linux-x86.tar.bz2拷贝到Ubuntu的/home/spring/NE…

Neon Intrinsics各函数介绍
#ifndef __ARM_NEON__ #error You must enable NEON instructions (e.g. -mfloat-abisoftfp -mfpuneon) to use arm_neon.h #endif/*(1)、正常指令:生成大小相同且类型通常与操作数向量相同的结果向量; (2)、长指令:对双字向量操作数执行运算…

ubuntu bind9 配置简单记录
ubuntu bind9 配置简单记录ubuntu版本:Ubuntu 12.04.2bind9安装:apt-get install bind9bind9配置文件目录:/etc/bindbind9主要配置文件:named.conf.local以及对应db配置1,主服务器配置:rootubuntu:/etc/bin…

不止最佳长论文,腾讯AI在ACL上还有这些NLP成果
编辑 | Jane出品 | AI科技大本营(ID:rgznai100)【导语】7 月 31 日晚,自然语言处理领域最大顶会 ACL 2019 公布了今年的八个论文奖项,其中最佳长论文的获奖者被来自中国科学院大学、中国科学院计算技术研究所、腾讯 We…

python中package机制的两种实现方式(转载)
当执行import module时,解释器会根据下面的搜索路径,搜索module1.py文件。 1) 当前工作目录 2) PYTHONPATH中的目录 3) Python安装目录 (/usr/local/lib/python) 事实上,模块搜索是在保存在sys.path这个全局变量中的目录列表中进行搜索。 sys…

Magento如何使用和设置CookieSession
2019独角兽企业重金招聘Python工程师标准>>> 给大家介绍两个Magento的核心对象-Mage_Core_Model_Cookie & Mage_Core_Model_Session 首先介绍Mage_Core_Model_Cookie,这个对象主要是用来设置Cookie的,里面主要下列方法&#x…

AI+DevOps正当时
随着业务复杂化和人员的增加,开发人员和运维人员逐渐演化成两个独立的部门,他们工作地点分离,工具链不同,业务目标也有差异,这使得他们之间出现一条鸿沟。而发布软件就是将一个软件想从鸿沟的这边送去那边,…

clientdataset 用法
影响ClientDataSet处理速度的一个因素TClientDataSet是Delphi开发数据库时一个非常好的控件。有很强大的功能。我常常用ClientDataSet做MemoryDataSet来使用。还可以将ClientDataSet的数据保存为XML,这样就可以做简单的本地数据库使用。还有很多功能就不多说了。在使…

用vs2010编译vigra静态库及简单使用举例
1、 从 http://ukoethe.github.io/vigra/ 下载最新源代码vigra-1.10.0-src-with-docu.tar.gz,并加压缩到D:\soft\vigra,生成vigra-1.10.0文件夹; 2、 从http://www.cmake.org/cmake/resources/software.html下载CMake并安装; …

39个超实用jQuery实例应用特效
2019独角兽企业重金招聘Python工程师标准>>> 1.Contextual Slideout:上下文滑动特效 2.Revealing Photo Slider:图片幻灯片特效 3.Fancy Box:魔幻盒 4.Scrollable:滚动特效 5.Flip:翻转特效,实现4个方向…

Android.mk和Application.mk文件语法规范说明及举例
以下英文内容摘自:http://www.kandroid.org/ndk/docs/OVERVIEW.html The Android NDK is a set of tools that allows Android application developers to embed native machine code compiled from C and/or C source files into their application packages.NDK d…

ASP.NET Web API实践系列06, 在ASP.NET MVC 4 基础上增加使用ASP.NET WEB API
本篇尝试在现有的ASP.NET MVC 4 项目上增加使用ASP.NET Web API。 新建项目,选择"ASP.NET MVC 4 Web应用程序"。 选择"基本"项目模版。 在Controllers文件夹下添加一个名称为"TestController"的空API控制器。 在引用文件夹中多了以下…

滴滴自动驾驶部门成立独立公司,CTO张博兼任新公司CEO
整理 | 夕颜出品 | AI科技大本营(ID:rgznai100)导读:8 月 5 日,滴滴出行官方微信公众号发文,宣布旗下自动驾驶部门升级为独立公司。目前,新成立公司的名称还未曝光,但据官方介绍将专注于自动驾驶…

在ASP.NET MVC下实现树形导航菜单
在需要处理很多分类以及导航的时候,树形导航菜单就比较适合。例如在汽车之家上: 页面主要分两部分,左边是导航菜单,右边显示对应的内容。现在,我们就在ASP.NET MVC 4 下临摹一个,如下: 实现的效…

mongodb学习笔记6--杂项与补充
2019独角兽企业重金招聘Python工程师标准>>> 1。适用场景:持久化缓存层,高效的时效性,用于对象和Json数据的存储,高伸缩性的场景,大尺寸,低价值的数据存储。 不适用:高度事务性的场景…

GraphSAGE:我寻思GCN也没我厉害!
作者 | 郭必扬来源 | SimpleAI(ID:SimpleAI_1)众所周知,2017年ICLR出产的GCN现在是多么地热门,仿佛自己就是图神经网络的名片。然而,在GCN的风头中,很多人忽略了GCN本身的巨大局限——Transductive Learnin…

CxImage的编译及简单使用举例
1、 从http://sourceforge.net/projects/cximage/下载最新的CxImage 702源码; 2、 解压缩后,以管理员身份打开CxImageFull_vc10.sln工程,在编译之前先将每个工程属性的Character Set由原先的Use Unicode Character Set改为Use Multi-ByteC…

如何使用好android的可访问性服务(Accessibility Services)
原文:http://android.eoe.cn/topic/android_sdk * 主题* Manifest声明和权限 可访问性服务声明 可访问性服务配置 AccessibilityService方法 获得事件细节 示例代码 主要的类*AccessibilityService AccessibilityServiceInfo AccessibilityEvent AccessibilityReco…

自动驾驶人的福音!Lyft公开Level 5部署平台Flexo细节
作者 | Mathias Gug等,Lyft Level 5 软件工程师译者 | Lucy编辑 | 夕颜出品 | AI科技大本营(ID:rgznai100)导读:经过一年半的 bootstrapping(一种再抽样统计方法),Lyft 让 Level 5 实现区分非常…

Cygwin的安装及在Android jni中的简单使用举例
Cygwin是一个在windows平台上运行的类UNIX模拟环境,是cygnussolutions公司开发的自由软件。Cygwin是许多自由软件的集合,Cygwin的主要目的是通过重新编译,将POSIX系统上的软件移植到Windows上。Cygwin包括了一套库,该库在win32系统…

university, school, college, department, institute的区别
这些个词没有太大区别,有时候有些词是可以通用的,而有些用法则是随着地域时间的不同而变迁。一般说来,college译作“学院”,它是university (综合性大学)的一个组成部分,例如,一所综…

XML简介及举例
可扩展标记语言(eXtensibleMarkup Language,简称XML),是一种标记语言。标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。如何定义这些标记,既可以选择国际通用的标记语言&#…

关于事务的传播特性和隔离级别的问题
REQUIRED:业务方法需要在一个事务中运行。如果方法运行时,已经处在一个事务中,那么加入到该事务,否则为自己创建一个新的事务。 NOT_SUPPORTED:声明方法不需要事务。如果方法没有关联到一个事务,容器不会为…

[Big Data - Kafka] kafka学习笔记:知识点整理
一、为什么需要消息系统 1.解耦: 允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。 2.冗余:消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险。许多消息队列所采用的&q…

自然语言处理十问!独家福利
最近,NLP 圈简直不要太热闹!预训练模型频频刷新榜单,让一众研究者、开发者“痛并快乐着”。自 2018 年 10 月,Google 提出 BERT 以来,NLP 领域预训练模型的发展仿佛坐上了火箭,完全控制不住。BERT 出世前&a…

BERT的成功是否依赖于虚假相关的统计线索?
作者 | 李理来源 | 个人博客导读:本文介绍论文Probing Neural Network Comprehension of Natural Language Arguments,讨论BERT在ACRT任务下的成绩是否依赖虚假的统计线索,同时分享一些个人对目前机器学习尤其是自然语言理解的看法。目录论文…