Datawhale AI 夏令营 siRNA药物药效预测 task02

C#程序突然崩溃怎么办?5分钟学会分析Dump文件(Visual Studio 2022实战) 本文详细介绍了在C#程序崩溃或无响应时,如何捕获并分析Dump文件以快速定位问题。通过Visual Studio 2022实战演示,重点讲解了配置符号服务器、解读调用堆栈与内存状态,以及针对CPU飙高、内存泄漏等典型场景的分析方法,帮助开发者高效进行故障诊断。 阅读详情

1.完整代码

import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split, GridSearchCV
from sklearn.preprocessing import StandardScaler
import lightgbm as lgb

# 数据加载和合并
df_original = pd.read_csv("train_data.csv")
n_original = df_original.shape[0]
df_submit = pd.read_csv("sample_submission.csv")
df = pd.concat([df_original, df_submit], axis=0).reset_index(drop=True)

# 特征构建函数
def siRNA_feat_builder(s: pd.Series, anti: bool = False):
    name = "anti" if anti else "sense"
    df = s.to_frame()
    df[f"feat_siRNA_{name}_seq_len"] = s.str.len()
    
    nucleotides = "AUGC"
    for pos in [0, -1]:
        for c in nucleotides:
            df[f"feat_siRNA_{name}_seq_{c}_{'front' if pos == 0 else 'back'}"] = (s.str[pos] == c)
    
    patterns = [
        ("AA", "UU"), ("GA", "UU"), ("CA", "UU"), ("UA", "UU"),
        ("UU", "AA"), ("UU", "GA"), ("UU", "CA"), ("UU", "UA")
    ]
    
    for i, (start, end) in enumerate(patterns, 1):
        df[f"feat_siRNA_{name}_seq_pattern_{i}"] = s.str.startswith(start) & s.str.endswith(end)
        
    df[f"feat_siRNA_{name}_seq_pattern_9"] = s.str[1] == "A"
    df[f"feat_siRNA_{name}_seq_pattern_10"] = s.str[-2] == "A"
    df[f"feat_siRNA_{name}_seq_pattern_GC_frac"] = (s.str.count("G") + s.str.count("C")) / s.str.len()
    
    return df.iloc[:, 1:]

# One-Hot 编码函数
def get_dummies_with_prefix(df, column, prefix):
    dummies = pd.get_dummies(df[column], prefix=f"feat_{prefix}")
    return dummies

# 特征处理
df_publication_id = get_dummies_with_prefix(df, 'publication_id', 'publication_id')
df_gene_target_symbol_name = get_dummies_with_prefix(df, 'gene_target_symbol_name', 'gene_target_symbol_name')
df_gene_target_ncbi_id = get_dummies_with_prefix(df, 'gene_target_ncbi_id', 'gene_target_ncbi_id')
df_gene_target_species = get_dummies_with_prefix(df, 'gene_target_species', 'gene_target_species')
df_cell_line_donor = get_dummies_with_prefix(df, 'cell_line_donor', 'cell_line_donor')
df_Transfection_method = get_dummies_with_prefix(df, 'Transfection_method', 'Transfection_method')
df_Duration_after_transfection_h = get_dummies_with_prefix(df, 'Duration_after_transfection_h', 'Duration_after_transfection_h')

siRNA_duplex_id_values = df.siRNA_duplex_id.str[3:-2].str.strip(".").astype("int")
siRNA_duplex_id_values = (siRNA_duplex_id_values - siRNA_duplex_id_values.min()) / (
    siRNA_duplex_id_values.max() - siRNA_duplex_id_values.min()
)
df_siRNA_duplex_id = pd.DataFrame(siRNA_duplex_id_values, columns=['feat_siRNA_duplex_id_normalized'])

df_siRNA_concentration = df.siRNA_concentration.to_frame(name='feat_siRNA_concentration')

# 合并所有特征
feats = pd.concat(
    [
        df_publication_id,
        df_gene_target_symbol_name,
        df_gene_target_ncbi_id,
        df_gene_target_species,
        df_siRNA_duplex_id,
        df_cell_line_donor,
        df_siRNA_concentration,
        df_Transfection_method,
        df_Duration_after_transfection_h,
        siRNA_feat_builder(df.siRNA_sense_seq, False),
        siRNA_feat_builder(df.siRNA_antisense_seq, True),
        df['mRNA_remaining_pct'].to_frame(name='mRNA_remaining_pct'),
    ],
    axis=1,
)

