Kelimeler arasındaki uzaklık durumlarını, vektörel olarak bulmamıza yarayan algoritmalar bütünüdür. Vektörel yapı üzerinde yazılmış araçlar ile bir kelimeye yakın veya uzak kelimeleri listelemek için kelimeler arasındaki anolojiyi kullanır (1).
Word2Vec Kelime Vektörü
Şekilde verdiğimiz input dökümanına göre bir kelime vektörü oluşturulması.
Word2Vec CBOW & Skip-Gram Algoritması
Bu kısımda 2 tane algoritmadan CBOW veya Skip-Gram algoritmasından faydalanıyor.
Multi-Word CBOW model (5)
Daha sonra, ağırlıkları güncellemek için gradyan iniş uygularız:
Skip-Gram model (5)
Ağırlıklar için güncelleme denklemi, CBOW modeli ile aynıdır.
Multi-Word CBOW model Python Code (5)
Skip-Gram model Python Code (5)
Word2Vec Python & Gensim
Python, nesne yönemli programlamayı destekleyen, yorumlamalı (yani byte kod üreten), modüler ve
yüksek seviyeli bir dildir (2). Python dili, yapay zeka ve makine öğrenmesini uygulamalarında oldukça popüler ve kullanışlı bir dildir. Kullanılma nedenleri, makine öğrenmesi için ihtiyaç duyulan paketlerin import edilmesi ve en iyi performans açısından oldukça tercih edilen bir dildir(3).
Gensim, Python'da import edilerek kullanılan bir kütüphanedir. Aslında bir kütüphaneden daha fazlası! Çünkü veri madenciliği konusunda oldukça yetenekli olması ve performanslı olması için NumPy, Scipy yapılarını kullanır. Özellikle kullanım alanı büyük metinleri belli algoritmaları kullanılarak uzaklık ve kelime anolojisi hakkında oldukça başarılıdır(4).
Word2Vec Kurulumu (Linux(Debian))
debian@pc:~$ sudo apt install python3-pip
python yükleme aracını sistemimize kuruyoruz.
debian@pc:~$ sudo pip install
word2vec
Word2vec’i pip yükleme aracı ile sisteme kuruyoruz.
Kurulum sırasında hata oluşması, dosya bağımlılıkları ile alakalıdır.
İlk olarak kuruluma
Başlamadan önce sisteminizin güncel olduğundan emin olun.
Manuel olarak kurmak isteyenler için...
https://github.com/danielfrg/word2vec
Kullanımı
Word2Vec komut satırında şu şekilde kullanılabilir:
word2vec
word2phrase
word2vec-distance
word2vec-word-analogy
Word2vec-compute-accuracy
Kullanılacak türkçe eğitilmiş vektör/model dosyası.
https://drive.google.com/drive/folders/1IBMTAGtZ4DakSCyAoA4j7Ch0Ft1aFoww
Örnek => debian@pc:~$ word2vec-distance trmodel
debian@pc:~$ word2vec-word-analogy trmodel
Word2Vec isteğe göre Windows veya OS X sistemler üzerinde de çalışıtırabilir. Linux/Debian türevi sistemler word2vec için daha performanslı ve stabil çalıştığı için tercih edilmiştir.
Word2Vec Örnek Gerçekleştirimi
Bu kısımda ./distance kullandığımıda çay için en yakın kelimeleri buldu örnek olarak
Kelime analojisi için ./word-analogy kullandığımızda
Word2Vec Background
Yukarıdaki şekilde görüldüğü gibi formül üzerinden kelimler arasındaki benzerlik ve uzaklık yukarıdaki mantığa göre şekillenmektedir.
İçerik Hazırlayan: Yusuf Dede
Kaynaklar
(1) https://medium.com/@odayibasi/word2vec-nedir-ne-i%C5%9Fe-yarar-a314a37c45aa
(2) https://tr.wikipedia.org/wiki/Python_(programlama_dili)
(3) https://medium.com/@EbubekirBbr/makine-%C3%B6%C4%9Frenmesi-uygulamas%C4%B1-geli%C5%9Ftirme-2-python-41028d52686b
(4) https://en.wikipedia.org/wiki/Gensim
(5) http://www.claudiobellei.com/2018/01/07/backprop-word2vec-python/
(5) http://www.claudiobellei.com/2018/01/07/backprop-word2vec-python/
11 Temmuz 2018 Çarşamba
10 Temmuz 2018 Salı
Metro Framework
Metro Framework, Windows 8'in MetroUI teması kullanarak, Windons form uygulamarının görsel bir şekilde oluşturulmasını sağlayan bir programdır [1]. Metroframework kendi yapısı içerisinde özel temalar, tema yöneticisinin yeniden yazılması, gerçek şeffaf kontroller, stil genişletici, pencereleri en üst düzeye çıkarma ve geri yükleme, gerçek çoklu monitör desteği gibi özellikleri içerir. Metro Framework'un sahip olduğu kontroller ve bileşenlerin listesi ise aşağıda verilmiştir.
Kontroller
(Button, ComboBox, Checkbox, RadioButton, Toggle, Label, SelectableLabel, Link, Panel, ScrollBar, Tile, ProgressBar, ProgressSpinner, TabControl, TrackBar, UserControl)
(Button, ComboBox, Checkbox, RadioButton, Toggle, Label, SelectableLabel, Link, Panel, ScrollBar, Tile, ProgressBar, ProgressSpinner, TabControl, TrackBar, UserControl)
Bileşenler
(StyleManager, StyleExtender, Araç ipucu)
(StyleManager, StyleExtender, Araç ipucu)
Metro Framework Kurulumu
1.Adım
2. Adım
Projenize gelip sağ tıklayın oradan nuget package manger'i seçin .
3. Adım
Kurulum tamamlanınca eski form göreceksiniz şimdi gerekli olan birkaç işlem daha kaldı.
4. Adım
Sarı renkle olan bölgeye göre kodunuzu değiştirin.
5 .Adım
Yeni form ekranınız aşağıdaki gibi ise kurulum tamamlanmıştır.
6. Adım
Toolbox a gelip sağ tıklayın ordan add tab sekmesine tıklayın ve adı yeni olan bir sekme açın.
7. Adım
Yeni sekmesine sağ tıklayıp choose items tılayın ardından browse ye tıklayın.
8. Adım
Projenize hangi dosya konumunda açtıysanız projenizin içerinde yeni bir packet eklenmiştir . Oradan resimdeki bölüme gelip hepsini seçin.
9. Adım
En son karşınıza böyle bir ekran gelecek OK tuşuna basın.
10. Adım
Toolbox böyle görünüyorsa işleminiz tam anlamıyla olmuştur.
Ekran Tasarımları
Örnek
Sonuç olarak Metro Framework .net platformunda etkili çalışan ve detaylı ekran tasarımları yapmamıza yarayan bir programdır [2].
Video Anlatım ile Kurulum
İçerik Hazırlayan: Onur Dinç
Kaynaklar
[1] https://thielj.github.io/MetroFramework/
[2] https://www.youtube.com/watch?v=SuFYBric4Mk
3 Temmuz 2018 Salı
26 Mart 2018 Pazartesi
Benim Mesleğim
Benim mesleğim
uygulamasın hedef kitlesi; ilkokuldan ortaokula geçen öğrencilerdir. Bu öğrencilerin, hangi meslek
alanlarına eğilimlerinin olduğunu analiz etmeye amaçlayan web tabanlı bir oyun
uygulamasıdır. Oyunda 8 adet istasyon bulunmaktadır. Her istasyonda kullanıcın
verdiği cevap, o istasyonda geçirdiği süreye ve dışarıdan girilen
yetenek (görsel hafıza, işitsel hafıza, mantık, sayısal, sözel) katsayısına göre
analiz yapılır.
Projeyi Geliştirenler: Ali ILHAN, Gamze KARADAYI
5 Mart 2018 Pazartesi
Gerçek Zamanlı Konuşmacı Tanıma
Bu proje bir gerçek zamanlı çalışabilen MFCC özniteliklerini ve Markov Chain Model sınıflandırıcısı kullanan bir konuşmacı tanıma uygulamasıdır. Topluluk içerisinde konuşmakta olan konuşmacının kim olduğunu ve konuşma süresince hangi zamanlarda ve ne kadar süre konuştuğunu belirlemek üzere geliştirilmiştir.
Projeyi Geliştiren: Ahmet Gürbüz
Görüntü İşleme ile Problem Çözümü
Proje, Pycharm IDE kullanılarak
geliştirildi. Data setlerin training’i TensorFlow ile gerçekleştirildi.
Hesaplama işlemleri için Pyhton’ın bir kütüphanesi olan Numpy kullanıldı.
Görüntüyü işlemek için ‘Open Source Library For Computer Vision’ yani Opencv
kullanıldı.
Projeyi Geliştiren: Egemen Çelik
Projeyi Geliştiren: Egemen Çelik
Web Tabanlı Online Yazılım Testi
Web Tabanlı Online Yazılım Testi projesi C# dilinde, Microsoft Visual Studio 2017 ortamında, MVC Framework kullanılarak, çok katmanlı mimari yaklaşım ile gerçekleştirildi. Veritabanı yönetim sistemi olarak Microsoft SQL Server kullanıldı. Veri erişim işlemleri için ORM çatısı olan Entity Framework kullanıldı ve varlıklar Code First yaklaşımı ile kodlandı.
Projeyi Geliştiren: Mehmet ERSOY
Projeyi Geliştiren: Mehmet ERSOY
Kaydol:
Kayıtlar (Atom)