حول ما يحدث عندما تستخدم Google كلمة "vs"

حدث لك: أنت تبحث عن شيء ما على Google وتدخل "vs" بعد كلمة البحث ، على أمل أن يقدم لك محرك البحث تلقائيًا شيئًا مشابهًا قليلاً لما تحتاجه؟





إدخال "vs" بعد كلمة البحث



حدث هذا لي.



كما اتضح ، هذه مشكلة كبيرة. هذه تقنية ، عندما تبحث عن بديل لشيء ما ، يمكن أن توفر الكثير من الوقت.



أرى 3 أسباب تجعل هذه التقنية تظهر نفسها بشكل مثالي إذا تم استخدامها للبحث عن معلومات حول التقنيات وبعض التطورات والمفاهيم التي يريدون فهمها:



  1. أفضل طريقة لتعلم شيء جديد هي معرفة كيف هو ، جديد ، مشابه لما هو معروف بالفعل ، أو كيف يختلف الجديد عن المعروف. على سبيل المثال ، في قائمة الجمل التي تظهر بعد "vs" ، يمكنك أن ترى شيئًا يمكنك أن تقول عنه: "وهكذا ، اتضح أن ما أبحث عنه يبدو هكذا ، وأنا أعلم بالفعل".
  2. — . , , .
  3. «vs» — , Google , - -. «or», - -. , «or», Google , - .




من خلال معالجة طلب "bert or" ، ستنشئ Google اقتراحات لشارع Sesame Street. ويعطيني bert vs query نصائح حول Google BERT.



لقد جعلني ذلك أفكر. ولكن ماذا لو أخذنا الكلمات التي اقترحتها Google بعد إدخال "vs" والبحث فيها ، وإضافة "vs" بعدها أيضًا؟ ماذا لو كررت هذا عدة مرات؟ إذا كان الأمر كذلك ، يمكنك الحصول على رسم بياني شبكي لطيف للاستعلامات ذات الصلة.



على سبيل المثال ، قد يبدو هذا.





رسم الأنا لاستعلام بيرت بنصف قطر 25



هذه تقنية مفيدة للغاية لإنشاء خرائط ذهنية للتكنولوجيات أو التطورات أو الأفكار التي تعكس الترابط بين هذه الكيانات.



سأتحدث عن كيفية بناء مثل هذه الرسوم البيانية.



أتمتة جمع البيانات "ضد" من Google



إليك رابط يمكنك استخدامه للحصول على اقتراحات للإكمال التلقائي بتنسيق XML من Google. لا تبدو هذه الميزة كواجهة برمجة تطبيقات مخصصة للاستخدام على نطاق واسع ، لذلك ربما لا يجب أن تعتمد كثيرًا على هذا الرابط.



http://suggestqueries.google.com/complete/search?&output=toolbar&gl=us&hl=en&q=<search_term>


output=toolbarتشير معلمة URL إلى أننا مهتمون بالنتائج بتنسيق XML ، gl=usوتعين رمز البلد ، hl=enوتسمح لك بتحديد اللغة ، والبناء q=<search_term>هو بالضبط ما تحتاجه للحصول على نتائج الإكمال التلقائي.



المعلمات glو hlتستخدم من حرفين القياسية بلد و لغة معرفات .



دعنا نجرب كل هذا من خلال بدء البحث باستخدام ، على سبيل المثال ، الاستعلام tensorflow.



الخطوة الأولى من العمل هو للإشارة إلى تحديد URL، وذلك باستخدام البنية التالية تصف الاستعلام: q=tensorflow%20vs%20. سيبدو الرابط بالكامل كما يلي:



http://suggestqueries.google.com/complete/search?&output=toolbar&gl=us&hl=en&q=tensorflow%20vs%20


استجابة لذلك ، سوف نتلقى بيانات XML.



ماذا تفعل مع XML؟



تحتاج الآن إلى التحقق من نتائج الانتهاء من الامتثال للامتثال لمجموعة معينة من المعايير. مع تلك التي تناسبنا ، سنستمر في العمل.





التحقق من النتائج التي تم الحصول عليها



أنا ، عند التحقق من النتائج ، استخدمت المعايير التالية:



  • يجب ألا يحتوي استعلام البحث الموصى به على نص الاستعلام الأصلي (أي - tensorflow).
  • لا ينبغي أن تتضمن التوصية الطلبات التي تبيّن أنها مناسبة مسبقًا (على سبيل المثال - pytorch).
  • يجب ألا تتضمن التوصية كلمات "مقابل" متعددة.
  • بعد العثور على 5 عمليات بحث متطابقة ، لم يعد يتم اعتبار كل ما تبقى.


هذه ليست سوى إحدى طرق "تنظيف" قائمة التوصيات لإكمال استعلام البحث المستلم من Google. أرى أيضًا أحيانًا فائدة الاختيار من قائمة توصيات من كلمة واحدة فقط ، ولكن استخدام هذه التقنية يعتمد على كل موقف محدد.



