安全中的道德问题

\

本文要点

\\
  • 与安全一样,技术道德(tech ethics)力图避免我们的系统对用户或他人造成伤害。\\t
  • 不同于安全,技术道德是一个全新的理念。此方面的资源、最佳实践以及可提供帮助的专家都十分稀缺。\\t
  • 就像我们都需要大体了解安全问题一样,我认为在技术行业中同样需要大体了解道德问题,并对其建立信心。\\t
  • 与对待安全问题一样,我们同样有权利去考虑代码中的道德和错误,阐述我们的想法,并采取一些行动。事实上,这就是正确的做法。\\t
  • 开发人员是防止生产中出现非道德代码的最后防御堡垒。\
\\

应今年六月在伦敦召开的Open Security Summit大会邀请,我举办了该大会首次安全和道德问题研讨会。

\\

在座各位都并非专家

\\

安全是一个完备的学科,但并非我的术业专攻。该学科有一些优秀的资源可供我参考,还有不少记录良好的最佳实践。如仍需补充,我还可以寻求专家的帮助。

\\

我也并非道德专家,但在道德方面很难获得帮助。我可参考的资源和最佳实践非常少,也缺少可求助的专家。这是因为实用的技术道德是一个新的概念,不存在任何有资格指导我们做事的道德明星。但这也许并非坏事。

\\

我们需要一起学习。我们有权利去考虑代码中的道德和错误,阐述我们的想法,并采取一些行动。事实上,这就是正确的做法。

\\

什么是道德?

\\

我对“技术道德”(tech ethics)的定义是,尽量避免我们的代码会对用户或其他任何人产生伤害。该定义看似十分宽泛。一些事情是老生常谈,例如所有的数据丢失(备份错误)。也有一些事情是新提出的,例如让人们任意做出决定(算法公平)。技术道德就是如何从始至终地避免产生任何形式的伤害。

\\

技术具备令人惊叹的力量。我喜欢自身所处的这个智能的、有思想的工程行业。但是我们突然意识到,我们的产品在很多情况下会对大众产生伤害,因此我们必须慎重行事。我们会对社会某些领域的恶化推波助澜,例如能源的使用,污染,排斥,虚假新闻,操纵,身体危险,宣传,心理健康等。

\\

在全球范围内,科技正在迅速发展。如果我们做错了,可能会影响到数十亿人。这种恐惧感促使我认为,自己不应去做任何可能影响技术发展的事情。技术驱动文化应该是别人操心的事情,此重任不应落在我头上。我们的产品只是软件,必须有人去设计、编写、部署和操作它们,正是我们这样聪明而又有思想的工程师。那么我们应该成为最后的防御堡垒,还是继续把责任推脱给他人?

\\

道德如何影响安全?

\\

我将技术道德定义为尽可能保护用户免受伤害。同样,安全的主要目的就是力图保护用户避开那些妄图通过我们的系统去伤害或抢劫他们的人。看上去,似乎安全是道德的一个方面。安全并未涵盖全部道德(还存在其它一些方法,有人可以不需要借助第三方帮助或是代码漏洞,就可以破坏代码),只是其中一部分而已。因此,通过查看那些适用于安全的道德,或许我们可以对技术道德产生更好的认识。

\\

我不喜欢以Kant方法处事

\\

我们在思考技术道德问题时,除安全之外,还有哪些潜在的资源可用?在十八世纪,欧洲人对道德和理论(Adam Smith称之为“道德情感”)曾有过狂热。 许多著名的哲学家,例如Adam Smith本人、Immanuel Kant、Jeremy Benthamde等人,花了大量时间设计出了一些不容置疑的(有效可编程的)规则。在他们看来,人们可以遵循这些规则而做到明辨是非。其中两套当前广为人知的规则集是Kant提出的“三大箴言”(Three Maxims)Bentham提出的“功利主义”(Utilitarianism)。功利主义在当时被人们彻底批判(并且没有任何充分理由)为非自然、无情的并有点反乌托邦的。但事实证明,它是最容易编程实现的。

\\

功利主义

\\

在功利主义看来,如果一个行为从统计上看利大于弊,那么该行为就可被定义为正确。功利主义完全根据结果而非意图判断行动的积极性。它适用于我们这些软件工程师、一些政府统计部门、报纸的头条新闻等,并且是可编程的!我们所需要的只是一个目标,以及一些衡量目标的方法。这的确很奇妙!我们只要完成了对道德的定义,就可以按时回家休息去。

\\

是否认为这很好?那么Jeremy Bentham这一派道德学者们会踢你的屁股。功利主义的问题在于,它轻易地接纳了一下令人不快的边缘条件。一个常用的黑镜(Black Mirror)式思考实验(不可否则并没有在18世纪使用过)假设你去医院看望一位朋友。在进入医院后,它们的新设备检测出你健康的心脏、肺、肝脏和肾脏可以分别挽救五个病人的生命。但是你的社交朋友数量很少,这意味着几乎没有人会挂念你。这样从统计上看,牺牲你而去拯救更受他人欢迎的五位患者不但是可取的,而且在道德上应势在必行!

\\

