【数模百科】一篇文章告诉你如何进行数学建模信息检索

这篇干货文章,会分享给你最明确、直接的数学建模指南,帮助你解决在数学建模比赛的信息检索中不会搜、搜不对、搜不全的问题:

  1. 从海量数据中如何找寻有价值的信息?
  2. 如何区分信息的有效性,避免谬误信息?
  3. 面对海量的资料如何保持清晰的头脑,捕获所有对自己有用的信息?

一、信息选取的难点

在面对数学建模问题时,我们每个人都摩拳擦掌跃跃欲试。

然而有一部分人在数学模型上的理论知识是相对欠缺的,因此需要借助书籍、互联网进行信息检索。

大家既想要快速找到正确的解决路径,又希望能够高效利用信息资源,但面对如同星辰大海的网络信息,我们常常会无所适从。

这就导致了许多人受挫感加重,认为「没有方向」、「资料无序」、「不知道如何下手」。而这些困惑恰恰源于两个常见的信息处理误区:

1. 盲目搜集。很多人在数模比赛开始时,认为资料应当多多益善,于是在网上广泛搜罗信息。然而信息是需要成本的,浏览过多无关的内容不仅耗费了宝贵的时间,同时还增加了我们的心理负担,却不一定提高建模效率。

我们需要明白,互联网上的信息虽然大家都可以搜集到,但它却不是面向所有群体的,也就是说并不全部适用于数学建模参赛者。

有的帖子,包含了原理的一些重点,但是可能没讲清。
这是一段讲解SVM模型的内容:

【数模百科】一篇文章告诉你如何进行数学建模信息检索_第1张图片“超平面是一个点”——什么样的点?具有什么作用
“最优超平面是拥有最大边距的那个超平面”——“边距”是什么?
“我们将距离乘以2我们就可以得到间隔”——为什么要乘以2?

有的文章,用严谨的数学语言对算法推导过程进行讲解,但是对于非数学专业的参赛者来说,阅读并理解它是很困难的一件事情。
这是一段讲解最小二乘法的内容:

【数模百科】一篇文章告诉你如何进行数学建模信息检索_第2张图片

“变异”“相关性”“Lagrange乘数法”,大部分同学可能只是听过,却未曾深入了解过。而这篇文章将这些术语当做读者已经掌握的知识,没有单拎出来解释。

有的帖子,可能就只是对某项知识点进行杂乱的“拼凑”,导致可读性比较差。
这是一个讲解K-Means算法时附上的图片:

图片比较模糊,右下角还叠了好几层水印,可读性比较差。另外整篇文章的图片都是这种风格,包括代码的输出结果,因此大概可以判断,作者并没有真正运行过文章中的代码,文章也没有附上测试数据。

2. 偏见判断。另外一些人是带着主观预设去寻找信息,即便网络上的资料并不支持自己的模型构思也强行采用。
这种方式容易引导你陷入认知的误区,错失更合理的方向。

举个例子(该例子并不代表本文对马尔可夫链模型的观点),

小张:我们这次数学建模比赛的题目是预测未来一年的股票走势,我觉得我们可以用马尔可夫链模型来做。
小李:嗯,马尔可夫链模型确实是个不错的选择,但是我们需要找到合适的历史数据来支持模型的参数设定。
小张:我在网上找了一些资料,但是大部分的研究都说马尔可夫链模型在股票预测上的准确性并不高。
小李:那我们是不是应该考虑换个模型?比如说用机器学习的方法,可能会有更好的预测效果。
小张:不行,我已经花了很多时间研究马尔可夫链模型了,我们必须要用它。
小李:但是如果数据和研究都不支持我们的模型,那即便我们用了马尔可夫链,最后的结果可能也不会好。
小张:我不管,我相信马尔可夫链模型是可以的,我会继续找资料,总能找到支持我们观点的论文。
小李:我觉得我们应该面对现实,根据数据和研究结果来选择最合适的模型,这样才能提高我们的比赛成绩。
小张:不用了,我已经决定了,我们就用马尔可夫链模型。

在这个例子中,小张坚持使用马尔可夫链模型进行股票预测,即使大量的研究和数据都不支持这个方法,而小李则建议根据现实情况选择更合适的模型。小张的做法可能会导致他们错过更有效的模型和方法,从而影响比赛结果。

那怎么样才能在海量信息中找到真正有用的呢?下面我会给你提供一些清晰明确的方法。


二、分布筛选——「逐层深入」法

