整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

新书揭露肯尼迪家族丑闻,上架即跃居畅销书榜首

视剧《肯尼迪家族》(2011)剧照。

据英国《卫报》等媒体报道,当地时间7月2日,由美国调查新闻记者、专栏作家莫琳·卡拉汉(Maureen Callahan)撰写的传记《不要问:肯尼迪家族和他们毁掉的女人》(暂译,Ask Not: The Kennedys and the Women They Destroyed)正式出版,并在数小时内登顶亚马逊多个销售榜单榜首,引发广泛关注。

一直以来,“肯尼迪”在美国都是财富与权力的代名词,而这本书揭露了该家族不为人知的女性剥削史,作者称“厌女症”几乎在这一家族内部根深蒂固。然而,“他们总是能逃脱惩罚”。

该书标题是对约翰·F·肯尼迪(John F Kennedy)1961年就职演说中经典台词——“不要问你的国家能为你做什么,而要问你能为你的国家做什么”的化用。卡拉汉称,人们或许很难想象美国第35任总统同时也是一个利用职权侵犯年轻女性的花花公子。

书中记录的女性之一是19岁的米米·比尔兹利(Mimi Beardsley)。她曾在美国白宫新闻室工作,其间,约翰·F·肯尼迪将其带入私人住宅并对其实施了侵犯。“只有当第一夫人不在时,米米才会被带上楼。她的工作就是提醒他一些简单的快乐:闲聊、泡泡浴、性爱,尽管总是很匆忙。”卡拉汉在书中写到。比尔兹利还曾专门出版回忆录《从前有个秘密:我与约翰·F·肯尼迪总统的绯闻及其后果》(Once Upon a Secret: My Affair with President John F Kennedy and Its Aftermath),该书虽然遭到媒体猛烈批评,但却长期占据《纽约时报》畅销书榜首。

“2021年,当一座真人大小的肯尼迪铜像落地华盛顿特区时,没有一则新闻报道提到这位总统对待女性的方式。也没有一位媒体人、散文家、评论家问过,在我们这个时代,这样的人是否值得拥有一座纪念碑,也没有人关心,这种持续的纪念到底向今天的女性和未来的女性传达着怎样的信息。真的,不要问。”卡拉汉写道。

《不要问》英文版书封。

该书还记载了肯尼迪家族多位女性的真实命运。其中最受关注的是玛丽·理查森(Mary Richardson)。这位才华横溢的建筑师于1994年嫁给了约翰·F·肯尼迪的小侄子小罗伯特·F·肯尼迪(Robert F Kennedy Jr),两人育有四个孩子。再次成为新闻焦点是玛丽陈尸纽约市郊一住所,当时公众普遍认为这是一起自杀事件。而卡拉汉在书中详细回顾了玛丽死亡事件的真相。

小罗伯特与玛丽婚后聚少离多。玛丽很早就怀疑小罗伯特出轨,她曾翻出小罗伯特的日记,发现最后几页罗列了他与之有过暧昧关系的女性名单。玛丽曾表示,小罗伯特曾带很多美丽、有成就的女性来家里。玛丽开始变得心烦意乱、并有酗酒等行为。

对此,小罗伯特总是持否认态度,并坚持认为“玛丽疯了”,是她破坏了他们的婚姻。卡拉汉采访玛丽的治疗师谢娜·汉金(Sheenah Hankin)时了解到,当小罗伯特要求其将玛丽诊断为精神病时汉金拒绝了,并表示:“你的妻子没有精神病。她很生气、很沮丧,但她没有病。”

玛丽的兄弟姐妹表示,玛丽所谓的抑郁症是由丈夫导致的。他曾威胁要带走孩子们,“并用肯尼迪家族的全部力量来对付她”。玛丽去世后,小罗伯特在悼词中没有承认自己的行为给她带来怎样的痛苦,还表示“我知道我尽了一切努力去帮助她”。

玛丽被葬在马萨诸塞州的肯尼迪家族墓地,但据卡拉汉调查称,“一周后,一天半夜,在没有告诉玛丽的兄弟姐妹或获得所需的法律许可的情况下,小罗伯特将玛丽的棺材挖出并移到七百英尺外……玛丽只能面对车水马龙,没有墓碑标记她的坟墓,只能孤零零地埋葬”。

