Datawhale机器学习day-1

赛题

        在当今科技日新月异的时代,人工智能(AI)技术正以前所未有的深度和广度渗透到科研领域,特别是在化学及药物研发中展现出了巨大潜力。精准预测分子性质有助于高效筛选出具有优异性能的候选药物。以PROTACs为例,它是一种三元复合物由目标蛋白配体、linker、E3连接酶配体组成,靶向降解目标蛋白质。本次大赛聚焦于运用先进的人工智能算法预测其降解效能,旨在激发参赛者创新思维,推动AI技术与化学生物学的深度融合,进一步提升药物研发效率与成功率,为人类健康事业贡献智慧力量。通过此次大赛,我们期待见证并孵化出更多精准、高效的分子性质预测模型,共同开启药物发现的新纪元。

赛题分析

【训练分子性质分类预测模型】

运用深度学习、强化学习或更加优秀人工智能的方法预测PROTACs的降解能力,

分类为 降解能力较差/降解能力好 两种结论

评价指标

本次竞赛的评价标准采用f1_score,分数越高,效果越好

处理流程

     在解决机器学习问题时,一般会遵循以下流程:   

思考:这里为什么选择机器学习算法?为什么不考虑深度学习?

        在许多机器学习问题中,特征工程的重要性不容忽视。如果特征工程能够充分捕捉数据的关键特征,那么机器学习算法也能够表现很好。深度学习在某种程度上可以自动学习特征,但对于特定问题,手动设计特征可能会更有效。

思考:这里从逻辑回归和决策树中选择,哪一个模型更加合适?

  • 决策树能够处理非线性关系,并且可以自动捕获特征之间的交互作用。

  • 它可以生成可解释的规则,有助于理解模型如何做出决策。

  • 决策树能够处理不同类型的特征,包括分类和数值型。

代码:

# 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)

处理流程

  1. 导入库:首先,导入需要用到的库,包括 pandas(用于数据处理和分析)和 LGBMClassifier(决策树分类器)等。

  2. 读取数据:代码通过使用 pd.read_excel 函数从文件中读取训练集和测试集数据,并将其存储在 traindata-new.xlsxtestdata-new.xlsx 两个数据框中。

  3. 特征工程

- test数据不包含 DC50 (nM) Dmax (%),将train数据中的 DC50 (nM) Dmax (%)删除。

        4.LGB树模型训练和预测

- 创建了一个 LGBMClassifier 的实例,即LGB分类器。

- 使用 fit 函数对训练集中的特征和目标进行拟合,训练了决策树模型。

- 对测试集使用已训练的模型进行预测,得到预测结果。

- 将预测结果和相应的 uuid 组成一个DataFrame,并将其保存到 submit.csv 文件中。

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值