当前位置: 首页 > news >正文

为什么相关性不是因果关系?人工智能中的因果推理探秘

目录

一、背景

(一)聚焦当下人工智能

(二)基于关联框架的人工智能

(三)基于因果框架的人工智能

二、因果推理的基本理论

(一)因果推理基本范式:因果模型(Structure Causal Model)

(二)因果推理基本范式:潜在结果框架(Potential Outcome Framework)

三、因果发现和问题定义

四、总结

参考来源


干货分享,感谢您的阅读!

在科技飞速发展的今天,人工智能如同一位具有超能力的魔法师,能够在医疗、金融和司法等领域施展其魅力。然而,随着魔法的展开,潜藏在其背后的风险与挑战也开始逐渐浮出水面。你可能会想:人工智能难道也会搞砸事情吗?当然了!谁会想到一台超级智能的机器在给你做出“该不该吃这块蛋糕”的判断时,会毫不犹豫地告诉你:“你的身材和这块蛋糕不太合适,还是放弃吧!”

但这些问题可不仅仅是关于甜品的选择。随着法规日益严格,人工智能在互联网世界的表现受到了前所未有的关注,许多企业和用户都开始感到“它懂我吗?”“它真的可以信任吗?”诸如此类的问题层出不穷。在这个信息过载的时代,我们常常陷入了“只知其然,不知其所以然”的怪圈。我们知道这套系统给出的预测有时候非常靠谱,但却不知它背后的逻辑是什么。

所以,今天我们要一起探讨的是如何更好地理解因果推理,摆脱那些让人晕头转向的关联模型,进入一个因果关系的清晰世界。我们将揭秘因果推理的基本理论、方法和现实应用,努力让你在面对人工智能时,能够更像一位聪明的魔法师,而不是无助的小白鼠。准备好了吗?让我们一起启程,踏上这场充满趣味与挑战的因果之旅吧!

一、背景

(一)聚焦当下人工智能

未来十到二十年,人工智能技术将深入应用于医疗、司法、生产和金融科技等领域,但伴随而来的是日益增多的风险和挑战。长期以来,人工智能主要在互联网领域发展,但随着法律法规的出台,互联网平台逐渐处于监管的风口浪尖,引起了对潜在风险的关注。因此,人们迫切需要关注人工智能技术所带来的风险。

当我们面对人工智能风险的防控时,往往陷入了「只知其然,不知其所以然」的困境。虽然我们能够进行预测,但很难解释为何要做出某些决策,以及何时应该相信系统的判断。这种情况带来了一系列问题:

问题描述示例
不可解释性人工智能系统难以解释其决策的逻辑,限制了人机协同。在医疗行业,医生不清楚系统判断的依据。
数据分布不匹配主流人工智能方法要求训练数据和测试数据来自相同的分布,实际应用中难以保证。模型在不同数据分布下性能下降。
公平性风险人工智能技术可能引入公平性问题,如对不同背景的人做出不公平的判断。系统判断黑人犯罪率高于白人。
不可回溯性人工智能系统的推理和预测过程通常是不可回溯的,难以调整输入获取所需输出。无法理解系统决策的逻辑。

综上所述,解决人工智能风险需要系统化的方法。这包括发展可解释性的人工智能模型,研究数据分布适应性和领域自适应学习方法,制定公平性指标和约束,并提高系统的可调节性和可控性。只有这样,我们才能更好地应对人工智能技术所带来的风险,实现其安全、可靠地应用于各个领域。

(二)基于关联框架的人工智能

基于关联的框架是指通过观察数据中的相关性来推断变量之间的关系,而基于因果的框架则更注重确定某个变量是否直接导致了结果的变化。

基于关联的框架可能会错误地得出肤色和犯罪率之间存在强关联关系,因为黑人的收入普遍较低,而整体犯罪率也较高。然而,基于因果的框架更加谨慎地考虑了其他可能因素的影响,例如收入水平。通过在两组对照组中控制收入水平的情况下比较黑人和白人的犯罪率,我们可以更准确地判断肤色是否直接导致了犯罪率的差异。在基于关联的框架中,由于未能控制其他可能影响结果的因素,因此可能会产生偏差和误导性的结论。

注意:问题并不在于关联模型本身,而在于如何正确地使用机器学习方法。您指出了关联的三种产生方式:因果机制、混淆效应和样本选择偏差,其中只有因果机制产生的关联是稳定、可解释且可回溯的。

