Machine learning 基于机器学习的属性映射

Machine learning 基于机器学习的属性映射,machine-learning,database-design,gensim,Machine Learning,Database Design,Gensim,我有几个具有不同列名的表,这些列名通过ETL映射。总共有大约200个表和500个属性,因此集合并不庞大 一些列映射如下所示: startDate EFT_DATE startDate START_DATE startDate entryDate 正如您所看到的,相同的列名可以跨不同的表映射到不同的名称 我试图解决以下问题: 给定两个模式,我希望在属性名之间找到匹配项 我想知道是否有一种方法可以利用gensim来解决这个问题,类似于Google示例中的源词。我面临的挑战是使用哪个数据集来训练模

我有几个具有不同列名的表,这些列名通过ETL映射。总共有大约200个表和500个属性,因此集合并不庞大

一些列映射如下所示:

startDate EFT_DATE
startDate START_DATE
startDate entryDate 
正如您所看到的,相同的列名可以跨不同的表映射到不同的名称

我试图解决以下问题:

给定两个模式,我希望在属性名之间找到匹配项


我想知道是否有一种方法可以利用gensim来解决这个问题,类似于Google示例中的源词。我面临的挑战是使用哪个数据集来训练模型。此外,我想知道是否有其他方法来解决这个问题

您可以通过预处理每个术语,将基本的
文本分析器应用于此

  • 由任何非字母字符分割。
    • e、 g.
      EFT\u日期
      变为
      [EFT,日期]
  • 用骆驼皮箱分开。
    • e、 g.
      startDate
      变为
      [开始,日期]
  • 每项小写
  • 对每个标记应用模糊字典查找
    • e、 g.
      startt
      ->
      start
      (打字错误检测…)
  • 应用词干分析
    • e、 g.
      启动
      ->
      启动
  • 可能应用同义词转换。
    • e、 g.
      开始
      ->
      开始
可选择对术语进行排序:

  • datestart
    ->
    [日期,开始]
  • 开始日期
    ->
    [开始,日期]
    ->
    [日期,开始]
现在可以应用
设置距离
操作-即
O(^2)
。考虑到你适度的基数,这很好。如果您的术语集比可伸缩的术语集更大,那么像下面这样的比较方法可以帮助降低复杂性

  • LSH林
    • 理论
    • python/sklearn
  • SimHash
    /
    MinHash
    • 理论
    • 蟒蛇
      • 辛哈什
      • minhash/simhash/其他

谢谢,这很有帮助。我计划有一个函数匹配(attr1,attr2),它在应用上述逻辑后返回两个属性之间的百分比匹配。给定两个模式,我将对属性进行笛卡尔积,只返回截止值超过某个级别的属性。这将有助于根据已经提供的培训确定可能的属性匹配,并且可以向培训集中添加新的输入,以提高未来的准确性。