除上述事件外,《不要问》一书中还记录了肯尼迪家族其他几桩丑闻。卡拉汉称,这是向美国政治皇室家族发起的一场性别清算。其中包括约翰·F·肯尼迪的儿子小约翰(John Kennedy Jr)1999年飞机坠毁事件的内幕。那次事故中,其妻子卡罗琳·贝塞特(Carolyn Bessette)和妹妹劳伦也遇难。然而在事故发生25年后,卡罗琳却被塑造成“一个吸毒成瘾的泼妇,言外之意是,如果小约翰没那么痛苦,他就不会心烦意乱以至撞毁飞机”。但事实显然并非如此。

无独有偶,1969年美国参议员爱德华·肯尼迪(Edward Kennedy)曾驾车冲下马萨诸塞州一座桥,导致车翻倒在池塘。他游到了安全地,然而车上的乘客、28岁的助手玛丽·乔·科佩奇内(Mary Jo Kopechne)却死在了装满水的车里。

卡拉汉经过调查发现:“第二天下午打捞玛丽尸体的潜水员证实,玛丽并非溺水身亡,而是窒息而死。他说她在水中至少还活了一个小时,甚至更久。”后来,爱德华·肯尼迪被推崇为“参议院之狮”,但玛丽的名字却几乎再没有被提及过。

卡拉汉利用档案资料、回忆录和当时的新闻报道,并对幸存家庭成员及其朋友进行采访,还原出了更多肯尼迪家族盛名之下被遮蔽的女性故事。她们中有些人卷入了历史上臭名昭著的丑闻、登上过耸人听闻的头条,但更多女性则被边缘化,最终成了被遗忘的悲剧。

“任何敢于反击的受害者都会发现,自己面对的是肯尼迪机器的强大威力,这个机器会把任何女人,无论多么富有、出名或强大,都塑造成疯狂的、恶毒的、复仇的、吸毒者的、毒蛇的、诱惑者的形象。”卡拉汉在书中感慨:“无论肯尼迪家族的人对她们造成了怎样的严重伤害,信息都是明确的:这是她们自找的。这是她们的错。因此,卡米洛特(编者注:英文中“亚瑟王宫”Camelot音译,传说是亚瑟王和骑士们进行圆桌会议的宫殿,后比喻民众心中神圣而崇高的政治期望)——那个关于今日肯尼迪家族的童话,仍然屹立不倒。”

参考链接:

1.‘They always got away with it’: new book reveals Kennedys’ shocking treatment of women

https://www.theguardian.com/books/article/2024/jul/02/maureen-callahan-kennedy-family-women

2.Maureen Callahan's new biography revealing sordid Kennedy family secrets becomes No.1 best-seller just HOURS after release... as Megyn Kelly gives her rave verdict

www.dailymail.co.uk/news/article-13592263/Maureen-Callahan-Kennedy-biography-best-seller.html

编译/申璐

编辑/王菡

校对/杨利

译:吴金笛

校对:郑滋

本文约4600字,建议阅读12分钟。

本文明确了多标签图像分类的概念,并讲解了如何构建多标签图像分类模型。


介绍

你正在处理图像数据吗?我们可以使用计算机视觉算法来做很多事情:

  • 对象检测
  • 图像分割
  • 图像翻译
  • 对象跟踪(实时),还有更多……


这让我思考——如果一个图像中有多个对象类别,我们该怎么办?制作一个图像分类模型是一个很好的开始,但我想扩展我的视野以承担一个更具挑战性的任务—构建一个多标签图像分类模型!

制作一个图像分类模型

https://www.analyticsvidhya.com/blog/2019/01/build-image-classification-model-10-minutes/?utm_source=blog&utm_medium=multi-label-image-classification

我不想使用简单玩具数据集来构建我的模型—这太普通了。然后,它打动了我—包含各种各样的人的电影/电视剧海报。我可以仅通过看海报就能来构建我自己的多标签图像分类模型来预测不同的流派吗?



答案很简单——是的!在本文中,我解释了多标签图像分类背后的思想。我们将使用电影海报构建我们自己的模型。你将会对我们的模型产生的令人印象深刻的结果感到惊讶。如果你是《复仇者联盟》或《权力的游戏》的粉丝,那么在实现部分会有一个很棒的惊喜(无剧透的)给你。

激动吗?很好,我们开始吧!


目录

1. 什么是多标签图像分类?

2. 多标签图像分类与多类图像分类有何不同?

