如何训练斯坦福 NLP 情感分析工具

2024-05-02

地狱大家!我正在使用斯坦福核心 NLP 包,我的目标是对推文直播进行情感分析。

按原样使用情感分析工具对文本“态度”的分析非常差。许多积极因素被标记为中性,许多消极因素被评为积极。我已经在文本文件中获取了超过一百万条推文,但我不知道如何实际获取train该工具并创建我自己的模型。

链接到斯坦福情绪分析页面 http://nlp.stanford.edu/sentiment/code.html

“可以使用 PTB 格式数据集使用以下命令重新训练模型:”

java -mx8g edu.stanford.nlp.sentiment.SentimentTraining -numHid 25 -trainPath train.txt -devPath     dev.txt -train -model model.ser.gz

dev.txt 中的示例(前导 4 代表 5 ... 4/5 正中的极性)

(4 (4 (2 A) (4 (3 (3 warm) (2 ,)) (3 funny))) (3 (2 ,) (3 (4 (4 engaging) (2 film)) (2 .))))

test.txt 中的示例

(3 (3 (2 If) (3 (2 you) (3 (2 sometimes) (2 (2 like) (3 (2 to) (3 (3 (2 go) (2 (2 to) (2 (2 the) (2 movies)))) (3 (2 to) (3 (2 have) (4 fun))))))))) (2 (2 ,) (2 (2 Wasabi) (3 (3 (2 is) (2 (2 a) (2 (3 good) (2 (2 place) (2 (2 to) (2 start)))))) (2 .)))))

来自 train.txt 的示例

