决明胡同

医学数据分析与机器学习的应用探索(一)

· Jay Cao · Read:74

前言

这份 Summary of machine learning notes 是为了记录我 machine learning 的学习过程。在跟着老师研究生物课题的过程中,我了解到这些生物数据(比如基因表达、蛋白质分析等)的数据量非常的复杂,单纯依靠传统的分析方法很难从中提取出有价值的信息。所以通过研究机器学习来挖掘这些数据背后的规律和趋势,帮助我发现数据中潜在的模式,并进行预测,指导实际的生物研究和疾病诊断。

我在这期间学习 R 和 Python 等工具用以处理和分析生物数据,而这个 Summary of machine learning notes 学习系列就是我的学习历程和总结,记录了每一步的思考和操作过程,这里因为我学习专业的缘故,所以整个 learning process 都围绕‘生物分析’来展开用以训练机器学习模型,希望可以为其他刚入门的同学提供一些参考。


一、什么是机器学习

机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
它是人工智能核心,是使计算机具有智能的根本途径。

以上是百度百科给出的 Machine Learning 的定义,简单来说,机器学习就是一种通过数据让计算机自动学习规律并进行预测或者决策的方法。

做一个简单的比喻,想象一下教孩子认识水果:

  • 先给孩子看很多水果的图片(输入数据)
  • 然后告诉孩子哪些是苹果,哪些是香蕉(标签)
  • 最后当孩子看见新水果时,就能自动识别它是什么(模型预测)

二、机器学习与医学的跨学科应用

很多同方向的医学生可能会有一个很深刻的疑问,为什么我学医还要研究机器学习这样一个看起来偏“工科”的学科?

其实,随着时代发展,机器学习和医学之间的联系就越来越紧密。简单来说,机器学习是一个工具,它帮助我们从大量数据中发现模式、规律,做出预测。随着医学领域的数据量也在不断增加,比如医学影像、基因数据、电子病历等,这些数据的复杂性远远超出了传统方法的处理能力。而机器学习能帮助我们有效地分析这些数据,找出其中的潜在关联和规律,从而推动医学研究和临床实践。

也就是说,机器学习可以通过分析大量患者的历史数据,来预测某些疾病的发生几率,甚至可以在早期阶段就进行预警。还可以在医学影像(如CT、MRI)中,帮助医生识别病变区域,甚至是早期的微小变化。不仅如此,它还可以结合基因组数据和患者的临床信息,制定个性化的治疗方案,提高治疗效果。

作为医学生,学习机器学习,不局限于传统的诊疗经验,利用新技术用以预防疾病、诊断和治疗。


三、什么是 R & RStudio

R 是用于统计分析、绘图的语言和操作环境。R 是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具

简单来说,R语言是一种用于统计分析和数据可视化的编程语言,是一套开源的数据分析解决方案,在生物信息学和机器学习中经常使用。

至于 RStudio ,它是一款 R 语言的集成开发环境(IDE),R 自带的环境操作起来可能不是方便,而 Rstudio 很好地解决了这个问题,而且它还具有调试、可视化等功能,支持纯R脚本、Rmarkdown (脚本文档混排)、Bookdown (脚本文档混排成书)、Shiny (交互式网络应用)等。

了解到这里,那学习使用 R 语言与 RStudio 和‘机器学习’之间又有什么关系呢?

先说 R ,R 是一门编程语言,专门用来处理数据、画图和做统计分析的。可以把 R 想象成一个装满工具的“工具箱”,这些工具能在数据上做很多事情。例如:

1.整理数据:
假如从 GEO 数据库里下载了数据,就有很多的数字和表格,看起来密密麻麻。而使用 R 语言则可以帮你清洗和整理这些数据,把它变成干净、整齐的样子,方便接下来的数据分析。

2.分析数据:
整理拿到一大堆“健康人”和“病人”的基因表达数据之后,你想知道这里面哪些基因的表达水平在病人和健康人之间有明显区别?(这叫差异分析),哪些基因表达对疾病影响最大?(这叫特征筛选)。而 R 提供很多统计工具,可以帮你找出这些规律。

3.建立机器学习模型:
如果想训练一个模型,当给它一个新病人的基因数据,它就能预测这个人是否可能生病。R 里有很多算法工具,可以帮你快速实现模型训练和测试。R 还可以帮你评估模型的效果,就是看看模型预测的准不准。

4.画图和展示结果:
得出的数据和模型结果有些时候很难一眼看懂,但如果画成图表,就一目了然。而 R 的 ggplot2 包就可以画各种图:柱状图、散点图、热图、曲线图……

再说 RStudio,如果说 R 是工具箱,那么 RStudio 就是使用工具的“工作台”。

RStudio 是一个“软件平台”,让你可以在上面舒服地写 R 代码、看结果和画图。就像在修理东西的时候,有个大桌子可以把工具都放在上面,有条有理地进行工作。

