python判斷位址 python 位址相似性判斷

2021-10-13 06:19:30 字數 1637 閱讀 8397

一、概述

位址相似性判斷在金融反欺詐中有重要的應用,通過相似的位址判斷,構建知識圖譜,可以獲取申請客戶是否屬於同公司的欺詐申請。

二、關鍵步驟

(1)位址分詞

(2)製作位址語料庫

(3)相似性判斷

三、python實現

1.依賴包:jieba,gensim

2.位址歷史資料

3.測試位址

「北京市朝陽區建國門外大街5號院」

4.**

# 1 分詞

# 1.1 歷史比較文件的分詞

all_doc_list =

for doc in all_doc:

doc_list = [word for word in jieba.cut_for_search(doc)]

# doc_list = [word for word in jieba.cut(doc)]

# 1.2 測試文件的分詞

doc_test="北京市朝陽區建國門外大街5號院"

doc_test_list = [word for word in jieba.cut_for_search(doc_test)]

# doc_test_list = [word for word in jieba.cut(doc_test)]

# 2 製作語料庫

# 2.1 獲取詞袋

dictionary = corpora.dictionary(all_doc_list)

# 2.2 製作語料庫

# 歷史文件的二元組向量轉換

corpus = [dictionary.doc2bow(doc) for doc in all_doc_list]

# 測試文件的二元組向量轉換

doc_test_vec = dictionary.doc2bow(doc_test_list)

# 3 相似度分析

# 3.1 使用tf-idf模型對語料庫建模

tfidf = models.tfidfmodel(corpus)

# 獲取測試文件中,每個詞的tf-idf值

tfidf[doc_test_vec]

# 3.2 對每個目標文件,分析測試文件的相似度

index = similarities.sparsematrixsimilarity(tfidf[corpus], num_features=len(dictionary.keys()))

sim = index[tfidf[doc_test_vec]]

# 根3.3 據相似度排序

sorted(enumerate(sim), key=lambda item: -item[1])

結果[(3, 0.7674924), (7, 0.73630047), (4, 0.7342692), (10, 0.7111159), (0, 0.70615286), (11, 0.42776945), (6, 0.3859625), (2, 0.3746654), (8, 0.36219177), (1, 0.35470122), (9, 0.30778316), (5, 0.29451278), (12, 0.08421353), (13, 0.0), (14, 0.0), (15, 0.0), (16, 0.0), (17, 0.0)]

5.優化方向

1.是否需要加停用詞過濾?

Python批量判斷IP位址所屬地區

首先安裝python擴充套件庫netaddr,然後對下面的 進行簡單修改後即可滿足某些場合的應用。from random import randrange from netaddr import iprange defiprangetest ipaddr,iprange 遍歷ip位址與地區分布對應關...

python怎麼判斷IP位址的合法性

使用 python判斷ip位址合法性的方法。1,python實現 root yang python vi check ip.py usr bin python import os,sys defcheck ip ipaddr import sys addr ipaddr.strip split 切割...

python 判斷乙個IP位址是否合法

最近在看tornado的原始碼,遇到了 is valid ip ip 這個函式,該函式用來判斷乙個ip位址是否合法,支援ipv4和ipv6,想到自己前陣子也遇到過這個問題,看著原始碼的解決方法要比自己的好多了,就摘抄下來,以留備用 def is valid ip ip returns true if...