网络讨论是否可以更形式化

一般的网络讨论会频繁地出现表述不明确和逻辑不严密的问题。一个人在写一篇文章的时候,其论点是潜藏在文本里的,读者理解的过程其实是从文章中抽离出命题和推理,那么我们不如直接从命题的角度去构造讨论。

以下是一个初步形式化的例子:

QUESTION 美国是否存在系统性的种族歧视?
  CLAIM 美国存在种族歧视
    REASON 黑人中位数收入显著低于其他种族
    REASON 种族不会代表工种及能力差异

  CLAIM 黑人中位数收入显著低于其他种族
    REASON https://en.wikipedia.org/wiki/Racial_wage_gap_in_the_United_States

  CLAIM 美国存在种族歧视
    REASON 警察对黑人使用暴力显著频繁于其他种族

QUESTION 是否应该通过Affirmative Action解决种族歧视?
  QUESTION Affirmative Action有什么好处?
    CLAIM AA可以改善已经固化的系统性歧视
      REASON 黑人的低收入现状使其无法自发地改变生存状态

  QUESTION Affirmative Action有什么坏处?
    CLAIM AA使种族分化更为严重
      REASON 特殊优待会引起其他种族对黑人的敌意
      REASON AA的存在会反复提醒某些人是异族

  QUESTION Affirmative Action是否可行?
    CLAIM AA会导致针对种族背景的造假
      REASON 这样的造假会带来高回报
      REASON 这样的造假是可行的,例如使用黑人名字

这个形式化首先会明确要研究的问题,然后针对问题提出一些claim,再针对claim提出一些理由。这样做的好处是,论证的每一个部件是易于观察的,可以直接针对某个reason或者某个claim作出更细致的思索或反驳。更进一步,我们还可以规范对概念的定义,例如一个概念一定要有可判断的标准和例子。

我一直在尝试做这样的一个网站产品,但是设计和实现都存在着非常大的困难,所以发来aspasia看看有没有同样感兴趣的人可以一起设计。实际上用claim/reason来形式化是非常初步的,理想情况下还要引入命题逻辑和谓词逻辑,还要提醒用户考虑不同的可能性,实际上做下来就是对人类reasoning提供一套辅助工具。

2 Likes

这个有点像语义网,据我所知应该偏向于发掘知识,可以具体说说你觉得它有关联的地方是什么吗?我比较关心意思的传递,如何让自己的意思明确无误地传达给别人,这就要求概念的定义是可以检测的,还有观点也是可以检测的。实体的话其实没多少,就definition(词典里的一个词,一个词会有几个proposition来表明什么东西落入这个范围里),proposition(包含definition的有真值的描述,但是真值未定),就这两个就足以构成任何观点的表达了,但是问题也在于他们是相互嵌合的,要尽可能确定他们的意思非常困难。这会有点偏向于语言的问题,而语言上也没有可用的atomism,导致同意表达也非常难合并成一个。

目前而言我没怎么考虑过这个东西要怎么有经费和盈利,完全是因为觉得人在沟通的时候非常低效,需要一些形式化的帮助,但我同时也观察到,认同这种思维方式的人不需要工具也可以做的很好,而本身表达凌乱的人也不会愿意受到工具的约束,所以大致上是没有市场的。

谢谢回复,我觉得你说的是会需要的,相当于能包涵谓词逻辑,但是这个还不是最主要的难点。例如这样的一个观点:1) 人应该言而有信 。这是一个很常见的句子,但是不同的人提到它的时候内心想的东西是不同的,有可能是“满足一定条件才应该言而有信,而对不满足的人没必要言而有信”,然后就会又要考虑到这个人想法里的“一定条件”指的是什么。

我想要做的一部分就是,尽可能明确这些含糊的地方,然后以直观的方式展现,让别人可以非常容易看到不同观点之间的差异。想要形式化地检验一个命题是不太做得到的,实际讨论遇到的命题很难明确真值,也不一定是deduction,所以更倾向于“减少沟通障碍”和“帮助拆分问题”这样的目的。

