1. 程式人生 > >【python 走進NLP】標籤別名語義相似度匹配演算法

【python 走進NLP】標籤別名語義相似度匹配演算法

標籤別名語義相似度匹配演算法:
這裡寫圖片描述

# -*- encoding=utf-8 -*-

import pandas as pd
import numpy as np
import time
time1=time.time()


#定義一個標籤有別名的合併函式
def combine_tag_name_alis(data1,data2):
    """
    :param data1: 別名集
    :param data2:標籤集
    :return: 合併後的結果集
    """
    # 篩選資料,找到有別名的標籤
    data3 = data1[data1['alias'
].isin(data2['key'])] data4=data2[~data2['key'].isin(data3['alias'])] #語義相似標籤去重 name1= list(set(data3['name'])) name2=list(set(data4['key'])) name3=name1+name2 name4=list(set(name3)) return name4 if __name__ == '__main__': # 讀取別名資料集 data1 = pd.read_excel('C:/Users/xiaohu/Desktop/文字挖掘/標籤語義相近發現合併演算法/data/kktribe_tag_1.xlsx'
) # 讀取標籤資料集 data2=pd.DataFrame({'key':['詹皇','小皇帝','內馬爾','世界盃','姆巴佩','詹姆斯','姆巴佩','里奧·梅西','梅西','Lionel Andrés Messi','小老虎','凱文-杜蘭特','凱文·杜蘭特']}) # 合併之後的標籤集 name=combine_tag_name_alis(data1,data2) print(name) time2 = time.time() print('總共耗時:' + str(time2 - time1) + 's'
)
['梅西', '沃爾科特', '姆巴佩', '詹姆斯', '內馬爾', '杜蘭特', '世界盃']
總共耗時:0.07813286781311035s

Process finished with exit code 0