作者 Ben Dickson 译者 王强 规划 凌敏 随着软件和算法对我们生活各个方面的影响越来越大,人们对它们越来越感兴趣,也越来越关注算法如何影响社会、经济和政治。然而,大多数关于算法社会研究都将其视为自治的、模糊的黑箱。这种观点孤立地对待算法,并将其与人类元素分离,这导致我们产生错误的理解和结论

在《算法的构成》一书中,洛桑大学STS实验室的博士后研究员Florian Jaton试图从内部探索算法,因此,揭示算法

Jaton 的人性化并不是首先找到一个实用的算法并试图找出它是如何生成的,而是从看似无关的实体(如人、欲望、文档、好奇心)开始,然后研究所有这些实体如何相互作用,形成我们称之为算法

Jaton 的民族学与基本事实实践相结合,编程算法制定,从而发现了算法创建过程中所有小而重要的细节和实践,并展示了我们和我们创建的算法是如何相互作用的。这样,他对算法组合的研究可以帮助我们找到新的方向,使我们的软件能够与我们的值一致

窥视黑匣子;2013年,当我开始对算法这一话题感兴趣时,有大量关于算法在行业中的社会影响的文献,它们并不轻松;Jaton告诉techtalks;这些重要文献研究算法在我们生活中的工作方式,并强调了算法的不透明性虽然这些研究很重要,有助于提高人们对算法在不同层面的影响的关注,但Jaton认为,系统地谴责算法的威力可能会适得其反;我特别注意的是,大多数人认为算法是由难以理解的代码和晦涩难懂的数学组成的抽象和无根据的实体。我们究竟应该如何对待抽象、无根据和模糊的实体?在我看来,对算法的批判性描述并没有带来太多的经验思考。我们需要集体经验思维。但这很难做到经过仔细检查,jaton发现问题在于人们从外部学习算法。批判社会学家坐在办公室里,通过报告、软件和学术论文等官方声明观察算法。在他看来,这种方法过滤掉了;Jaton说:“一个脆弱的框架帮助人们逐渐描绘出算法的图景。”;我在科学技术研究(STS)方面的培训很有用,因为社会科学子领域的一个基本假设是技术- 科学设施被视为与情况和责任相关的实践的产物。对算法批评的可能的补救方法可能是立即改变我们现在使用的方法,并将人类科学作为指导理论。例如,布鲁诺·拉图尔、迈克尔·林奇和露西·苏克曼的现代人类学研究将引导方向,而不是通过外部文件分析来引导盲人和大象(尽管后者仍然非常重要)为了编写算法的组成,Jaton花了两年半的时间作为研究科学家团队的成员,研究计算机视觉算法。在参与并记录了相关讨论、数据收集、编程会议、代码调试实践和理论改进过程后,他意识到,在社会科学环境中研究算法时,许多涉及创建算法过程的重要任务都被忽视了

他在书中写道:“;算法开发过程中涉及的基本实践再也不能被忽视和忽视:因为它们是反复辩论的对象,因此记录使算法产生的实际过程当然很重要,或者至少很有趣。Jaton将算法的组成分为三个主要阶段:演示,编程和公式

算法组成𞓜 经验 当一群计算机科学家、研究人员或工程师聚在一起创建一个算法时,他们最初是由一系列因素驱动的,包括欲望、技能、手段和希望

例如,一个研究小组可能希望达到或超过先前发表的科学论文的结果。团队成员拥有一套数学和编程技能,他们可以依靠这些技能来实现这一目标。他们可以获得计算资源、学术论文和数字工具。最后,他们可能希望在科学领域取得突破,比如帮助改善医学成像结果,或者解决未来可以商业化的问题,比如创建可以检测制造厂缺陷的算法,然而,在他们开发出能够满足其目标算法之前,他们必须经历一个问题化和论证的过程。在这一阶段,研究人员必须精确定义他们想要解决的问题,并确定验证算法所需的数据类型