我现在还在想模型要怎么做。顺带一提,我之前说proposition而没有强调逻辑推论是因为,现实中的观点不一定能写成逻辑推论的,例如“A和B很大概率导致C”,这个句子是很常用的,但是它并不是推论,也不能用valid与否来衡量。实际上能用validity衡量的命题是不是非常少?可能对不同谓词也需要对其用法以及判定方式建模。

我觉得你这个需求有点模糊。你似乎又想保证可以处理模糊的自然语言,又想兼顾演绎/归纳/非形式推理。但这个要求是不是有点高?不妨先从简单的功能开始实现?比如说,先假设在数理逻辑系统下,实现判断演绎有效性的功能。除了判断有效性之外,这样的一个程序还可以做的是:给定一个并不有效的论证,让系统指出什么样的前提可以让我们可靠的得到这样的结论;或者说给定一个形式有效的复杂论证(比如说包含7-8以上的个命题),我们可以让系统生成可以反驳这一论证的若干命题。其次,也有一些试图把归纳还原成演绎的尝试。我以前看过colin howsn等人的一些著作是关于这个的。所以要想做肯定有实现的途径。

再次,在语义层面,你需要假设用户输入的句子是结构清晰、语境简单明确、不存在索引词的;而不是允许用户随意输入一段话,让你的程序来判断语义。

  1. 人应该言而有信 。这是一个很常见的句子,但是不同的人提到它的时候内心想的东西是不同的,有可能是“满足一定条件才应该言而有信,而对不满足的人没必要言而有信”,然后就会又要考虑到这个人想法里的“一定条件”指的是什么。

以上这个例子其实我觉得不是很合适。字面意义上看“人应该言而有信”,那就应该使用带量词的道义逻辑:对于任何人x,x应该言而有信。但如果你把这句话理解为“满足一定条件才应该言而有信,而对不满足的人没必要言而有信”,那这个句子的语义、真值条件都和前面不一样了。而且“一定条件”过于含糊了,你只能把它理解为“存在某些条件x,若满足该条件,则。。。。”

而且我想你多少要使用一些自然语言处理的技术。之后用户输入一段话(论证),系统起码要大致判断分离出算子、词项、谓词。之后你可以逐句问用户:请问,您说的“xxxx”指的是以下哪一种含义呢:A。B。C。D。 在明确用户的表达之后,就可以像上面说的那样,判断有效性、指出缺乏什么条件、如何反驳了。——如果这一系列功能可以实现,那么至少我是觉得还挺有用的。

啊,NLP就真是很难,我没学过这个。其实你说的那个interactively询问用户不明确的地方,我是有想过的,但是后来会觉得让其他用户来提问,然后原作者做更细致的阐述来明确句子会比较现实。不过我也可以再去了解一下,因为这个就非常接近我的目的。我迟点去查查 colin howsn 。

那个句子稍作改变(比如增减一个介词短语),语意完全变了的情况在现实中真的有很多,所以这个是需要解决的目标。一个人表达观点可能会有很多隐含前提,这些隐含前提是不是可以通过一种算法去提示出来,然后交给用户确认?我觉得信息会不够。所以可能需要不同用户间对抗性的交互,比如用户A提一个命题,用户B提一个例子,问这个例子是不是涵盖在这个命题里,如果A发现他的命题叙述会容许模糊,那就应该加上一些定语来修正,让B提出的例子可以明确判断属不属于命题的主语。

之后就是怎么设计一个结构还有ui ux,让这种交互可以方便实现。

我知道有一些学者在对哲学文本进行corpus analysis,但其实效果都不是很好。

另外你可以把这个当成类似grammarly这样的,教学、研究辅助软件。当用户输入一个句子,系统提示几个可能更清晰的表达(但也可能用户原先的表达更好)。这个软件的作用不是在于揭示未澄清的预设,而是提醒用户这个论证存在未澄清的预设。
——但总而言之,你不能把还原隐含条件、预设、语境、甚至隐喻当成这个软件的功能,我觉得那样完全无法实现。

我姑且算是在做这方面的研究。你这个软件的开发如果有进展,麻烦告诉我。

好的,我想想看