كيفية تثبيت منصة عربة التسوق LiteCart على أوبونتو 16.04
LiteCart عبارة عن منصة سلة تسوق مجانية ومفتوحة المصدر مكتوبة بلغة PHP و jQuery و HTML 5. وهي عبارة عن برنامج بسيط وخفيف الوزن وسهل الاستخدام للتجارة الإلكترونية
من الصعب الحفاظ على الأساليب التقليدية للتنمية عند استخدام نماذج التعلم الآلي المعقدة في الإنتاج. قد يكون التطوير على جهاز كمبيوتر محمول أو جهاز محلي بطيئًا لتدريب نموذج التعلم الآلي لمهندسي التعلم العميق. ونتيجة لذلك ، نستخدم عادةً الأجهزة السحابية مع أجهزة أكثر قوة لتدريب وتشغيل نماذج التعلم الآلي. هذه ممارسة جيدة نظرًا لأننا نجرد العمليات الحسابية المعقدة وبدلاً من ذلك نقدم طلبات AJAX حسب الضرورة. في هذا البرنامج التعليمي ، سوف نجعل نموذج التعلم العميق المدرب مسبقًا المسمى Word2Vec متاحًا للخدمات الأخرى من خلال إنشاء REST API من الألف إلى الياء.
sudo
المستخدميعد تضمين الكلمات تطوراً حديثاً في معالجة اللغات الطبيعية والتعلم العميق الذي أحدث ثورة في كلا المجالين بسبب التقدم السريع. يعد تضمين الكلمات متجهًا بشكل أساسي بحيث يتوافق كل منها مع كلمة واحدة بحيث تعني المتجهات الكلمات. ويمكن إثبات ذلك من خلال ظواهر معينة مثل متجه king - queen = boy - girl
. تستخدم ناقلات الكلمات لبناء كل شيء من محركات التوصيات إلى روبوتات الدردشة التي تفهم اللغة الإنجليزية بالفعل.
تضمين الكلمات ليس عشوائيًا. يتم إنشاؤها بواسطة تدريب شبكة عصبية. يأتي أحدث تطبيق قوي لتضمين الكلمات من Google يسمى Word2Vec والذي تم تدريبه من خلال التنبؤ بالكلمات التي تظهر بجوار الكلمات الأخرى في اللغة. على سبيل المثال ، بالنسبة للكلمة "cat"
، ستتنبأ الشبكة العصبية بالكلمات "kitten"
و "feline"
. يسمح لنا هذا الحدس للكلمات التي تظهر بالقرب من بعضها البعض بوضعها في مساحة النواقل.
ومع ذلك ، من الناحية العملية ، نميل إلى استخدام النماذج المدربة مسبقًا من الشركات الكبيرة الأخرى مثل Google من أجل وضع نموذج أولي وتبسيط عمليات النشر بسرعة. في هذا البرنامج التعليمي ، سنقوم بتنزيل واستخدام تضمين الكلمات Word2Vec المدرب مسبقًا من Google. يمكننا القيام بذلك عن طريق تشغيل الأمر التالي في دليل العمل الخاص بنا.
wget http://magnitude.plasticity.ai/word2vec/GoogleNews-vectors-negative300.magnitude
نموذج تضمين الكلمة الذي نزلناه .magnitude
بتنسيق. يتيح لنا هذا التنسيق الاستعلام عن النموذج بكفاءة باستخدام SQL ، وبالتالي فهو تنسيق التضمين الأمثل لخوادم الإنتاج. نظرًا لأننا بحاجة إلى أن نكون قادرين على قراءة .magnitude
التنسيق ، فسنقوم بتثبيت pymagnitude
الحزمة. سنقوم أيضًا بتثبيت flask
خدمة توقعات التعلم العميقة التي قام بها النموذج لاحقًا.
pip3 install pymagnitude flask
سنضيفه أيضًا إلى متتبع التبعية الخاص بنا باستخدام الأمر التالي. يؤدي هذا إلى إنشاء ملف مسمى requirements.txt
وحفظ مكتبات Python الخاصة بنا حتى نتمكن من إعادة تثبيتها في وقت لاحق.
pip3 freeze > requirements.txt
للبدء ، سننشئ ملفًا للتعامل مع فتح واستعلام كلمة التضمين.
touch model.py
بعد ذلك ، سنضيف الأسطر التالية model.py
لاستيراد Magnitude.
from pymagnitude import Magnitude
vectors = Magnitude('GoogleNews-vectors-negative300.magnitude')
يمكننا أن نلعب مع pymagnitude
الحزمة ونموذج التعلم العميق باستخدام query
الطريقة ، وتوفير حجة لكلمة.
cat_vector = vectors.query('cat')
print(cat_vector)
بالنسبة إلى جوهر واجهة برمجة التطبيقات لدينا ، سنحدد وظيفة لإرجاع الفرق في المعنى بين كلمتين. هذا هو العمود الفقري لمعظم حلول التعلم العميقة لأشياء مثل محركات التوصية (أي عرض المحتوى بكلمات مماثلة).
يمكننا اللعب بهذه الوظيفة باستخدام الوظائف similarity
و most_similar
.
print(vectors.similarity("cat", "dog"))
print(vectors.most_similar("cat", topn=100))
نقوم بتطبيق حاسبة التشابه على النحو التالي. سيتم استدعاء هذه الطريقة من قبل Flask API في القسم التالي. لاحظ أن هذه الدالة تُرجع قيمة حقيقية بين 0 و 1.
def similarity(word1, word2):
return vectors.similarity(word1, word2)
سنقوم بإنشاء خادمنا في ملف مسمى service.py
بالمحتويات التالية. نحن استيراد flask
و request
للتعامل مع قدرات الخادم الخاص بنا، ونحن استيراد similarity
محرك من وحدة كتبنا في وقت سابق.
from flask import Flask, request
from model import similarity
app = Flask(__name__)
@app.route("/", methods=['GET'])
def welcome():
return "Welcome to our Machine Learning REST API!"
@app.route("/similarity", methods=['GET'])
def similarity_route():
word1 = request.args.get("word1")
word2 = request.args.get("word2")
return str(similarity(word1, word2))
if __name__ == "__main__":
app.run(port=8000, debug=True)
خادمنا هو عظام عارية إلى حد ما ، ولكن يمكن توسيعه بسهولة عن طريق إنشاء المزيد من المسارات باستخدام @app.route
الديكور.
يمكننا تشغيل خادم Flask الخاص بنا عن طريق تشغيل الأوامر التالية لتنشيط بيئتنا الافتراضية ، وتثبيت حزمنا ، وتشغيل ملف Python المرتبط بها.
source venv/bin/activate
pip3 install -r requirements.txt
python3 service.py
سيكون خادمنا متاحًا على localhost:8000
. يمكننا الاستعلام عن قاعدة البيانات الخاصة بنا في localhost:8000/similarity?word1=cat&word2=dog
وعرض الاستجابة إما في متصفحنا أو من خلال عميل AJAX آخر.
LiteCart عبارة عن منصة سلة تسوق مجانية ومفتوحة المصدر مكتوبة بلغة PHP و jQuery و HTML 5. وهي عبارة عن برنامج بسيط وخفيف الوزن وسهل الاستخدام للتجارة الإلكترونية
NFS هو نظام ملفات قائم على الشبكة يسمح لأجهزة الكمبيوتر بالوصول إلى الملفات عبر شبكة الكمبيوتر. يوضح هذا الدليل كيف يمكنك فضح المجلدات عبر NF
استخدام نظام مختلف؟ Matomo (Piwik سابقًا) هو نظام أساسي مفتوح المصدر للتحليلات ، وهو بديل مفتوح لبرنامج Google Analytics. مصدر Matomo مستضاف
TeamTalk هو نظام مؤتمرات يتيح للمستخدمين إجراء محادثات صوتية / مرئية عالية الجودة ، والدردشة النصية ، ونقل الملفات ، ومشاركة الشاشات. أنا
استخدام نظام مختلف؟ مقدمة تعد CyberPanel واحدة من أولى لوحات التحكم في السوق مفتوحة المصدر وتستخدم OpenLiteSpeed. ما هذا
Ruby on Rails هو إطار عمل شهير لـ Ruby تم تطويره لزيادة إنتاجية المبرمجين. ومع ذلك ، الحصول على الجواهر والتبعيات المختلفة ر
يوفر Vultr عدة طرق مختلفة للوصول إلى VPS لتكوين وتثبيت واستخدام. بيانات اعتماد الوصول بيانات اعتماد الوصول الافتراضية لـ VPS الخاص بك
استخدام نظام مختلف؟ Brotli هو طريقة ضغط جديدة مع نسبة ضغط أفضل من GZIP. تتم استضافة رمز المصدر الخاص به علنًا على Githu هذا
استخدام نظام مختلف؟ OpenNMS عبارة عن منصة إدارة شبكة مفتوحة المصدر على مستوى المؤسسات يمكن استخدامها لمراقبة وإدارة العديد من الأجهزة
مقدمة: التأليف والإصدار الموزع على الويب (WebDAV) هو امتداد HTTP يوفر إطار عمل لإنشاء الملفات وتعديلها عن بُعد على
مقدمة يتميز MySQL بميزة رائعة تعرف باسم طرق العرض. المشاهدات هي استعلامات مخزنة. اعتبرها اسمًا مستعارًا لاستعلام طويل. في هذا الدليل ،
استخدام نظام مختلف؟ Omeka Classic 2.4 CMS هو نظام نشر رقمي مجاني ومفتوح المصدر ونظام إدارة المحتوى (CMS) لمشاركة الصور الرقمية
استخدام نظام مختلف؟ DokuWiki هو برنامج ويكي مفتوح المصدر مكتوب بلغة PHP ولا يتطلب قاعدة بيانات. يقوم بتخزين البيانات في ملفات نصية. DokuWik
ستعلمك هذه المقالة كيفية إعداد سجن سريع على دبيان. أفترض أنك تستخدم Debian 7.x. إذا كنت تقوم بتشغيل دبيان 6 أو 8 ، فقد يعمل هذا ، ولكن
مقدمة طريقة سهلة لإعداد خادم VPN على دبيان هي PiVPN. PiVPN هو أداة تثبيت وغلاف لـ OpenVPN. يخلق أوامر بسيطة لك
استخدام نظام مختلف؟ مقدمة تعد CyberPanel واحدة من أولى لوحات التحكم في السوق مفتوحة المصدر وتستخدم OpenLiteSpeed. ما هذا
استخدام نظام مختلف؟ Ghost هي منصة تدوين مفتوحة المصدر اكتسبت شعبية بين المطورين والمستخدمين العاديين منذ عام 201
RockMongo هي أداة إدارة MongoDB على الويب تشبه أداة إدارة MySQL: phpMyAdmin. سيغطي هذا البرنامج التعليمي عملية التثبيت
Lets Chat هو تطبيق دردشة مفتوح المصدر مصمم لتوفير خدمة الرسائل ذاتية الاستضافة للفرق الصغيرة. يعتمد Lets Chat على NodeJS و MongoDB
استخدام نظام مختلف؟ Taiga هو تطبيق مجاني ومفتوح المصدر لإدارة المشاريع. على عكس أدوات إدارة المشاريع الأخرى ، يستخدم Taiga زيادة
نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول
يعرف الكثير منكم أن Switch سيصدر في مارس 2017 وميزاته الجديدة. بالنسبة لأولئك الذين لا يعرفون ، قمنا بإعداد قائمة بالميزات التي تجعل "التبديل" "أداة لا غنى عنها".
هل تنتظر عمالقة التكنولوجيا للوفاء بوعودهم؟ تحقق من ما تبقى دون تسليم.
اقرأ المدونة لمعرفة الطبقات المختلفة في بنية البيانات الضخمة ووظائفها بأبسط طريقة.
اقرأ هذا لمعرفة مدى انتشار الذكاء الاصطناعي بين الشركات الصغيرة وكيف أنه يزيد من احتمالات نموها ومنح منافسيها القدرة على التفوق.
لقد أصبح حل CAPTCHA صعبًا جدًا على المستخدمين في السنوات القليلة الماضية. هل ستكون قادرة على أن تظل فعالة في اكتشاف البريد العشوائي والروبوتات في المستقبل القريب؟
مع تطور العلم بمعدل سريع ، واستلام الكثير من جهودنا ، تزداد أيضًا مخاطر تعريض أنفسنا إلى تفرد غير قابل للتفسير. اقرأ ، ماذا يمكن أن يعني التفرد بالنسبة لنا.
ما هو التطبيب عن بعد والرعاية الصحية عن بعد وأثره على الأجيال القادمة؟ هل هو مكان جيد أم لا في حالة الوباء؟ اقرأ المدونة لتجد طريقة عرض!
ربما سمعت أن المتسللين يكسبون الكثير من المال ، لكن هل تساءلت يومًا كيف يجنون هذا النوع من المال؟ دعنا نناقش.
أصدرت Apple مؤخرًا macOS Catalina 10.15.4 تحديثًا تكميليًا لإصلاح المشكلات ولكن يبدو أن التحديث يتسبب في المزيد من المشكلات التي تؤدي إلى إنشاء أجهزة macOS. قراءة هذه المادة لمعرفة المزيد