中新网宁波7月16日电(记者 林波)7月16日,记者从浙江省宁波市象山县举行的全人工养殖小黄鱼发布会上获悉,经过七年技术攻关,当地实现小黄鱼大规模人工养殖,并计划于近期上市该新兴养殖品种。

发布会现场。林波 摄

养殖小黄鱼。林波 摄

那么什么样的集合是凸的集合?我们在集合里任意选两点X、Y,我们将这两点连成线,从X到Y的这条线上所有的点都必须在集合里,只有这样的集合才叫做凸的集合。

如果最速下降法需要100步的话,牛顿法就只需要10步,但也正因为牛顿法使用了二阶导的信息,所以它需要更多的运算量。

所以,通常求解这类问题时很困难,很多时候我们求解的都是一个局部最优值。在实际生活中,我们求解的都是局部优化的问题,而这类问题在所有问题中所占比例是非常非常低的。

在此大背景下,大力发展海水养殖和研发传统优良品种,助力产业高质量发展尤为重要。

然而,小黄鱼应激性非常强,捕捞的活体驯养难度大,为此小黄鱼人工养殖一直未能成功。

小黄鱼是中国重要的海产经济鱼类,与大黄鱼、乌贼、带鱼并称为“四大海产”,一直是中国捕捞业的重要捕捞对象。但由于海洋捕捞、海洋环境恶化的影响,当前小黄鱼种群捕捞过度、资源结构脆弱。

如果把整个集合看作一个优化问题的集合,那么相对来讲,比较小的一部分是属于连续优化的问题,其他更大的区域属于离散优化的问题,而在连续优化的空间里只有很小的一部分属于凸优化的问题。所以说,在最优化的领域里,我们真正解决的只是实际问题中的冰山一角。

最后一部分是深度学习。深度学习有很多层神经网络,这个算法在97年就已经被提出来了,但是之所以最近才会有非常大规模的应用,因为在算法上会有非常大的提高,我们可以通过GPU来进行加速运算。

最优化算法,源于生活高于生活,很多应用其实出现在我们每天的日常生活中,希望今天的演讲对大家有所帮助。谢谢大家。雷锋网雷锋网(公众号:雷锋网)雷锋网

那么,最速下降法是怎么做的呢?比如从一楼上二楼可以有多种方法,很明显我们从垂直方向往上跳,在局部来看是最快的,然后以这样的方法上到最高层。

最速下降法有哪些特点呢?每一步都做到了最优化,但很遗憾的是,对于整个算法而言,它并不是非常好的算法。因为它的收敛速度是线性收敛,线性收敛对于最优化算法而言是一种比较慢的算法,但也是凸优化里最自然的一个算法,最早被应用。

最优化问题的两大类:连续优化与离散优化

凸优化问题中的最优值

关于约束条件,理想很美好,现实很骨感,在现实生活中,我们会遇到比如预算有限、时间有限、外部强制性条件等各种各样的问题,与目标函数一样,这些限制条件不是单一存在的,也可能同时存在同一个问题里,对于某一个优化问题来讲,限制条件越复杂,求解就越困难。

人生不如意之事十之八九,想达到我们想要达到的目标时,通常都有各种各样的限制。那么所谓最优化问题,就是指用最优的方式去平衡理想与现实之间的关系。

第一个算法,最速下降法。首先,我们看下图,这是一个等高线,我们可以把它理解为我们的高楼,每一个圈代表一层,最中心是最高的位置,我们最终目标是用最快的方式上到中心位置。

最优化算法的高级应用

连续优化正如图上所画,线中间没有断点,而离散优化的变量取值,是一个不连续的记录,就如同一开始讲的邮差送信问题。

经过七年技术攻关,象山小黄鱼科研团队,实现了小黄鱼苗种从野生到全人工、从小试到稳步扩繁再到网箱养殖等突破,2019年育苗量达到105万尾,2020年育苗量超过200万尾,实现了网箱养殖中试,为小黄鱼养殖产业化奠定了基础。

所以,对于这一类问题,我们目前没有一个特别好的解决方法。现实生活中,我们会有比较多的方法去求局部最优值,而往往我们找到的几乎跟实际上的全局最优值不一样。

第一类是最大化,包括最大化盈利,最大化效率。另一类是最小化,包括最小化费用、时间和错误率。在金融行业,我们可以最大化预测股价的正确率,也可以最小化费用、最小化时间和错误率。

