微信
手机学习
智选
报班
  • 客服热线: 4008-000-428

算法和审计师

发布时间:2022年08月12日| 作者:Spiros Alexiou| 来源:转载于ISACA微信公众号| 点击数: |字体:    |    默认    |   

机器学习 (ML) 和人工智能 (AI) 的最新进展引起了人们对算法新的认识和关注,包括算法的使用和误用,以及算法的潜力和局限性。对于从业者特别是审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com来说,了解什么是算法以及它们为何重要,明白智能算法并不新鲜,以及人类在算法设计和度量中的决定性作用很重要。审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com的工作是使用正确的工具提出问题、解释结果并记住就算是使用最先进的算法也可能出现错误。

 

 

 


算法无处不在

 

 


 

“算法”一词通常与数学家和计算机科学家相关联,因此通常被认为过于专业和先进,外行人无法理解。然而,从本质上讲,算法是一种方法——一种解决任何人都能理解的特定问题的方法。例如,当婴儿通过哭声解决他们对营养、疼痛控制或注意力的需求问题时,算法可以像“如果饿了就哭”一样简单。同样,算法用于解决从烹饪到驾驶、故障排除或诊断医疗状况等各种类型的活动。不管你是不是这样想的,每次人类解决一个问题,不管这个问题看起来多么简单或复杂,人类都在使用一种算法。该算法可能是其他人发明的,并根据需要传递或开发出来。

 

算法不必很复杂。并非所有算法都是平等的——解决问题的方法有好有坏,而且每种变量都可能需要权衡。例如,使用判别公式编程求二阶代数方程的解并不是用计算机解决问题的好方法。类似地,如果程序的工作空间适合内存,则完全避免使用数据库通常会更有效。如果需要使用大量数据,这是不切实际或不可能的。关键是,使用一种算法可能既快又容易,使用另一种算法可能会慢得令人望而却步,甚至不可能算出答案。

 

潜在改变游戏规则的技术进步的可行性在很大程度上取决于找到一种能够加快计算速度的有效算法。一个例子是同态加密,它可以对加密数据进行操作,而无需先将数据转换为明文。然而,这种算法极大地增加了必须执行的操作的复杂程度。

 

 

同样的概念也适用于审计。与任何活动一样,审计涉及诸如检查“现状”与“应该是”的情况或查找相关性等任务,这些任务可能被分解为更小的子任务。检查“现状”和“应该是”的情况意味着一个算法:

 

 

 

  • 获取“现状”和“应该是”的版本

  • 执行启用比较所需的任何操作

  • 执行比较

  • 评估结果及其重要性

 

 

 

完整的算法涉及对所有一般任务以及如何执行每个子任务的详细规定。所有的复杂性和精密度都不应掩盖这样一个事实,即算法只是一个配方,或者仅是解决问题的一种方法,即使算法是复杂的或智能的。可以识别和改变解决问题方式的高度复杂和智能的算法已经存在多年。例如,微分方程的自适应求解器,可以根据问题使用显式或隐式方法调整其时间步长或攻击方法。

 

 

 


“完整的算法涉及所有一般任务以及如何执行每个子任务的详细规定。”


 


算法设计和指标:人很重要

 

 


 

计算机及其用来解决问题的算法只是遵循程序化的规定,对于可以学习的智能算法来说也是如此。即使是能够解决需要智能的问题的高度先进的程序也遵循这一规则,它可能具有精心设计的反馈机制。事实上,算法越智能,它通常就越专业。然而,输入数据和算法考虑的相关特性都是由用户和程序员决定的,在解释输出时必须考虑到这一点。

 

例如,如果计算机获得有关现有汽车及汽车的特性和历史的信息,并要求找出特性与事故之间的相关性,则选择由算法处理的特性至关重要。如果处理的特性中不包括最大速度、制动质量和其他因素,则结果可能包含虚假的相关性。例如,结果可能会发现汽车颜色和交通事故倾向之间存在相关性,而实际上其中一个并不影响另一个。同样,如果审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com分析了一个分行或跨分行的盗窃行为,但未能记录所涉项目的货币价值,那么分析很可能会遗漏非常重要的信息,结论可能存在缺陷。

 

