C#——基于词/语言的人格分析
本文关键字:语言 于词 | 更新日期: 2023-09-27 18:23:38
我正在尝试开发一个C#程序,该程序可以检索用户在Facebook上的帖子,并根据帖子分析此人的个性。这意味着要分析他的单词、语言/句子结构,以确定他是什么类型的人。例如:过度自信、胆怯、愤怒等
然而,我不知道该如何用这些词来分析他的个性。这似乎很难,因为我可以在帖子中同时使用积极和消极的词语。有什么想法吗?
您想要完成的任务相当复杂(主要是提供可接受的精度),而且没有简单的解决方案。
在你的立场上,我会采取的方法的基本想法:
- 它可以专门用于给定的语言(例如英语),您在执行开发时考虑的那个。依赖考虑其他语言的翻译会影响它的可靠性很高。需要进行新的"启动分析"对于你想考虑的每一种新语言
- 此开发中最重要的部分将是数据库,因此您必须将重点放在其设计、连接、数据存储/检索等方面
- 数据库的最低内容:单词列表,它们的相关"值"(胆小、愤怒等),它们在给定值内的重要性(f单词在"攻击性"的10分中得到8分),这个单词有多大可能有不同的含义(如上面的评论中所建议的,"生病"可能会得到一个警告标志来检查确切的上下文),进一步的考虑因素(例如,重复次数如何影响其价值)等。此外,您必须包括不同级别的存储(每个帖子、每个用户、每个时间等)
- 您必须创建一个具有足够适应性和可扩展性的算法(这里预计会有很多更改、改进、添加等)来提供您想要的内容。我的基本想法是:根据数据库中定义的每个单词的值来评估每个帖子(通过单独考虑每个单词、给定单词的重复次数和给定单词的上下文等),也就是说,检查哪些单词值得分析,哪些单词不值得分析;解析系统不仅能够提取单个单词,而且能够分析上下文(同一句子/段落或不同句子/段落中目标单词前后的单词);制定一些规则来避免"误解"(例如,认为一种行为具有攻击性的帖子数量最少,否则就忽略(也许只是幽默);解释由于不同类型的帖子而形成的复杂情绪(例如,3个帖子中愤怒+9个帖子中胆小=*);等等);总之,它必须能够尽可能准确地将"离散岗位现实"转换为期望的输出(对岗位/用户的评估)
如前所述,这并不容易。但如果你一步一步地做,并确保结构的适应性足以允许任何修改/扩展,你可能会得到一个相当可靠的软件(通过了解你所能期望的理想结果,即对所使用的语言类型的排名;将其外推到真实的个性分析听起来可能过于雄心勃勃),这可能会引起相当多人的兴趣。