云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

云解析_apache服务器_试用

小七 141 0

数据驱动的环境、社会和治理方法

金融的未来与社会责任、环境管理和企业道德密切相关。为了保持竞争力,金融服务机构(FSI)越来越多地披露有关其环境、社会和治理(ESG)绩效的信息。通过更好地理解和量化对公司或企业的任何投资的可持续性和社会影响,金融服务机构可以降低声誉风险,并保持与客户和股东的信任。在Databricks,我们越来越多地从客户那里听到ESG已成为C套件的优先事项。这不仅是利他主义的驱动力,也受到经济因素的影响:较高的ESG评级通常与估值和盈利能力呈正相关,而与波动性呈负相关。在这篇博文中,我们结合自然语言处理(NLP)技术和图形分析,提供了一种新的可持续投资方法,以提取关键的战略ESG计划,并了解公司在全球市场中的关系及其对市场风险计算的影响。使用Databricks统一数据分析平台,我们将展示Apache SparkTM、Delta Lake和MLflow如何使资产管理公司能够评估其投资的可持续性,并通过对其环境、社会和公司治理战略的全面和数据驱动的观点来增强其业务能力。具体来说,我们将提取年度PDF报告中传达的关键ESG计划,并将其与新闻分析数据中的实际媒体报道进行比较。在本博客的第二部分,我们将了解公司之间的联系,并了解这些联系可能对您的业务产生的积极或消极的ESG后果。虽然本博客将侧重于资产管理公司,以说明ESG和社会责任投资的现代方法,但该框架广泛适用于经济的所有部门,从消费品和能源到媒体和医疗保健。提取关键的ESG计划金融服务机构现在正面临来自股东的越来越大的压力,要求它们披露更多有关其环境、社会和治理战略的信息。公司通常每年以PDF文档的形式在其网站上发布,这些公司通过多个主题传达其关键的ESG计划,例如,他们如何评价员工、客户或客户,如何积极地为社会做出贡献,甚至如何缓解气候变化,例如,减少(或承诺减少)他们的碳排放。由第三方机构(如msci或csrhub)使用,这些报告通常会被整合并跨行业进行基准测试,以创建ESG指标。从ESG报告中提取语句在本例中,我们希望以编程方式访问来自顶级金融服务机构的40多个ESG报告(下表中报告了一些),并了解跨不同主题的关键计划。然而,由于没有标准模式或监管指南,这些PDF文档中的通信方式可能会有所不同,这使得这种方法成为使用机器学习(ML)的最佳候选方法。巴克莱银行https://home.barclays/content/dam/home-barclays/documents/citification/ESG/barclays-PLC-ESG-Report-2019.pdf摩根大通https://impact.jpmorganchase.com/content/dam/jpmc/jpmorgan-chase-and-co/documents/jpmc-cr-esg-report-2019.pdf摩根士丹利https://www.morganstanley.com/pub/content/dam/msdotcom/sustainability/Morgan-Stanley_2019-sustainability-Report_Final.pdf高盛https://www.goldmansachs.com/what-we-do/sustainable-finance/documents/reports/2019-sustainability-report.pdf尽管我们的数据集相对较小,但是我们展示了如何使用用户定义函数(UDF)来分发抓取过程,假设第三方库"PyPDF2"在您的Spark环境中可用。导入请求导入PyPDF2导入io@udf('字符串')def extract_内容(url):#检索PDF二进制流响应=请求.get(url)打开\u pdf_文件=拜特西奥(响应.内容)pdf=PyPDF2.PdfFileReader(打开\u pdf_文件)#返回连接的内容文本=[pdf.getPage(i) .extractText()用于范围(0,pdf.getNumPages())]return"\n".join(文本)除了正则表达式和相当复杂的数据清理(在随附的笔记本中报告),我们还希望利用更高级的NLP功能将内容标记为语法有效的句子。考虑到在内存中加载经过训练的NLP管道所需的时间(例如下面的"spacy"库),我们确保每个Spark执行器只加载一次模型,使用如下PandasUDF策略。导入gensim导入空间从pyspark.sql.functions导入pandas_udf,PandasUDFType@pandas_udf('array',PandasudType.SCALAR编辑器)def extract_语句(content_series_iter):#只提供一次英语负载空间模型spacy.cli.下载("en_core_web_sm")nlp=空间负荷("en_core_web_sm")#为加载的NLP模型提供process_text函数#清理并标记一批PDF内容对于"内容系列"中的"内容系列":屈服含量_系列地图(lambda x:过程文本(nlp,x))通过这种方法,我们能够将原始PDF文档转换成定义良好的句子(有些句子在下表中报告),这些句子适用于我们的40多个ESG报告。作为这个过程的一部分,我们还将我们的内容进行了柠檬化,也就是说,将一个单词转换成更简单的语法形式,比如过去时态转换为现在形式,或者复数形式转换为单数形式。这个额外的过程将在建模阶段通过减少学习主题的字数而得到回报。高盛下一年,我们将在欧洲设立一个新的董事会,目标公司至少要增加一个巴克莱银行对我们来说,重要的是,我们的所有利益相关者都能清楚地了解我们如何管理我们的业务。摩根士丹利2019年,我们的两项融资帮助索诺马县(sonoma county)为低收入和中等收入家庭创造了近80套经济适用的公寓单元,而当时正处于极度短缺的时期。瑞弗史东在过去的四年里,基金会已经保护了超过15000英亩的低地硬木林,有望实现基金成立之初确立的35000英亩的目标虽然人眼相对容易推断出每一个陈述的主题(在这种情况下,多样性、透明度、社会性、环境性),但以程序化和规模化的方式来推断主题具有不同的复杂性,需要先进的数据科学应用。对ESG语句进行分类在本节中,我们希望自动对从40多个ESG报告中提取的8000个句子进行分类。与非矩阵分解一起,潜在Dirichlet分配(LDA)是主题建模工具库中的核心模型之一,它使用Spark ML上的分布式版本或其内存中的sklearn等价物,如下所示。我们使用MLflow实验跟踪计算我们的项频率并捕获我们的LDA模型和超参数。从sklearn.feature_提取.text导入CountVectorizer从学习分解将LatentDirichletAllocation导入为LDA导入mlflow#计算词频#停止语是常见的英语词汇+银行相关的流行语word_tf_vectorizer=count矢量器(stop_words=stop_words,ngram_range=(1,1))word_tf=单词_tf_vectorizer.fit_变换(esg["引理"])#ml流跟踪实验与mlflow.start_运行(run_name='topic_modeling'):#用9个主题训练LDA模型lda=lda(随机状态=42,n个分量=9,学习衰变=0.3)lda.配合(单词_tf)#对数模型mlflow.sklearn.log_模型(lda,"模型")mlflow.log_参数('n_组件,'9')mlflow.log_参数("学习衰退","3")mlflow.log_度量("困惑",lda.困惑(单词_tf)经过多个实验,我们发现有9个主题可以最好地概括我们的语料库。通过深入研究从我们的模型中学习到的每个关键字的重要性,我们尝试将我们的9个主题分为9个具体类别,如下表所示。建议的名称LDA描述性关键字公司战略董事会、公司、公司、治理、管理、执行、董事、股东、全球、参与、投票、任期、责任、业务、团队绿色能源能源,排放,百万,可再生能源,使用,项目,减少,碳,水,十亿,电力,绿色,总量,气体,来源以客户为中心客户,提供,业务,改进,财务,支持,投资,服务,年度,可持续性,财务,全球,包括,帮助,倡议支持社区社区、人员、企业、支持、新的、小型的、收入的、真实的、女性的、发布、地产、访问、客户、英国,包括道德投资投资,气候,公司,变化,投资组合,风险,责任,行业,转型,股权,投资者,可持续发展,商业,机遇,市场可持续金融可持续性,影响,可持续性,资产,管理,环境,社会,投资,公司,十亿,废物,客户,数据,投资,提供行为准则包括,政策,信息,风险,审查,管理,投资,公司,投资组合,过程,环境,治理,范围,行为,数据强有力的治理风险、业务、管理、环境、客户、管理、人员、社会、气候、方法、行为、页面、客户、影响、战略重视员工员工、工作、人员、支持、价值、客户、公司、帮助、包括、提供、社区、计划、多样性、客户、服务通过我们的9个机器学习主题,我们可以轻松地并排比较FSI的每个ESG报告,以更好地了解每个报告的关键优先重点。使用seaborn可视化技术,我们可以很容易地标记出公司之间的主要差异(组织的名称已修订)。当一些组织将更多的注意力放在评价员工和促进多样性和包容性(如ORG-21)时,有些组织似乎更注重道德投资(ORG-14)。LDA的分布是