【论文笔记】| 微调LLM晶体生成

【论文笔记】| 微调LLM晶体生成

Fine-Tuned Language Models Generate Stable Inorganic Materials as Text
NYU, ICLR 2024
Theme:Material Generation

Main work:

微调大型语言模型以生成稳定的材料

  • 可靠性:在样本结构中,90% 遵循原子位置和电荷的物理约束条件。
  • 亚稳性:可以以大约两倍的速率(49% 对 28%)生成预测为亚稳态的材料,优于 CDVAE。
  • 灵活性:可以同时用于无条件生成稳定材料、填充部分结构以及条件生成文本。
  • 适用性:捕捉晶体结构的关键对称性,在模型规模扩大时性能提升。

Method:

将晶体结构【crystal lattice,原子类型及坐标(Fractional coordinates / 3D coordinates)】编码为换行字符串并与文本指令相结合,然后在基础LLM (LLaMA-2)上执行参数高效微调(PEFT)
[图片]

Dataset and Training details:

  • 将原始的 CDVAE 训练数据集与截至 2023 年 4 月的 Materials Project 中的材料进行扩展,过滤掉晶格中原子数超过 30 个的晶体
  • 4-bit quantization and Low-Rank Adapters (LoRA)
    [图片]

Experiment:

评估指标:

  • 有效性与多样性:结构有效性由非重叠原子半径计算;成分有效性由计算电荷为中性计算;多样性使用Matminer对结构和组成进行特征化后的样本间距离来计算;
  • 预测稳定性:利用来自 Materials Project 的已知材料和能量计算,根据元素组成配比构建了真实能量凸包。使用M3GNET和DFT方法VASP计算生成材料相对凸包的近似能量,即 E ^ h u l l \hat{E}_{hull} E^hull,预测其稳定性
    [图片]
    在这里插入图片描述

实验结果:

  • 无条件生成:我们从每个微调 LLAMA 模型中抽取 10,000 个结构,从生成的字符串解析 CIF。随机抽样、拒绝提取不出来的样本并重新抽取另一个样本
  • 条件生成:加入条件【空间群编号、成分和 E h u l l {E}_{hull} Ehull】进行生成
  • 对称性学习:通过变换下的困惑度的增加(IPT)作为评估语言模型
    IPT ( s ) = E g ∈ G [ PPL ( t g ( s ) ) − PPL ( t g ∗ ( s ) ) ] , g ∗ = arg ⁡ min ⁡ P P L ( t g ∗ ( s ) ) \text{IPT}(s)=\mathbb{E}_{g\in G}[\text{PPL}(t_g(s))-\text{PPL}(t_{g^*}(s))],g^*=\arg\min\mathrm{PPL}(t_{g^*}(s)) IPT(s)=EgG[PPL(tg(s))PPL(tg(s))]g=argminPPL(tg(s))
  • 填充部分结构:mutation-relaxation step
    • mutation:构建一个查找表,将每个元素映射到在相同氧化态时具有相似原子半径的元素。
      • 均匀选择: 从元素的查找表中均匀地选择一个元素进行替换。
      • 语言模型引导的选择: 使用Fine-tuned LLM(温度参数 t 调节)生成的元素分布中进行抽样。
    • relaxation:生成的新结构需要通过 M3GNET 评估结构的能量是否稳定。

参考文献

Gruver N, Sriram A, Madotto A, et al. Fine-Tuned Language Models Generate Stable Inorganic Materials as Text[J]. arXiv preprint arXiv:2402.04379, 2024.

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

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

相关文章

如何修改WordPress网站的域名

我的网站用的是Hostease的虚拟主机,但是域名是之前在其他平台买的,而且已经快到期了,因为主机和域名在不同的平台上,管理不太方便,所以我又在Hostease重新注册了一个域名,然后把网站换成了新的域名&#xf…

(Java企业 / 公司项目)配置Linux网络-导入虚拟机