在现实世界中,确实存在许多数据相关性,但并不意味着这些关联就是因果关系。混淆效应和样本选择偏差可能会导致虚假关联,从而影响机器学习模型的性能和可靠性。

(三)基于因果框架的人工智能

从根本上突破当前机器学习的局限性,可能需要使用更严格的统计逻辑,如因果统计,来替代原来的关联统计。这种方法可能会面临一些挑战,因为因果推理主要应用于小数据控制环境下的统计研究,而机器学习往往涉及到大数据环境,其中数据的产生过程是不可控的。

在传统的因果推理框架中,我们通常能够控制数据的产生过程,从而更好地理解因果关系。例如,在一个行为学实验中,研究人员可以控制谁接受了疫苗,谁没有接受,以便推断疫苗的有效性。然而,在大数据的观测研究中,数据的产生过程是不可知的,这给因果推理带来了挑战。

此外,因果推理和机器学习的目标也存在差异。因果推理更注重理解数据产生的机制,而机器学习主要关注预测未来事件的发生。因此,在将因果推理应用于机器学习时,我们需要考虑如何适应大数据环境的特点,并调整方法以解决因果推理和机器学习之间的目标差异。

以下是一套方法体系,旨在解决这个问题:

  • 识别因果结构:在大规模数据中识别出因果结构是首要任务。这可能涉及到利用因果推断方法来确定变量之间的因果关系,包括因果图、因果图模型等技术。这可以帮助我们理解数据生成的机制,并揭示潜在的因果关系。
  • 因果启发的学习模型:一旦识别出因果结构,就需要将这些信息与机器学习模型进行融合。因果启发的学习模型旨在结合因果推断和机器学习方法,以提高模型的解释性、稳定性和准确性。这可能涉及到开发新的机器学习算法,考虑因果关系的约束和先验知识,以及设计适用于大规模数据的因果推断方法。
  • 设计决策机制:最终目标是利用识别出的因果结构来优化决策过程。这包括反事实推理和决策优化机制,以利用因果关系对决策进行指导和优化。这可能涉及到开发基于因果推断的决策模型,考虑潜在的因果效应并设计相应的决策策略。

通过以上方法体系,可以更好地利用因果推理的思想来指导机器学习模型的发展和应用,从而提高模型的解释性、稳定性和决策效果。这需要跨学科的合作和持续的研究努力,以解决因果推理和机器学习之间的鸿沟,并为实现智能决策系统的发展奠定基础。

二、因果推理的基本理论

(一)因果推理基本范式:因果模型(Structure Causal Model)

核心是在已知的因果图中进行推理,包括识别变量之间的因果关系以及影响程度的估计。目前已有一些成熟的方法和准则,如后门准则、前门准则等,用于处理混淆和进行因果估计。

然而,这种方法面临着一个核心问题,即在观测研究中无法定义完整的因果图。尽管在某些领域(如考古学)中可以通过专家知识来定义因果图,但这种方法可能会重蹈“专家系统”的老路,即过于依赖领域专家的主观判断,可能导致模型的局限性和不确定性。

在因果推理中,核心问题确实是如何有效地发现因果结构。因果结构的发现对于正确理解数据生成的机制、推断因果关系以及做出有效的决策至关重要。发现因果结构的挑战在于,它不仅需要考虑变量之间的关联性,还需要考虑因果关系的方向性和因果链条的复杂性。尤其是在大规模数据和高维度数据的情况下,因果结构的发现变得更加困难。

目前,针对因果结构的发现,有一些方法和技术正在不断发展和完善,包括基于因果图的方法、因果关系的因果发现算法、数据驱动的因果推断方法等。这些方法旨在从数据中推断出变量之间的因果关系,并构建因果图模型,以帮助我们更好地理解数据生成的机制和推断因果关系。

但是,尽管已经取得了一些进展,但在复杂的真实世界数据中,仍然存在许多挑战和困难。因此,继续研究和开发新的方法和技术,以更好地发现因果结构,并将其应用于实际问题中,是当前因果推理领域的重要任务之一。

(二)因果推理基本范式:潜在结果框架(Potential Outcome Framework)

潜在结果框架(Potential Outcome Framework)是因果推理的另一个重要范式,其核心思想是不需要了解所有变量的因果结构,而是关注某个特定变量对输出的因果影响,这个变量通常被称为处理(Treatment)或暴露(Exposure)。在这个框架下,我们假设了每个个体都有多个潜在结果,其结果取决于是否接受处理。然而,我们只能观测到其中一种结果,这称为个体的观测结果(Observed Outcome)。