# 数据集划分和标准化
X = feats.iloc[:n_original, :-1]
y = feats.iloc[:n_original, -1]

scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)

X_train, X_test, y_train, y_test = train_test_split(X_scaled, y, test_size=0.2, random_state=42)

# 网格搜索调优
gbm = lgb.LGBMRegressor(boosting_type='gbdt', objective='regression', metric='rmse', random_state=42)
param_grid = {
    'max_depth': [5, 7, 9],
    'learning_rate': [0.01, 0.05, 0.1],
    'num_leaves': [31, 50, 70],
    'n_estimators': [1000, 5000, 10000]
}

grid = GridSearchCV(estimator=gbm, param_grid=param_grid, cv=5, scoring='neg_mean_squared_error', verbose=1)
grid.fit(X_train, y_train)

best_params = grid.best_params_
print(f"Best parameters found: {best_params}")

# 使用最优参数重新训练模型
best_gbm = lgb.train(
    {**best_params, "metric": "rmse"},
    lgb.Dataset(X_train, label=y_train),
    num_boost_round=best_params['n_estimators'],
    valid_sets=[lgb.Dataset(X_test, label=y_test)],
    callbacks=[
        lgb.early_stopping(stopping_rounds=100),
        lgb.log_evaluation(period=100),
    ],
)

# 预测和结果保存
X_submit = scaler.transform(feats.iloc[n_original:, :-1])
y_pred = best_gbm.predict(X_submit)

df_submit["mRNA_remaining_pct"] = y_pred
df_submit.to_csv("submission.csv", index=False)

2.代码分析

2.1 分类特征的 One-Hot 编码

def get_dummies_with_prefix(df, column, prefix):
    dummies = pd.get_dummies(df[column], prefix=f"feat_{prefix}")
    return dummies

对指定的列进行 One-Hot 编码,并为每个新生成的列添加特定前缀。这样做是为了将分类特征转化为模型可以处理的数值形式。

2.2 网格搜索调优

gbm = lgb.LGBMRegressor(boosting_type='gbdt', objective='regression', metric='rmse', random_state=42)
param_grid = {
    'max_depth': [5, 7, 9],
    'learning_rate': [0.01, 0.05, 0.1],
    'num_leaves': [31, 50, 70],
    'n_estimators': [1000, 5000, 10000]
}

grid = GridSearchCV(estimator=gbm, param_grid=param_grid, cv=5, scoring='neg_mean_squared_error', verbose=1)
grid.fit(X_train, y_train)

best_params = grid.best_params_
print(f"Best parameters found: {best_params}")

使用 GridSearchCV 进行网格搜索,以找到最优的超参数组合。参数网格包括 max_depth, learning_rate, num_leaves, n_estimators。使用5折交叉验证,并输出每次的得分。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文 答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案 立即下载

相关推荐

基于强化学习的工业SCR脱硝系统控制算法设计与实现

本文提出了一种基于强化学习的工业SCR脱硝系统智能控制方法。针对SCR系统存在的非线性、大滞后和多变量耦合等控制难点,研究采用混合建模方法构建了精度在5%以内的系统模型,并设计了专门的强化学习环境。该方法通过定义合理的动作空间和状态空间,结合物理约束设计损失函数,利用深度强化学习算法优化氨喷射控制策略。相比传统PID控制,该智能控制器能更好地适应烟气参数波动,实现NOx排放的稳定控制,为工业环保设施提供了更优的自动化解决方案。

huanghm88的专栏 1456

Datawhale AI 夏令营:siRNA药物药效预测----Task 2

你在阅读每一页时,不仅仅是单独理解这一页的内容,还会记住前面的情节和信息。我昨天说要改算法,但我还没尝试,尝试了一下改数值大概能高个0.01分,感兴趣可以试试,我数值差不多都改了,记得数值应该是减小的,效果最好目前是到十九,等下再试试,写文没关GPU,不多说了,还是老话,别光尝试改数值,试试改算法。在数据观察的时候发现,siRNA_duplex_id的编码方式很有意思,其格式为AD-1810676.1,我们猜测AD是某个类别,后面的.1是版本,当中的可能是按照一定顺序的序列号,因此可以构造如下特征。

2301_78848706的博客 2054

STM32F103+AX58100 EtherCAT从站SPI移植实战:CubeMX配置避坑指南