公司给了我一个IP地址 ,提供了一个虚拟机或者自己搭建虚拟机,还有提供登录的账号密码 可以查看我之前的文章 VMware Workstation Pro 17虚拟机超级详细搭建(含redis,nacos,docker, rabbitmq,sentinel&…

Oracle数据库中的PCTUSED解析

PCTUSED是Oracle数据库中与数据块空间管理相关的另一个参数,它与PCTFREE共同作用于表空间的段管理。PCTUSED定义了一个数据块中空闲空间的比例,低于这个比例时,块被视为“足够空闲”,可以再次用于插入新的数据行。其主要作用是提高…

3D透视图模型转模型变形?---模大狮模型网

3D建模是数字艺术和设计领域中的重要技术,它可以为我们带来丰富多彩的视觉体验和创意表达。在本文中,我们将探讨一个引人注目的话题:3D透视图中模型转换是否会导致变形?通过深入探讨这个问题,我们希望能够帮助您更好地理解在3D建…

GitHub的原理及应用详解(四)

本系列文章简介: GitHub是一个基于Git版本控制系统的代码托管平台,为开发者提供了一个方便的协作和版本管理的工具。它广泛应用于软件开发项目中,包括但不限于代码托管、协作开发、版本控制、错误追踪、持续集成等方面。 GitHub的原理可以简单…

【C++风云录】数字逻辑设计优化:电子设计自动化与集成电路

集成电路设计:打开知识的大门 前言 本文将详细介绍关于数字芯片设计,电子设计格式解析,集成电路设计工具,硬件描述语言分析,电路验证以及电路优化六个主题的深入研究与实践。每一部分都包含了主题的概述,…

如何通过软件SPI读写W25Q64

STM32F1之SPI通信软件SPI代码编写-CSDN博客 目录 1. W25Qxx系列简介 2. W25Q64硬件电路 3. W25Q64框图 4. Flash操作注意事项 5. 代码编写 5.1 初始化 5.2 W25Q64读取ID号 5.3 W25Q64写使能 5.4 W25Q64等待忙 5.5 W25Q64页编程 5.6 W25Q64扇区擦除&#x…

WebRTC | 网络传输协议 RTP 和 RTCP

WebRTC | 网络传输协议 RTP 和 RTCP WebRTC | 网络传输协议 RTP 和 RTCP如何选择 TCP 与 UDPRTP概述工作机制报文结构RTP 的使用RTP 拓展头RTP 中的填充数据翻译器和混合器同步控制报文大小wireshark 抓取 RTP 报文 RTCP概述工作机制分组类型报文结构WebRTC 的反馈报文RTPFBPSF…

深入浅出递归算法

文章目录 递归思想递归的题目1.汉诺塔问题问题分析代码展示 2.合并两个有序链表问题分析代码展示 3.反转链表问题分析代码展示 4.两两交换 链表中的节点问题分析代码展示 总结 递归思想 递归就是将一个很大的问题拆分成子问题,然后再将子问题继续拆分,拆…

经典正则表达式实例

1、由26个字母组成的字符串 ^[A-Za-z]$2、 由26个字母和数字组成的字符串 ^[A-Za-z0-9]$3、整数形式的字符串 ^-?\d$4、正整数形式的字符串 ^[0-9]*[1-9][0-9]*$5、中国境内邮政编码,6位 [1-9\d{5}6、匹配中文字符 [\u4e00-\u9fa5]7、国内电话号码,010-6872**** \d{3}-…

【linux-IMX6ULL-字符设备驱动简单框架实验】

目录 1. 字符设备驱动简介1.1 重要函数1.2 简单框架代码流程1.3 linux中关于驱动的重要命令 2. 字符设备驱动简单框架编写2.1 添加LICENSE信息2.2 驱动模块的入口与出口2.3 入口和出口函数的编写2.4 设备操作结构体定义2.4.1 结构体函数内容填充 3. 应用程序简介:4.…

Design to code(2)

【碎碎念】从七点到十一点,累计用时4个小时完成的代码翻译Σ( ̄。 ̄ノ)ノ DCDS图 顺序图(支付过程) 交互图(订单) 我的代码 Payment public class Payment { //定义支付订单金额 private…

static的了解

【关键字】static 使用总结_c static关键字-CSDN博客 本文来自上面的文章,这里用于学习,谢谢大佬的分享!!! 非原创!!! 1.一个项目中创建main.cpp和demo.cpp (1&#…

FL Studio2025中文最新版本专业编曲软件有哪些新功能?

FL Studio 21,也被音乐制作爱好者亲切地称为“水果编曲软件”,是比利时的Image-Line公司研发的一款完整的音乐制作环境或数字音频工作站(DAW)。自从1990年代推出以来,FL Studio 以其直观的用户界面、丰富的插件支持和强…

Rust分割字符串的常见操作方法

在Rust编程语言中,分割字符串是一个常见的操作,可以通过多种方式实现。以下是一些常用的方法: 使用split方法: split方法可以按照指定的字符或字符序列来分割字符串。它返回一个迭代器,可以迭代分割后的字符串片段。 l…

玩机社区 - 2024年最美社区源码开源

玩机社区 - 2024年最美社区源码开源 教程源码文档都内置到压缩包了 https://pan.baidu.com/s/1xwcscTne-JMbmKEntiuAuA?pwd78oi

逻辑分析仪 - 采样率/采样深度

采样深度(Sampling Depth) 采样深度指的是逻辑分析仪在一次捕获过程中可以记录的最大样本数量。简单来说,采样深度越大,逻辑分析仪可以记录的数据量就越多。这对于分析长时间的信号变化或复杂的信号序列非常重要。 采样率&#…

2024年5月23日 (周四) 叶子游戏新闻

《Unclogged》Steam页面上线 马桶主题恐怖逃脱解谜Brody制作并发行,一款奇葩创意马桶主题恐怖逃脱解谜新游《Unclogged》Steam页面上线,本作暂不支持中文。 Meta人工智能主管杨立昆 大语言模型不会达到人类智能水平IT之家今日(5月23日&#x…

QEMU启动Linux内核

在QEMU环境下启动linux内核命令如下: QEMU_AUDIO_DRVnone qemu-system-arm -m 256M -nographic -M versatilepb -kernel /home/yukeyang/myfile/linux-6.6.30/arch/arm/boot/zImage -append "consolettyAMA0 rdinit/bin/sh" -dtb arch/arm/boot/dts/arm/…

数据防泄漏系统哪个好用,给文件加密的软件

数据防泄露(Data Leakage Prevention,DLP)是指通过一定的技术手段,防止组织指定(重要或敏感的)数据或信息资产以违反安全策略规定的形式流出组织的一种策略。 信息防泄露以文档加密技术为核心,…