在潜在结果框架中,我们需要考虑干扰因素(Confounders),这些因素可能影响处理和结果之间的关系,而且通常是我们无法控制的。为了准确估计处理对结果的因果效应,我们需要假设已经观测到了所有的干扰因素,并且可以通过统计方法进行控制。

总体来说,潜在结果框架提供了一种简化因果推理的方法,特别是在处理因果关系的复杂性和观测限制时。通过关注处理对输出的直接影响,并控制潜在的干扰因素,我们可以更好地理解处理对结果的因果效应。

三、因果发现和问题定义

因果发现的定义是对于给定的一组样本,其中每个样本都由一些变量去表征,我们希望通过一些可观测数据去找到这些变量之间的因果结构。找到的因果图,可以认为是一个图模型,从生成式模型的角度来讲,我们希望找到一个因果图,使得它能够按照其中的因果结构去生成这样的一组样本,而且这组样本的似然性是最高的。

简而言之,因果发现的目标是通过观测数据找出变量之间的因果关系,并用图模型来表示这些关系。这样的因果图能够最好地解释数据的生成过程,即在给定因果结构下生成观测数据的概率最大。因此,因果发现旨在寻找一个最佳的因果图模型,使其能够最好地解释观测数据并揭示变量之间的因果关系。

这里引入因果推理中的一个重要概念Functional Causal Models (FCMs) ,它描述了变量之间的因果关系如何通过函数关系来实现。在一个有向无环图 (DAG) 中,每个变量都有其父节点,其值可以通过父节点和一个函数的作用再加上噪声来生成。

在线性框架下,这个问题可以转化为如何找到一组参数(通常表示为W),使得对于某个特定变量X的重构最为准确。换句话说,我们希望找到一组参数W,通过线性函数关系将X与其父节点之间的关系建模,以最优地重构X的值。

因此,Functional Causal Models 提供了一种将因果关系转化为函数关系的方法,通过寻找合适的函数和参数,可以更好地理解变量之间的因果关系,并进行因果推断和预测。

有向无环图的优化一直是一个开放性问题,2018年的一篇论文[Zheng, Xun, Bryon Aragam,Pradeep K. Ravikumar, and Eric P. Xing. DAGs with NO TEARS: Continuous Optimization for Structure Learning. Advances in Neural Information Processing Systems 31 (2018).]提出来了一个优化方法:可以在全空间的有向无环图内去做梯度优化,通过增加DAG限制和稀疏限制(l1或l2正则),使得最终X的重构误差最小。

四、总结

在这篇文章中,我们深入探讨了因果推理在人工智能领域中的重要性及其应用。从背景分析到基本理论,再到因果发现的挑战,我们逐步揭示了如何在海量数据中准确识别因果关系,并如何在复杂的现实世界中应用这些理论。

随着人工智能技术的迅速发展,单靠简单的相关性分析已无法满足我们对解释性和可控性的需求。因果推理为我们提供了一种更为严谨的方法,让我们能够理解因果关系背后的机制。这不仅有助于我们建立更为可信和可靠的人工智能系统,也为决策过程提供了重要的依据。

然而,因果推理在大数据环境下仍面临许多挑战,如数据的复杂性和不确定性,以及如何有效地发现和建模因果结构。因此,继续研究和发展因果推理方法与技术,将为我们在人工智能应用中的风险防控提供更为坚实的基础。

总之,因果推理不仅是理解和改进人工智能的关键,更是实现其安全、可靠应用的基石。随着我们不断探索这一领域的深度与广度,我们期待未来的智能决策系统能够以更高的水平为人类社会的可持续发展做出贡献。希望这篇文章能够激发读者对因果推理的思考,并在未来的实践中取得丰硕成果。

参考来源

美团内部讲座 | 清华大学崔鹏:因果启发的学习、推断和决策 - 美团技术团队

"Weapons of Math Destruction: How Big Data Increases Inequality and Threatens Democracy" by Cathy O'Neil: 探讨了人工智能和大数据时代所带来的社会风险,尤其关注了公平性和不可解释性问题。

"Artificial Unintelligence: How Computers Misunderstand the World" by Meredith Broussard: 作者从技术、文化和社会角度讨论了人工智能系统的局限性和风险,强调了数据质量、算法偏见等问题。