领域内的专业知识在设计算法时至关重要。负责设计解决方案的人至少应该能够制定问题,并且无论细节多么复杂都能概述解决方案的关键特征。许多算法(如决策树)很容易过拟合并在没有某种类型指引的情况下发现虚假相关性。该指引的范围可以从定义可接受的容差到包括或排除某些信息,例如汽车颜色。这引发了可能存在偏见的问题(即忽略或加重不符合审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com经验、假设或偏见的潜在的不太重要的因素)。在前面的例子中,为什么审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com应该考虑被盗物品的货币价值而不是它们的颜色?小偷可能会选择偷某种颜色的物品。领域专家会选择货币价值作为相关特性,而不是被盗物品的颜色或制造商这一事实是偏见的一个例子,因为相关特性是审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com的经验、推理和信念的投射。这是不可避免的,在很多行业也是如此。例如,在研究因果关系时,只考虑了有限数量的可能原因。即使是最有说服力的科学实验也需要一个潜在的理论来测试(即效果 X 取决于参数 A、B 和 C)。在另一个例子中,当让一个物体下落来测试重力时,大多数人都会对力、速度和加速度进行理论分析。也就是说,首先必须有一个关于力的假设,而不是例如决定物体坠落的天气是晴天还是阴天。没有任何实验可以处理无数可能的原因。类似地,在设计一个复杂的算法来检查相关性并最终解决问题时,可能会有很多因素(例如货币价值、制造商、颜色)。没有算法可以处理无限数量的变量,原则上,这些变量可能与最终效果有因果关系。

 

图片来源于公共图片库

 

特别是在机器学习中,算法必须经过训练,而训练决定了算法的性能。这种训练可以比作教孩子。如果孩子在某个领域接受过培训,例如农业,孩子通常会在与农业相关的任务中表现良好,而在不熟悉的科目中表现不佳。如果训练中存在偏差(即不重要的因素突出,重要的因素没有全部突出),尤其是训练集相对较小时,那些经过训练的算法将具有内在的偏差。例如,从未接触过危险动物的孩子只有友好动物的概念。类似地,如果算法显示了多家医院及其医疗用品的成本,并且大多数医院和成本过高的医院都是儿童医院,那么该算法可能会得出结论,儿童与过多的用品之间可能存在联系。换句话说,如果算法要学习(从数据中),就没有无偏差学习之类的东西。最好的期望是一种允许多个数据源的多元算法。

 

 

 


“如果要学习算法(从数据中),就不存在无偏差学习这样的说法。”


 

 

 

算法中的偏见与在过去或现在的冲突中发现的不同国家历史的更多偏见版本无关。这有一个很好的理由——算法设计者通常对覆盖尽可能多的情况感兴趣,这样即使遇到罕见的情况,算法也能很好地处理它。当人们谈论算法偏见时,他们通常指的是提供给算法的数据中的偏差,使用不正确的算法来解决问题,或者是在性能不佳的数据集上使用算法。

 

由于数据中存在一定程度的偏差是不可避免的,因此检查数据很重要。正如科学家们试图将理论推向极限以测试它们,然后在必要时进行修订,人类的假设也应该进行测试,特别是如果已经产生了积极的结果。例如,在汽车颜色案例中,研究人员可以发现具有相同汽车颜色的不同年龄段的事故率是否相似。如果不是,那么汽车颜色不是决定因素。同样,在医院的例子中,可以检查所有儿童医院和综合医院的平均成本。

 

