Share my experiences in MCS Artificial Intelligence



This is hard code for calculating minimum edit distance between 2 words by Levenshtein method in Python. You can write more userfriendly code by Numpy package.

 

word1 = str("$#"+input('Please insert first word: '))
word2 = str("#"+input('Please insert second word: '))
#------------------------------------------------------
def Min(a,b,c):
    result =a
    if(b<a):
        result =b
    elif(c<b):
        result = c
    elif(c<a):
        result=c
    
    return result
#------------------------------------------------------           
def Define():
    
    resultList=[]
    resultList.append(list(word1))
    for i in range(0,len(word2)):
        resultList.append(list(word2[i]+("0"*(len(word1)-1))))
        
    return resultList
#------------------------------------------------------
def Initial():
    
    resultList = Define()
    for i in range(1,len(word1)):
        resultList[1][i]=i-1
    for j in range(0,len(word2)):
        resultList[j+1][1]=j
        
    return resultList
#------------------------------------------------------
def Calculate():
    resultList = Initial()
    for y in range(2,len(resultList[0])):
         for x in range(2,len(resultList)):
                if(resultList[x][0]==resultList[0][y]):
                    resultList[x][y]=int(resultList[x-1][y-1])
                else:
                    resultList[x][y]=Min(int(resultList[x-1][y-1])+2,
                                            int(resultList[x-1][y])+1,
                                            int(resultList[x][y-1])+1)
                    
    
    return resultList
#------------------------------------------------------
levenshteinMatrix = Calculate() 
for item in levenshteinMatrix:
        print(item)
        
print("Minimum Edit Distance is {0}".format(levenstienMatrix[-1][-1]))
 


تبلیغات

آخرین ارسال ها

آخرین جستجو ها

^Love yourself^ معجزات علمی قرآن کریم نوشته های مداد سیاه دوازده فروردین صفحه شخصی آرام دیجی وندا ابزاری هوشمند برای رسیدن به تکنولوژی دیجیتال server78 پایان نامه جامع دانش کد تخفیف آزمون ماز