"The AI Does Not Hate You: Superintelligence, Rationality and the Race to Save the World" by Tom Chivers (Essay Collection): 这是一系列关于人工智能和超级智能的短文集,涵盖了伦理、公平性、不确定性等议题。

"Fairness and Abstraction in Sociotechnical Systems" by Timnit Gebru et al. (Research Paper): 这篇论文探讨了人工智能系统中公平性的概念和实现方法,提出了一些解决方案。

"The Malicious Use of Artificial Intelligence: Forecasting, Prevention, and Mitigation" (2018) by Future of Humanity Institute, University of Oxford: 这份报告涵盖了人工智能可能被恶意利用的各种情景,包括隐私侵犯、信息战等,提出了一些防范措施。

"Ethics and Governance of Artificial Intelligence: Evidence to the UK Parliament" (2017) by The Royal Society and The British Academy: 这份报告探讨了人工智能的伦理和治理问题,提出了一些建议和指导原则。

因果推断在机器学习中的实践前沿方向 - 知乎

Zheng, Xun, Bryon Aragam,Pradeep K. Ravikumar, and Eric P. Xing. DAGs with NO TEARS: Continuous Optimization for Structure Learning. Advances in Neural Information Processing Systems 31 (2018).

Yue He, Peng Cui, et al. DARING: Differentiable Causal Discovery with Residual Independence. KDD, 2021.

Yue He, Zimu Wang, Peng Cui, Hao Zou, Yafeng Zhang, Qiang Cui, Yong Jiang. CausPref: Causal Preference Learning for Out-of-Distribution Recommendation. The WebConf, 2022.

Zheyan Shen, Jiashuo Liu, Yue He, Xingxuan Zhang, Renzhe Xu, Han Yu, Peng Cui. Towards Out-Of-Distribution Generalization: A Survey. arxiv, 2021.

相关文章:

为什么相关性不是因果关系?人工智能中的因果推理探秘

目录 一、背景 (一)聚焦当下人工智能 (二)基于关联框架的人工智能 (三)基于因果框架的人工智能 二、因果推理的基本理论 (一)因果推理基本范式:因果模型&#xff0…...

【QT】已解决:Qt4.11.0无法使用MSVC编译器问题

目录 一、背景 1.本机环境 2.问题描述 3.问题解决前后对比图 二、详细操作 1.下载项目二所需qt环境 2.解决思路 3.安装VS2017 4.安装MSVC调试器 5.打开qtCreator查看编译器 5.编译运行项目二 三、参考 一、背景 1.本机环境 windows11 qtCreator4.11.0 minGW 64位…...

python如何解析word文件格式(.docx)

python如何解析word文件格式(.docx) .docx文件遵从开源的“Office Open XML标准”,这意味着我们能用python的文本操作对它进行操作(实际上PPT和Excel也是)。而且这并不是重复造轮子,因为市面上操作.docx的…...

点云目标检测训练数据预处理---平面拟合与坐标转换(python实现)

在做centerpoint训练之前,需要先对点云数据进行标注,然后制作kittti数据集。不用nuScenes或者waymo数据集的理由也很简单,因为麻烦,没有kitti数据集直观。 kitti数据集的格式如下,可以看到数据集中只有航向角&#xff…...

Debezium日常分享系列之:对于从Oracle数据库进行快照的性能优化

Debezium日常分享系列之:对于从Oracle数据库进行快照的性能优化 源数据库Kafka Connect监控测试结果 源数据库 Oracle 19c,本地,CDB数据库主机的I/O带宽为6 GB/s,由此主机上运行的所有数据库共享临时表空间由42个文件组成&#x…...

logback日志自定义占位符

前言 在大型系统运维中,很大程度上是需要依赖日志的。在java大型web工程中,一般都会使用slf4jlogback这一个组合来实现日志的管理。 logback中很多现成的占位符可以可以直接使用,比如线程号【%t】、时间【%d】、日志等级【%p】,…...

【Red Hat8】:搭建FTP服务器

目录 一、匿名FTP访问 1、新建挂载文件 2、挂载 3、关闭防火墙 4、搭建yum源 5、安装VSFTPD 6、 打开配置文件 7、设置配置文件如下几个参数 8、重启vsftpd服务 9、进入图形化界面配置网络 10、查看IP地址 11、安装ftp服务 12、遇到拒绝连接 13、测试 二、本地…...

华为AI培训-NLP实验