另一个重要的问题是必要的数据,算法对数据进行操作。为了证明或反驳一种假设,例如成本效益分析或确定报告中是否存在欺诈,算法需要数据——不仅仅是任何数据,而是回答特定问题所必需的数据。算法不会创建这些数据——确保算法拥有解决问题所需的所有信息和数据是人的工作。规划不当可能会导致使用任何可用数据来回答问题,而可用数据可能不足或与问题无关。即使确切的问题尚未浮出水面,对拥有回答各类问题所需的数据进行规划也是必要的。

 

人判断算法的相对成功或失败。在许多情况下,一种算法不必比另一种更好,但可能更健壮或更适合某种特定情况。数值分析中一个众所周知的例子是,(仅)使用隐式求解器解决刚性问题(即提高稳定性,从而通过求解具有更大时间步长的方程组来确保解的正确性)。

 

图片来源于公共图片库

 

例如,匹配算法可以返回假阳性或假阴性结果。通常,这是微调算法参数的产物,例如可接受的误差容限。可接受的定义取决于应用。如果调查假阳性的成本超过了收益,那么如果这意味着假阳性明显更少,则接受更多的假阴性结果可能是有意义的。

 

在欺诈检测等功能中,使用监视算法识别欺诈案例,不希望每次遇到都收到警报。相反,该算法被设置为可容忍一些欺诈(如果调查成本超过潜在损失)并专注于更重要的案件。在这种情况下表现良好的相同算法可能不适用于具有许多积极因素的情况。在每天只有少数真实案例的情况下,有效引入大量假阴性的算法仍然是可以接受的,因为要调查的案例是可以管理的。另一方面,每天有数百案例引入同样或更多的假阴性,这可能意味着必须加倍工作人员来调查假阳性结果。

 

图 1 通过比较四种不同算法的灵敏度与敏感度说明这个概念。灵敏度是引发误报的趋势,定义为假阳性 (FPs) 或被算法错误识别为异常或有趣的案例与 FPs 和真阴性 (TNs) 之和的百分比,其中TNs为正确识别的非例外或有趣案例。敏感度是真阳性 (TPs) 或被正确识别为有趣或例外的案例与 TPs 和假阴性 (FNs) 总和的百分比比率,其中FNs为被错误地标记为不感兴趣或非例外案例。此图上的理想落点位于左上角,表示 100% 敏感度(无 FN)和 0% 灵敏度(无 FP)。然而,在实际应用中,这并不总是可行的,必须做出一些妥协。

 

审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com通常不会对算法设计投入太多,除非他们自己设计算法。然而,审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com的投入是有价值的,因为在设计或评估算法时,必须考虑对应算法每个潜在用途的数据及处理。未能确定根本原因可能意味着企业正在更换运行良好且昂贵的设备,而不是更便宜的电源。算法可以模仿人类的思维,但前提是它们被设计成这样做的。

 

 

 

 


对结果的解释是一项人工任务

 

 


 

算法可能返回不正确的结果,原因可能是算法本身的缺陷(逻辑)或实现(编码)错误。

 

算法(逻辑)错误通常由算法设计中未考虑的执行期间出现的条件引起。例如,插值方案(AI 算法如神经网络可以被认为是一种插值方案3)通常在提供数据的范围内(用 ML 的行话来说是训练数据)运行良好;但是,如果遇到超出该范围的数据则容易陷入困境。一些逻辑错误,如被零除,会导致程序失败——特别是如果测试不够彻底而没有考虑到这些错误的情况——但有些则不会。复杂的算法使测试变得更加困难,并可能导致更多错误,这些错误常被用来入侵系统。

 

编码错误是指算法是正确的,但是出现了简单的拼写错误之类的编码错误情况。逻辑或编码错误可能由在测试过程中很少被检测到的事件触发。这就是为什么算法的响应在理想情况下应该伴随着它所基于的确切原始数据和解释。某些算法不需要解释。例如,排序算法的解释是按请求对数据排序。可以对某些算法编程以提供其结论的推理;然而,对于其它网络,例如神经网络,可能很难用普通人容易理解的术语解释结果。

 