لذا ، باستخدام هذه المجموعة من المعايير ، حصلنا على 5 من النتائج التالية ، تم تعيين وزن محدد لكل منها.





5 نتائج



التكرار التالي



تخضع هذه التوصيات الخمس التي تم العثور عليها لنفس المعالجة التي يخضع لها استعلام البحث الأصلي. يتم تمريرها إلى واجهة برمجة التطبيقات باستخدام كلمة "vs" ، ومرة ​​أخرى يتم تحديد 5 نتائج للإكمال التلقائي تفي بالمعايير المذكورة أعلاه. هنا نتيجة معالجة القائمة أعلاه.





العثور على نتائج الإكمال التلقائي للكلمات



التي تم العثور عليها بالفعل يمكنك متابعة هذه العملية من خلال فحص الكلمات في العمود التي لم يتم فحصها بعدtarget.



إذا أجريت الكثير من التكرارات لمثل هذا البحث عن كلمة ، فستحصل على جدول كبير إلى حد ما يحتوي على معلومات حول الاستعلامات والأوزان. هذه البيانات مناسبة تمامًا للتصور الرسومي.



الرسوم البيانية الأنا



الرسم البياني للشبكة الذي عرضته لك في بداية المقالة هو ما يسمى بالرسم البياني للأنا ، والذي تم بناؤه في حالتنا للاستعلام tensorflow. الرسم البياني الأنا هو رسم بياني بكل عقده على مسافة ما من العقدة tensorflow. يجب ألا تتجاوز هذه المسافة المسافة المحددة.



وكيف يتم تحديد المسافة بين العقد؟



دعونا نلقي نظرة على الرسم البياني النهائي أولاً.





الرسم البياني الأنا للاستعلام tensorflow مع دائرة نصف قطرها 22 هو



الوزن من حافة ربط الاستعلامAوBنحن نعلم بالفعل. هذه هي مرتبة التوصية من قائمة الإكمال التلقائي ، والتي تتراوح من 1 إلى 5. لجعل الرسم البياني غير موجه ، يمكنك ببساطة إضافة أوزان الاتصالات بين القمم التي تتحرك في اتجاهين (أي من،AإلىB، وإذا كان هناك مثل هذا الاتصال ، منBإلىA) ... سيعطينا ذلك أوزان حافة تتراوح من 1 إلى 10.



وبالتالي ، سيتم حساب طول الحافة (المسافة) باستخدام الصيغة11 — ... لقد اخترنا 11 هنا لأن الحد الأقصى لوزن الحافة هو 10 (سيكون للحافة هذا الوزن إذا ظهرت كلتا التوصيتين في أعلى قوائم الإكمال التلقائي لبعضهما البعض). ونتيجة لذلك ، سيكون الحد الأدنى للمسافة بين الطلبات 1. يتم تحديد



حجم (حجم) ولون (لون) قمة الرسم البياني من خلال عدد (عدد) الحالات التي يظهر فيها الطلب المقابل في قائمة التوصيات. ونتيجة لذلك ، اتضح أنه كلما كانت القمة أكبر ، كلما كان المفهوم الذي تمثله أكثر أهمية.



يحتوي الرسم البياني الأنا المدروس على نصف قطر يبلغ 22. وهذا يعني أنه من الممكن الوصول إلى كل طلب ، بدءًا من قمة الرأس tensorflow، من خلال المشي لمسافة لا تتجاوز 22. دعنا نلقي نظرة على ما يحدث إذا تم زيادة نصف قطر الرسم البياني إلى 50.





الرسم البياني الأنا لاستعلام tensorflow مع نصف القطر 50 من



المثير للاهتمام أنه تبين! يحتوي هذا الرسم البياني على معظم التقنيات الأساسية التي يجب أن يعرفها المشاركون في الذكاء الاصطناعي. علاوة على ذلك ، يتم تجميع أسماء هذه التقنيات بشكل منطقي.



وكل هذا مبني على أساس كلمة رئيسية واحدة.



كيفية رسم الرسوم البيانية مماثلة؟



لقد استخدمت أداة Flourish عبر الإنترنت لرسم مثل هذا الرسم البياني .



تتيح لك هذه الخدمة إنشاء الرسوم البيانية للشبكة والرسوم البيانية الأخرى باستخدام واجهة بسيطة. أعتقد أن الأمر يستحق النظر إليه لأولئك المهتمين ببناء الرسوم البيانية الأنا.



كيفية إنشاء الرسم البياني الأنا مع نصف قطر معين؟



يمكنك استخدام حزمة Python لإنشاء رسم بياني للأنا بنصف قطر معين networkx. لديها ميزة مفيدة للغاية ego_graph. يتم تحديد نصف قطر الرسم البياني عند استدعاء هذه الوظيفة.



import networkx as nx

