paint-brush
Sistematik ESG Puanlama Sistemi Oluşturma: Yöntemlerile@carbonization
224 okumalar

Sistematik ESG Puanlama Sistemi Oluşturma: Yöntemler

Çok uzun; Okumak

Bu proje, sosyal duyarlılığı birleştirerek daha iyi rehberlik ve daha sistemli puanlar sağlayabilecek, veriye dayalı bir ESG değerlendirme sistemi oluşturmayı amaçlamaktadır.
featured image - Sistematik ESG Puanlama Sistemi Oluşturma: Yöntemler
Carbonization Process Evolution Publication HackerNoon profile picture
0-item

Yazarlar:

(1) Aarav Patel, Amity Bölge Lisesi – e-posta: [email protected];

(2) Peter Gloor, Kolektif Zeka Merkezi, Massachusetts Teknoloji Enstitüsü ve Sorumlu yazar – e-posta: [email protected].

Bağlantı Tablosu

4. Yöntemler

Bu projenin oluşturulması üç adıma ayrıldı. İlk adım, çeşitli sosyal ağlardaki web kazıyıcılar aracılığıyla veri toplamaktı. Daha sonra metin verileri Doğal Dil İşleme kullanılarak ön işleme tabi tutulmuş ve alt kategori puanlarına dönüştürülmüştür. Son olarak, makine öğrenimi algoritmaları, tutarlı bir ESG derecelendirmesini hesaplamak için bu veriler kullanılarak eğitildi.


Şekil 2: Veriye dayalı ESG endeksinin, tutarlı bir ESG derecelendirmesini hesaplamak için sosyal ağ verilerini nasıl kullandığına dair genel bir bakış

4.1. Veri toplama

ESG'yi bütünsel olarak ölçmek için kişisel olarak bildirilen kurumsal başvuruları kullanmak yerine sosyal ağ verileri kullanıldı. Eğilimleri belirlemek için sosyal ağ analizi ve web kazıma kullanılabilir (Gloor ve diğerleri, 2009). Twitter, LinkedIn ve Google Haberler gibi popüler sosyal ağlarda neredeyse her konuyla ilgili çok sayıda veri bulunur. Bu veriler, şirketin ESG uygulamalarına ilişkin dengeli bir görünüm sağlayabilir ve hem kısa hem de uzun vadeli şirket ESG eğilimlerinin kapsanmasına yardımcı olabilir. Ayrıca başvurulara yansımayabilecek verileri de toplayabilir. Son olarak, bu veriler dışarıdan gelenlerin endişelerini doğrudan vurgulayabilir ve bu da şirketin ESG girişimlerinin daha etkili olmasını daha iyi yönlendirebilir.


Şekil 3: Veri toplamada kullanılan Anahtar Kelimeler/Konular