本文详细介绍了STM32F103与AX58100 EtherCAT从站控制器的SPI接口移植实战,重点解析CubeMX配置中的关键参数与常见陷阱。内容涵盖硬件连接规范、SPI模式设置、中断优先级规划及协议栈对接技巧,帮助开发者高效实现工业自动化领域的实时通信方案。特别强调CPOL/CPHA配置与AX58100的匹配要求,避免数据错位问题。

weixin_29230865的博客 330

Datawhale AI 夏令营:siRNA药物药效预测----Task 1

本次比赛旨在利用机器学习技术,预测化学修饰后的siRNA序列在RNA干扰(RNAi)机制下对靶基因的沉默效率。RNAi是一种重要的基因表达调控机制,通过干扰特定基因的表达,可以用于疾病治疗。这次比赛的目标是通过构建并优化模型,准确预测siRNA的沉默效率,从而提升药物设计的效率和效果。数据集数据集包括siRNA裸序列、经过化学修饰的siRNA序列、目标mRNA序列以及实验条件(如药物浓度、细胞系、转染方式等)。

2301_78848706的博客 2082

机器人示教器方案昆仑通态脚本实现( 三菱FX3U+昆仑通态3轴联动))

项目应用场景:最终客户需要自由的修改程序流程,如检测什么信号,多少时间,再进入下一步,轴定位轨迹可以自由修改,方便最终可以在不修改PLC程序的情况下,自由示教程序。3.指令数量可以自行添加,在内存足够的情况下,无限制,只需要在PLC框架里面写好每个指令执行的内容就可以了,不需要在程序里面重复写相同类容;4.模板有延时指令,输入指令,输出指令,伺服定位指令,焊钳控制指令,自动修磨指令,转矩模式指令,结束指令等(可自行添加);1.有类似示教器编程功能,可以任意位置插入指令,可以任意位置删除指令;

huanyuecuiyu的博客 969

MATLAB - 利用非线性模型预测控制(Nonlinear MPC)来控制四旋翼飞行器

本示例展示了如何利用非线性模型预测控制(MPC)为四旋翼飞行器设计一个跟踪轨迹的控制器。

机器人控制与仿真应用 4430

Datawhale AI 夏令营:siRNA药物药效预测----Task 3

【今天是无情的搬运工,基本上是原文没有动内容,昨天试了一下改代码,尝试的lgm优化,一直在报错,主要问题就是用了循环,取平均又不好带入,预测好不容易改对了,结果带入模型又出错,这两天又在忙其他事情就导致很多算法没有尝试,挺遗憾的,加个目录,感兴趣可以自己查看试一下】

2301_78848706的博客 2052

【项目典型案例】-2-任意帧/特定帧CAN唤醒对ECU首帧/启动时间的影响

任意帧/特定帧CAN唤醒对ECU启动时间的影响

「汽车电子助手」的博客 1941

Datawhale AI 夏令营 siRNA药物药效预测 task01

RNA干扰(RNAi)是生物细胞内天然存在的一种基因表达调控机制,可抵御外来核酸的入侵和控制基因表达。相比于传统小分子药物,siRNA具有可成药靶点多、药效强、安全性好、成本低的优势,其研发是全球范围内极具发展潜力的前沿医药领域之一。siRNA的化学修饰对siRNA在体内的稳定性、毒性、药代动力学特性至关重要,是siRNA研发中的重要影响因素,本赛题聚焦经过化学修饰的siRNA序列数据预测其对相应的信使RNA(mRNA)沉默效率指标,对指导siRNA药物设计具有重要指向性作用。

xml121的博客 570

YOLO26改进策略【模型轻量化】| 替换骨干网络 CVPR-2024 StarNet,超级精简高效的轻量化模块

本文记录的是。YOLO26主要用于轻量化应用部署,相关轻量化改进与其整体架构非常适配。StarNet设计简洁,没有复杂的设计和精细调整的超参数,仅是一个 4 阶段的分层架构。并且其中能够在低维空间计算的同时考虑极高维的特征这一特性,进而提高模型精度。本文在替换骨干网络中配置了原论文中的starnet_s1starnet_s2starnet_s3和starnet_s4七种模型,以满足不同的需求。

Limiiiing的博客 1091

uniapp - 最新微信小程序手机号一键登录功能效果,uniapp小程序实现手机号码一键登录,uniapp微信小程序端通过手机号授权完成立即登录操作(详细示例源码,新手小白一键复制开箱即用)