3. 了解多标签图像分类模型体系结构;

4. 构建多标签图像分类模型的步骤;

5. 案例研究:用Python解决多标签图像分类问题;

6.接下来的步骤和你的实验;

7.尾记。


1. 什么是多标签图像分类?

让我们通过一个直观的例子来理解多标签图像分类的概念。 看看下面的图片:



图1中的对象是一辆汽车。这是显而易见的。然而,在图2中没有汽车,只有一组建筑物。你能看出我们要怎么做吗?我们将图像分为两类,即,有车还是没车。

当我们只有两类图像可以分类时,这就称为二值图像分类问题。

让我们再看一个图片:



在这个图片中,你识别出了多少个物体?有太多了——房子、带喷泉的池塘、树木、岩石等等。所以,当我们可以将一个图像分类为多个类(如上图所示)时,就称为多标签图像分类问题。

现在,这里有一个问题——我们大多数人对多标签和多类图像分类感到困惑。当我第一次遇到这些术语时,我也被迷惑了。现在我对这两个主题有了更好的理解,让我来为你们澄清一下区别。


2. 多标签图像分类与多类图像分类有何不同?

假设给我们一些动物的图片,让我们把它们分成相应的类别。为了便于理解,我们假设一个给定的图像可以分为4类(猫、狗、兔子和鹦鹉)。现在,可能有两种情况:

  • 每个图像只包含一个对象(上述4个类别中的任何一个),因此,它只能被归入4个类别中的一个。
  • 图像可能包含多个对象(来自上述4个类别),因此该图像将属于多个类别。


让我们通过例子来了解每种情况,从第一个场景开始:


这里,我们的每个图像都只包含一个对象。敏锐的你会注意到在这个集合中有4种不同类型的对象(动物)。

这里的每张图片只能被分类为猫、狗、鹦鹉或兔子。没有任何一个图像属于多个类别的情况。

  • 当图像可分类的类别超过两种时
  • 一个图像不属于一个以上的类别


如果满足上述两个条件,则称为多类图像分类问题。

现在,让我们思考第二种情况 —— 看看下面的图像:




  • 第一张图片(左上角)包含一只狗和一只猫
  • 第二幅图(右上角)包括一只狗、一只猫和一只鹦鹉
  • 第三幅图(左下角)包含一只兔子和一只鹦鹉,以及
  • 最后一张图片(右下角)包含一只狗和一只鹦鹉

这些都是给定的图像的标签。这里的每个图像都属于一个以上的类,因此它是一个多标签图像分类问题。

这两种情况应该有助于你理解多类和多标签图像分类之间的区别。如果你需要进一步的说明,请在本文下面的评论部分与我联系。

在进入下一节之前,我建议你通读这篇文章——在10分钟内构建你的第一个图像分类模型!它将帮助你了解如何解决一个多类图像分类问题。

在10分钟内构建你的第一个图像分类模型:

https://www.analyticsvidhya.com/blog/2019/01/build-image-classification-model-10-minutes/?utm_source=blog&utm_medium=multi-label-image-classification


3. 构建多标签图像分类模型的步骤

现在我们已经对多标签图像分类有了一个直观的认识,让我们深入讨论解决这个问题应该遵循的步骤。

第一步是以结构化格式获取数据。这既适用于图像二分类,也适用于多类图像分类。

你应该有一个文件夹,其中包含您想要训练模型的所有图像。现在,为了训练这个模型,我们还需要图像的真实标签。因此,你还应该有一个.csv文件,其中包含所有训练图像的名称及其对应的真实标签。

我们将在本文后面学习如何创建这个.csv文件。现在,只要记住数据应该是一种特定的格式。数据准备好后,我们可以将进一步的步骤划分如下:

加载和预处理数据

首先,加载所有图像,然后根据项目的需求对它们进行预处理。为了检查我们的模型将如何对不可见的数据(测试数据)执行,我们创建了一个验证集。我们在训练集上训练我们的模型并使用验证集对其进行验证(标准的机器学习方法)。

定义模型的结构

下一步是定义模型的结构。这包括决定隐藏层的数量、每层神经元的数量、激活函数等等。

训练模型

是时候在训练集上训练我们的模型了!我们输入训练图像及其对应的真标签对模型进行训练。我们还在这里传入验证图像,以帮助我们验证模型在不可见数据上的性能。

