কম্পিউটার

পাইথন ব্যবহার করে পৃষ্ঠা র‌্যাঙ্ক অ্যালগরিদম এবং বাস্তবায়ন


PageRank অ্যালগরিদম ওয়েব পৃষ্ঠাগুলিতে প্রযোজ্য। ওয়েব পেজ একটি নির্দেশিত গ্রাফ, আমরা জানি যে দুটি উপাদান নির্দেশিত গ্রাফসার -নোড এবং সংযোগ। পৃষ্ঠাগুলি হল নোড এবং হাইপারলিঙ্কগুলি হল সংযোগ, দুটি নোডের মধ্যে সংযোগ৷

আমরা PageRank দ্বারা প্রতিটি পৃষ্ঠার গুরুত্ব জানতে পারি এবং এটি সঠিক। PageRank এর মান হল সম্ভাব্যতা 0 এবং 1 এর মধ্যে হবে।

একটি গ্রাফে পৃথক নোডের PageRank মান সমস্ত নোডের PageRank মানের উপর নির্ভর করে যা এটির সাথে সংযোগ করে এবং সেই নোডগুলি চক্রাকারে সেই নোডগুলির সাথে সংযুক্ত থাকে যার র‍্যাঙ্কিং আমরা চাই, আমরা PageRank-এ মান নির্ধারণের জন্য অভিসারী পুনরাবৃত্তি পদ্ধতি ব্যবহার করি৷

উদাহরণ কোড

import numpy as np
import scipy as sc
import pandas as pd
from fractions import Fraction
   def display_format(my_vector, my_decimal):
      return np.round((my_vector).astype(np.float), decimals=my_decimal)
      my_dp = Fraction(1,3)
      Mat = np.matrix([[0,0,1],
      [Fraction(1,2),0,0],
      [Fraction(1,2),1,0]])
      Ex = np.zeros((3,3))
      Ex[:] = my_dp
      beta = 0.7
      Al = beta * Mat + ((1-beta) * Ex)
      r = np.matrix([my_dp, my_dp, my_dp])
      r = np.transpose(r)
      previous_r = r
   for i in range(1,100):
      r = Al * r
      print (display_format(r,3))
if (previous_r==r).all():
   break
previous_r = r
print ("Final:\n", display_format(r,3))
print ("sum", np.sum(r))

আউটপুট

[[0.333]
[0.217]
[0.45 ]]
[[0.415]
[0.217]
[0.368]]
[[0.358]
[0.245]
[0.397]]
[[0.378]
[0.225]
[0.397]]
[[0.378]
[0.232]
[0.39 ]]
[[0.373]
[0.232]
[0.395]]
[[0.376]
[0.231]
[0.393]]
[[0.375]
[0.232]
[0.393]]
[[0.375]
[0.231]
[0.394]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
[[0.375]
[0.231]
[0.393]]
Final:
[[0.375]
[0.231]
[0.393]]
sum 0.9999999999999951

  1. পাইথনে স্ট্যাক এবং সারি হিসাবে তালিকা ব্যবহার করা

  2. পাইথন এবং স্ক্র্যাপি ব্যবহার করে ওয়েব স্ক্র্যাপিং?

  3. পাইথনে OpenCv ব্যবহার করে ছবি সংযোজন এবং মিশ্রণ

  4. একটি ম্যাকে পাইথন 3 আপগ্রেড করা এবং ব্যবহার করা