小型网站如何做/开发一个app需要多少钱

小型网站如何做,开发一个app需要多少钱,网站建设费一般是什么费用,三丰云免费虚拟主机表格数据是按行和列组织的电子表格形式,在从生物医学、粒子物理到经济学和气候科学等各个科学领域中无处不在 。基于表格其余列来填充标签列缺失值的基本预测任务,对于生物医学风险模型、药物研发和材料科学等各种应用至关重要。尽管深度学习彻底改变了从…

表格数据是按行和列组织的电子表格形式,在从生物医学、粒子物理到经济学和气候科学等各个科学领域中无处不在 。基于表格其余列来填充标签列缺失值的基本预测任务,对于生物医学风险模型、药物研发和材料科学等各种应用至关重要。尽管深度学习彻底改变了从原始数据中学习的方式,并带来了许多备受瞩目的成功案例,但在过去20年里,梯度提升决策树在表格数据处理方面占据主导地位。在此,作者提出表格先验数据拟合网络(Tabular Prior-data Fitted Network,TabPFN),这是一种表格基础模型,在样本数量高达10,000的数据集上,它的表现远超以往所有方法,且训练时间大幅缩短。在分类场景中,TabPFN能在2.8秒内超越经过4小时调优的最强基线模型。作为一种基于生成式Transformer的基础模型,该模型还支持微调、数据生成、密度估计以及学习可复用的嵌入。TabPFN是一种通过在数百万个合成数据集上进行学习得到的学习算法,展示了这种方法在算法开发方面的强大能力。通过提升不同领域的建模能力,TabPFN有潜力加速科学发现,并在各个领域改进重要决策。

来自:Accurate predictions on small data with a tabular foundation model, Nature, 2025
工程地址:https://github.com/PriorLabs/tabpfn

目录

  • 背景概述
  • 上下文学习
  • 为表格设计的架构
  • 基于因果模型的合成数据
  • 在线使用TabPFN
  • Reference

背景概述

在人工智能的发展历程中,人工创建的算法组件逐渐被性能更优的端到端学习组件所取代。计算机视觉中手工设计的特征,如尺度不变特征变换(SIFT)和方向梯度直方图(HOG),已被学习得到的卷积所替代;自然语言处理中基于语法的方法已被学习得到的Transformer取代;游戏领域中定制的开局和残局库设计,也已被端到端学习策略所超越。在此,作者将这种端到端学习扩展到广泛存在的表格数据领域。

表格数据的多样性使其有别于文本和图像等未经处理的数据。例如,在语言建模中,一个单词的含义在不同文档中是一致的,但在表格数据集中,相同的值可能有着截然不同的含义。比如,一个药物研发数据集可能记录化学性质,而材料科学领域的另一个数据集可能记录热学和电学性质。这种专业性导致了大量较小的独立数据集和相关模型的涌现。举例来说,在广受欢迎的表格数据基准测试网站openml.org上,截至撰写本文时,76% 的数据集包含的行数少于10,000行。

传统上,深度学习方法在处理表格数据时困难重重,这是由于数据集之间的异质性以及原始数据本身的异质性:表格包含的列(也称为特征)具有不同的尺度和类型(布尔型、类别型、有序型、整型、浮点型),还存在数据不平衡、缺失数据、无关特征、异常值等问题。这使得非深度学习方法,如基于树的模型,成为目前为止最有力的竞争者。

然而,这些传统的机器学习模型存在一些缺点。如果不进行大量修改,它们在分布外预测方面表现不佳,并且很难将一个数据集的知识迁移到另一个数据集 。最后,它们很难与神经网络结合,因为它们无法传播梯度。

作为一种解决方案,TabPFN是一种针对中小规模表格数据的基础模型。这种新的有监督表格学习方法可应用于任何中小规模的数据集,在样本数高达10,000、特征数达500的数据集上表现卓越。在基准测试中,TabPFN仅需一次前向传递,就能显著超越包括梯度提升决策树在内的最先进基线模型,即便这些基线模型经过4小时的调优,TabPFN在分类任务中的速度提升可达5140倍,在回归任务中可达3000倍。最后,作者展示了TabPFN的多种基础模型特性,包括微调、生成能力和密度估计。

上下文学习