uniapp,微信小程序,uniapp小程序平台,uniApp手机号一键登录,uniapp小程序端手机号一键登录功能,实现微信小程序手机号一键登录,在uniapp中实现获取手机一键登录功能,uniapp手机号快捷登录,uniapp微信小程序授权登录并获取手机号,微信小程序手机号快速验证组件调用方式,uniapp小程序怎么用手机号一键登录,uniapp一键登录流程及代码,如何获取手机号一键登录到小程序,微信小程序获取本机手机号一键登录功能,新手详细教程,详细手机一键登录完整示例代码,uni-app微信unia

✅ 精选推荐文章 1万+

Datawhale AI夏令营-AI+药物-学习笔记1

纯小白,非专业,仅有自学Python的基础。以此次夏令营为契机,入门下机器学习。马不停蹄地报名了新一期的夏令营,这一期为AI for Science,选的是AI+生命科学方向,赛题为siRNA药物药效预测。————本次学习目标:1.了解AI在生命科学领域应用。2.对代码涉及的专业名词有个理解概念。本次学习笔记为,从DataWhale的学习手册中(不得不说是很详细的,小白友好)汲取重点知识,用自己的话进行精炼记录,并记录一些思考。

Revo147的博客 563

全网最强AI辅助课题申报教程!超详细流程拆解,助你快速提高课题申报成功率(附各部分高效提示词)

实验法要详细说明自变量、因变量、实验类型、实验过程、实验步骤、测量工具名称、被试取样方式、无关变量控制方法。这个部分就是让评审专家相信我们有能力把这个项目干成,写的时候要重点突出两块内容:第一是研究基础,包括你或团队在相关领域已有的研究成果,比如发表的论文、承担过的课题、获得过的奖励、相关研究经验等,要具体、有说服力;课题申报专门给我们留了一小节用来突出课题的创新之处,不管是研究角度、研究对象、研究方法,还是应用价值都可以提炼作为我们的创新点,最后的语气成果也要明确具体,且要和课题内容紧密相关。

智能AI让学术科研更容易 665

Datawhale AI夏令营task1:AI for Science(AI+药物)

在生物医学领域,siRNA(小干扰RNA)作为一种强大的基因沉默工具,已经在基因功能研究、疾病治疗和药物开发中展现出巨大的潜力。随着第二届世界科学智能大赛的举办,生命科学赛道特别关注siRNA药物的药效预测,这是一个极具挑战性的任务,涉及到生物信息学、计算生物学和机器学习等多个领域。

2301_76697053的博客 540

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

第二届世界科学智能大赛社会科学赛道:市场博弈和价格预测 # Datawhale AI 夏令营 # task1

在上述部分,我们已经将代码分析的很透彻了。在这里我将使用思维导图形式,对代码思路进行进一步的总结和归纳。

qq_66128479的博客 2117

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Datawhale 2024年AI 夏令营第三期的学习活动|#第二届世界科学智能大赛生命科学赛道:siRNA药物药效预测 :Task1 Baseline精读

我是机械自动化专业的,对编程有点兴趣,平时很喜欢上网关注AI技术的发展。我也认识到AI技术快速发展正在深刻影响人们的生活。恰逢这次免费的活动,我很高兴参加了这次Datawhale AI夏令营并选择了生命科学赛道,能够通过一个具体的项目来充分体验AI技术的内核。在Task1,我主要学习了baseline环境的安装和对baseline的解读。下面介绍一下我的学习流程。打开比赛提供的基础代码,我看到了baseline所需要的一些前提配置。

Awwwwwwer的博客 853

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Datawhale AI 夏令营——基于AI预测siRNA药物药效 Task3

在gbm模型基础上,通过添加序列比对分数特征和优化模型参数提高分数。4. 运行得到比对分数并将其与原特征列表合并。5. 贝叶斯优化gbm模型参数。6. 根据最佳参数获得最后模型。7. 最后模型对数据进行预测。2. 转换序列为字符格式。3. 定义比对分数的函数。

llljr_47的博客 355

Datawhale AI 夏令营 siRNA药物药效预测 学习笔记task2