(3 (2 (2 The) (2 Rock)) (4 (3 (2 is) (4 (2 destined) (2 (2 (2 (2 (2 to) (2 (2 be) (2 (2 the) (2 (2 21st) (2 (2 (2 Century) (2 's)) (2 (3 new) (2 (2 ``) (2 Conan)))))))) (2 '')) (2 and)) (3 (2 that) (3 (2 he) (3 (2 's) (3 (2 going) (3 (2 to) (4 (3 (2 make) (3 (3 (2 a) (3 splash)) (2 (2 even) (3 greater)))) (2 (2 than) (2 (2 (2 (2 (1 (2 Arnold) (2 Schwarzenegger)) (2 ,)) (2 (2 Jean-Claud) (2 (2 Van) (2 Damme)))) (2 or)) (2 (2 Steven) (2 Segal))))))))))))) (2 .)))

我接下来有两个问题。

每个文件的意义和区别是什么? Train.txt/Dev.txt/Test.txt ?

我如何使用充满推文的原始、未解析的文本文件来训练我自己的模型?

我对 NLP 很陌生,所以如果我缺少任何必需的信息或任何东西,请批评!谢谢你!


每个文件的意义和区别是什么? Train.txt/Dev.txt/Test.txt ?

这是标准的机器学习术语。训练集用于(令人惊讶地)训练模型。开发集用于调整模型可能具有的任何参数。您通常会做的是选择一个参数值,在训练集上训练模型,然后检查训练后的模型在开发集上的表现如何。然后,您选择另一个参数值并重复。此过程可帮助您找到模型的合理参数值。

完成此操作后,您可以继续测试模型在测试集上的表现。这是unseen- 你的模型以前从未遇到过任何这些数据。测试集与训练和开发集分开非常重要,否则您将根据以前见过的数据有效地评估模型。这是错误的,因为它不会让您了解模型的实际效果。

我如何使用一个原始的、未解析的文本文件来训练我自己的模型,其中包含 推文?

您不能也不应该使用一组未解析的文档进行训练。递归深度模型的全部要点(以及它表现如此出色的原因)是它可以从解析树的每个级别的情感注释中学习。您上面给出的句子可以这样格式化:



(4 
    (4 
        (2 A) 
        (4 
            (3 (3 warm) (2 ,)) (3 funny)
        )
    ) 
    (3 
        (2 ,) 
        (3 
            (4 (4 engaging) (2 film)) (2 .)
        )
    )
)
  

通常,情感分析器是通过文档级注释进行训练的。您只有一个分数,并且该分数适用于整个文档,忽略了文档中的短语可能表达不同情绪的事实。斯坦福大学团队投入了大量精力来注释文档中的每个短语以表达情感。例如,这个词film其本身的情绪是中性的:(2 film)。然而,这句话engaging film是非常积极的:(4 (4 engaging) (2 film)) (2 .)

如果您已标记推文,则可以使用任何其他文档级情感分类器。这情感分析 /questions/tagged/sentiment-analysisstackoverflow 上的 tag 已经有一些非常好的答案,我不会在这里重复。

PS 你给你的推文贴上标签了吗?全部100万吗?如果你这样做了,我愿意为该文件付给你很多钱:)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何训练斯坦福 NLP 情感分析工具 的相关文章

  • Google 地图查询返回的 JSON 包含像 \x26 这样的编码字符(如何解码?)

    在 Java 应用程序中 我获取 JSON 来自 Google 地图 其中包含以下字符 x26我想将其转换为其原始字符 据我所知 这是一个 UTF 8 表示法 但我不完全确定 在源 JSON 中 可能会出现各种编码字符 例如 x3c div
  • 如何对 IntStream 进行逆序排序

    我正在使用 txt 文件读取数字BufferedReader 我想颠倒该流中元素的顺序 以便在收集它们时 它们将从最高到最低排列 我不想在构建数组后进行排序 因为我不知道其中可能有多少元素 我只需要最高的 N 个元素 in new Buff
  • 使用 Spring 时实例化对象,用于测试与生产

    使用 Spring 时 应该使用 Spring 配置 xml 来实例化生产对象 并在测试时直接实例化对象 这样的理解是否正确 Eg MyMain java package org world hello import org springf
  • MI设备中即使应用程序被杀死,如何运行后台服务

    您好 我正在使用 alaram 管理器运行后台服务 它工作正常 但对于某些 mi 设备 后台服务无法工作 我使用了服务 但它无法工作 如何在 mi 中运行我的后台服务 MI UI有自己的安全选项 所以你需要的不仅仅是上面提到的粘性服务 你需
  • JavaFX - setVisible 隐藏元素但不重新排列相邻节点

    在 JavaFX 中 如果我有一个场景有 2VBox元素和每个VBox有多个Label in it 如果我设置顶部VBox to 无形的 为什么底部VBox 不向上移动顶部的场景VBox was The VBox is 无形的但我希望其他物
  • Java替换特定字符

    这是我在这个网站上的第一个问题 所以我会尽量不要成为一个十足的菜鸟 我目前正在用java 创建刽子手游戏 所以我问你的问题是我们是否被赋予了 幽灵 这个词 并将 Ghost 替换为 hiddenWord ghost length for i
  • cucumber-junit-platform-engine 中的功能文件发现

    In cucumber junit我使用的库 CucumberOptions定义功能文件位置 package com mycompany cucumber import cucumber api CucumberOptions import
  • 使用 java 按电子邮件发送日历邀请

    我正在尝试使用 java 发送每封电子邮件的日历邀请 收件人收到电子邮件 但不会显示接受或拒绝的邀请 而是将该事件自动添加到他的日历中 我正在使用 ical4j jar 构建活动 邀请 private Calendar getInvite
  • Install4j:如何在安装结束时执行命令行 java -jar filename.jar

    在 Intall4j 中 在安装结束时 我只想通过执行如下命令行来初始化某些内容 java jar filename jar 我怎样才能归档这个任务install4j Thanks 将 运行可执行文件或批处理文件 操作添加到 安装屏幕 并设
  • tomcat 过滤所有 web 应用程序

    问题 我想对所有网络应用程序进行过滤 我创建了一个过滤器来监视对 apache tomcat 服务器的请求 举例来说 它称为 MyFilter 我在 netbeans 中创建了它 它创建了 2 个独立的目录 webpages contain
  • jmap - 组织和堆操作会给 jvm 带来开销吗?

    正如标题所述 需要多少开销jmap histo and jmap heap分别带到jvm 如果一个内存敏感的 Java 进程处于OutOfMemory 例如 大约 96 的堆已满 并且无法通过 full gc 清除 其中一项操作是否有可能将
  • Apache Commons CLI:替代已弃用的 OptionBuilder?

    IntelliJ 显示此示例代码中不推荐使用 OptionBuilderhttp commons apache org proper commons cli usage html http commons apache org proper
  • 如何为 Jackson 编写一个包罗万象的(反)序列化器

    当您提前知道类型时 编写自定义序列化器非常容易 例如 MyType一个人可以写一个MyTypeSerializer extends StdSerializer
  • 在 Selenium WebDriver 上如何从 Span 标签获取文本

    在 Selenium Webdriver 上 如何从 span 标记检索文本并打印 我需要提取文本UPS Overnight Free HTML代码如下 div id customSelect 3 class select wrapper
  • 我想要一个 Java 阿拉伯语词干分析器

    我正在寻找阿拉伯语的 Java 词干分析器 我找到了一个名为 AraMorph 的库 但它的输出是无法控制的 并且它会形成不需要的单词 还有其他阿拉伯语词干分析器吗 这是新的阿拉伯语词干分析器 Assem 的阿拉伯语轻词干分析器 http
  • struts 教程或示例

    我正在尝试在 Struts 中制作一个登录页面 这个想法是验证用户是否存在等 然后如果有错误 则返回到登录页面 错误显示为红色 典型的登录或任何表单页面验证 我想知道是否有人知道 Struts 中的错误管理教程 我正在专门寻找有关的教程 或
  • Path2D 上的鼠标指针检测

    我构建了一个Path2D http docs oracle com javase 7 docs api java awt geom Path2D html表示由直线组成的未闭合形状 我希望能够检测何时单击鼠标并且鼠标指针靠近路径 在几个像素
  • Java 编码风格、局部变量与重复方法调用

    我更喜欢使用局部变量而不是多次调用同一方法 I prefer this Vehicle vehicle person getVehicle if vehicle instanceof Car Car car Car vehicle car
  • 为什么 BufferedWriter 不写入文件?

    我有这个代码 String strings Hi You He They Tetrabenzene Caaorine Calorine File file new File G words txt FileWriter fWriter Bu
  • 使用 eclipse IDE 配置 angularjs

    我想开始使用 AngularJs 和 Java Spring 进行开发 我使用 Eclipse 作为 IDE 我想配置我的 Eclipse 以使这些框架无缝工作 我知道我可能要求太多 但相信我 我已经做了很多研究 你们是我最后的选择 任何帮

随机推荐

  • Angular Service Worker,缓存离线应用程序的 api 调用

    我正在尝试让服务工作者以角度方式处理 API 请求 我希望该应用程序能够离线工作 并且我有以下配置 name api urls https x com cacheConfig strategy performance maxSize 20
  • 如果基于更改值,Azure 逻辑应用程序条件无法在循环中工作

    我需要编写一个简单的 LogicApp 它连接到 http 端点 接收一些 JSON 循环遍历 JSON 消息 并根据消息中的值将其分块提交到不同的 http 端点 在这样做时 我得出的结论是 For Each 循环内的条件始终评估循环之前
  • 如何在多个设备上运行 Uiautomator 测试?

    我正在尝试在 bat 文件中进行 Uiautomator android Ui 测试 但我无法让它们并行运行 这是我的执行流程并连接了 3 个设备 gt adb devices XXXX XXXX XXXX gt adb push bin
  • bigquery url 解码

    有没有一种简单的方法可以在 BigQuery 查询语言中进行网址解码 我正在使用一个表 该表有一列包含某些值中的 URL 编码字符串 例如 http xyz com example php url http 3A 2F 2Fwww exam
  • 使用 html/javascript/css 的弹出表单

    我必须在弹出窗口中打开一个 html 表单 弹出窗口不应该是一个窗口 通常使用 window open 创建 而应该像下面的链接中出现的那样 在 Firefox 中打开 http www w3schools com js tryit asp
  • 如何获取 UITableView 中特定行的高度

    In my UITableView我使用委托方法为不同的行设置了不同的高度 tableView heightForRowAtIndexPath 现在给定一个NSIndexPath 我想获取之前为特定行指定的高度 你可以用这个 CGRect
  • CIFIlter 是否有替代方案可以在 watch os 6 中生成二维码

    我正在开发一个独立于手表的应用程序 我想在 watchkit 上生成二维码 但是由于 coreImage 不能与 watchkit 一起使用 我们还有其他方法可以做到这一点吗 Thanks 我使用支持 watchos 的库 例如EFQRCo
  • 以编程方式将 LinearLayout 高度更改为 0

    我正在调整大小LinearLayout从原来的高度到0 with ViewGroup LayoutParams params getLayoutParams params height newHeight requestLayout 一切正
  • 代码改进:此模式的更好替代方案?

    在类似的问题中 这种模式叫什么 软锁 https stackoverflow com questions 7259436 what is this pattern called soft lock 我询问下面的代码清单的模式名称 publi
  • 产生并处理软件中断

    有人可以告诉我如何在Linux下生成软件中断然后用request irq处理它吗 或者也许这是不可能的 您可以使用软中断来代替 您可以通过编辑 include linux interrupt h 来定义您的 sofirq 然后使用函数 ra
  • 有没有办法忽略 ASP.NET Core 中 HTTP 日志记录中的 swagger 响应?

    我有一个使用 net 7 创建的 asp net Web api 我启用了http 日志记录 https learn microsoft com en us aspnet core fundamentals http logging vie
  • Smart Lock 登录提示 setPhoneNumberIdentifierSupported 不起作用

    我正在尝试使用 HintRequest 获取用户电话号码 PendingIntent intent Auth CredentialsApi getHintPickerIntent googleApiClient new HintReques
  • 如何响应 vaadin 中表格行的点击

    我有以下代码 public Button getBtnSubmit com vaadin ui Button ClickListener l if null l btnSubmit addListener l return btnSubmi
  • 如何将 Android USB 连接模式更改为仅充电? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 Locked 这个问题及其答案是locked help locked posts因为这个问题是题外话 但却具有历史意义 目前不接受新的答案
  • 我可以设置默认的全局 Java 套接字超时吗?

    我遇到了一个问题 应用程序中涉及 http 和 ftp 连接的各个位置在 java net SocketInputStream socketRead0 上无限期地挂起 在终止 java 进程之前一次观察几个小时 我想全局覆盖默认的套接字超时
  • “ok glass”菜单中没有连接消息

    我正在开发一个应用程序 当用户从菜单中选择选项时 它会在时间轴中添加一张实时卡 就像示例应用程序一样 我注意到 当您没有任何连接时 玻璃上的本机应用程序 例如 Google 会在 ok glass 菜单中显示 无网络连接 消息 并且无法运行
  • Javascript对象引用链接到数组中的对象?

    如果我有一个对象 var array var theobject null array push song The Song artist The Artist song Another Song artist Another Artist
  • R如何删除字符串中非常特殊的字符?

    我正在尝试删除字符串中的一些非常特殊的字符 我读过其他帖子 例如 从 R 中的字符串中删除所有特殊字符 https stackoverflow com questions 10294284 remove all special charac
  • Plotly 中所有地理范围的列表

    我正在尝试使用在地图上绘制数据plotly js 我知道您可以通过以下方式获得一个国家的地图 layout dict title geo dict scope usa 我们有可用范围的列表吗 不同的地区 某个地方 我尝试过谷歌搜索但似乎找不
  • 如何训练斯坦福 NLP 情感分析工具

    地狱大家 我正在使用斯坦福核心 NLP 包 我的目标是对推文直播进行情感分析 按原样使用情感分析工具对文本 态度 的分析非常差 许多积极因素被标记为中性 许多消极因素被评为积极 我已经在文本文件中获取了超过一百万条推文 但我不知道如何实际获