中文分词、命名实体识别、语义词性标注、语句逻辑推理、文本摘要、机器翻译、文本情感分析、内容创作 1 实验介绍 1.1 实验背景 中文分词、命名实体识别、语义词性标注、语句逻辑推理是自然语言处理领域中的重要任务。中文分词是将连续的汉字序列切分成有意义的词语序列…...

goodreads书籍评论爬取NRC Emotion Lexicon分析

文章目录 目标网站数据获取评论情感分析对爬虫、逆向感兴趣的同学可以查看文章,一对一小班教学:https://blog.csdn.net/weixin_35770067/article/details/142514698 目标网站 https://www.goodreads.com/book/show/3656.The_Sea 就是针对一本书进行3000+评论抓取和情感分析…...

【vitePress】基于github快速添加评论功能(giscus)

一.添加评论插件 使用giscus来做vitepress 的评论模块,使用也非常的简单,具体可以参考:giscus 文档,首先安装giscus npm i giscus/vue 二.giscus操作 打开giscus 文档,如下图所示,填入你的 github 用户…...

论文笔记(六十二)Diffusion Reward Learning Rewards via Conditional Video Diffusion

Diffusion Reward Learning Rewards via Conditional Video Diffusion 文章概括摘要1 引言2 相关工作3 前言4 方法4.1 基于扩散模型的专家视频建模4.2 条件熵作为奖励4.3 训练细节 5 实验5.1 实验设置5.2 主要结果5.3 零样本奖励泛化5.4 真实机器人评估5.5 消融研究 6 结论 文章…...

电梯系统的UML文档07

从这个类中得到的类图,构划出了软件的大部分设计。 系统结构视图提供软件和整个系统结构最复杂的也是最优雅的描述。和通常的软件系统相比,在分布式嵌入系统中了解系统组件如何协同工作是非常重要的。毕竟,每个类图仅仅是一个系统的静态设计…...

【Python】综合案例--人生重开模拟器