功利主义或统计方法会出现极端边缘情况,这往往是由于算法的不公平性所导致的。如果满足目标KPI,即便的确有少数人受到了影响,那么根据定义算法也一定是好的。不敲开鸡蛋就不会做出煎蛋!

\\

如果你认为这在现实中永远不会发生,那么我们只需要看一下美国政府在也门使用算法生成的无人机杀戮名单。据记者及人权律师Cori Crider透露,数千名显然是无辜的人,在一个本应得到美国帮助的国家被美国所使用的功利主义方法杀害,这只是为了达成一个可接受的平民伤亡情况。最近在英国,我们看到了一些非常不人道的行为,包括:为了达到某个目标,一些英国终身公民被自己的政府强行驱逐;为了实现更整洁的街道,一些无家可归的人被送进监狱。不可否认,这些英国案件尚未完全流程化。一旦如此,结果将会更糟。

\\

Kant方法

\\

那么,Immanuel Kant提出的规则是否适用?Kant对道德行为采取了更严格的态度,其中包括三个与Bentham的功利主义相冲突的元素。首先,Kant提出了人是目的而非手段的理念。其次,他认为无论一个目标是多么有价值,任何人都不应该为追求该目标而做出牺牲或受到伤害。第三,Kant提出了著名的“普世缄言”(Maxim of Universality),它能快速地检查一个人是否表现出了不道德的行为。我将其解释为“是否可扩展?”,其理念在于如果所有人都做过你想要做的行为,那么你应扪心自问该行为是否依然有效,或者说依然有意义。如果没有意义,那么将自己的利益置于他人之前就是错误的。最后应提及的Kant原则,就是即使你认为欺骗会符合他人的最佳利益,也不应该因此而做出欺骗。因为这样做就是剥夺了他人获得知情和做出理性选择的权利。

\\

Kant方法可解决医院思考实验(你不应牺牲自己去拯救他人)和美国无人机袭击(不会杀死无辜者)的问题。它也会解决除污染(它不能扩展)、Facebook假新闻收入流和谷歌新推出的Duplex人类模拟器(请不要说谎)等问题。

\\
不能完全依赖于Kant方法
\\

Kant方法听上去很棒!算我一个!但不幸的是,功利主义或多或少会产生作用。Kant肯定可排除很多不良行为,但它也几乎禁止了其它所有事情(汽车导致居民死亡,当前用电情况无法扩展。对此我们尚没有可行的解决方案,甚至没有考虑如何给出一个善意的谎言)。

\\

功利主义的确适用。过去200年中的大部分进展受益于此。我们从不担心一些边缘情况。有时它们会被新闻报道,这时我们会考虑(或被迫)去解决它们。但问题是,我们是否可以继续忽略非主线错误,并以《卫报》、缓刑组织(Reprieve)甚至《每日邮报》作为我们的可观察和警报工具?

\\

如果我们试图使用“设身处地(Compassionate)的功利主义”缓解存在于这些边缘案例中的道德问题,那么需要解决两件事情:

\\
  1. 确保主线的正确。这样从平均情况看我们不会对用户造成伤害。\\t
  2. 设身处地找出、处理并解决非主线损害案件(如有必要,可包括一些特殊情况)。\

不幸的是,该做法与安全或工业安全一样,不可避免是亡羊补牢的(即只有发生了一些不好的事情,我们才能从中汲取经验教训)。但是,如果大家可以分享自己的经验教训,那么就会减少更进一步的损害。我认为这就是最好的方式。它依赖于观察、监测、报告和学习,这些并非仅是由各大新闻报道提供。

\\

应在安全中采取哪些措施?

\\

在安全领域,最佳实践是刻意采取功利主义的方法。对于一个高价值系统,是非常难以确保其安全的。大家都明白,我们的对手就是一个玩长期游戏的潜伏代理,正如我追的美剧《美国谍梦》(“The Americans”)中的情节。另一方面,大多数安全专家专注于修复最有可能导致安全漏洞的一些相对简单的问题,而破坏者如果足够坚定,最终可能就会突破。在这种情况下,安全的目的是确定已发生的违规情况,并采取一些临时措施,至少会通知受影响的用户他们的数据已被泄露。

\\

该方法并非危言耸听,也不是完全功利的。良好的安全性仍然可预见并处理边缘情况(发生违规),并尝试以某种方式缓解问题,而不仅是只要在主线上就可接受偶发故障。我们可能会将此视为上文介绍的“设身处地的功利主义”。其中存在着部分Kant方法,包括我们会优先考虑让受害者知情。

\\

如何从道德考量中受益?

\\

2018年的Stack Overflow开发人员调查中,给出了询问开发人员是否最终对自己代码的不道德使用负责的选项。其中,80%的人表示不会负责,并认为这是董事会、股东和产品负责人(PO)的责任。

\\

如果一家企业将安全交给一些对企业知之甚少的股东,那么你会为这样的企业工作吗?我希望你不会。这是非常不专业的做法。在大多数情况下,应用的安全是由多个文化上的防火墙保证的。在安全性上,董事会和股东有可能会达成一致,但技术专业人员具有最后的发言权,因为他们了解产品、环境和选择情况。安全团队是防止企业做出不安全行动的最后防御堡垒。