#  
#nodes = [('tensorflow', {'count': 13}),
# ('pytorch', {'count': 6}),
# ('keras', {'count': 6}),
# ('scikit', {'count': 2}),
# ('opencv', {'count': 5}),
# ('spark', {'count': 13}), ...]

#edges = [('pytorch', 'tensorflow', {'weight': 10, 'distance': 1}),
# ('keras', 'tensorflow', {'weight': 9, 'distance': 2}),
# ('scikit', 'tensorflow', {'weight': 8, 'distance': 3}),
# ('opencv', 'tensorflow', {'weight': 7, 'distance': 4}),
# ('spark', 'tensorflow', {'weight': 1, 'distance': 10}), ...]

#   
G=nx.Graph()
G.add_nodes_from(nodes)
G.add_edges_from(edges)

# -  'tensorflow'
EG = nx.ego_graph(G, 'tensorflow', distance = 'distance', radius = 22)

#  
subgraphs = nx.algorithms.connectivity.edge_kcomponents.k_edge_subgraphs(EG, k = 3)

# ,  'tensorflow'
for s in subgraphs:
    if 'tensorflow' in s:
        break
pruned_EG = EG.subgraph(s)

ego_nodes = pruned_EG.nodes()
ego_edges = pruned_EG.edges()


بالإضافة إلى ذلك ، استخدمت وظيفة أخرى هنا - k_edge_subgraphs. يتم استخدامه لإزالة بعض النتائج التي لا تلبي احتياجاتنا.



على سبيل المثال ، stormهو إطار عمل مفتوح المصدر للحوسبة الموزعة في الوقت الفعلي. لكن هذا أيضًا شخصية من عالم Marvel. ما هي اقتراحات البحث التي تعتقد أنها ستفوز إذا كتبت "storm vs" في Google؟ تعثر



الدالة على k_edge_subgraphsمجموعات من القمم التي لا يمكن تقسيمها عن طريق تنفيذ kإجراءات أو أقل. كما اتضح ، هنا قيم المعلمات k=2و k=3. في النهاية ، تبقى فقط تلك subgraphs ، التي ينتمون إليها tensorflow. وهذا يضمن أننا لا نبتعد كثيرًا عن المكان الذي بدأنا فيه البحث ولا نبتعد كثيرًا.



استخدام الرسوم البيانية للأنا في الحياة



دعنا ننتقل من المثال c tensorflowونلقي نظرة على رسم بياني آخر. هذه المرة - رسم بياني مخصص لشيء آخر يهمني. هذه فتحة شطرنج تسمى "اللعبة الإسبانية" (افتتاح لعبة الشطرنج روي لوبيز).



▍ دراسة فتحات الشطرنج





البحث في "اللعبة الإسبانية" (ruy lopez)



سمحت لنا طريقتنا باكتشاف أكثر الأفكار الافتتاحية شيوعًا ، والتي يمكن أن تساعد باحث الشطرنج.



الآن دعونا نلقي نظرة على أمثلة أخرى لاستخدام الرسوم البيانية الأنا.



food طعام صحي



الكرنب! لذيذ!



ولكن ماذا لو كانت لديك رغبة في استبدال الملفوف الجميل الذي لا يضاهى بشيء آخر؟ سيساعدك الرسم البياني الأنا المبني حول الملفوف ( kale) في ذلك .





رسم الأنا لاستعلام اللفت بنصف قطر 25



buy نشتري كلب



هناك الكثير من الكلاب ، وقليل من الوقت ... أحتاج إلى كلب. لكن اي واحدة؟ ربما شيء مثل كلب بودل ( poodle





الرسم البياني الأنا لاستعلام بودل مع الشعاع 18



▍ البحث عن الحب



الكلب والملفوف لا يغيرون شيئا؟ هل تريد أن تجد النصف الآخر؟ إذا كان الأمر كذلك ، فإليك رسم بياني صغير ولكنه مكتفي ذاتيًا للغاية يمكن أن يساعد في ذلك.





الرسم البياني الأنا لطلب القهوة يلتقي الخبز مع الشعاع 18



hat ماذا لو لم تساعد تطبيقات المواعدة؟



إذا لم تكن تطبيقات المواعدة مفيدة ، فمن الجدير مشاهدة العرض بدلاً من التسكع مع آيس كريم بنكهة الملفوف (أو آيس كريم بنكهة صاروخ تم اكتشافه مؤخرًا). إذا كنت تحب The Office (بالتأكيد واحد تم تصويره في المملكة المتحدة) ، فقد ترغب أيضًا في بعض العروض الأخرى.





مخطط الأنا للاستعلام عن المكتب بنصف قطر 25



النتيجة



وبذلك أختتم قصتي حول استخدام كلمة "vs" في عمليات بحث Google وحول الرسوم البيانية للأنا. آمل أن يساعدك كل هذا على الأقل في البحث عن الحب وكلب جيد وطعام صحي.



هل تستخدم أي حيل غير عادية عند البحث على الإنترنت؟






All Articles