在处理数学建模所需要的信息时,不是所有数据都是用得到的。我们需要一种分层次深入的方法:

  1. 确定需求。明确你的建模目标是什么,不同的模型问题需要不同类型的数据。知道自己需要什么,可以减少很多不必要的搜索工作。

    举个例子。假如你参加的数学建模比赛要求你建立一个模型,预测未来一年某城市的房价走势。那你首先需要明确你的建模目标是什么,也就是你需要预测房价走势。那么你就需要收集和房价走势相关的数据,比如历史房价数据、经济增长数据、人口增长数据等等。

    如果你没明确你的建模目标,可能就会去搜索一些不相关的信息,比如房屋装修的价格、建筑材料的成本等等,这些数据虽然也跟房子有关,但跟你要预测的房价走势是没有直接关系的。这样就浪费了你很多时间去搜集不必要的信息。
  2. 初步筛选。利用关键词在可靠的数据库和相关的官方网站进行初步搜索。这样获取的信息相对集中,相关性也比在整个互联网中搜索要强。

    例如,

    wordbank数据集 可以获取世界各国的发展数据,有助于我们在经济、气候等问题中更好地研究。
    联合国官方统计数据 涵盖了全世界人口、教育、贸易等多方面统计数据。
    中国国家统计局的统计数据 涵盖了中国各地区人口、经济、财政等多方面数据。
  3. 严格审查。对初步筛选的信息进行详细的内容审查,比较不同来源的信息,判断其准确性和权威性,淘汰掉不可信的信息。

    搜索结果中很多帖子会表明“转载”,并附上原文链接,此时我们更需要查看的是原文的内容。

    还有一些帖子会表明引用来源,我们也需要去一一查看,判断其真实性和权威性。
  4. 反复验证。即便是看上去可靠的信息,也需要在你的模型框架下进行检验,看是否与你的模型预设相符合,是否真的有助于解题。

    例如,当我们搜到了关于某个模型的参考代码,我们可以先用文章的数据运行一下,看看运行结果是否与文章结论一致。再考虑是否可以应用于自己的模型框架。

通过逐步深入的方法,你可以更加科学地搜集、筛选、管理信息,有效地避免信息过载和解题方向错误。


三、应对策列三、应对策略——「双重过滤」技巧

即使我们已经学会了「逐层深入」法,文章接下来的内容,会进一步教你如何实施「双重过滤」,确保你的信息既全面又精准。

「双重过滤」可以理解为:

  1. 时间上的过滤——重视最新的研究和数据,但也不要忽视经典和代表性的工作。时效性和深度需要并重考量。

    这是因为有一些结论和方法可能会随着研究的深入而更新,如果在五年前我跟你谈人工智能,你可能想到的只是“人工智能自我意识觉醒随即毁灭地球”,但是现在你能想到很多,比如chatgpt和阿法狗。

    一些python的第三方库也是一直在更新的,有些过时的代码可能现在无法运行,当你无法跑通参考资料的代码时,一定要观察报错信息,然后去查看该代码的官方说明文档。

    一些建模比赛需要我们结合现实数据,时间过早的数据可能缺少参考价值。
  2. 空间上的过滤——从宏观到微观角度审视信息,及时剔除那些关联性不高的信息,专注于可以直接为你的模型服务的信息。

    例如有一些文章从模型的开发起源讲到了模型的原理以及优化,前面这段“开发起源”的历史对你的数学建模是没有帮助的,但是模型原理和优化值得好好阅读。

「双重过滤」主要有两个技巧:

  • 构建信息框架。建立你的信息框架,按照模型的需求分类整理信息,确保每条信息都能在框架中找到它的位置。
    例如我们在检索一个模型时,我们不仅仅是要了解它的原理,我们可能还需要了解它的模型假设、有什么专门的检验结果合理性准确性的方法以及参考的实现模型代码。

    当有了这个信息框架,我们可以更容易发现哪些信息是我们需要的,哪些信息是我们不需要的。

    同时,这也是整理信息的过程,希望你明白,数学建模是一项团队工作,你搜集到的信息需要分享给队友,这就要保证你的队友知道你所搜集的信息内容大概是什么。
  • 动态更新。随着模型的不断完善,你的信息框架也应该是动态更新的。遇到更好的信息源就及时替换,不断优化你的信息结构。

    可能你一开始在确定框架时,只是凭借自己对该模型的简单认知。但是如果你在检索信息时发现,xx模型其实对训练数据有特殊的要求,并且有特定的处理方法,你就需要更新你的信息框架,并且把这一部分重要内容加上去。

因此我建议,在每场比赛的一开始,每支队伍应该建立一个专属的在线文档,搭一个共同的信息框架,并且一起往里面填充内容。这样不仅可以保证队内有效的信息交流,也可以使资料更有条理,方便后续的查看以及应用。

通过运用这些策略,你就可以保持清晰的头脑,在数学建模的过程中而不至于被杂乱的信息拖垮。

当然,如果你还是不太明白怎么做,或者紧迫的比赛时间已经无法让你认真地进行信息检索和筛选,你也可以尝试浏览我们的数模百科

数模百科 - 数模百科

数模百科是一个由一群数模爱好者搭建的数学建模知识平台。我们想让大家只通过一个网站,就能解决自己在数学建模上的难题,把搜索和筛选的时间节省下来,投入到真正的学习当中。

我们团队目前正在努力为大家创建最好的信息集合,从用最简单易懂的话语和生动形象的例子帮助大家理解模型,到用科学严谨的语言讲解模型原理,再到提供参考代码。我们努力为数学建模的学习者和参赛者提供一站式学习平台,目前网站已上线,期待大家的反馈。

如果你想和我们的团队成员进行更深入的学习和交流,你可以通过公众号数模百科找到我们,我们会在这里发布更多资讯,也欢迎你来找我们唠嗑。

你可能感兴趣的:(数学建模,数据分析,机器学习,论文阅读,大数据)