1. 设置初始属性 在游戏中我们设定四个属性.: 颜值 (face) 体质 (strong) 智力 (iq) 家境 (home)我们约定每个属性的范围为 [1, 10], 并且总和不能超过 20. 如果玩家输入的初始属性不合理, 就提示输入有误, 重新输入. print("-----------------------------------------…...

vue+高德API搭建前端3D交通页面

1. 模板部分 (<template>) <template><div class"content"><div><div id"container"></div></div></div> </template> 功能&#xff1a;定义了组件的HTML结构。分析&#xff1a; div.content 是最…...

2024年博客之星主题创作|猫头虎分享AI技术洞察:2025年AI发展趋势前瞻与展望

2025年AI发展趋势前瞻&#xff1a;猫头虎深度解析未来科技与商业机遇 摘要 2024年&#xff0c;AI技术迎来爆发式增长&#xff0c;AIGC、智能体、AIRPA、AI搜索、推理模型等技术不断突破&#xff0c;AI应用场景持续扩展。2025年&#xff0c;AI将进入全新发展阶段&#xff0c;W…...

算法刷题笔记——图论篇

这里写目录标题 理论基础图的基本概念图的种类度 连通性连通图强连通图连通分量强连通分量 图的构造邻接矩阵邻接表 图的遍历方式 深度优先搜索理论基础dfs 与 bfs 区别dfs 搜索过程深搜三部曲所有可达路径广度优先搜索理论基础广搜的使用场景广搜的过程 岛屿数量孤岛的总面积沉…...

虚幻基础-1:cpu挑选(14600kf)

能帮到你的话&#xff0c;就给个赞吧 &#x1f618; 文章目录 ue非常吃cpu拉满主频打开项目编写蓝图运行原因 时间长 关于压力测试 本文以14600kf为例&#xff0c;双12购入&#xff0c;7月份产。 ue非常吃cpu 经本人测试&#xff0c;ue是非常吃cpu的。 拉满主频 无论任何时间…...

IP地址:127.0.0.1

概述 首先&#xff0c;我们需要明确 127.0.0.1 地址的含义。在网络中&#xff0c;127.0.0.1 地址称为本地回环地址&#xff0c;是一种特殊的网络地址&#xff0c;用于让单独的计算机进行自我回路测试和通信。这个地址在 IP 协议中被定义为环回地址。 在网络设备中&#xff0c…...

深度学习 | pytorch + torchvision + python 版本对应及环境安装

Hi&#xff0c;大家好&#xff0c;我是半亩花海。要让一个基于 torch 框架开发的深度学习模型正确运行起来&#xff0c;配置环境是个重要的问题&#xff0c;本文介绍了 pytorch、torchvision、torchaudio 及 python 的对应版本以及环境安装的相关流程。 目录 一、版本对应 二…...

学习ASP.NET Core的身份认证(基于JwtBearer的身份认证6)

重新创建WebApi项目&#xff0c;安装Microsoft.AspNetCore.Authentication.JwtBearer包&#xff0c;将之前JwtBearer测试项目中的初始化函数&#xff0c;jwt配置类、token生成类全部挪到项目中。   重新编写login函数&#xff0c;之前测试Cookie和Session认证时用的函数适合m…...

企业级流程架构设计思路-基于价值链的流程架构

获取更多企业流程资料 纸上得来终觉浅&#xff0c;绝知此事要躬行 一.企业流程分级规则定义 1.流程分类分级的总体原则 2.完整的流程体系需要体现出流程的分类分级 03.通用的流程分级方法 04.流程分级的标准 二.企业流程架构设计原则 1.流程架构设计原则 流程框架是流程体…...

深度学习 DAY2:Transformer(一部分)

前言 Transformer是一种用于自然语言处理&#xff08;NLP&#xff09;和其他序列到序列&#xff08;sequence-to-sequence&#xff09;任务的深度学习模型架构&#xff0c;它在2017年由Vaswani等人首次提出。Transformer架构引入了自注意力机制&#xff08;self-attention mech…...

【2025】拥抱未来 砥砺前行

2024是怎样的一年 2024在历史画卷上是波澜壮阔的一年&#xff0c;人工智能的浪潮来临&#xff0c;涌现出无数国产大模型。 22年11月ChatGPT发布&#xff0c;它的出现如同在平静湖面上投下一颗巨石&#xff0c;激起了层层波澜&#xff0c;短短五天用户数就达到了100万&#xff0…...

精选100+套HTML可视化大屏模板源码素材

大屏数据可视化以大屏为主要展示载体的数据可视化设计。 “大面积、炫酷动效、丰富色彩”&#xff0c;大屏易在观感上给人留下震撼印象&#xff0c;便于营造某些独特氛围、打造仪式感。 原本看不见的数据可视化后&#xff0c;便能调动人的情绪、引发人的共鸣。 使用方法&…...

欧拉(Euler 22.03)安装ProxySQL

下载离线安装包 proxysql-2.0.8-1-centos7.x86_64.rpm 链接: https://pan.baidu.com/s/1R-SJiVUEu24oNnPFlm9wRw 提取码: sa2w离线安装proxysql yum localinstall -y proxysql-2.0.8-1-centos7.x86_64.rpm 启动proxysql并检查状态 systemctl start proxysql 启动proxysql syste…...

Electron实践继续

文章目录 前言一、知识储备前提二、开发工具集&#xff08;一&#xff09;代码编辑器之选&#xff08;二&#xff09;命令行工具运用&#xff08;三&#xff09;Git 与 GitHub 协作利器&#xff08;四&#xff09;Node.js 与 npm 核心环境 你的第一个Electron应用程序 前言 上…...

【STM32-学习笔记-11-】RTC实时时钟

文章目录 RTC实时时钟一、RTC简介二、RTC框图三、RTC基本结构四、RTC操作注意事项五、RTC函数六、配置RTCMyRTC.c 七、示例&#xff1a;实时时钟①、main.c②、MyRTC.c③、MyRTC.h RTC实时时钟 一、RTC简介 RTC&#xff08;Real Time Clock&#xff09;实时时钟 RTC是一个独立…...

使用ffmpeg提高mp4压缩比,减小文件体积【windows+ffmpeg+batch脚本】

文章目录 关于前情提要FFmpeg是什么使用脚本运行FFmpeg首先&#xff0c;下载ffmpeg.exe然后在视频相同位置写一个bat脚本运行压缩脚本 关于 个人博客&#xff0c;里面偶尔更新&#xff0c;最近比较忙。发一些总结的帖子和思考。 江湖有缘相见&#x1f91d;。如果读者想和我交…...

PostgreSQL-01-入门篇-简介

文章目录 1. PostgreSQL是什么?2. PostgreSQL 历史 2.1. 伯克利 POSTGRES 项目2.2. Postgres952.3. PostgreSQL来了 3. PostgreSQL vs MySQL4. 安装 4.1 Windows 安装4.2 linux 安装4.3 docker安装 1. PostgreSQL是什么 PostgreSQL 是一个基于加州大学伯克利分校计算机系开…...

虚拟专用网VPN的概念及实现VPN的关键技术

虚拟专用网VPN通过建立在公共网络上的重要通道(1分),实现远程用户、分支机构、业务伙伴等与机构总部网络的安全连接&#xff0c;从而构建针对特定组织机构的专用网络&#xff0c;实现与专用网络类似的功能&#xff0c;可以达到PN安全性的目的&#xff0c;同时成本相对要低很多(…...

电脑风扇声音大怎么办? 原因及解决方法

电脑风扇是电脑的重要组件之一&#xff0c;它的作用是为电脑的各个部件提供冷却&#xff0c;防止电脑过热。然而&#xff0c;有时候我们会发现电脑风扇的声音特别大&#xff0c;不仅影响我们的使用体验&#xff0c;也可能是电脑出现了一些问题。那么&#xff0c;电脑风扇声音大…...

【Pytorch】unsqueeze与expand结合使用

示例代码 mask mask.unsqueeze(1).expand(-1, N, -1, -1)unsqueeze(1) 操作 unsqueeze是一个在指定位置增加维度的方法。在这行代码中&#xff0c;mask.unsqueeze(1)的作用是在mask张量的第二个维度&#xff08;索引为1的位置&#xff09;上插入一个新的维度。 例如&#xf…...

基于 Spring Boot 和 Vue.js 的全栈购物平台开发实践

在现代 Web 开发中&#xff0c;前后端分离的架构已经成为主流。本文将分享如何使用 Spring Boot 和 Vue.js构建一个全栈购物平台&#xff0c;涵盖从后端 API 开发到前端页面实现的完整流程。 1. 技术栈介绍 后端技术栈 JDK 1.8&#xff1a;稳定且广泛使用的 Java 版本。 Spring…...

MongoDB单机版安装

MongoDB单机版安装 在CentOS Linux release 7.9.2009 (Core)下安装MongoDB的步骤如下&#xff1a; 1 创建用户和组&#xff08;可选&#xff0c;根据需要&#xff09; 如果您希望以非root用户运行MongoDB服务&#xff0c;可以创建一个专用的用户和组。 groupadd mongodb us…...

HTTP/2 与 HTTP/3 的新特性

一、引言 在互联网蓬勃发展的浪潮中&#xff0c;HTTP 协议作为网络通信的基石&#xff0c;历经多次迭代升级&#xff0c;不断推动着网络传输效率与性能的提升。从最初简单的 HTTP/0.9 版本&#xff0c;仅能实现基本的文本传输&#xff0c;到 HTTP/1.0 引入多种请求方法与头部信…...

【软件开发过程管理规范】需求管理,需求分析,设计开发管理,测试管理(Word)

一、需求管理规程 1 简介 2 过程总体描述 2.1 过程概述 2.2 过程流程图 3 过程元素描述 3.1 准备阶段 3.2 需求调研 3.3 需求分析 软件开发人员及用户往往容易忽略信息沟通&#xff0c;这导致软件开发出来后不能很好地满足用户的需要&#xff0c;从而造成返工。而返工不仅在技术…...

mysql的主从配置

#mysql数据库 #主从 MySQL数据库主从配置 1.MySQL主从介绍 MySQL 主从又叫做 Replication、AB 复制。简单讲就是 A 和 B 两台机器做主 从后&#xff0c;在 A 上写数据&#xff0c;另外一台 B 也会跟着写数据&#xff0c;两者数据实时同步的。 MySQL 主从是基于 binlog 的&…...

debian中apt的配置与解析

引言 在系统使用过程中&#xff0c;我们可能会遭遇 apt update 操作出现问题&#xff0c;或者 apt upgrade 速度迟缓的情况。这往往是由于所使用软件源本身存在诸如服务器性能不佳、维护不及时等质量问题&#xff0c;同时&#xff0c;软件源服务器与我们所处地理位置的距离较远…...

Python Pyside6 加Sqlite3 写一个 通用 进销存 系统 初型

图: 说明: 进销存管理系统说明文档 功能模块 1. 首页 显示关键业务数据商品总数供应商总数本月采购金额本月销售金额显示预警信息库存不足预警待付款采购单待收款销售单2. 商品管理 商品信息维护商品编码(唯一标识)商品名称规格型号单位分类进货价销售价库存数量预警…...

Java工程结构:服务器规约(JVM 碰到 OOM 场景时输出 dump 信息、设置tomcat的 JVM 的内存参数、了解服务平均耗时)

文章目录 I 调用远程操作必须有超时设置。II 推荐了解每个服务大致的平均耗时JVM 的 Xms 和 Xmx 设置一样大小的内存容量让 JVM 碰到 OOM 场景时输出 dump 信息调大服务器所支持的最大文件句柄数(File Descriptor,简写为 fd)高并发服务器建议调小 TCP 协议的 time_wait 超时…...

Spring经典面试题

在Spring的面试中&#xff0c;经常会被问到一些经典的问题&#xff0c;这些问题涵盖了Spring的基本概念、核心特性、工作原理以及在实际项目中的应用。以下是一些Spring面试中最经典的题目&#xff1a; 一、Spring概述 什么是Spring框架&#xff1f;Spring框架有哪些主要模块&…...

以太网实战AD采集上传上位机——FPGA学习笔记27

一、设计目标 使用FPGA实现AD模块驱动采集模拟电压&#xff0c;通过以太网上传到电脑上位机。 二、框架设计 数据位宽转换模块&#xff08;ad_10bit_to_16bit&#xff09;&#xff1a;为了方便数据传输&#xff0c;数据位宽转换模块实现了将十位的 AD 数据转换成十六位&#…...

数据结构与算法整理复习(一):数据结构概念与线性表

目录 第一章&#xff1a;绪论 1.1 数据结构的基本概念 1.2 算法与算法评价 第二章&#xff1a;线性表 2.1 线性表的定义和基本操作 2.2 线性表的顺序表示&#xff08;顺序表&#xff09; 应用题 2.3 线性表的链式表达&#xff08;链表&#xff09; 2.3.1 单链表 2.3.2…...

虚幻商城 Fab 免费资产自动化入库

文章目录 一、背景二、实现效果展示三、实现自动化入库一、背景 上一次写了个这篇文章 虚幻商城 Quixel 免费资产一键入库,根据这个构想,便决定将范围扩大,使 Fab 商城的所有的免费资产自动化入库,是所有!所有! 上一篇文章是根据下图这部分资产一键入库: 而这篇文章则…...

TCP Window Full是怎么来的

wireshark查看包时&#xff0c;会看到TCP Window Full&#xff0c;总结下它的特点&#xff1a; 1. Sender会显示 TCP Window Full 2. “Sender已发出&#xff0c;但&#xff0c;Receiver尚未ack的字节”&#xff0c;即Sender的 bytes in flights 3. Sender的 bytes in fligh…...

高效建站指南:通过Portainer快速搭建自己的在线网站

文章目录 前言1. 安装Portainer1.1 访问Portainer Web界面 2. 使用Portainer创建Nginx容器3. 将Web静态站点实现公网访问4. 配置Web站点公网访问地址4.1公网访问Web站点 5. 固定Web静态站点公网地址6. 固定公网地址访问Web静态站点 前言 Portainer是一个开源的Docker轻量级可视…...

“UniApp的音频播放——点击视频进入空白+解决视频播放器切换视频时一直加载的问题”——video.js、video-js.css

今天&#xff0c;又解决了一个单子“UniApp的音频播放——点击视频进入空白解决视频播放器切换视频时一直加载的问题” 一、问题描述 在开发一个基于 video.js 的视频播放器时&#xff0c;用户通过上下滑动切换视频时&#xff0c;视频一直处于加载状态&#xff0c;无法正常播放…...

如何让openhands始终输出中文?

在本地创建一个文件./user_prompt.j2 添加一行 Always respond in 中文你可以直接&#xff1a; echo "Always respond in 中文" > ./user_prompt.j2使用官方文档的docker命令启动容器时-v挂载一个文件/app/openhands/agenthub/codeact_agent/prompts/user_promp…...

CSS 溢出问题及解决方案:实用案例与技巧

在网页开发中&#xff0c;CSS 的布局和样式起着至关重要的作用&#xff0c;但经常会遇到一个棘手的问题——溢出问题。溢出是指元素内的内容超出了其设定的容器大小&#xff0c;这不仅会影响页面的美观&#xff0c;还可能干扰用户体验。本文将详细探讨 CSS 溢出问题的案例&…...

vue3使用音频audio标签

文章目录 一、背景二、页面三、标签介绍四、代码五、代码说明场景1&#xff1a;针对加载固定格式的比如MP3文件&#xff0c;可直接使用\<audio>标签场景2&#xff1a;针对播放告警内容&#xff0c;比如中文或者英文词条情况 一、背景 项目使用vue3&#xff0c;需求针对告…...