共轭梯度法最大特点是汲取前面的经验再做下一步的动作,比如从四楼上五楼,我们会考虑方向是否最佳,汲取之前跳过的四步经验,再探索新的方向往上跳。从数学的角度来讲,每一步前进的方向和之前所有走过的路径都是垂直的,因为这样的性质,共轭梯度法的收敛速度远远高于最速下降法。

记者了解到,人工繁育的小黄鱼具有适养范围广、养殖周期短、当年可上市、养殖风险低、耐低温性强等优点,适合浙江地区网箱越冬养殖,养殖推广潜力大。

但有一个问题是例外,这类问题它具有比较好的性质,只要找到局部最优值,它就肯定是全局最优值,这类问题就叫凸优化。

这个算法还有另外一个应用,人脸识别。看下图,这个图上是同一个人在做各种表情,甚至戴上墨镜,人脸识别通常会用在海关、捉拿罪犯。当我们原始输入的人脸有很多噪音时,它会通过最优化算法,将人脸画像出来,比如当输入的是戴有墨镜的人脸,算法会将墨镜和人脸分离开来。

看下图右侧,这是一个电梯口的监控录像,背景是静止的,而来来往往的人是动态的,通过最优化算法就可以将前景和背景分离出来。这项研究是在2009年由微软研究员的几名学者一起研究出来的。

象山因渔兴县,因港兴城,孕育了丰富的海洋渔业特色文化和大黄鱼、梭子蟹、紫菜、南美白对象等渔业特色产业。

浙江省农业农村厅联合该省10家单位于2019年印发了《关于加快推进水产养殖绿色发展实施意见》,就是要推动和鼓励养殖业健康蓬勃发展。

2014年5月,象山县水利和渔业局工作人员在象山石浦港三门口海域养殖区网箱内发现疑似小黄鱼苗种5000余尾,经生物学鉴定确认为小黄鱼。同年,象山县科技与水产技术推广部门与浙江小黄鱼科研团队合作,开展小黄鱼驯养、人工繁育、养殖等相关技术研究。

第一个应用叫压缩感知,首先我们把一个图去掉80%、90%的像素点,然后如何还原到原有的图片,这个问题看起来非常困难,但是在实际应用中,压缩感知的算法就有非常好的效果。与这个问题相关的,还有很多很优美的优化算法,比如稀疏优化,对偶加速算法、Lasso。

从目标函数出发,它的最优值也分为两类,局部最优和全局最优。我们看图中黄色的点,在局部区域内是最低的,我们管这个值叫做局部最优值,但是当我们看整个图时,红色的点才是最低的,所以这个点我们叫全局最优值。

“当前市场上能见到的小黄鱼都是来自海洋捕捞,捕捞上来的小黄鱼已呈现个体小型化、性早熟和低龄化等特征,过度捕捞导致小黄鱼自然种群处于衰减态势。”中国科学院院士、中国科学院水生生物研究所研究员桂建芳表示,开展全人工养殖是实现小黄鱼种质资源保护、满足市场消费需求的重要途径。

凸优化问题的经典算法

从学术角度而言,连续优化与离散优化对应的是两个比较独立的学科,离散优化可能更多的应用于统计、大数据相关的场景,连续优化则会跟计算机密码学相关,更多的与我们现实生活中的运筹优化应用相关。

两类相较而言,离散优化会更难解决,因为离散优化多了一条限制条件 — 不连续的集合。很多时候,我们要求我们的变量是一个整数,或者来自一个给定的区间,所以说离散优化会比连续优化更难解,而两种算法也会有非常大的不一样。

“全人工养殖小黄鱼技术突破新创举,标志着浙江省在海水养殖产业发展道路上迈出了新的一步。”浙江省海洋与渔业执法总队政委孙国荣表示,水产养殖业是浙江农业主导产业,是致富渔民、发展渔业产业的主阵地,也是推动渔业转型升级、高质量发展的关键领域。

在此次发布会上,浙江省农业科学院“象山小黄鱼科研合作基地”正式授牌。浙江省农业科学院副院长戚行江表示,希望通过这一稳定的院地合作机制,加强双方科技合作,推进小黄鱼全人工养殖向产业化大步迈进。

通常来说,取局部最优值是相较容易的,因为基本上你只需要看它临近一小部分的信息就可以准确判断是否局部最优,而在现实应用中,其实仅仅知道局部最优值就足以解决很多问题。而更难的问题在于全局最优值,因为前提是你需要看到整个画面。