Bunu yapmak için ESG ile ilgili anahtar kelimelerin kapsamlı bir listesi oluşturuldu (Şekil 3). Bu anahtar kelime listesi, mevcut ESG derecelendirme metodolojilerinde yaygın olarak kullanılan alt kategorilerden ilham almıştır. Bu liste, Wikipedia, LinkedIn, Twitter ve Google Haberler'den halka açık şirket verilerinin toplanmasına yardımcı olmak için kullanıldı. Veri toplamak için Python'da web kazıyıcılar geliştirildi. Wikipedia verileri Wikipedia Uygulama Programlama Arayüzü (API) kullanılarak toplandı. Vikipedi bir şirketin uygulamalarına genel bir bakış sunmaya hizmet eder. Google Haberler verileri, bir Google aramasına dayalı olarak en popüler haber makalelerinin belirlenmesiyle toplanmıştır. Bu makalelere olan bağlantılar saklandı. Haberler, dikkate değer ESG gelişmelerine ilişkin genel güncellemelerin sunulmasına hizmet ediyor. Twitter verileri Snscrape kütüphanesinin yardımıyla toplandı. Snscrape, kullanıcıların hemen hemen her zaman aralığında neredeyse sınırsız Tweet (saatte kaç tane toplanabileceğine ilişkin belirli kısıtlamalarla) toplamasına olanak tanıyan hafif bir API'dir. Twitter, öncelikle bir şirketin uygulamaları hakkında tüketici taraflı geri bildirim vermek için seçildi. LinkedIn API, LinkedIn gönderilerinin toplanmasını desteklemediğinden bunun yerine sıfırdan bir algoritma oluşturuldu. Algoritma, bir LinkedIn sorgusunda gezinen bir insanı simüle etmek için Selenium Chromedriver'ı kullandı. Buna dayanarak, her gönderinin metni BeautifulSoup aracılığıyla HTML istekleri kullanılarak toplandı ve saklandı. LinkedIn, bir şirketin uygulamaları hakkında daha profesyonel taraflı bilgi sağlamaya hizmet ediyor. Bu veri toplama mimarisi, derecelendirmelerin gerektiğinde gerçek zamanlı olarak yenilenmesine ve oluşturulmasına olanak tanır. Daha sonra her bir alt kategoriye ait veriler bir CSV dosyasında saklandı.


Bu dört sosyal ağ, şirketin ESG verilerini geniş bir yelpazede kapsıyor. Çoğu S&P 500 şirketi için (gayrimenkul hariç) veriler toplandı. Gayrimenkul öncelikli olarak ÇSY konularıyla ilgili olarak (yüzey düzeyindeki analize dayalı olarak) çok fazla kapsanmadığı ve dolayısıyla önerilen sistem için uygun görünmediği için hariç tutuldu. Bu, toplanan şirketlerin sektörler ve endüstriler arasında iyi dengelenmesini sağlar. Web kazıyıcılar, bir sosyal ağdaki her anahtar kelime için ~100 gönderi/makale toplamaya çalıştı. Ancak bazen daha az bilinen şirketler için API hız sınırları ve sınırlı veri kullanılabilirliği nedeniyle daha az veri toplanabiliyordu. Koleksiyonu hızlandırmak için birden fazla komut dosyası aynı anda çalıştırıldı. İlk başta, programların bu kadar kısa bir zaman diliminde bu kadar çok veri toplaması nedeniyle genellikle hızları sınırlanıyordu. Bu sorunu çözmek için, programın bununla karşılaşması durumunda duraklatılmasını sağlayacak önlemler eklendi. Tüm veri toplama her sitenin şart ve koşullarına uygun olarak yapıldı. Toplamda, ~470 şirketten yaklaşık ~937.400 toplam veri noktası toplandı ve sosyal ağ anahtar kelimesi başına ortalama ~37 puan toplandı. Bu verilerin çoğu 2021'de yoğunlaştı. Ancak, halihazırda yeterli bilgi toplamakta zorlanan daha az bilinen şirketlere ilişkin veri noktalarının kaldırılmasına neden olacağı için kesin bir tarih aralığı getirilmedi.


Tüm veriler toplandıktan sonra daha fazla analiz için bir elektronik tabloya aktarıldı. Veriler RegEx (Normal İfadeler) kullanılarak önceden işlendi. İlk olarak URL'ler ve bağlantılar kaldırıldı. İsimleri soyutlamak için sözler genel bir kelimeyle değiştirildi. Son olarak, Yaygın olmayan karakterler ve noktalama işaretleri kaldırıldı. Bu, NLP analizine müdahale edebilecek kelimelerin/karakterlerin filtrelenmesine yardımcı oldu.

4.2. NLP Analizi