作出预测

最后,我们使用训练过的模型对新图像进行预测。


4. 了解多标签图像分类模型结构

现在,多标签图像分类任务的预处理步骤将类似于多类问题的预处理步骤。关键的区别在于我们定义模型结构的步骤。

对于多类图像分类模型,我们在输出层使用softmax激活函数。对于每个图像,我们想要最大化单个类的概率。当一个类的概率增大时,另一个类的概率就减小。所以,我们可以说每个类的概率都依赖于其他类。

但是在多标签图像分类的情况下,单个图像可以有多个标签。我们希望概率彼此独立。使用softmax激活函数并不合适。相反,我们可以使用sigmoid激活函数。这将独立地预测每个类的概率。它将在内部创建n个模型(这里的n是总类数),每个类一个模型,并预测每个类的概率。

利用sigmoid激活函数将多标签问题转化为n-二分类问题。因此对于每幅图像,我们将得到概率来确定图像是否属于第一类,以此类推。由于我们已经将其转换为一个n-二分类问题,我们将使用binary_cross-sentropy损失。我们的目标是尽量减少这种损失,以提高模型的性能。

这是我们在定义用于解决多标签图像分类问题的模型结构时必须做的主要更改。训练部分将类似于一个多类问题。我们将传入训练图像及其对应的真实标签,以及验证集来验证模型的性能。

最后,我们将获取一张新的图像,并使用训练过的模型来预测该图像的标签。还跟得上吗?


5. 案例研究:用Python解决多标签图像分类问题

祝贺你来到这一步!你的奖励——用Python解决一个可怕的多标签图像分类问题。是时候启动你最喜欢的Python IDE了!

让我们明确问题陈述。我们的目标是通过电影的海报图像来预测电影的类型。你能猜到为什么这是一个多标签图像分类问题吗?在你往下看之前想一下。

一部电影可以属于多种类型,对吧?它不仅仅属于一个类别,如动作片或喜剧片。电影可以是两种或多种类型的结合。因此,它是多标签图像分类。

我们将使用的数据集包含多个多类型电影的海报图像。我对数据集做了一些更改,并将其转换为结构化格式,即一个包含图像的文件夹和一个存储真正标签的.csv文件。你可以从这里下载结构化数据集。下面是一些来自我们数据集的海报:

这里

https://drive.google.com/file/d/1dNa_lBUh4CNoBnKdf9ddoruWJgABY1br/view



如果你愿意,可以在这里下载原始数据集和基准真值。

这里

https://www.cs.ccu.edu.tw/~wtchu/projects/MoviePoster/index.html

让我们开始编程!

首先,导入所有需要的Python库:

1. import keras

2. from keras.models import Sequential

3. from keras.layers import Dense, Dropout, Flatten

4. from keras.layers import Conv2D, MaxPooling2D

5. from keras.utils import to_categorical

6. from keras.preprocessing import image

7. import numpy as np

8. import pandas as pd

9. import matplotlib.pyplot as plt

10. from sklearn.model_selection import train_test_split

11. from tqdm import tqdm

12. %matplotlib inline

现在,读取.csv文件并查看前五行的内容:

1. train = pd.read_csv('multi_label_train.csv') # reading the csv file

2. train.head() # printing first five rows of the file




这个文件中有27列。 让我们输出这些列的名字看看:

1. train.columns



Genre列包含每个图像的列表,其中明确了每个图像对应的电影的类型。因此,从.csv文件的头部开始,第一个图像的类型是喜剧和戏剧。

剩下的25列是独热码列。因此,如果一部电影属于动作类型,它的值将为1,否则为0。每个图像可以属于25种不同的类型。

我们将构建一个返回给定电影海报类型的模型。但在此之前,你还记得构建图像分类模型的第一步吗?

没错——就是正确的加载和预处理数据。所以,让我们看看所有的训练图片:

1. train_image = []

2. for i in tqdm(range(train.shape[0])):

3. img = image.load_img('Multi_Label_dataset/Images/'+train['Id'][i]+'.jpg',target_size=(400,400,3))

4. img = image.img_to_array(img)

5. img = img/255

6. train_image.append(img)

7. X = np.array(train_image)

快速浏览一下数组的形状:

1. X.shape



这里共有7254个海报图像,所有图像都已转换为(400,300,3)的形状。 让我们绘制并可视化其中一个图像:

