Tnlearn是一个开源的Python库。它基于符号回归算法生成任务特定的神经元,然后利用多样化的神经元构建神经网络。
受NuronAI启发 在过去十年中,成功的网络主要在新颖的架构中使用单一类型的神经元,然而最近的深度学习研究受到人脑神经元多样性的启发,导致了新人工神经元设计的提出。
基于任务的神经元设计 鉴于人脑依赖于基于任务的神经元,人工网络设计能否从关注基于任务的架构转向基于任务的神经元设计?
增强表征 由于不存在普遍适用的神经元,基于任务的神经元可以在相同结构内增强特征表征能力,这得益于其对任务的内在归纳偏置。
采用向量化符号回归来找到适合输入数据的最优公式。
我们对获得的基本公式进行参数化,创建可学习参数,作为神经元的聚合函数。
这里将展示一张描述tnlearn结构的精美图片。
我们选择了几种先进的机器学习方法进行比较。
| 方法 | 会议 | 代码链接 |
|---|---|---|
| XGBoost | ACM SIGKDD 2016 | 采用官方代码 |
| LightGBM | NeurIPS 2017 | 由widedeep实现 |
| CatBoost | Journal of big data | 采用官方代码 |
| TabNet | AAAI 2021 | 由widedeep实现 |
| Tab Transformer | arxiv | 采用官方代码 |
| FT-Transformer | NeurIPS 2021 | 由widedeep实现 |
| DANETs | AAAI 2022 | 采用官方代码 |
我们在两组真实世界数据上测试了多种先进的机器学习方法。测试结果(MSE)如下表所示:
| 方法 | 粒子碰撞 | 小行星预测 |
|---|---|---|
| XGBoost | $0.0094\pm0.0006$ | $0.0646\pm0.1031$ |
| LightGBM | $0.0056\pm0.0004$ | $0.1391\pm0.1676$ |
| CatBoost | $0.0028\pm0.0002$ | $0.0817\pm0.0846$ |
| TabNet | $0.0040\pm0.0006$ | $0.0627\pm0.0939$ |
| TabTransformer | $0.0038\pm0.0008$ | $0.4219\pm0.2776$ |
| FT-Transformer | $0.0050\pm0.0020$ | $0.2136\pm0.2189$ |
| DANETs | $0.0076\pm0.0009$ | $0.1709\pm0.1859$ |
| 基于任务的网络 | $\mathbf{0.0016\pm0.0005}$ | $\mathbf{0.0513\pm0.0551}$ |
以下是人工神经网络多样性的资源总结。
| 资源 | 类型 | 描述 |
|---|---|---|
| QuadraLib | 库 | QuadraLib 是一个用于高效优化和设计探索二次网络的库。QuadraLib 的论文获得了 MLSys 2022 最佳论文奖。 |
| 范峰磊博士的 GitHub 页面 | 代码 | 范峰磊博士的 GitHub 页面总结了一系列关于二次网络的论文和相关代码,包括二次自编码器和 ReLinear 训练算法。 |
| 多项式网络 | 代码 | 这个代码库展示了如何构建深度多项式网络并使用张量分解进行稀疏化。 |
| 树突 | 书籍 | 一本全面涵盖树突计算所有方面的综合性书籍。 |
你应该确保 PyTorch 的版本与 CUDA 的版本相对应,以保证 GPU 加速。以下是参考版本:
Pytorch >= 2.1.0
cuda >= 12.1
其他主要依赖项在安装 tnlearn 时会自动安装。
可以使用 pip 轻松安装 tnlearn 及其依赖项:
pip install tnlearn
也可以使用 conda 轻松安装 tnlearn 及其依赖项:
conda install -c tnlearn
这是一个快速示例,展示如何在回归任务中使用 tnlearn。注意,你的数据类型应该是表格数据。
from tnlearn import VecSymRegressor from tnlearn import MLPRegressor from sklearn.datasets import make_regression from sklearn.model_selection import train_test_split # 生成数据 X, y = make_regression(n_samples=200, random_state=1) X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=1) # 使用向量化符号回归算法生成基于任务的神经元 neuron = VecSymRegressor() neuron.fit(X_train, y_train) # 使用基于任务的神经元构建神经网络并进行训练 clf = MLPRegressor(neurons=neuron.neuron, layers_list=[50,30,10]) #指定 MLP 中隐藏层 的结构 clf.fit(X_train, y_train) # 预测 clf.predict(X_test)
tnlearn 中有许多可以调试的超参数,使神经网络性能更加优越。具体用法请参见 API 文档。
这是我们的官方 API 文档,可在 Read the Docs 上查看。
如果你觉得 tnlearn 有用,请在你的出版物中引用它。
@article{ }
Tnlearn是由Meng Wang、Juntong Fan、Hanyu Pei和Fenglei Fan共同完成的作品。
Tnlearn根据Apache License 2.0发布。


职场AI,就用扣子
AI办公助手,复杂任务高效处理。办公 效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!


多风格AI绘画神器
堆友平台由阿里巴巴设计团队创建,作为一款AI驱动的设计工具,专为设计师提供一站式增长服务。功能覆盖海量3D素材、AI绘画、实时渲染以及专业抠图,显著提升设计品质和效率。平台不仅提供工具,还是一个促进创意交流和个人发展的空间,界面友好,适合所有级别的设计师和创意工作者。


零代码AI应用开发平台
零代码AI应用开发平台,用户只需一句话简单描述需求,AI能自动生成小程序、APP或H5网页应用,无需编写代码。


免费创建高清无水印Sora视频
Vora是一个免费创建高清无水印Sora视频的AI工具


最适合小白的AI自动化工作流平台
无需编码,轻松生成可复用、可变现的AI自动化工作流

大模型驱动的Excel数据处理工具
基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。


AI辅助编程,代码自动修复
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。


AI论文写作指导平台
AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至 论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。


AI一键生成PPT,就用博思AIPPT!
博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。


AI赋能电商视觉革命,一站式智能商拍平台
潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。
最新AI工具、AI资讯
独家AI资源、AI项目落地

微信扫一扫关注公众号