Veriler temizlenip organize edildikten sonra analiz için bir NLP algoritması oluşturuldu. İlk olarak, sonuçları engelleyebilecek ESG ile alakasız verileri filtrelemek için bir ESG alaka algoritması oluşturuldu. Bunu yapmak için, gönderinin/makalenin mevcut şirketin yanı sıra bir veya daha fazla ESG alt kategorisinden bahsedip bahsetmediğini görmek için anahtar kelime tespiti kullanıldı. Daha sonra, istenmeyen verileri kaldırmak amacıyla bir gönderinin kuruluşla ilgili olup olmadığını belirlemek için Python'un Doğal Dil Araç Seti (NLTK) Adlandırılmış Varlık Tanıma kitaplığı kullanıldı. Örneğin, "elma iklimi" sorgusu arandığında "Bahar iklimi elma ağacı yetiştirmek için en iyi zamandır" şeklinde bir gönderi çıkabilir. Ancak Adlandırılmış Varlık Tanıma, "Apple" sıfat olarak kullanıldığından bu cümlenin ESG ile ilgili olmadığını tespit edebilecektir. Bu nedenle algoritma bunu analizden çıkaracaktır. Öte yandan, eğer paylaşımda "Apple iklim değişikliği girişimlerine 500 milyon dolar akıtıyor" deniyorsa algoritma, paylaşımın Apple'ın organizasyonundan bahsettiğini tespit edecektir. Bu filtreleme adımı, veri kalitesini artırmak için ilgisiz bilgilerin kaldırılmasına yardımcı olur.


Filtrelemeden sonra, bir gönderinin ESG pozitif mi yoksa negatif mi olduğunu puanlamak için NLP duyarlılık analizi kullanıldı. Bunu yapmak için iki NLP algoritması oluşturuldu: Kısa gönderi NLP algoritması daha kısa metin gövdelerini (Tweetler, LinkedIn gönderileri) analiz ederken, uzun makale NLP algoritması daha uzun metinleri (Haber makaleleri, Wikipedia makaleleri) analiz etti.


Farklı Python duygu analizi kütüphanelerinin edebi analizi gerçekleştirildi. TextBlob, VADER, FastText ve Flair gibi çeşitli duygu analizi kütüphaneleri karşılaştırıldıktan sonra Flair'in diğer sınıflandırıcılardan daha iyi performans gösterdiği ortaya çıktı. Bunun nedeni muhtemelen VADER veya TextBlob gibi basit kelime çantası sınıflandırıcılarının farklı kelimelerin birbirleriyle olan ilişkilerini tespit edememesidir. Öte yandan Flair, bir cümlenin kelime seviyesi ve karakter seviyesi ilişkilerini analiz etmek için bağlamsal kelime vektörlerini kullandı. Muhtemelen bu algoritmalar, film inceleme duyarlılığını 1-5 arasında derecelendirmek için Stanford Sentiment Treebank (SST) üzerinde test edildiğinde, Flair algoritmasının %49,90 F1 puanıyla en iyi performansı gösterdiğinin bulunmasının nedeni budur (Akbik). ve diğerleri, 2018) (Rao ve diğerleri, 2019) (şekil 4). Böylece kısa mesaj algoritması Flair duygu analizi kütüphanesi kullanılarak oluşturuldu. Uzun makale algoritması aslında kısa gönderi algoritmasıdır ancak bir makaledeki tüm ilgili ana paragrafların (yani şirket adını içeren paragrafların) ortalaması alınır.


Şekil 4: SST-5 veritabanındaki farklı duygu analizi algoritmalarının doğruluğunun karşılaştırılması


Bu şemsiye algoritmalar her bir sosyal ağ için daha da optimize edildi. Örneğin, LinkedIn algoritması, kendi kendini raporlamayı ortadan kaldırmak için yazarın bir LinkedIn gönderisine ilişkin profilini analiz etti. Bunun nedeni, yöneticilerin genellikle diğer tarafsız gözlemleri sulandırabilecek ve dolayısıyla sonuçları yorumlayabilecek olumlu girişimlerini ve hedeflerini tartışmasıdır. Ek olarak, Twitter ve LinkedIn algoritmaları için, metin içinde bir bağlantı adresi bulunursa algoritma, değerlendirme için o makaleyi analiz edecektir.