1. plt.imshow(X[2])



这是电影《交易场所》的海报。让我们输出这部电影的类型:

1. train['Genre'][2]



这部电影仅有一个类型——喜剧。我们的模型所需的下一步是所有图像的真实标签。你能猜出这7254个图像真实标签的形状是什么吗?

让我们来看看。 我们知道总共有25种可能的类型。对于每个图像,我们将有25个目标,即电影是否属于该类型。 因此,所有这25个目标的值都为0或1。

我们将从训练文件中删除Id和Genre列,并将剩余的列转换为将成为我们图像目标的数组:

1. y = np.array(train.drop(['Id', 'Genre'],axis=1))

2. y.shape



输出数组的形状是(7254,25),正如我们预想的那样。 现在,让我们创建一个验证集,它将帮助我们检查模型在不可见的数据上的性能。 我们将随机分离10%的图像作为我们的验证集:

1. X_train, X_test, y_train, y_test =

2. train_test_split(X, y, random_state=42, test_size=0.1)

下一步是定义模型结构。输出层将有25个神经元(等于类型的数量),我们将使用sigmoid作为激活函数。

我将使用某一结构(如下所示)来解决这个问题。 你也可以通过更改隐藏层数,激活函数和其他超参数来修改此架构。

1. model = Sequential()

2. model.add(Conv2D(filters=16, kernel_size=(5, 5), activation="relu", input_shape=(400,400,3)))

3. model.add(MaxPooling2D(pool_size=(2, 2)))

4. model.add(Dropout(0.25))

5. model.add(Conv2D(filters=32, kernel_size=(5, 5), activation='relu'))

6. model.add(MaxPooling2D(pool_size=(2, 2)))

7. model.add(Dropout(0.25))

8. model.add(Conv2D(filters=64, kernel_size=(5, 5), activation="relu"))

9. model.add(MaxPooling2D(pool_size=(2, 2)))

10. model.add(Dropout(0.25))

11. model.add(Conv2D(filters=64, kernel_size=(5, 5), activation='relu'))

12. model.add(MaxPooling2D(pool_size=(2, 2)))

13. model.add(Dropout(0.25))

14. model.add(Flatten())

15. model.add(Dense(128, activation='relu'))

16. model.add(Dropout(0.5))

17. model.add(Dense(64, activation='relu'))

18. model.add(Dropout(0.5))

19. model.add(Dense(25, activation='sigmoid'))

让我们显示我们的模型总结:

1. model.summary()



有相当多的参数要学习! 现在,编译模型。 我将使用binary_crossentropy作为损失函数,使用ADAM作为优化器(同样,你也可以使用其他优化器):

1. model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])

最后,我们最有趣的部分——训练模型。我们将训练模型10个循环,并传入我们之前创建的验证数据,以验证模型的性能:

1. model.fit(X_train, y_train, epochs=10, validation_data=(X_test, y_test), batch_size=64)



我们可以看到训练损失已降至0.24,验证损失也降低了。 下一步是什么? 是时候做预测了!

所有《权力的游戏(GoT)》和《复仇者联盟(Avengers)》的粉丝——这是给你们的礼物。 让我获取GoT和Avengers的海报,并将它们提供给我们的模型。 在继续之前下载GOT和Avengers的海报。

GOT

https://drive.google.com/file/d/1cfIE-42H4_UM-JERoctseLUpKwmd40YE/view

Avengers

https://drive.google.com/file/d/1buNOcfo0Im2HmFH778dUwxven8Zzebtu/view

在进行预测之前,我们需要使用前面看到的相同步骤预处理这些图像。

1. img = image.load_img('GOT.jpg',target_size=(400,400,3))

2. img = image.img_to_array(img)

3. img = img/255

现在,我们将使用我们训练好的模型预测这些海报的类型。该模型将告诉我们每种类型的概率,我们将从中获得前3个预测结果。

1. classes = np.array(train.columns[2:])

2. proba = model.predict(img.reshape(1,400,400,3))

3. top_3 = np.argsort(proba[0])[:-4:-1]

4. for i in range(3):

5. print("{}".format(classes[top_3[i]])+" ({:.3})".format(proba[0][top_3[i]]))

6. plt.imshow(img)



真棒!我们的模型为《权力的游戏》预测了戏剧,惊悚和动作类型。在我看来,这个分类很好。让我们在《复仇者联盟》海报上试试我们的模型。图像预处理:

1. img = image.load_img('avengers.jpeg',target_size=(400,400,3))

2. img = image.img_to_array(img)

3. img = img/255

然后做预测:

1. classes = np.array(train.columns[2:])

2. proba = model.predict(img.reshape(1,400,400,3))

3. top_3 = np.argsort(proba[0])[:-4:-1]

4. for i in range(3):

5. print("{}".format(classes[top_3[i]])+" ({:.3})".format(proba[0][top_3[i]]))

6. plt.imshow(img)



我们的模型给出的类型是戏剧、动作和惊悚。同样,这些都是非常准确的结果。这个模型能在好莱坞电影分类上表现的一样优秀吗?让我们来看看。我们将使用这张Golmal 3的海报。



你知道在这个阶段该做什么——加载和预处理的图像:

1. img = image.load_img('golmal.jpeg',target_size=(400,400,3))

2. img = image.img_to_array(img)

3. img = img/255

然后为这个海报预测电影类型:

1. classes = np.array(train.columns[2:])

2. proba = model.predict(img.reshape(1,400,400,3))

3. top_3 = np.argsort(proba[0])[:-4:-1]

4. for i in range(3):

5. print("{}".format(classes[top_3[i]])+" ({:.3})".format(proba[0][top_3[i]]))

6. plt.imshow(img)




《Golmaal 3》是一部喜剧,我们的模型预测它为最受欢迎的类型。其他预测类型是剧情片和浪漫片——相对准确的评估。我们可以看到该模型能够仅通过海报预测电影类型。


6. 接下来的步骤和你自己的实验

这就是如何解决多标签图像分类问题。尽管我们只有大约7000张图片来训练模型,但我们的模型表现得非常好。

你可以尝试收集更多的训练海报。我的建议是使所有的流派类别有相对平等的分布的数据集。为什么?

如果某一类型在大多数训练图像中重复出现,那么我们的模型可能会与该类型过度匹配。对于每一张新图片,该模型都可能预测出相同的类型。为了克服这个问题,你应该尝试均衡的流派类别分布。

这些是你可以尝试改进模型性能的一些关键点。你还能想到别的吗?告诉我!


7. 尾记

除了流派类型预测外,多标签图像分类还有多种应用。例如,你可以使用此技术自动标记图像。假设你想预测图像中服装的类型和颜色。你可以建立一个多标签图像分类模型,这将帮助你预测同时两者!

希望本文能帮助你理解多标签图像分类的概念。如果你有任何反馈或建议,请在下面的评论部分与我们分享。实验快乐!

原文链接:

https://www.analyticsvidhya.com/blog/2019/04/build-first-multi-label-image-classification-model-python/

原文标题:

Build your First Multi-Label Image Classification Model in Python

编辑:王菁

校对:林亦霖


译者简介


吴金笛,雪城大学计算机科学硕士一年级在读。迎难而上是我最舒服的状态,动心忍性,曾益我所不能。我的目标是做个早睡早起的Cool Girl。

— 完 —

关注清华-青岛数据科学研究院官方微信公众平台“THU数据派”及姊妹号“数据派THU”获取更多讲座福利及优质内容。

2019年的春天,这本应该是万物复苏的季节,却接连发生了两起化工厂爆炸事故。作为科研人员,如何安全地科研?这是我们应该共同关注的问题。

江苏响水化工园区爆炸事故现场

2019年3月21日,江苏响水化工园区内的江苏天嘉宜化工有限公司发生爆炸。3月31日,苏州昆山市昆山汉鼎精密金属有限公司机加工车间外一存放镁合金碎屑废物的集装箱发生爆燃事故。而在科学研究中,也时有发生安全事故。例如发生在去年的北京交通大学的爆炸燃烧事故和 2015 年清华大学化学系何添楼的火灾爆炸事故。

这些事故和我们有什么关系呢?在这些安全事故的背后,有的是生产程序上的漏洞,有的是安全管理上的疏忽,有的是操作人员的失误等等原因。虽然我们的科研环境相对安全,但我们仍然需要准确认识无处不在的危险,在工作生活中要端正态度,正确操作,不能在安全问题上抱有侥幸心理。