\\

为什么技术道德并非如此?它有什么不同?我们是否希望董事会能够比了解加密策略那样更好地理解机器学习的测试数据限制?如果是这样,那么我们太天真了。

\\

机器学习专家必须保护用户免受错误决定的影响。开发人员必须保护用户免受他们所创建算法的伤害。这些算法可能会令人上瘾,也可能会导致剥削压迫。运维和DevOps人员必须要保护用户免受数据中心日积月累的低效、非清洁能源使用的影响。

\\

除了我们这些技术人员,那么还有谁应承担责任呢?我们是编写代码的人,对于代码所造成的任何伤害,我们的直接责任要远大于那些试图保护用户免受他人伤害的安全专业人员。虽然开发人员可能不会对自己的最终负责,但是美国法院却不同意。去年,一名大众汽车工程师因编写不道德的代码而在美国入狱近4年。因此,如果开发人员缺少道德规范,那么用户安全就不仅仅是处于危险中。这也是我们自身的自由权利所在。

\\

就像我们都需要大体了解安全问题一样,我认为在技术行业中同样需要大体了解道德问题,并对其建立信心。我们需要这些优秀的资源、记录良好的最佳实践和一些专家。我今年七月在伦敦举办了一次Coed:Ethics大会,力图推动该项工作的启动。DataKindUK等这样的慈善机构,以及Doteveryone等智库正致力于制定指导方针和流程。Container Solutions等科技企业正在试验这些流程,并提供反馈。InfoQ将对大会录像,并免费提供。我们正在Github建设资源。

\\

现在需要大家积极思考我们这一领域中的道德问题。并非只有专家才能参与。正如Disraeli所说:“历史是由那些参与的人创造的”。

\\

作者简介

\\

984442d6ea6bc0b51aba66ff15ddb7ee.jpgAnne Currie 具有二十多年的科技行业工作经验,从90年代的微软后台服务器、2000年代的国际在线内衣商店,以及2010年代最新的DevOps技术和容器编排。Anne是一些生产力、零售和DevOps领域科技初创企业的联合创始人。她目前供职于位于伦敦的Container Solutions。

\\

查看英文原文: The Ethics of Security

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
应用背景为变电站电力巡检,基于YOLO v4算法模型对常见电力巡检目标进行检测,并充分利用Ascend310提供的DVPP等硬件支持能力来完成流媒体的传输、处理等任务,并对系统性能做出一定的优化。.zip深度学习是机器学习的一个子领域,它基于人工神经网络的研究,特别是利用多层次的神经网络来进行学习和模式识别。深度学习模型能够学习数据的高层次特征,这些特征对于图像和语音识别、自然语言处理、医学图像分析等应用至关重要。以下是深度学习的一些关键概念和组成部分: 1. **神经网络(Neural Networks)**:深度学习的基础是人工神经网络,它是由多个层组成的网络结构,包括输入层、隐藏层和输出层。每个层由多个神经元组成,神经元之间通过权重连接。 2. **前馈神经网络(Feedforward Neural Networks)**:这是最常见的神经网络类型,信息从输入层流向隐藏层,最终到达输出层。 3. **卷积神经网络(Convolutional Neural Networks, CNNs)**:这种网络特别适合处理具有网格结构的数据,如图像。它们使用卷积层来提取图像的特征。 4. **循环神经网络(Recurrent Neural Networks, RNNs)**:这种网络能够处理序列数据,如时间序列或自然语言,因为它们具有记忆功能,能够捕捉数据的时间依赖性。 5. **长短期记忆网络(Long Short-Term Memory, LSTM)**:LSTM 是一种特殊的 RNN,它能够学习长期依赖关系,非常适合复杂的序列预测任务。 6. **生成对抗网络(Generative Adversarial Networks, GANs)**:由两个网络组成,一个生成器和一个判别器,它们相互竞争,生成器生成数据,判别器评估数据的真实性。 7. **深度学习框架**:如 TensorFlow、Keras、PyTorch 等,这些框架提供了构建、训练和部署深度学习模型的工具和库。 8. **激活函数(Activation Functions)**:如 ReLU、Sigmoid、Tanh 等,它们在神经网络用于添加非线性,使得网络能够学习复杂的函数。 9. **损失函数(Loss Functions)**:用于评估模型的预测与真实值之间的差异,常见的损失函数包括均方误差(MSE)、交叉熵(Cross-Entropy)等。 10. **优化算法(Optimization Algorithms)**:如梯度下降(Gradient Descent)、随机梯度下降(SGD)、Adam 等,用于更新网络权重,以最小化损失函数。 11. **正则化(Regularization)**:技术如 Dropout、L1/L2 正则化等,用于防止模型过拟合。 12. **迁移学习(Transfer Learning)**:利用在一个任务上训练好的模型来提高另一个相关任务的性能。 深度学习在许多领域都取得了显著的成就,但它也面临着一些挑战,如对大量数据的依赖、模型的解释性差、计算资源消耗大等。研究人员正在不断探索新的方法来解决这些问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值