例如,图像分类算法需要确定图像中是否存在对象。另一方面,目标检测算法还必须确定图像目标的坐标。人们还可以使用其他规范,例如,一幅图像是只包含一个对象,还是可能包含多个对象?使用算法的环境中的照明条件是否不同?对象是出现在不同的背景中,还是总是出现在相同的背景中? 一旦问题被提出,研究人员必须收集正确的材料来建立基本事实,以便验证他们的算法和未来的模型。例如,在计算机视觉算法领域研究人员将收集符合问题描述的图像数据集,用于训练机器学习模型。然后,这些图像必须粘贴测试算法所需的数据。例如,如果他们正在创建对象检测算法,他们必须用图像中包含的对象的边界框数据标记每个图像

我们必须理解,我们思考问题和基本事实的方式将极大地影响我们创建的算法及其产生的效果

例如,如果目标检测算法是基于目标居中这一基本事实推导出来的,那么它可能在类似的图像工作得很好,但在包含多个分散目标图像中,它将失败得很惨。类似地,如果一个人脸识别算法只针对特定种族的人类图像进行验证,那么它在其他群体的图像上的表现会很差。正如Jaton在《算法的组成》中指出的那样;我们得到的是一个算法&quote;对于基本事实,我们设定了;积极看待基本事实,我们可以得出以下结论:作为技术,算法只能检索已定义的内容。因此,一旦算法产生结果,人们应该立即问以下问题:算法从哪个基本事实数据库获得?这将突出算法的固有局限性,它们只是优化技术,不会削弱它们的价值和美感 – - -它们可以说是迄今为止我们设计的最好、最漂亮的优化技术调查和记录基本事实过程对于研究算法及其对社会的影响非常重要,尤其是当它们承担敏感任务时。有很多例子表明,糟糕的设计会导致算法中的关键错误,例如做出错误和有偏见的决定,制造过滤泡沫,以及发布虚假新闻。越来越多的人希望了解和解决算法带来的风险。制定一个完整的研究过程研究和记录基本事实,将是解决这些风险的关键

Jaton 在《算法组成》中写道:;如果对算法组成有实质性影响的工作仍然是抽象和不确定的,那么我们仍然很难触及这一领域的生态。因此,只要我们在构建算法过程中能够更好地理解这一底层实践,就可以实现改变植根于算法中的偏见,提升多样性价值的目标。如果更多的研究能够在算法的源头探索基本事实实践,那么我们就可以慢慢揭示构成算法的潜在元素编程 算法最终进入编程阶段。在此阶段,人们创建一组模块和指令列表来解决定义的问题,并根据基本事实进行验证。虽然这一阶段通常被简化为一堆纯源代码,但Jaton在他的书中指出,编程的内涵远远不止一堆计算机指令;当认识论者探索程序存在的原因时,他们无法超越“程序”的形式,而“程序”需要得到清楚的解释。在所谓心理计算隐喻的恶性循环中,认知理论家最终提出了无数(心理)程序来解释(计算机)程序的发展;Jaton在《算法的构成》一书中写道,Jaton在他的书中描述了编程实践中有问题的观点深深植根于计算历史。科学家、研究人员和公司正试图将计算机框架定义为输入- 输出系统根据人脑图像构建。然而,在现实中,人类的思维最终被重新想象为计算机的有机版本。这些隐喻简化了编程,为数字大脑提供了正确的指令集。它们还塑造了程序员的培训和评估方式,更加强调指令编写,而忽视了软件开发的所有其他有价值的实践