然而,假设逻辑和编码错误都没有出现,结果最终必须由人来解释。计算机处理数字并返回对所提出问题的数学翻译的答案。这与实际问题的关系可能并不简单,取决于数学问题的解决方案对实际问题的回答程度。例如,在检查报告的商店收入与所售商品价格的总和时,如果存在差异,则可以得出结论性的答案。但是,在比较关键绩效指标 (KPI) 时,务必谨慎得出 KPI 不支持的结论。作为指标,KPI 并不能最终证明存在或不存在问题。它们也不总能提供对实际发生事情的见解。设计正确的算法来证明某事不仅需要数学技巧,还需要对实际问题以及验证或不验证所需的内容有透彻的了解。

 

 

 


“审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com必须确保测试的工具能够回答审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com提出的问题。”


 

 

 

审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com必须确保测试的工具能够回答审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com提出的问题。企业通常拥有许多不同复杂程度的工具,但这些工具通常旨在回答运营问题,而这些问题可能不是审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com需要回答的。例如,警报暗示潜在问题的可能发生,如异常繁忙的交通、可能的设备故障、电池电量不足或不利的环境条件(如温度或湿度),但这些问题可能不会在解决后保留。对于审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com来说,此类警报中的趋势或模式可能很有趣,但在日常操作中,除了眼前的问题外,可能没有时间解决任何问题。当企业购买或构建新系统时,审计人员应确保系统包括导出能力。使用新系统可能会干扰正常操作;因此,理想情况下审计人员应可以选择获取系统的原始数据,并使用适当的算法回答审计问题。

 

了解统计学意义也很重要。例如,推荐引擎是一个根据用户数据和相似用户的偏好提出建议的程序,它隐含的假设认为用户与某个组相似。即使这种相似性是正确的,在某些此类组中的小样本也很容易导致统计数据不佳。在汽车示例中,如果算法使用一组很少发生事故的汽车进行训练,而发生事故的汽车主要是某种颜色,则算法可以将这种颜色汽车与事故倾向联系起来。在许多情况下,用户只关心算法的明确答案,因此,算法设计者可能会隐藏或无法生成在答案中增加误差条(即结果被认为准确到 10%)或保留的信息,如果大多数用户无论如何都会丢弃此类信息的话。

 

对实际结论的支持不能随意,而必须以信息为基础。未能理解结果及其所有假设和警告可能会带来极大的问题——尤其是当证明的需要被计算机输出取代时更是如此。一个众所周知的例子是使用面部识别算法识别模糊图片误认了嫌疑人。4 在这些情况下,当图片对比度不那么清晰时,算法的表现会更差,而警察盲目地根据这些建议采取行动会加剧错误。在这些情况下,算法的最佳用途是接受关于可能嫌疑人的建议并开始调查,而不是直接指认嫌疑人。这同样适用于审计。使用相关性来寻找可能欺诈的指标是一回事,但根据算法发现的一些相关性来指责人们欺诈则是完全不同的。无论使用什么数据,指标都不是证据,基于算法证明信念是极其危险的。

 

图片来源于公共图片库

 

算法偏差引起了抱怨 。在一个案例中,抗议迫使英国政府放弃了一种算法,该算法用于根据学生的校内排名和历史学校表现来确定大学录取率。抗议者认为,贫困学生受到歧视,他们的观点是有道理的。问题在于该算法不是为解决实际问题而设计的。对个体学生排名并不比假设糟糕的球队不会变得更好,或者假设糟糕球队中最好的球员比好球队中最好的球员更差更有意义。抗议者瞄准了算法;然而,错误实际上来自决定使用错误算法的人。

 

算法偏见这一术语意味着智能算法可能会使用统计数据歧视某些人。一个例子是企业的推荐引擎用于评估申请人,据报道该引擎歧视女性。

 

 

 


“无论审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com是否从这些方面考虑,他们对设计算法并不陌生。”


 

 

 

