搜索文档

输入关键词,回车打开结果

破产重整中 68 份异构尽调材料的实体消歧与可审计台账数据对齐算法实现

在破产重整案件的早期,管理人面临的核心困难是数据的混乱与割裂

由于企业停产、高管离职,移交的资料包往往包含 68 份乃至上百份来源不同的扫描件、手机照片和 Word 草稿。同一个自然人可能以“法定代表人”、“名义股东”、“关联担保人”等不同身份出现在不同协议中,且留下的手机号、住址等信息均不一致。

为了理清这些复杂的底牌,必须在最前端建立一套严密的“实体消歧”与“级联数据对齐”算法。

一、 实体消歧(Entity Resolution)算法原理

在海量文档中,我们需要确定:合同 A 里的“张伟”和营业执照 B 里的“张伟”到底是不是同一个人? 实体消歧的核心依据有三点:

  1. 唯一标识对齐:如果有完整的身份证号码或信用代码,则直接归并。
  2. 关联信息编辑距离(Levenshtein Distance):比对地址、公司座机、个人邮箱的文本相似度。
  3. 协同网络匹配:比对他们的核心关系网。如果两个“张伟”都与“A 控股公司”产生过交易,则极大概率为同一人。

二、 实体消歧核心算法 Python 实现

以下代码展示了如何使用 Python 处理尽调数据,利用编辑距离与证件信息对异构实体进行自动消歧与融合:

from difflib import SequenceMatcher

def string_similarity(a, b):
    # 计算两个文本的相似度分值
    return SequenceMatcher(None, a, b).ratio()

def resolve_entities(raw_entities):
    """
    raw_entities: 格式为 [{'name', 'phone', 'id_card_tail', 'address', 'doc_ref'}]
    """
    merged_entities = []
    
    for entity in raw_entities:
        is_merged = False
        for m_entity in merged_entities:
            # 1. 强匹配:如果身份证后四位一致且名字相同
            if (entity['id_card_tail'] and m_entity['id_card_tail'] and 
                entity['name'] == m_entity['name'] and 
                entity['id_card_tail'] == m_entity['id_card_tail']):
                m_entity['phone'].update(entity['phone'])
                m_entity['doc_refs'].append(entity['doc_ref'])
                is_merged = True
                break
            # 2. 弱匹配:名字相同,且地址或手机号高度相似
            elif entity['name'] == m_entity['name']:
                addr_sim = string_similarity(entity['address'], m_entity['address'])
                phone_intersection = entity['phone'].intersection(m_entity['phone'])
                if addr_sim > 0.75 or len(phone_intersection) > 0:
                    m_entity['phone'].update(entity['phone'])
                    m_entity['address'] = max(entity['address'], m_entity['address'], key=len)
                    m_entity['doc_refs'].append(entity['doc_ref'])
                    is_merged = True
                    break
                    
        if not is_merged:
            # 新建独立实体
            merged_entities.append({
                'name': entity['name'],
                'phone': set(entity['phone']) if entity['phone'] else set(),
                'id_card_tail': entity['id_card_tail'],
                'address': entity['address'],
                'doc_refs': [entity['doc_ref']]
            })
            
    return merged_entities

三、 生成影像级可审计台账

消歧合并后,智能体会为每个实体生成唯一的 ID(如 SUB-01),并建立如下结构的对齐台账,将每个字段溯源到原始文件:

主体 ID主体名称发现的所有手机号溯源文件路径置信度
SUB-01张伟[13800000001, 13800000002]//NAS/Case-01/委托书.pdf#page=20.98

审计师在核对时,点击“溯源文件路径”即可瞬间在本地阅读器里打开对应的 PDF 并自动高亮显示签字文字区域。

四、 结论

基于实体消歧算法的尽调技术,改变了以往重整资产清点时“纯人工肉眼找名字”的低效做法,从制度和算法上消除了关联人隐瞒、漏报的漏洞,保证了尽职调查结论的客观与严谨。

准备好体验全能智能体了吗?

下载 OmniAgent 社区版,体验真正的本地 AI 自动化。数据安全、永久免费。