Git Product home page Git Product logo

eksikelime's Introduction

CodeFactor

eksi

EksiKelime

Ekşi Sözlük yazara özgü kelime+sentiment analizi

EksiKelime Güncelleme 2023

3 yıl önce akademik bir çalışma için yazdığım bu scriptleri geliştirmek, düzenlemek oldukça vakit alacağını ve dillerin yapıları itibari ile ayrılacak zamana değmeyeceğini düşündüğümden "EkşiKelime" nin hali hazırda yaptığı ve yapamadığı pek çok özelliklerle birlikte çok daha hızlı ve rahat kullanımı olan Rust programlama dili versiyonunu oluşturdum. Bu yüzden bu GitHub reposunu artık geliştirmeyi, güncellemeyi düşünmüyorum.

Daha modern, hızlı; istediğiniz başlıktan veya kullanıcıdan tek satırda entry çekip duygu analizi yapmak için: https://github.com/altunenes/rustysozluk

EksiKelime Güncelleme

Bu scriptleri ilk yazdığımda, yazarın kendi datasını sözlüğe girip kendisi alması gerekmekteydi, ancak https://github.com/cagriozkurt/EksiYedek ile bu iş çok daha kolay hale getirilmiş. Buradaki kod ile ilgili scripti çalıştırdığınızda size XML dosyası halinde dilediğiniz yazarın bütün entrylerini veriyor. R içerisinde yapmak istiyorsanız XML dosyasını csv'e çevirmek için yine benim yazdığım R scriptini kullanabilirsiniz. Ancak Python için buna gerek yok, scriptlerin içerisine otomatik olarak ekledim, sadece EksiYedek scriptini çalıştırıp dilediğiniz yazarın XML dosyasını indirdikten sonra ilgili python scriptlerini çalıştırmanız yeterlidir.

Son olarak, wordcloud ve yine vader tarzı sentiment analizi için R kodlarını Python diline çevirerek de ekledim; dilediğiniz dil ile bu işi yapabilirsiniz :)


Sentimnent için keşke İngilizce'de olduğu gibi TR için de güzel bir derin öğrenme modelleri olsaydı ve daha fazla sınıf bulunsaydı, ancak bu veri seti bir doktora tezinden alınmış olunupözenle hazırlanmış bir veri seti; bundan dolayı da gayet güzel sonuçlar verebilmekte. Bununla birlikte doktora tezinde kullanılan metod; tamamen vader sentiment tarzı, yani -1 +1 olmak üzere iki sınıf var ve veriler bir txt dosyasının içinde. Basitçe bu dosyanın içine girip kendi datamızla karşılaştırma yapıyoruz (en azından ben öyle yaptım).

Ekşi Sözlük'de ayarlar seçeneğinden xml uzantılı yedeğinizi(sözlükte yazdığınız bütün entryler) aldıktan sonraki ilk işiniz mutlaka xml dosyasını data.frame'e çevirmek olsun. (xmlToDataFrame.R script'i tam olarak bunu yapmakta)

sentiment datası icin daha detaylı incelemeyi buradan yapabilirsiniz: https://github.com/swnettr/SWNetTR

not: edatbag.csv hem başka kaynaklardan alıntı (örneğin aşağıdaki link) hem de sözlüğe özel custom bir şekilde oluşturulmuştur, kendi isteğinize göre yeni kelimeler ekleyebilir veya çıkartabilirsiniz oluştururken kendi amacım daha fazla "isim" yapısındaki sözcüklere ulaşmak ve yazarı tanımasak bile hakkında daha isabetli tahminler yapabilmek içindi. https://github.com/ahmetax/trstop/blob/master/dosyalar/turkce-stop-words

eksikelime's People

Contributors

altunenes avatar bagcivan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

bagcivan

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.