为什么给你全奖免费读博?科学研究是什么?
前言:2024 年诺贝尔化学奖授予了 David Baker、Demis Hassabis 和 John
Jumper。一半授予 David Baker
以表彰其在计算蛋白质设计方面的贡献,他成功构建了全新的蛋白质;另一半授予
Demis Hassabis 和 John Jumper,因其开发的 AI 模型 AlphaFold2
解决了预测蛋白质复杂结构这一 50
年的难题。蛋白质是生命的化学工具,控制和驱动生命化学反应,此次发现具有巨大潜力,能帮助人们更好理解抗生素耐药性、塑料降解酶等,奖金额为
1100 万瑞典克朗。
正文:科学,这一伟大而神秘的领域,绝非孤立于人类社会之外的冰冷存在,而是深深扎根于人类活动之中的繁茂之树。从诺贝尔化学奖得主大卫·贝克的事例中,我们可以清晰地看到科学与人类活动紧密交织的图景。
科学研究是人类智慧的结晶。在贝克的科研历程中,他致力于伟大的科学探索,这背后是他个人卓越的智慧在闪耀。然而,这并非是个体的单打独斗。每一项科研成果的诞生,都像是一场宏大的交响乐演奏。科学家们如同乐队中的乐手,各自发挥着独特的作用。贝克在科研过程中,充分展现了对知 ...
2024 年记
看到 Obsidian 的 CEO Steph Ango 写过 80
个问题,是他用于每年、每十年自问的。感觉这些问题还有点意思,先分享出来,或许可以做些增删,调整出一份适合自己的,然后定期回顾,也蛮不错。
你今年做了哪些之前从未做过的事?
2024年的一月一日,第一次在新一年的第一天去天安门前看日出,唱国歌,看五星红旗的升起。
开始进行增肌,虽然没有直接的卧推,但是这一年的史密斯卧推从40kg增到了100kg,感受身体力量的变化
第一次完成一篇论文,从一篇论文idea的出现,算法实现,数据收集,算法的benchmark,新数据的处理,科学insight的发现,论文的完稿。
第一次作为某方面的专家对公共进行讲课,且受众累计3000+人次。
第一次开展seminar讲述自己的研究成果。
尝试了剥脱激光和微针等医美。
买了新的相机,投稿了视觉中国稿件,并且有五张稿件被接受。
尝试自我调酒,且味道不错。
开始邀请很多人进行1v1的深度聊天,聊到了很多有意思的故事。
第一次有厂子开出了盖着红章的实习经历。
第一次和BAT大厂开展即为深度的合作。
第一次当主持人, ...
辛顿的冬与春
零、负十字架的人
1947 年,在原子弹的余震中,新世界如大雪初霁,茫然而沉静。
那一年,《新闻周刊》发表了文章:《爱因斯坦,那个开启一切的人》。
那一年,爱因斯坦懊悔地说:“如果早知道德国人研发不出原子弹,我就不会为原子弹做任何事情!”
那一年,68
岁的爱因斯坦决定奔走全世界,讲述核战的末世图景,余生致力于推动核裁军。
那一年,世界没有为爱因斯坦停留半步,战略核威慑的骨相从虚空中浮现。
而后一个世纪,我们对社会最大胆的构想,对敌我最深刻的分别,一切光荣与梦想的枝蔓,都必须攀附于核威慑的穹窿之下。
一个试图破解万物奥秘的人,却因自己的求索背负了沉重的十字架,直到坟墓中也没卸下。
这是宇宙残酷的小玩笑。
正是在 1947
年的冬季,伦敦西南的温布尔顿,一个叫做杰弗里·辛顿的小男孩呱呱坠地。
站在辛顿和爱因斯坦的切近,你找不到他们的任何共同点,除了两人都获得了诺贝尔物理学奖。
相隔 102 年。
但如果退到崖边远眺,你也许会惊奇地目睹:历史的齿轮旋过几代人头顶,经过
102
年的漫长行进,正再次严丝合缝地啮合在一起。就在那齿轮弹撞的一瞬间,两人靠得很近 ...
sceasy转h5ad到rds之后基因名字消失的解决方案
最近在做各种各样的物种的单细胞数据清洗,在清洗到某个数据的时候,用sceasy转格式从h5ad到rds,发现了一个问题,基因名字消失了。
没有再去看sceasy的源码,从源码去解决问题,只能是把原先的基因名字进行迁移。
# 首先是是原先的基因的名字导出
adata.var.to_csv('Mop_10X_nuclei_v3_Broad_forRDS.csv')
接着是rds的基因名字的赋予
# 读取没有header的表格
df <- read.table('/data/work/stTransfer/data/sc_cell/Mop_10X_nuclei_v3_Broad_forRDS.csv', header = FALSE)
r = readRDS('/data/work/stTransfer/data/sc_cell/Mop_10X_nuclei_v3_Broad_forRDS.rds')
...
Transformer架构
Transformer模型的应用
基于seq2seq架构的transformer模型可以完成NLP领域研究的典型任务,如机器翻译,文本生成等。同时又可以构建预训练语言模型,用于不同任务的迁移学习。
在之后的架构分析中,我们将假设使用Transformer模型架构处理从一种语言文本到另外一种语言文本的翻译工作,因此很多命名方式遵循NLP中的规则。如:Embedding层将被称作文本嵌入层,Embedding层产生的张量被称为词嵌入张量,其最后一维被称为词向量等。
Transformer总体架构图
Transformer总体架构
输入部分
输出部分
编码器部分
解码器部分
输入部分包含
源文本嵌入层及其位置编码器
目标文本嵌入层及其位置编码器
输出部分包含
线性层
softmax层
编码器部分
由N个编码器堆叠而成
每个编码器层由两个子层连接结构组成
第一个子层连接结构包括一个多头自注意力子层和规范化层以及一个残差连接
第二个子层连接结构包括一个前馈全连接子层和规范化层以及一个残差连接
解码器部 ...
记录一下hexo的博客迁移(物理)
换了新的电脑,一直以来自己的博客撰写的地址都是在电脑上面,自己的博客是基于hexo搭建的,所以需要将博客的文件迁移到新的电脑上面,这里记录一下迁移的过程。
直接把 node_modules
删除掉了,然后拷贝剩余的所有文件到新的设备上面。
拷贝之后第一项是安装 nodejs,地址如下:
https://nodejs.org/en/,下载安装即可,如果网络不方便,可以进行换源npm config set registry http://mirrors.cloud.tencent.com/npm/。
第二项是安装hexo,npm install -g hexo-cli,直接安装即可。
安装完成之后,进入到博客的文件夹,执行npm install,安装依赖。
安装依赖的过程中发现之后的安装的 packge.json
文件中的依赖有问题,淘宝的源换了,由原来的https://registry.npm.taobao.org换成了https://registry.npmmirror.com,所以需要将package.json文件中的源进行替换。
之后运行hexo server,即 ...
换一种UMAP的可视化方式
还是大家熟悉的猴脑文章,可能是大家较为熟悉的一张UMAP图片,但是其呈现方式和其他的UMAP图片却是有所不同,它的UMAP图片如下所示,其名字为Voronoi图:
具体思想如下,画出每个点,然后找出两个点之间的平分线,遍历所有的点,完成构图,进行颜色填充,具体代码如下所示:
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.collections import PolyCollection
from scipy.spatial import Voronoi, voronoi_plot_2d
from shapely.geometry import Polygon
def bounded_voronoi(bnd, pnts):
gn_pnts = np.concatenate([pnts, np.array([[100, 100], [100, -100], [-100, 0]])])
vor = Voronoi(gn_pnts)
bnd_poly = Polygon(b ...
换一种空间组的圈细胞可视化方式
大多数文章在进行空间转录组细胞可视化的时候,通常会使用 square bin
或是 cellbin,但是究其展示本质,其实还是 square
bin,比如下面的这种,每个细胞的呈现形式是一个 spot_size
固定为某个值的点。
但是有的文章的可视化就做的非常好,每个细胞不仅能够显示细胞形态,也能够显示细胞类型,比如这一种:
那这样子的效果要如何绘制呢?我的理解是每个细胞的label,对应圈细胞结果上的一群细胞覆盖的像素点,然后这些像素点都被打上细胞label,对圈细胞结果分析之后,可视化的时候,把每个细胞对应的label的像素点绘制上不同的颜色。
代码如下所示
import scanpy as sc
import pandas as pd
import anndata as ad
from scipy.sparse import csr_matrix
import numpy as np
import numpy as np
from PIL import Image
# 这里的 cellbin 是你用来分析的 cellbin 数据,甚至迁移了细胞类型的数据 ...
杂聊12
昨天抽了些时间对博客进行了一些优化,主要是对 butterfly
主题进行升级,由原先的 4.1.1 升级到了现在的 4.12.0。
之后对主题进行了一些个性化的修改,包括不限于:header bar
的样式、文章的样式、代码块的样式、字体的样式;cdn 的改动,由原先的
jsdelivr 全部改为了 local,jsdelivr 由于限制头会被禁止,local
之后所有功能均可以开启了。
修复了一部分博客之前用 jsdiliver 的问题。
计算某个区域中细胞的复杂性(2)
上一篇帖子提到了猴脑文章中某个区域中细胞复杂性的计算,后面又看到一张图,才是发现自己的计算少了一些东西,这里补充一下。
在原文的图四中还有一个图片,讲述了较为详细的计算过程,如下图所示:
首先是复杂性的获得,我的上一篇相关的博客已经讲了,但是那篇博客的问题也是在于此,我是直接获得了复杂性,把其他的信息都丢掉了,KD树的缺陷也在于此,于是不得已在此进行重构:
# 首先是包的引入,这里可能有很多包都是不需要的,但是我懒得删了,就这样吧
import numpy as np
from scipy.spatial.distance import cdist
import anndata as ad
import pandas as pd
import matplotlib.pyplot as plt
from collections import Counter
import seaborn as sns
from matplotlib.ticker import FuncFormatter
from matplotlib.colors import ListedColormap
f ...