Başlangıçta analiz algoritması çok yavaştı çünkü Flair'ın bir gönderiyi analiz etmesi 3-4 saniye sürecekti. Böylece "Flair duygusal hızlı" adlı bir varyasyon kuruldu. Bu, Flair'in birden fazla gönderiyi aynı anda analiz ettiği toplu analiz yapmasına olanak sağladı. Bu, doğruluktan biraz ödün verirken analiz süresini önemli ölçüde kısaltır.


Tüm ham veriler puanlandıktan sonra, puanların ortalaması tutarlı bir elektronik tablo halinde alındı. Eksik alt puan verilerini doldurmak için ortalama atama kullanıldı. Bu alt kategori puanları, yöneticilere önemli konulardaki sosyal duyarlılığın dökümünü sunarak onlara somut bilgiler sağlayabilir. Şekil 4: SST-5 veritabanındaki farklı duygu analizi algoritmalarının hangi alanların iyileştirilmesi gerektiği konusunda doğruluğunun karşılaştırılması. Bu puanlar, girişimleri yönlendirmeye yardımcı olmak için ham olarak kullanılabilir veya bir ESG tahmini sağlamak için makine öğrenimi aracılığıyla daha ayrıntılı olarak derlenebilir.

4.3. Makine Öğrenimi Algoritmaları

Veriler derlendikten sonra farklı makine öğrenimi modelleri test edildi. Bu modellerin amacı, 0 en kötü ve 100 en iyi olmak üzere 0-100 arasında bir ESG puanı tahmin etmekti. Bu denetimli öğrenme modellerinin çoğu, sınırlı verilerle doğrusal olmayan kalıpları öğrenebilen hafif regresyon algoritmalarıydı. Bu algoritmalardan bazıları Rastgele Orman Regresyonunu, Destek Vektörü Regresyonunu, K-En Yakın Komşular Regresyonunu ve XGBoost (Extreme Gradient Boosting) Regresyonunu içerir. Rastgele Orman Regresyon, eğitim süresi boyunca çeşitli karar ağaçları oluşturarak ve ortalama tahminin çıktısını alarak çalışır (Tin Kam Ho, 1995). Destek Vektörü Regresyon, bir değer eşiği dahilinde en iyi uyum çizgisini tanımlar (Awad ve diğerleri, 2015). K-En Yakın Komşular Regresyon, komşu veri noktalarının ortalama değerine dayalı bir değer tahmin eder (Kramer, 2013). XGBoost (Extreme Gradient Boosting) Regresyon, daha basit regresyon ağaçlarının tahminlerini/tahminlerini birleştirerek gradyan artırmayı kullanır (Chen ve diğerleri, 2016).


Bu regresyon algoritmaları 19 özellik kullanılarak eğitildi. Bu özellikler, Vikipedi için ek bir kategoriyle birlikte 18 anahtar kelimenin her biri için ortalama duyarlılığı içerir. Mevcut çözümlerden çok fazla sapmamalarını sağlamak için kamuya açık S&P Global ESG derecelendirmelerine göre kalibre edildiler. Analiz edilen tüm şirketlerin S&P Global ESG puanlarını almak için GitHub'daki kamuya açık lisanslı bir ESG derecelendirme kazıyıcı kullanıldı (Shweta-29). Daha fazla doğruluk için aşırı uyumu önlemek amacıyla düzenlileştirme gibi optimizasyon teknikleri kullanıldı.


Algoritmalar oluşturulmadan önce, ESG alt kategorisi başına 5'ten az makalesi/gönderisi olan şirketler filtrelendi. Geriye ~320 şirket analiz için kaldı. Algoritmayı oluşturmak ve test etmek için ~256 şirket eğitim verisi olarak, ~64 şirket ise test verisi olarak kullanıldı. Bu sonuçlar algoritmanın tahmin yeteneklerini belirlemek için kullanıldı.