TabPFN利用上下文学习(ICL)机制(正是这一机制使得大语言模型展现出惊人的性能),生成了一种完全通过学习得到的强大表格预测算法。虽然ICL最早在大语言模型中被发现,但最近的研究表明,Transformer可以通过ICL学习诸如逻辑回归这样的简单算法。先验数据拟合网络(PFNs)已经证明,即使是像高斯过程和贝叶斯神经网络这样的复杂算法,也可以通过ICL进行近似 [1]。ICL使我们能够探索更广泛的可能算法空间,包括那些不存在封闭形式解的情况。

作者在TabPFN的初步版本 [2] 基础上进行开发。该初步版本原则上证明了上下文学习在表格数据中的适用性,但存在许多局限性,导致其在大多数情况下无法应用。经过一系列改进,新的TabPFN能够处理规模大50倍的数据集;支持回归任务、分类数据和缺失值处理;并且对无关特征和异常值具有鲁棒性。

TabPFN背后的核心思想是生成大量合成表格数据集,然后训练一个基于Transformer的神经网络,使其学会解决这些合成预测任务。传统方法在处理诸如缺失值等数据挑战时需要手动设计解决方案,而TabPFN通过解决包含这些挑战的合成任务,自主学习有效的策略。通过生成展示期望行为的多样化合成数据集来设计所需的算法行为,然后训练模型对满足该行为的算法进行编码。这将算法设计过程从编写明确指令转变为定义输入-输出示例,为在各个领域创建算法开辟了可能性。在此,将这种方法应用于具有高影响力的表格学习领域,生成了一种强大的表格预测算法。

上下文学习(ICL)方法与标准的有监督深度学习有着根本区别。通常情况下,模型是针对每个数据集进行训练的,根据手工设计的权重更新算法(如Adam算法)在单个样本或批次上更新模型参数。在推理时,将训练好的模型应用于测试样本。相比之下,作者的方法是跨数据集进行训练的,并且在推理时应用于整个数据集,而不是单个样本。在应用于真实世界的数据集之前,模型会在代表不同预测任务的数百万个合成数据集上进行一次预训练。在推理时,模型接收一个包含有标记训练样本和无标记测试样本的未知数据集,并通过一次神经网络前向传递在这个数据集上进行训练和预测。

图1和图2概述了作者的方法:

  1. 数据生成:作者定义了一个生成过程(称为 prior)来合成各种表格数据集,这些数据集的特征与target之间具有不同的关系,旨在涵盖模型可能遇到的各种潜在场景。作者从这个生成过程中采样数百万个数据集。对于每个数据集,会将一部分样本的目标值进行mask处理,模拟有监督预测问题。作者在先验设计上的更多细节在 “基于因果模型的合成数据” 部分展示(Synthetic data based on casual models)。
  2. 预训练:作者训练一个基于Transformer的模型,即先验数据拟合网络(PFN),以输入特征和未掩码样本为上下文,预测所有合成数据集的掩码target值 。这一步在模型开发过程中只进行一次,目的是学习一种通用的学习算法,可用于预测任何数据集。
  3. 真实世界预测:训练好的模型现在可以应用于任意未知的真实世界数据集。训练样本作为上下文提供给模型,模型通过上下文学习来预测这些未知数据集的标签。

正如 [1] 中所述,该方法可以被视为对由合成数据集定义的先验进行贝叶斯预测的近似。经过训练的先验数据拟合网络(PFN)将逼近后验预测分布 p ( y ^ t e s t ∣ X t e s t , X t r a i n , y t r a i n ) p(\hat{y}_{test } | X_{test }, X_{train }, y_{train }) p(y^testXtest,Xtrain,ytrain),从而针对PFN预训练期间使用的人工数据集的指定分布返回贝叶斯预测结果。

fig1

  • 图1:a. TabPFN预训练和使用的概述。b. TabPFN架构。作者训练一个模型来解决超过1亿个合成任务。作者的架构是对标准Transformer编码器的改编,以适应表格中遇到的二维数据。

fig2

  • 图2:prior的示意图。a. 对于每个数据集,作者首先对高级超参数进行采样。b. 基于这些超参数,作者构建一个结构因果模型,该模型对合成数据集的计算函数进行编码。每个节点持有一个向量,计算图中的每条边根据其中一种连接类型来实现一个函数。在步骤1中,作者使用随机噪声变量生成初始化数据,将其输入到图的根节点,并为每个待生成的样本通过计算图进行传播。在步骤2中,作者在图中随机采样特征节点和目标节点的位置,分别标记为F和T。在步骤3中,作者在采样得到的特征节点和目标节点位置提取中间数据表示。在步骤4中,作者对提取的数据进行后处理。c. 获取最终的数据集。绘制特征对之间的相互作用图,节点颜色代表样本的类别。