在 RStudio 里,可以边写代码,边看数据、图表和结果。它还可以管理项目,比如保存代码文件、结果和数据等。

最后打个比方,R 是锤子、钳子、扳手,用来处理数据和做机器学习。而 RStudio 则是工具台 ,可以把工具摆好,让工作更方便、顺手。


四、如何使用 R & RStudio

提示:以下所有操作都是基于Mac系统进行操作

1、部署 R

打开 Safari 浏览器,访问 R 官网

点击左侧菜单中的‘CRAN’(The Comprehensive R Archive Network)。

CRAN

选择一个离你较近的镜像站点(这里如果是中国大陆用户可以选择清华大学的镜像)。

镜像站点

在 CRAN 页面中选择 “Download R for macOS”

Download R for macOS

点击下载适配自己 macOS 版本的 R 安装包(注意这里后缀名通常是 .pkg 文件)。

 R 安装包

下载完成后,双击打开安装包,按提示完成安装。

安装完成后,打开终端(Terminal),输入 R 并回车。如果看到 R 的启动信息,说明安装成功。

R 启动

2、部署 RStudio

Safari 访问 RStudio 官网。

点击“DOWNLOAD RSTUDIO DESKTOP FOR MACOS”按钮进行下载(文件名类似于 RStudio-202x.x.x.dmg)。

DOWNLOAD RSTUDIO DESKTOP FOR MACOS

双击下载好的 .dmg 文件,在弹出的安装窗口中,将“RStudio”图标拖动到“Applications”文件夹中。

打开“Finder”(访达),进入 Applications(应用程序)文件夹,双击 RStudio 图标启动程序。

然后在 Console(控制台) 区域,输入 version 后回车,检查 RStudio 是否关联到了 R ,如果输出显示类似于 platform: x86_64-apple-darwin 和 R version 4.x.x 的信息,则说明 RStudio 已经成功连接到 R 。

version

3、安装 RStudio 必要的工具包

在 RStudio 的 Console 窗口中,输入以下代码安装分析使用时必要的 R 包

# 安装GEO数据处理包
install.packages("BiocManager")       # 安装Bioconductor工具
BiocManager::install("GEOquery")     # 用于处理GEO数据
BiocManager::install("limma")        # 用于差异分析

# 安装可视化包
install.packages("ggplot2")          # 绘制火山图和PCA图
install.packages("pheatmap")         # 绘制热图

安装成功之后,输入以下代码,确保包能正常加载:

library(GEOquery)
library(limma)
library(ggplot2)
library(pheatmap)

如果没有报错,说明包加载成功。


五、什么是 GEO 数据库

GEO(Gene ExpressionOmnibus)是由美国国家生物技术信息中心(NCBI)提供的一个公共数据库,用于存储和分析基因表达数据和高通量测序数据。

简单来说,GEO 数据库提供了大量高质量的生物学数据,这些数据被用来研究基因与疾病的关系

那么该数据库又和机器学习有什么关系呢?

其实,机器学习的本质,就是需要数据用来训练模型。而 GEO 提供了大量真实的生物数据,并且数据基本都带有标签(比如“健康组”和“疾病组”)。这些数据可以用来训练分类模型,区分健康样本和疾病样本,寻找与疾病相关的重要基因(称为特征选择),进行数据聚类,找出基因表达的模式。

简单来说就是通过使用 GEO 数据,训练出机器学习模型,可以实现预测某个病人的基因表达数据是否与癌症相关。


六、如何使用 GEO 数据库

依旧使用 safari 打开 GEO 官网

在主页的“ Keyword or GEO Accession ”输入框中输入关键字搜索数据集。(这里以‘肺癌(Lung Cancer)’为例)

搜索数据集

搜索数据

点击搜索之后,还可以通过左右两侧的筛选条件进一步筛选,

筛选

这里可以看到搜索出的每个数据集都有一个 GEO 访问号 ID(比如GSE12345),点击进入数据页面,就可以看到这个数据集的具体内容,包括实验设计、数据类型和样本信息等。(Series - GSE)

GEO 访问号 ID

此外,在数据集页面上,还可以看到一些重要的字段:

Summary:数据集的简要描述。
Platform - GPL:这个数据集使用了哪些实验平台或芯片类型(使用了什么芯片,测量的是哪种类型的基因)。
Samples - GSM:这个数据集包含了哪些样本,是健康人还是病人,实验设计是什么。

字段

当你找到你所需要的数据集时,就可以去下载数据。

在数据集页面点击 “Download family” 或 “Supplementary files”。选择你所需要的文件格式(例如:SOFT 格式和 Series Matrix 格式),点击下载即可。

Download family or Supplementary files

这样便成功下载了所需的数据文件,该数据文件通常是一个包含多个表格的文本文件(多以.txt、.csv为后缀的文件)

添加新评论