CentOS 7de Tavşan Kümesini Kümeleme
RabbitMQ, AMQP, STOMP ve diğer iletişim teknolojilerini destekleyen açık kaynaklı bir mesaj aracısıdır. Kurumsal uygulamalarda yaygın olarak kullanılan bir
Üretimde karmaşık makine öğrenimi modelleri kullanılırken geleneksel kalkınma yaklaşımlarının sürdürülmesi zordur. Bir dizüstü bilgisayarda veya yerel makinede geliştirme, derin öğrenme mühendisleri için makine öğrenme modelini eğitmek için yavaş olabilir. Sonuç olarak, makine öğrenme modellerimizi hem eğitmek hem de çalıştırmak için genellikle daha güçlü donanıma sahip bulut makinelerini kullanıyoruz. Karmaşık hesaplamayı soyutladığımız ve bunun yerine AJAX isteklerini yaptığımız için bu iyi bir uygulamadır. Bu derste, Word2Vec adlı önceden eğitilmiş bir derin öğrenme modelini sıfırdan bir REST API oluşturarak diğer hizmetlere sunacağız.
sudo
kullanıcıKelime düğünleri, hızlı ilerleme nedeniyle her iki alanda da devrim yaratan doğal dil işlemede ve derin öğrenmede yeni bir gelişmedir. Kelime düğünleri esasen her biri tek bir kelimeye karşılık gelen vektörlerdir, öyle ki vektörler kelimeler anlamına gelir. Bu, vektörü gibi bazı fenomenlerle gösterilebilir king - queen = boy - girl
. Kelime vektörleri, öneri motorlarından İngilizce dilini anlayan sohbet botlarına kadar her şeyi oluşturmak için kullanılır.
Kelime düğünleri rastgele değildir; sinir ağı eğitimi ile üretilirler. Yakın zamanda güçlü bir kelime yerleştirme uygulaması, bir dildeki diğer kelimelerin yanında görünen kelimeleri tahmin ederek eğitilen Word2Vec adlı Google'dan gelir. Örneğin, bir kelime için "cat"
, sinir ağı sözcükleri tahmin edecek "kitten"
ve "feline"
. Birbirine yakın görünen kelimelerin bu sezgisi, onları vektör alanına yerleştirmemizi sağlar.
Bununla birlikte, uygulamada, Google gibi diğer büyük şirketlerin önceden eğitilmiş modellerini, hızlı bir şekilde prototip oluşturmak ve dağıtım süreçlerini basitleştirmek için kullanma eğilimindeyiz. Bu eğitimde Google'ın önceden eğitilmiş Word2Vec kelime düğünlerini indirip kullanacağız. Bunu çalışma dizinimizde aşağıdaki komutu çalıştırarak yapabiliriz.
wget http://magnitude.plasticity.ai/word2vec/GoogleNews-vectors-negative300.magnitude
İndirdiğimiz kelime gömme modeli bir .magnitude
biçimdedir. Bu biçim, modeli SQL kullanarak verimli bir şekilde sorgulamamıza olanak tanır ve bu nedenle üretim sunucuları için en uygun yerleştirme biçimidir. .magnitude
Biçimi okuyabilmemiz gerektiğinden pymagnitude
paketi yükleyeceğiz . Daha flask
sonra model tarafından yapılan derin öğrenme tahminlerine de hizmet edeceğiz .
pip3 install pymagnitude flask
Ayrıca aşağıdaki komutla bağımlılık izleyicimize ekleyeceğiz. Bu, requirements.txt
daha sonra yeniden yükleyebilmemiz için Python kitaplıklarımız adlı bir dosya oluşturur ve kaydeder.
pip3 freeze > requirements.txt
Başlamak için, kelime düğünlerini açıp sorgulamak için bir dosya oluşturacağız.
touch model.py
Ardından, model.py
Magnitude'u içe aktarmak için aşağıdaki satırları ekleyeceğiz .
from pymagnitude import Magnitude
vectors = Magnitude('GoogleNews-vectors-negative300.magnitude')
Bir kelime için argüman sağlayarak yöntemi pymagnitude
kullanarak paket ve derin öğrenme modeli ile oynayabiliriz query
.
cat_vector = vectors.query('cat')
print(cat_vector)
API'mizin çekirdeği için, iki kelime arasındaki anlam farkını döndürmek için bir işlev tanımlayacağız. Bu, öneri motorları gibi şeyler için en derin öğrenme çözümlerinin belkemiğidir (yani benzer kelimelerle içerik göstermek).
similarity
Ve most_similar
fonksiyonlarını kullanarak bu fonksiyonla oynayabiliriz .
print(vectors.similarity("cat", "dog"))
print(vectors.most_similar("cat", topn=100))
Benzerlik hesaplayıcısını aşağıdaki gibi uyguluyoruz. Bu yöntem bir sonraki bölümde Flask API'sı tarafından çağrılır. Bu işlevin 0 ile 1 arasında gerçek bir değer döndürdüğünü unutmayın.
def similarity(word1, word2):
return vectors.similarity(word1, word2)
Sunucumuzu service.py
aşağıdaki içeriğe sahip bir dosyada oluşturacağız . Sunucu kapasitemizi içeri aktarıyor flask
ve request
ele alıyoruz ve similarity
motoru daha önce yazdığımız modülden içeri aktarıyoruz.
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)
Sunucumuz oldukça çıplak kemiklerdir, ancak @app.route
dekoratör kullanarak daha fazla rota oluşturarak kolayca genişletilebilir .
Sanal ortamımızı etkinleştirmek, paketlerimizi yüklemek ve ilişkili Python dosyasını çalıştırmak için aşağıdaki komutları çalıştırarak Flask sunucumuzu çalıştırabiliriz.
source venv/bin/activate
pip3 install -r requirements.txt
python3 service.py
Sunucumuz adresinde mevcut olacak localhost:8000
. Veritabanımızı sorgulayabilir localhost:8000/similarity?word1=cat&word2=dog
ve yanıtı tarayıcımızdan veya başka bir AJAX istemcisi aracılığıyla görüntüleyebiliriz.
RabbitMQ, AMQP, STOMP ve diğer iletişim teknolojilerini destekleyen açık kaynaklı bir mesaj aracısıdır. Kurumsal uygulamalarda yaygın olarak kullanılan bir
NFS, bilgisayarların bilgisayar ağı üzerindeki dosyalara erişmesine izin veren ağ tabanlı bir dosya sistemidir. Bu kılavuz, klasörleri NF üzerinden nasıl açığa çıkarabileceğinizi açıklar
Bu kılavuz, Ubuntu 16.04 çalıştıran bir Vultr örneği için GitBucketin temel kurulumunu ve kurulumunu kapsar ve komutları şu şekilde yürüttüğünüzü varsayar:
Farklı Bir Sistem mi Kullanıyorsunuz? Directus 6.4 CMS, geliştirici sağlayan güçlü ve esnek, ücretsiz ve açık kaynaklı Başsız İçerik Yönetim Sistemidir (CMS)
Farklı Bir Sistem mi Kullanıyorsunuz? Mattermost, Slack SAAS mesajlaşma servisine açık kaynaklı, kendi kendine barındırılan bir alternatiftir. Başka bir deyişle, Mattermost ile,
TeamTalk, kullanıcıların yüksek kaliteli sesli / görüntülü konuşmalara, metin sohbetine, dosya aktarımına ve ekranları paylaşmasına olanak tanıyan bir konferans sistemidir. Ben
Farklı Bir Sistem mi Kullanıyorsunuz? Pagekit PHP ile yazılmış açık kaynaklı bir CMSdir. Pagekit kaynak kodu GitHubda herkese açık olarak barındırılıyor. Bu kılavuz size
Vultr, yeni bir örnek oluşturduktan sonra SSH anahtarlarını önceden yüklemenizi sağlayan bir özellik sağlar. Bu, sunucu kök kullanıcısına erişmenizi sağlar, ancak
Farklı Bir Sistem mi Kullanıyorsunuz? Diaspora gizliliğe duyarlı, açık kaynaklı bir sosyal ağdır. Bu derste, bir Diaspora posının nasıl kurulacağını ve yapılandırılacağını öğreneceksiniz
Farklı Bir Sistem mi Kullanıyorsunuz? Fuel CMS, CodeIgniter tabanlı bir içerik yönetim sistemidir. Kaynak kodu GitHubda barındırılmaktadır. Bu kılavuz size
Önkoşullar Güncel Arch Linux çalıştıran bir Vultr sunucusu (bu makaleye bakın.) Sudo erişimi. Kök olarak çalıştırılması gereken komutların önüne # ve bir
Farklı Bir Sistem mi Kullanıyorsunuz? Snipe-IT, BT varlık yönetimi için ücretsiz ve açık kaynaklı bir web uygulamasıdır. Laravel 5.2 çerçevesi ve kullanımı üzerine yazılmıştır.
Çok Güvenli FTP arka plan programı, ya da sadece vsFTPd, özelleştirme yeteneği olan hafif bir yazılım parçasıdır. Bu derste bir müttefikimiz olacak
Ranger, VI anahtar bağlamaları olan komut satırı tabanlı bir dosya yöneticisidir. Dizin hiyerarşisi manzaralı minimalist ve hoş bir curses arayüzü sağlar
Farklı Bir Sistem mi Kullanıyorsunuz? Brotli, GZIPden daha iyi bir sıkıştırma oranına sahip yeni bir sıkıştırma yöntemidir. Kaynak kodu bu Githuda herkese açık olarak barındırılıyor
Belirli durumlarda, Sistem Yöneticisinin bir kullanıcı hesabı oluşturması ve yalnızca kendi dosyalarını sFTP yoluyla yönetmek için erişimini kısıtlaması gerekebilir, ancak b
Farklı Bir Sistem mi Kullanıyorsunuz? Omeka Classic 2.4 CMS, digita paylaşımı için ücretsiz ve açık kaynaklı bir dijital yayıncılık platformu ve İçerik Yönetim Sistemidir (CMS)
Önkoşullar Güncel Arch Linux çalıştıran bir Vultr sunucusu (bu makaleye bakın.) Sudo erişimi. Kök olarak çalıştırılması gereken komutların başına # işareti gelir. th
SSH üzerinden kök girişine izin vermek, teknoloji endüstrisinde genellikle zayıf bir güvenlik uygulaması olarak kabul edilir. Bunun yerine, hassas yönetim gerçekleştirebilirsiniz
Farklı Bir Sistem mi Kullanıyorsunuz? RabbitMQ, Erlang programlama dilinde yazılmış, yaygın olarak kullanılan açık kaynaklı bir mesaj aracısıdır. Mesaj odaklı bir ara katman yazılımı olarak
CentOS 7 üzerinde LibreNMS kullanarak ağ cihazlarınızı etkili bir şekilde izleyin. Ağ izleme için gerekli adımları ve yapılandırmaları öğrenin.
Counter-Strike: Global Offensive sunucusu kurmak için gerekli adımlar. Gerekli araçlar ve yükleme süreci hakkında bilgi.
OpenNMS, çok sayıda cihazı izlemek ve yönetmek için kullanılabilen bir açık kaynak ağ yönetim platformudur. Ubuntu 16.04 LTS üzerinde OpenNMS kurulumu için tüm adımları keşfedin.
Farklı Bir Sistem mi Kullanıyorsunuz? LibreNMS tam özellikli bir açık kaynak ağ izleme sistemidir.
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.
Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.
Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.
Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.
CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?