以简单的邮差送信问题为例,邮差从A出发,送信到BCD,最后回到A。邮差每天必须经过BCD,而且每个点每天只能经过一次,在这样的约束条件下,他的目标函数是尽可能以最短的时间完成送信。这个问题非常简单,只要把所有的路径枚举出来,然后取最短时间的方式即可。

桂建芳表示,小黄鱼作为新兴养殖种类,还存在一些难题需要重点攻关,“小黄鱼亲本培育问题、小黄鱼养殖病害问题,此外小黄鱼人工养殖还缺乏相关技术标准,建议小黄鱼团队加紧制订小黄鱼苗种繁育、人工养殖、病害防治等系列技术标准,加快推进小黄鱼产业发展进程。”(完)

基于此,我们简单根据它的约束条件以及目标函数变量类型将最优化问题分成两大类,连续优化和离散优化。

它是通过当前一阶导数的信息去近似二阶导数的信息,因此整个运算速度大幅度增加。由于这个算法是四个人几乎同一时间发现的,所以也叫BFGS算法。下图中的照片是他们四个人聚在普林斯顿时拍的,很幸运的是,Goldfarb是我博士时期的导师。

所以说,对于所有的离散优化而言,它都不是凸优化的,因为它的取值其实不是一个空间,而是一个洞一个洞的,它是很多洞的集合。

2014年起,浙江省委、省政府就启动了以“打击非法产能、压减规内产能,引导退捕转产,加强资源养护,推动生态修复”为主要内容的浙江省渔场修复振兴暨“一打三整治”行动。

最优化问题及基础应用

“此次全人工养殖技术成功突破,必将为带动沿海渔区渔民增收、加快渔业经济转型升级带来非凡现实意义。”孙国荣如是说道。

雷锋网原创文章,。详情见转载须知。

凸优化的关键字在“凸”,我们要定义什么样的东西是凸的呢?看上图,蓝色区域代表优化问题里变量可以取值的空间,当取值空间是凸的时候,这是凸优化的一个必要条件。

另外,我们在优化算法上也有了非常好的进展。其相关的优化算法是随机优化,顾名思义,它不会优化所有的变量、所有的样本,而是随机挑选一个或者几个样本进行优化,然后在不需要看完整样本的情况下就可以有非常好的效果,可以大规模的提高模型训练速度。

第四个算法,拟牛顿法。1970年,Broyden、Fletcher、Goldfarb、Shanno四人几乎同一时间发表了论文,对于传统的牛顿法进行了非常好的改进,这个算法叫拟牛顿法,它的收敛速度与牛顿法相似,但是它不再需要计算二阶导数,所以每一步的迭代速度大大增加。

根据前面的例子,我们严格的将目标函数分为两大类。

第二个算法,共轭梯度法。与最速下降法相比较(看下图),绿色的线是最速下降法的迭代,从最外层到中心点可能需要五步迭代,但是共轭梯度法可能只需两步迭代(红色线)。

对于凸优化的问题,黄铂博士给大家介绍几个最经典的算法。

随着这些年大数据与人工智能的发展,最优化的算法也随之进一步发展,接下来几个应用可能更有意思。

相反,如果有任意一个点在集合之外,那就不是凸的集合。而对于一个凸优化的问题而言,它所有的变量取值必须来自于凸的集合。

实际生活中,被应用最广的两种算法,一个是BFGS,另一个就是共轭梯度法。这两种算法经常会出现在很多的程序包里或者开源代码里,如果使用在大规模的优化问题或者成千上万个变量的问题中,也会有非常好的效果。

相比前面两种算法,牛顿法的每一步,它在决定下一步怎么走时,不仅考虑当前的下降速度是否足够快,还会考虑走完这一步后,下一步坡度是否更陡,下一步是否更难走。可见,牛顿法所看到的区间会更远,收敛速度更快,属于二阶收敛速度。

同样的算法可以应用在背景分离,比如我们想要一张非常美的海景,但是又不想要太多人在这个照片上,那么就可以通过这个算法将人物和背景分离开。

第三个算法,牛顿法。前面两种算法,从数学的角度讲,他们只用到了一阶导数的信息,对于牛顿法而言,它不仅仅用到了局部一阶导的信息,还用到了二阶导的信息。

当然,我们可以同时最大化盈利,最小化费用和时间。所以通常在很多的优化问题中,这两种任务可以组合起来出现在同一个问题框架下,这就是对于目标函数的定义。