为表格设计的架构

Transformer架构目前是灵活深度学习和基础模型青睐的架构。Transformer模型作用于序列,通过注意力机制整合序列元素间的信息,使其能够有效捕捉长距离依赖关系并学习数据中的复杂关系。尽管基于Transformer的模型可以应用于表格数据,但TabPFN解决了它们固有的两个关键局限性。第一,由于Transformer是为处理序列而设计的,它将输入数据视为单个序列,未利用表格结构。第二,机器学习模型常采用拟合-预测模式,即模型在训练集上拟合一次,然后在多个测试数据集上重复使用。然而,基于Transformer的上下文学习(ICL)算法在单次传递中接收训练数据和测试数据,因此会同时进行训练和预测。这样一来,当重复使用拟合好的模型时,就必须重新对训练集进行计算。

为了更好地利用表格结构,作者提出了一种为表格中的每个单元格分配单独表示的架构。如图1b所示,架构采用双向注意力机制,每个单元格先关注其所在行中的其他特征(即当前样本),然后关注其所在列中的相同特征(即所有其他样本)。这种设计使架构对样本和特征的顺序都具有不变性,并且在样本数量和特征数量方面,相比训练时遇到的表格,能够更高效地训练并外推到更大的表格。

为了减少拟合-预测设置中每个测试样本对训练集的重复计算,模型可以将训练样本和测试样本的推理分开。这使我们能够在训练集上进行一次ICL,保存结果状态,并将其重新用于多个测试集的推理。对于有10,000个训练样本和10个特征的数据集,优化后的训练状态缓存使CPU上的推理速度提高了约300倍(从32秒提升到0.1秒),GPU上提高了6倍。当特征数量增加10倍(即100个特征)时,CPU上的速度提升至800倍,GPU上提升至30倍。这些测量仅关注核心推理过程,不包括“推理细节”部分详细介绍的预处理和集成步骤。GPU上速度提升较低是由于其大规模并行架构未得到充分利用。

通过使用半精度计算层归一化、FlashAttention、激活检查点和状态的顺序计算,进一步优化了架构的内存和计算需求。优化将内存需求降低为原来的四分之一,每个单元格的内存占用不到1000字节。这使得在单个H100 GPU上能够对多达5000万个单元格的数据集(例如,500万行×10个特征)进行预测。

对于回归任务,使用分段常数输出分布,这使模型能够预测目标值的概率分布,而不是单个值,例如可以处理双峰分布。

基于因果模型的合成数据

TabPFN的性能依赖于生成合适的合成训练数据集,这些数据集能够捕捉现实世界表格数据的特征和挑战。为了生成这样的数据集,作者开发了一种基于结构因果模型(SCMs)的方法 。SCMs提供了一个正式的框架,用于表示数据背后的因果关系和生成过程。通过使用合成数据,而非大量公开的表格数据,避免了基础模型常见的问题,如隐私和版权侵犯、训练数据被测试数据污染,或是数据可用性受限等问题。

如图2所示,生成流程首先对高级超参数进行采样,例如数据集大小、特征数量和难度级别,以此来控制每个合成数据集的整体属性。在这些超参数的指导下,构建一个有向无环图,该图明确了数据集背后的因果结构。

为了生成数据集中的每个样本,作者将随机生成的噪声(称为初始化数据)通过因果图的根节点进行传播。这种初始化数据是从随机正态分布或均匀分布中采样得到的,样本之间具有不同程度的非独立性。当这些数据在计算图的边中传播时,作者应用一系列不同的计算映射:具有线性或非线性激活函数(例如,sigmoid、ReLU(修正线性单元)、取模、正弦)的小型神经网络,用于生成分类特征的离散化机制,以及用于编码局部基于规则的依赖关系的决策树结构。在每条边上,添加高斯噪声,为生成的数据引入不确定性。作者将每个节点的中间数据表示保存下来,以便后续检索。

在遍历因果图之后,在采样得到的特征节点和目标节点处提取中间表示,从而得到一个由特征值和相关目标值组成的样本。