它的最大特点就是能“读上下文”,也就是能记住前面的信息,也能处理序列后面的信息。LSTM在我看来是RNN的升级版,而使它脱颖而出的是一个关键的门机制———输入门、遗忘门和输出门。官方baseline的特征太少导致结果并不是很好,而t在直播中也提到观察基因序列的特点或者它的编码,从中提取到特征,可以将其变为一个n分类的问题,再利用机器学习的知识解决问题。这一次task2的代码是将序列输入到GRU中,GRU也就是LSTM的简化版,它只有更新门和重置门,但也能解决掉RNN的缺点。

aaa114514__的博客 372

Datawhale AI 夏令营 第二届世界科学智能大赛 生命科学赛道:siRNA药物药效预测 Task2:深入理解赛题,入门RNN和特征工程中对“基于lightgbm的baseline”的优化分析

在阅读“Task2:深入理解赛题,入门RNN和特征工程”文档后,平台给出了数据的特征工程的分析方法,并根据序列模式提取特征。在得到了表格数据之后,平台使用了适用于表格数据的机器学习回归模型lightgbm模型来进行预测。本文章在此方法基础上给出分析和优化。提示:以下是本篇文章正文内容# 定义一个回调函数来打印验证集的结果params = {params,其中,定义LightGBM模型的参数,包括提升类型、目标任务、评估指标、树的最大深度和学习率。

m0_64239852的博客 684

基于pytorch深度学习框架的siRNA药物药效预测模型Task2#AI夏令营#Datawhale

在datawhale给出的代码中,使用了lightgbm框架优化算法,最后得出的结果分数显著提高。在task2阶段跟着datawhale的直播课与注释文件,深入理解了赛题,入门RNN和特征工程。#AI夏令营 #Datawhale #夏令营。本人在学习过程中收获颇丰。

qq_43054610的博客 368

Datawhale AI夏令营(AI+生命科学)深度学习-Task1学习笔记

Datawhale AI夏令营(AI+生命科学)深度学习-Task1学习笔记

Pluses的博客 1540

siRNA药物药效预测 Task1#2024 Datawhale AI 夏令营

本次比赛旨在利用机器学习技术,预测化学修饰后的siRNA序列在RNA干扰(RNAi)机制下对靶基因的沉默效率。RNAi是一种重要的基因表达调控机制,通过干扰特定基因的表达,可以用于疾病治疗。这次比赛的目标是通过构建并优化模型,准确预测siRNA的沉默效率,从而提升药物设计的效率和效果。

weixin_73387633的博客 339

Datawhale AI 夏令营 siRNA药物药效预测 task03

【代码】Datawhale AI 夏令营 siRNA药物药效预测 task03。

xml121的博客 306

基于pytorch深度学习框架的siRNA药物药效预测模型Task1#AI夏令营#Datawhale

有幸参加了本次Datawhale的AI夏令营并第一次接触有关生物与ai结合的项目,根据教程步骤理解了代码的具体内容与模型参数含义与作用,化身调参侠,微调了learning rate,epoch,br等参数并多次训练测试模型。#AI夏令营 #Datawhale #夏令营。

qq_43054610的博客 462

Task1:赛题解析&背景入门 【DataWhale夏令营】

训练数据,包含19个字段,记录实验条件和测量结果。:测试数据,需参赛者预测mRNA_remaining_pct。vocab.csv:化学修饰缩写表,描述各种修饰核苷酸的化学结构。:基线模型,使用RNN预测,主要特征是siRNA_sense_seq。该基线模型使用了 RNN(递归神经网络)来处理和预测 siRNA 数据。1.数据预处理与特征工程使用 GenomicTokenizer 将siRNA序列进行 tokenization。

weixin_74244262的博客 796

第二届世界科学智能大赛社会科学赛道:市场博弈和价格预测 # Datawhale AI 夏令营 # task3

这是Datawhale2024暑期夏令营的第三期,该期夏令营同样依托于AI竞赛,DW选择了由上海科学智能研究院、复旦大学联合阿里云在上智院·天池平台发布的“第二届世界科学智能大赛”。​关于赛题的介绍和分析这里就不过多介入,感兴趣的同学可以自行去上文中的竞赛官网查看相关内容。task3的内容主要是关于上分方向的探讨,分成了三个部分:时间序列挖掘、ABM和强化学习三个方向。

qq_66128479的博客 2201
上一篇: Datawhale AI 夏令营 siRNA药物药效预测 task01
下一篇: solidworks学习笔记2 第二章:草图编辑+草图复制
xml121
博客等级 码龄3年 66粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值