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

分子AI预测赛Task1笔记

分子AI预测赛Task1笔记

实践步骤:跑通baseline → 尝试个人idea→尝试进阶baseline

一、跑通baseline

1、应当先下载数据库

下载相应的数据库

!pip install lightgbm openpyxl

2、训练模型并预测结果

首先要导入相应的库和方法类,如pandas等

# 1. 导入需要用到的相关库
# 导入 pandas 库,用于数据处理和分析
import pandas as pd
# 导入 numpy 库,用于科学计算和多维数组操作
import numpy as np
# 从 lightgbm 模块中导入 LGBMClassifier 类
from lightgbm import LGBMClassifier

之后进行读取训练集和测试集

 #2. 读取训练集和测试集
# 使用 read_excel() 函数从文件中读取训练集数据,文件名为 'traindata-new.xlsx'
train = pd.read_excel('./data/data280993/traindata-new.xlsx')
# 使用 read_excel() 函数从文件中读取测试集数据,文件名为 'testdata-new.xlsx'
test = pd.read_excel('./data/data280993/testdata-new.xlsx')

然后进行特征处理,将数据整理

# 3 特征工程
# 3.1 test数据不包含 DC50 (nM) 和 Dmax (%),将train数据中的DC50 (nM) 和 Dmax (%)删除
train = train.drop(['DC50 (nM)', 'Dmax (%)'], axis=1)# 3.2 将object类型的数据进行目标编码处理
for col in train.columns[2:]:if train[col].dtype == object or test[col].dtype == object:train[col] = train[col].isnull()test[col] = test[col].isnull()

再然后加载决策树

 4. 加载决策树模型进行训练
model = LGBMClassifier(verbosity=-1)
model.fit(train.iloc[:, 2:].values, train['Label'])
pred = model.predict(test.iloc[:, 1:].values, )

最后保存结果

# 5. 保存结果文件到本地
pd.DataFrame({'uuid': test['uuid'],'Label': pred}
).to_csv('submit.csv', index=None)

3、导出结果

将结果下载下来,上传到赛题

二、构思idea,改进baseline

在数据上,可以对数据进行进一步的清洗,剔除异常值;将数据进行多折交叉验证;增加数据的数量(使用模型预测构建)
在算法上, 可以采用一些效果更好的算法,比如 XGBoost。采用 网格搜索法、 flaml等寻参工具对参数进行优化调整。

三、封存思想精华,个人感悟,学习记录都ok

通过学习,真切感受到AI的神奇,参与分子AI预测测试题是一次非常有价值的体验。它不仅让我对分子科学和AI技术有了更深入的了解,还激发了我对未来科研的无限憧憬。
http://www.lryc.cn/news/389282.html

相关文章:

  • ubuntu 安装并启用 samba
  • atcoder ABC 357-D题详解
  • 从单一到多元:EasyCVR流媒体视频汇聚技术推动安防监控智能升级
  • Spring MVC数据绑定和响应——数据回写(二)JSON数据的回写
  • 怎么快速给他人分享图片?扫描二维码看图的简单做法
  • 【UML用户指南】-26-对高级行为建模-状态图
  • 解决VSCode无法用ssh连接远程服务器的问题
  • 【区块链+基础设施】银联云区块链服务 | FISCO BCOS应用案例
  • Java SE入门及基础(61) 死锁 死锁发生条件
  • 简单爬虫案例——爬取快手视频
  • 42、nginx之nginx.conf
  • 高薪程序员必修课-java为什么要用并发编程
  • postgreSQL学习
  • 【3】系统标定
  • 网安小贴士(3)网安协议
  • 大数据面试题之HBase(1)
  • git回退commit的方式
  • [Information Sciences 2023]用于假新闻检测的相似性感知多模态提示学习
  • 自定义vue3 hooks
  • 《昇思25天学习打卡营第21天 | 昇思MindSporePix2Pix实现图像转换》
  • 【文档+源码+调试讲解】科研经费管理系统
  • linux 下 rm 为什么要这么写?
  • 【Spring Boot】Spring AOP中的环绕通知
  • docker部署前端,配置域名和ssl
  • 初学Spring之 IOC 控制反转
  • rpc的仅有通信的功能,在网断的情况下,比网通情况下,内存增长会是什么原因
  • 从零开始:如何设计一个现代化聊天系统
  • 香橙派OrangePi AIpro初体验:当小白拿到一块开发板第一时间会做什么?
  • 【C语言内存函数】
  • Mysql部署MHA高可用