通过将各种数据挑战和复杂性纳入合成数据集,作者创建了一个训练环境,使TabPFN能够开发出处理现实世界数据集中类似问题的策略。例如,考虑表格数据中常见的缺失值问题。在合成数据生成过程中,让TabPFN接触具有不同缺失值模式和比例的合成数据集,模型就能学习到处理缺失值的有效方法,这些方法可以推广到现实世界的数据集中。作者应用后处理技术进一步增强数据的真实性,并检验所学预测算法的稳健性。这包括使用Kumaraswamy分布进行变换,引入复杂的非线性扭曲,以及模拟离散特征的量化处理。

通过这个生成过程,在每次模型训练时创建了大约1亿个合成数据集,每个数据集都具有独特的因果结构、特征类型和功能特性。

在线使用TabPFN

在线使用地址:https://ux.priorlabs.ai/predict,需要注册后才能使用。

TabPFN适合处理表格数据,本质是填补指定target列中的缺失值,从而作为预测结果。以下面表格为例,target列被指定了readmitted,其他列被指定为feature columns,任务被设置为分类,模型将通过填补表中的target列缺失值实现预测:
fig3

Reference

[1] Transformers can do Bayesian inference, ICLR, 2022
[2] TabPFN: a transformer that solves small tabular classification problems in a second, ICLR, 2023

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/73707.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

stable Diffusion 中的 VAE是什么

在Stable Diffusion中,VAE(Variational Autoencoder,变分自编码器)是一个关键组件,用于生成高质量的图像。它通过将输入图像编码到潜在空间(latent space),并在该空间中进行操作&…

从零开始 | C语言基础刷题DAY3

❤个人主页&#xff1a;折枝寄北的博客 目录 1.打印3的倍数的数2.从大到小输出3. 打印素数4.打印闰年5.最大公约数 1.打印3的倍数的数 题目&#xff1a; 写一个代码打印1-100之间所有3的倍数的数字 代码&#xff1a; int main(){int i 0;for (i 1; i < 100; i){if (i % …

QT5.15.2加载pdf为QGraphicsScene的背景

5.15.2使用pdf 必须要安装QT源码&#xff0c;可以看到编译器lib目录已经有pdf相关的lib文件&#xff0c;d是debug 1.找到源码目录&#xff1a;D:\soft\QT\5.15.2\Src\qtwebengine\include 复制这两个文件夹到编译器的包含目录中:D:\soft\QT\5.15.2\msvc2019_64\include 2.找…

MCP 开放协议

本文翻译整理自&#xff1a; https://modelcontextprotocol.io/introduction 文章目录 简介一、关于 MCP二、为什么选择MCP&#xff1f;通用架构 三、开始使用1、快速入门2、示例 四、教程五、探索 MCP六、贡献和支持反馈贡献支持和反馈 服务器开发者一、构建服务器1、我们将要…

GaussDB备份数据常用命令

1、常用备份命令gs_dump 说明&#xff1a;是一个服务器端工具&#xff0c;可以在线导出数据库的数据&#xff0c;这些数据包含整个数据库或数据库中指定的对象&#xff08;如&#xff1a;模式&#xff0c;表&#xff0c;视图等&#xff09;&#xff0c;并且支持导出完整一致的数…

ctfshow-萌新赛刷题笔记

1. 给她 启动靶机&#xff0c;发现是sql注入&#xff0c;尝试后发现被转义\&#xff0c;思路到这里就断了&#xff0c;再看题目给她&#xff0c;想到git.有可能是.git文件泄露&#xff0c;dirsearch扫描一下果然是&#xff0c;用GitHack看一下git备份文件&#xff0c;得到hint…

Transformer:GPT背后的造脑工程全解析(含手搓过程)

Transformer&#xff1a;GPT背后的"造脑工程"全解析&#xff08;含手搓过程&#xff09; Transformer 是人工智能领域的革命性架构&#xff0c;通过自注意力机制让模型像人类一样"全局理解"上下文关系。它摒弃传统循环结构&#xff0c;采用并行计算实现高…

MySQL高频八股——事务过程中Undo log、Redo log、Binlog的写入顺序(涉及两阶段提交)

大家好&#xff0c;我是钢板兽&#xff01; 在上一篇文章中&#xff0c;我分别介绍了 Undo Log、Redo Log 和 Binlog 在事务执行过程中的作用与写入机制。然而&#xff0c;实际应用中&#xff0c;这三种日志的写入是有先后顺序的。因此&#xff0c;本篇文章将深入探讨它们的写…