该算法似乎在使用过去成功和失败的简历来挑选候选人的理想特征,而性别或与性别相关的信息就是这样的一条信息,与儿童医院的例子并无不同。即使忽略在一个性别申请人太多而另一种性别申请人太少的领域中具有统计意义的问题,关键是如果不考虑候选人的确切理想品质,则没有智能算法可以为雇主确定这些品质。拒绝对决定负责并将决定委托给程序或算法,意味着招聘人员承认招聘工作可以被机器取代。

 

正如理论物理学家 Eugene Wigner 所说:“很高兴知道计算机能够理解这个问题。但我也想了解它。”7 最终,一切都以成功或失败来衡量。如果算法产生的建议比人类的表现更好、更便宜,那么用机器决策代替人工决策将面临巨大压力。另一方面,算法没有法律行为能力,如果其结果对任何人有害,则不能被起诉。这是一个常见的争议,可能会导致妥协,算法必须解释其决定,并且已经有一些步骤可以达到这种效果。⁸'⁹

 

 

 


对审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com的影响

 

 


 

算法在两个方面与审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com相关。首先,审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com通常有一项任务(审计),这要求他们调查和回答问题,如特定控制措施或控制系统是否有效。为了解决问题,审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com需要设计一种算法或审计计划,同时描述他们将如何解决问题。无论审计计划是否编写,无论审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com使用第三方软件还是自己编写软件,审计人员都在使用一种算法。无论他们是否从这些方面考虑,审计人员对设计算法并不陌生。他们至少应该以非技术术语理解为得出结论而必须回答的问题。如果他们不能管理技术方面,可以寻求技术帮助,但知道必须比较什么是审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com的工作。

 

图片来源于公共图片库

 

使用算法,尤其是 ML 算法来做出决策会使企业面临风险。尽管管理层最终会就其愿意接受的风险做出决定,但客观地告知管理层风险是审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com的工作。常见的风险领域包括:

 

 

 

  • 算法或其实现中的错误以及算法未考虑到的实践中可能出现的情况。这可以通过算法分析或测试来诊断。程序通常是专有的,并且文档(如果有的话)通常不够详细,无法准确了解算法在做什么。即使是这样,对于非专家来说,它也可能很复杂且难以理解。用户验收测试 (UAT) 通常由用户设计,并侧重于证明通用案例有效。罕见的情况通常不会被考虑,但审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com对这些最感兴趣。用户和审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com的关注点不同,但又是互补的;用户专注于良好和高效地完成日常工作,而审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com则对可能出现的错误感兴趣。

 

 

 

 

 

  • 提供给算法(尤其是机器学习算法)以供训练的数据的正确性和充分性。这样的数据应该能够涵盖通常和不寻常的情况。审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com担心在极少数情况下训练不佳,从而导致算法产生不正确的结果。

 

 

 

 

 

  • 相信机器答案的倾向很强,但只有在正确性已经过详尽测试并且机器实际回答了适当的问题时才被证明是合理的。

 

 

 

 

 


“必须精确定义公平等人类观念并将其纳入算法,因为这些观念不是算法可以自行学习的东西。”


 


结论

 

 


 

审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com是用于解决审计问题的算法的专家,即使算法设计的技术方面需要委托给专家。回答审计问题的所有权和责任在于审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com

 

审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com在构建或采购系统时的早期影响,将预测对数据的潜在需求,以及算法处理审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com感兴趣的数据范围和回答审计中感兴趣的问题的能力。

 

在使用软件工具的结果时,审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com应确保结果为审计提出的实际问题提供合理的答案,并理解作为算法设计一部分的假设和警告。

 

审计师该内 容 由 中 审网 校 所 属w w w. au dit cn.com还应了解逻辑或数据中的潜在偏见,了解它们如何影响结果并了解可以采取哪些措施来减轻这些偏见。控制算法的行为很重要。必须精确定义诸如公平之类的人类概念并将其内置到算法中,因为这些观念不是算法可以自行学习的东西。

热销商品推荐
学员心声