首先,我们要对危险有着正确的认识,既要知道事前应该如何防护,也要知道万一发生意外之后要如何处理。例如笔者在刚刚接触到使用氢氟酸的加工工艺时,就一些听师兄师姐说,如果手上滴上一滴氢氟酸,几天后人全身骨头就都烂了等等。当然,这也不完全是夸张的说法,氢氟酸致死的案例也有很多很多。但与工业生产或者化学实验不同,我们使用的氢氟酸溶液,浓度往往是非常低的,即使不小心沾上一点,只要正确冷静处理也不至于没命。相反如果在心里过分夸大了危害,导致心态波动,则可能会出现进一步的失误,造成更严重的后果。

在我们实验室常见的化学药品中,氢氟酸和硫酸算是最危险的两种试剂。不过其对应的安全措施并不复杂。在试剂和废液的存储这一部分,氢氟酸会腐蚀玻璃而不腐蚀塑料,硫酸会腐蚀塑料而不腐蚀玻璃;所以氢氟酸放塑料瓶,硫酸放玻璃瓶。如果同时用这两种酸?那就用「百毒不侵」的聚四氟乙烯瓶吧,在操作的部分,面罩、耐酸碱腐蚀手套、防护服等等该有的都要有。这些硬件是实验安全的基本保障。此外,正确的操作才能通往实验的成功。以笔者的一点小经验来说,耐酸碱腐蚀手套非常厚重,戴上之后操作不便,因此使用大号的烧杯、镊子、滤纸等等会有助于实验的成功。如果一不小心沾上了一些试剂,手边没有特效药的话,用水冲洗是基本的。如果情况严重,或者不知道情况严不严重,则及时去医院,最好是化工职业病防治医院。笔者曾经因疑似手上沾了一小小滴氢氟酸,想去附近医院皮肤科检查一下,结果医生直接表示不知道氢氟酸是啥。

最后,也是最容易发生意外的就是废品处理环节。废品对于我们来说没有什么价值,所以也经常得不到认真对待,例如做完实验之后,发现手边的废液瓶满了,那我们就有可能随便找个瓶子装废液,或者干脆直接把废液倒在水池里。危险都是从细小的疏忽怠慢开始一步步发展的。一开始,可能倒了乙醇等没什么危险的试剂,我们还存在一些侥幸心理。但等到失手把氢氟酸倒进玻璃瓶、或者把硫酸倒进塑料瓶,那就追悔莫及了。笔者曾经失手把氨水倒进水池,结果整个实验室变得很有味道。除了废液之外,滴管、载玻片、试纸等废品,如果乱摆乱放,也会产生安全隐患。为了解决这个问题,一方面,我们要时时刻刻提醒自己,处理完废液废品、整理好仪器设备之后,我们的实验才算结束。另一方面,我们也要时刻保持良好的实验室环境。一个优秀的实验室,各种试剂永远要摆放整齐,水池中要有空着的废液瓶,垃圾桶从来不会满。

除了科研工作,日常生活中的安全意识也非常重要。特别是单身北漂独自居住科研工作者,如果在生活中出现意外,身边有没有人可以迅速协助,就可能导致不幸的结果。笔者以亲身经历举个例子。笔者曾经所住的出租房中使用的电热水器直接安装在了浴室的墙上。而这样是有安全隐患的,如果安装过程不到位,或者部件老化、墙体不牢固,热水器就有可能会坠落,在热水器下方的人则很难有反应时间,十分危险。在与房东沟通之后,联系工人在热水器下方增加了两个支架作为第二道保险。

总的来说,为了避免安全事故,我们一方面要认真对待已知的安全风险,另一方面也要善于排查未知的安全隐患。面对已知的安全风险,我们不能心存侥幸,想着偶尔偷懒也没事。如果进行一些较为危险的操作、接触一些较为危险的试剂,则应该两、三人一起进行,互相帮助互相监督。至于一些未知的或者小众的安全风险,作为科研工作者,我们应该利用自己的科学思维,大胆假设,发现问题并且提出解决方案。

最后,大家也可以在下方留言区集思广益,让科研生活在安全中前进。

参考资料:

1.http://cn.chinadaily.com.cn/a/201903/22/WS5c949d3aa310e7f8b157254d.html

2.http://www.sohu.com/a/305039996_114731

3.文中新闻图片来自http://yynews.cnnb.com.cn/system/2019/03/23/011973724.shtml

物理所师生原创投稿

作者:钱琛江

声明:转载此文是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系,我们将及时更正、删除,谢谢。