AI自动文献综述——python先把知网的文献转excel

第一步 Refworks转excel 下载以后是个txt文件, 帮我把这个txt文件转excel,用函数形式来写便于我后期整理成软件 提取 其中的 标题,作者,单位,关键词,摘要。 分别存入excel列。 import re import pandas as pddef extract_and_convert(txt_file_path, output_excel_path…

树莓派学习:环境配置

目录 树莓派镜像工具下载 树莓派环境配置 通过Putty连接树莓派 使用树莓派的VNC 在树莓派上面进行简单的编程工作 C语言输出”hello 树莓派” Python输出”hello 树莓派” 总结与思考 树莓派镜像工具下载 在开始配置树莓派环境之前&#xff0c;首先需要下载树莓派镜像…

STC89C52单片机学习——第22节: LED点阵屏显示图形动画

写这个文章是用来学习的,记录一下我的学习过程。希望我能一直坚持下去,我只是一个小白,只是想好好学习,我知道这会很难&#xff0c;但我还是想去做&#xff01; 本文写于&#xff1a;2025.03.16 51单片机学习——第22节: LED点阵屏显示图形&动画 前言开发板说明引用解答和…

浅谈数据分析及数据思维

目录 一、数据分析及数据分析思维&#xff1f;1.1 数据分析的本质1.2 数据分析思维的本质1.2.1 拥有数据思维的具体表现1.2.2 如何培养自己的数据思维1.2.2.1 书籍1.2.2.2 借助工具1.2.2.3 刻意练习 二、数据分析的价值及必备能力&#xff1f;2.1 数据分析的价值2.1.1 现状分析…

Cursor的使用感受,帮你使用好自动化编程工具,整理笔记

使用感受 说实话&#xff0c;我觉得cursor还是好用的&#xff0c;可能我刚开始使用&#xff0c;没有使用的非常的熟练&#xff0c;运用也没有非常的透彻&#xff0c;总体体验还是不错的&#xff0c;在使用它时&#xff0c;我优先考虑&#xff0c;前端页面功能复用的时候&#…

SSM框架——Spring面试题

Spring常见面试题 Spring框架中的单例bean是线程安全的吗 不是线程安全的 Spring框架中有一个Scope注解&#xff0c;默认的值就是singleton&#xff0c;单例的。 因为一般在spring的bean的中都是注入无状态的对象&#xff0c;没有线程安全问题&#xff0c;如果在bean中定义了可…

20250317笔记本电脑在ubuntu22.04下使用acpi命令查看电池电量

20250317笔记本电脑在ubuntu22.04下使用acpi命令查看电池电量 2025/3/17 18:05 百度&#xff1a;ubuntu查看电池电量 百度为您找到以下结果 ubuntu查看电池电量 在Ubuntu操作系统中&#xff0c;查看电池电量通常可以通过命令行或者图形界面来完成。下面是一些常见的方法&…

SpringBoot第三站:配置嵌入式服务器使用外置的Servlet容器

目录 1. 配置嵌入式服务器 1.1 如何定制和修改Servlet容器的相关配置 1.server.port8080 2. server.context-path/tx 3. server.tomcat.uri-encodingUTF-8 1.2 注册Servlet三大组件【Servlet&#xff0c;Filter&#xff0c;Listener】 1. servlet 2. filter 3. 监听器…

C# WPF编程-启动新窗口

C# WPF编程-启动新窗口 新建窗口&#xff1a; 工程》添加》窗口 命名并添加新的窗口 这里窗口名称为Window1.xaml 启动新窗口 Window1 win1 new Window1(); win1.Show(); // 非模态启动窗口win1.ShowDialog(); // 模态启动窗口 模态窗口&#xff1a;当一个模态窗口被打开时&a…

谈谈 undefined 和 null

*** 补充 null 和 ‘’

Ubuntu快速安装使用gRPC C++

目录 引言一、快速安装1. 安装必要依赖库2. 安装gRPC 二、测试使用三、参考博客 引言 关于gRPC随着云原生微服务的火热也流行了起来&#xff0c;而且学好一个gRPC框架对目前来说也是必须的了。然而对于一个基础的小白来说&#xff0c;这个gRPC的框架运用起来是及其的困难&…

高数1.5 极限的运算法则

1. 预备知识 2.四则求极限法则 3.复合运算求极限法则