在他的书中,jaton记录了他自己和他的团队在编写指令、意外发现错误、编写中间代码以找出问题根源方面的经验,并与其他团队成员进行谈判。他强调了调整和改进程序所采取的中间步骤的重要性,团队成员在改进代码时的相互作用,以及最终源代码中未反映的许多其他步骤和实践。在阅读他的书时,我开始思考编写代码和实现算法过程,以及对我的工作很重要的小细节,但我认为这是理所当然的;在我看来,编程实践中最被忽视的方面是编程过程中附带的所有详细的指导方针和规范(在编写程序时,这些指导方针和规范都会被放弃),“我认为;“Jaton说”;我发现所有这些散布在编程序列中的小作品和实验都非常强大。在我看来,将它们集成到编码实践的分析中肯定可以帮助我们更好地理解在这些吸引人的时刻发生了什么(因为正如DonaldKnuth所说,软件很难理解)Jaton说,对编程实践的微观社会学分析才刚刚开始,因此这方面的大多数命题都是探索性的。所以很难说它会做什么。然而,他相信,编程实践领域的微观社会研究将使算法设计更加灵活;更好地理解编程实践中涉及的原因和原因,可以让我们总结优秀程序员的特殊性,然后尝试将这种特殊性注入算法设计社区制定 最后,当一个算法被实现并根据基本事实进行验证时,它将成为一个数学对象,将来可以在其他算法中使用。算法必须经得起时间的考验,证明其应用价值,以及在其他科学和应用工作中的作用。一旦证明有效,这些算法将被抽象出来,并作为已证明的声明处理,无需进一步调查。它们成为其他算法的基础和组成部分,并有助于科学的进一步工作

但这里要强调的重点是,当问题、基本事实和实现被表述为一个抽象实体时,所有创造它的小细节和事实都将变得看不见,往往被人们忽视 STS 早就说过,科学物体需要在实验室制造,所以一旦有关科学物体的书面声明成为经证实的事实,这些实验室中的复杂仪器及其操作所需的实际工作往往会被人们抛弃

一旦人们对新的科学对象不再有争议或分歧,他们往往认为大自然已经包括了构建的科学对象 当一个事实得到证实并被纳入进一步的研究时,实验、仪器、,探索事实所涉及的社区和实践通常被搁置一旁

但关键是我们应该意识到,一旦算法开发出来,它将成为其他算法的基础,然后对基本事实编程、公式和其他实践作出贡献。深入理解算法组合的不同阶段将使我们能够更好地进行建设性讨论,并调查其更广泛的影响

Jaton写道:&quote;将算法概念视为经验编程和公式化活动的联合产物– - -它们本身通常由可能经历过类似构造过程的其他算法支持– - - 使全局更复杂、更容易理解事实上,每当人们对算法的效果产生争议时,他们都可以参考基本映射,共同考虑以下问题:算法中涉及的基本事实是如何产生的?从输入数据到输出目标的转换涉及哪些公式?所有这些都需要什么编程?如果需要更深层次的思考,争议方可以挖掘出另一个层次:哪些算法对这些经验编程和公式化过程做出了贡献?这些二阶算法是如何开始的

在放大并查看复杂的算法网络及其社会组件之后,我们得到了一个更广阔的图景,即我们和算法如何成为彼此不可分割的一部分。在这一领域,我们还有很多东西需要学习,需要重新考虑我们的观点;我越来越觉得,我们总是在其他算法的基础上构建新的算法,这让我们记住,算法的效果和使用问题仍然是社会上各种算法分析的核心。事实上,在阅读这本书时,人们有时会认为,关于算法的影响和使用的社会学/民族学理论与我们通常理解的有很大不同,但当你思考它时,这种区别是完全错误的。设计新算法的人也是社会的一部分。他们是使用其他算法的参与者,并在不同程度上受到这些算法的影响。他们有时使用这些算法来构建新的算法。因此,我们不能完全撇开算法的影响和使用,在研究算法的组成时,我们还必须包括对算法社会影响的研究原始链接:

/2022/02/21/constitution- of-阿尔戈尔ithms-佛罗里达州orian-贾顿/

相关推荐

作文欣赏2018年的第一场雪(二)