iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >HanLP自然语言处理包如何安装与使用
  • 345
分享到

HanLP自然语言处理包如何安装与使用

2024-04-02 19:04:59 345人浏览 独家记忆
摘要

这篇文章主要介绍了HaNLP自然语言处理包如何安装与使用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。     

这篇文章主要介绍了HaNLP自然语言处理包如何安装与使用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

        HanLP是由一系列模型与算法组成的Java工具包,目标是促进自然语言处理在生产环境中的应用。HanLP具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点。

        HanLP能提供以下功能:关键词提取、短语提取、繁体转简体、简体转繁体、分词、词性标注、拼音转换、自动摘要、命名实体识别(地名、机构名等)、文本推荐等功能,详细请参见以下链接:Http://www.hankcs.com/nlp/hanlp.html  

        HanLP下载地址: https://GitHub.com/hankcs/HanLP/releases,HanLP项目主页: https://github.com/hankcs/HanLP

        1、HanLP安装

         hanlp是由jar包、properties文件和data数据模型组成,因此,在安装时,这三种文件都应该有。可以通过建立java工程即可运行。

         hanlp.properties文件中描述了不同词典的相对路径以及root根目录,因此,可以在此文件中修改其路径。

         hanlp-1.3.4.jar包中包含了各种算法及提取方法的api,大部分方法都是静态的,可以通过HanLP直接进行调用,因此,使用非常方便。

         data文件夹中包含了dictionary和model文件夹,dictionary中主要是各种类型的词典,model主要是分析模型,hanlp api中的算法需要使用model中的数据模型。

         2、HanLP的使用

         普通java工程目录如下所示:

   HanLP自然语言处理包如何安装与使用HanLP自然语言处理包如何安装与使用

           3、HanLP的具体使用

           例如:对excel中的聊天记录字段进行热点词的提取,计算并排序,功能如下所示

           package com.run.hanlp.demo;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;

import org.apache.log4j.Logger;

import com.hankcs.hanlp.HanLP;
import com.hankcs.hanlp.seg.common.Term;
import com.hankcs.hanlp.suggest.Suggester;
import com.hankcs.hanlp.summary.TextRankKeyWord;
import com.hankcs.hanlp.tokenizer.NLPTokenizer;
import com.hankcs.hanlp.tokenizer.StandardTokenizer;
import com.run.util.ExcelUtil;

public class HanlpTest {

    public static final Logger log = Logger.getLogger(HanlpTest.class);

    public static void main(String[] args) {
        log.info("关键词提取:");
        HanlpTest.getWordAndFrequency();
    }
    
    
    public static void getWordAndFrequency() {
        // String content =
        // "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。";
        List<Map<String, Integer>> content = ExcelUtil.readExcelByField("i:/rundata/excelinput",5000,5);
        Map<String, Integer> allKeyWords=new HashMap<>();
        for(int i=0;i<content.size();i++){
            Map<String, Integer> oneMap=content.get(i);
            for(String str:oneMap.keySet()){
                int count = oneMap.get(str);
                CombinerKeyNum(str,count,allKeyWords);
            }
        }
        List<Map.Entry<String,Integer>> sortedMap=sortMapByValue(allKeyWords);
        log.info(sortedMap);
    }
    
    public static List<Map.Entry<String,Integer>> sortMapByValue(Map<String,Integer> allKeyWords){
        List<Map.Entry<String,Integer>> sortList=new ArrayList<>(allKeyWords.entrySet());
        
        Collections.sort(sortList, new Comparator<Map.Entry<String, Integer>>() {   
            public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) {      
                return (o2.getValue() - o1.getValue());
            }
        });
        return sortList;
    }
    
    public static void CombinerKeyNum(String key,int value,Map<String,Integer> allKeyWords){
        if(allKeyWords.containsKey(key)){
            int count=allKeyWords.get(key);
            count+=value;
            allKeyWords.put(key, count);
        }else{
            allKeyWords.put(key, value);
        }
    }
    
    public static HashMap<String, Integer> geTKEyWordMap(String content) {
        List<Term> list = StandardTokenizer.SEGMENT.seg(content);
        TextRankKeyword textmap = new TextRankKeyword();
        Map<String, Float> map = textmap.getTermAndRank(content);
        Map<String, Integer> mapCount = new HashMap<>();
        for (String str : map.keySet()) {
            String keyStr = str;
            int count = 0;
            for (int i = 0; i < list.size(); i++) {
                if (keyStr.equals(list.get(i).word)) {
                    count++;
                }
            }
            mapCount.put(keyStr, Integer.valueOf(count));
        }
//        log.info(mapCount);
        return (HashMap<String, Integer>) mapCount;
    }

}

运行之后,结果如下:

HanLP自然语言处理包如何安装与使用HanLP自然语言处理包如何安装与使用

 由此可见,可以看见从excel中提取出来的热点词汇及其频率。

感谢你能够认真阅读完这篇文章,希望小编分享的“HanLP自然语言处理包如何安装与使用”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网数据库频道,更多相关知识等着你来学习!

您可能感兴趣的文档:

--结束END--

本文标题: HanLP自然语言处理包如何安装与使用

本文链接: https://www.lsjlt.com/news/65127.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • HanLP自然语言处理包如何安装与使用
    这篇文章主要介绍了HanLP自然语言处理包如何安装与使用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。     ...
    99+
    2024-04-02
  • 怎么在ubuntu下使用pycharm调用Hanlp自然语言处理包
    本篇内容介绍了“怎么在ubuntu下使用pycharm调用Hanlp自然语言处理包”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!首先点击Fi...
    99+
    2023-06-02
  • 汉语言处理包Hanlp的使用
    本来想通过python调用Java实现Hanlp的使用,参考文章:http://t.cn/RUrIF7z ##########python可以用easy_install安装一些软件##########...
    99+
    2024-04-02
  • 如何在 PHP 中使用 NPM 安装自然语言处理库?
    在现代的 Web 应用程序中,自然语言处理(NLP)变得越来越重要。NLP 可以帮助我们分析和理解大量文本数据,使得我们能够更好地理解用户和客户的需求,同时也能够更好地响应这些需求。PHP 是一种广泛使用的 Web 开发语言,而 NPM 是...
    99+
    2023-07-25
    load 自然语言处理 npm
  • 自然语言处理工具包HanLP的Python接口是怎么样的
    今天就跟大家聊聊有关自然语言处理工具包HanLP的Python接口是怎么样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。pyhanlp: Pyth...
    99+
    2024-04-02
  • 如何在Go中使用NPM包进行自然语言处理?
    自然语言处理(NLP)是一种人工智能技术,它可以帮助计算机理解和处理人类语言。在Go语言中,我们可以使用NPM包来进行自然语言处理。本文将介绍如何在Go中使用NPM包进行自然语言处理,并提供一些示例代码来帮助您入门。 首先,您需要安装Go语...
    99+
    2023-07-02
    npm 函数 自然语言处理
  • 自然语言处理:如何使用PHP和Bash?
    自然语言处理(NLP)是一种人工智能技术,它使计算机能够理解自然语言,例如英语或汉语。随着自然语言处理在各种应用中的广泛使用,开发人员需要掌握使用PHP和Bash的技能来处理自然语言。在本文中,我们将探讨如何使用PHP和Bash进行自然语言...
    99+
    2023-07-02
    api bash 自然语言处理
  • 如何使用ASP进行自然语言处理?
    自然语言处理(NLP)是一种研究人类语言和计算机之间交互的方法。在NLP中,我们使用计算机技术对语言进行处理,以便机器能够理解和生成人类语言。ASP(Active Server Pages)是一种服务器端脚本技术,用于创建动态Web页面和W...
    99+
    2023-08-11
    数据类型 http 自然语言处理
  • 如何使用Python numy库处理自然语言?
    Python是一种极其强大的编程语言,它在数据处理、机器学习、自然语言处理等领域都有广泛的应用。在这些应用中,NumPy库是一种重要的工具,它提供了一种高效的方式来处理大量的数字和数组。本文将介绍如何使用Python NumPy库来处理自然...
    99+
    2023-10-14
    自然语言处理 文件 numy
  • 如何使用Java和Numpy处理自然语言?
    自然语言处理是人工智能领域中非常重要的一个分支,它可以帮助我们理解和处理自然语言的文本数据。在这篇文章中,我们将介绍如何使用Java和Numpy处理自然语言。 什么是自然语言处理? 自然语言处理(Natural Language Pro...
    99+
    2023-11-08
    文件 numpy 自然语言处理
  • Bash如何处理自然语言?
    Bash是一个强大的命令行工具,它可以帮助我们处理各种各样的任务。虽然Bash最初是为了处理命令行输入而设计的,但是它也可以用于处理自然语言。 在本文中,我们将介绍Bash如何处理自然语言。我们将讨论如何在Bash中解析文本、搜索文本、以...
    99+
    2023-07-02
    api bash 自然语言处理
  • 如何使用自然语言处理技术打包ASP重定向?
    自然语言处理技术(NLP)已经成为现代计算机科学领域的重要技术之一。NLP技术可以帮助计算机理解和处理人类语言,并将其转换为可计算的形式。在本文中,我们将讨论如何使用自然语言处理技术打包ASP重定向。 ASP是一种服务器端脚本语言,它可以用...
    99+
    2023-07-22
    重定向 自然语言处理 打包
  • 如何用python做自然语言处理
    如何用python做自然语言处理 使用Python进行自然语言处理(NLP)是非常常见和强大的。以下是一些基本步骤: 安装所需的库: 首先,您需要安装一些用于自然语言处理的Python库,如NLTK...
    99+
    2023-10-27
    python 自然语言处理 开发语言
  • GO 语言如何应用于自然语言处理?
    GO语言是一种开源的编程语言,由Google公司开发。它的设计目标是提供一种简单、高效、可靠的编程语言,适用于现代计算机体系结构。自然语言处理(NLP)是一种计算机科学的分支,旨在使计算机能够理解、解释和生成人类语言。GO语言在NLP方面拥...
    99+
    2023-09-05
    自然语言处理 shell 对象
  • 如何利用自然语言处理技术打包Go Load?
    自然语言处理技术已经成为各个领域的热门话题,它的应用领域包括机器翻译、自动摘要、情感分析、问答系统等。在软件开发中,自然语言处理技术可以帮助我们更高效地处理和管理代码。本文将介绍如何利用自然语言处理技术打包Go Load,以及如何将其应用于...
    99+
    2023-06-22
    load 打包 自然语言处理
  • 如何使用 GO SHELL 进行自然语言处理?
    GO SHELL 是一个开源的自然语言处理工具包,它可以帮助我们快速构建自然语言处理应用程序。在本文中,我们将介绍如何使用 GO SHELL 进行自然语言处理。 一、安装 GO SHELL 首先,我们需要安装 GO SHELL。我们可以在 ...
    99+
    2023-09-05
    自然语言处理 shell 对象
  • GO语言打包自然语言处理项目,Django框架如何应用?
    随着自然语言处理技术越来越成熟,越来越多的开发者开始使用自然语言处理技术来解决各种问题。GO语言是一种高效、灵活的编程语言,而Django框架则是一种流行的Python Web框架。本文将介绍如何使用GO语言打包自然语言处理项目,并将其整...
    99+
    2023-06-07
    打包 自然语言处理 django
  • Python怎么调用自然语言处理包pyhanlp
    本篇内容主要讲解“Python怎么调用自然语言处理包pyhanlp ”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python怎么调用自然语言处理包pyhanlp ”吧!一句话安装pyhanlp...
    99+
    2023-06-02
  • Java如何应用于自然语言处理?
    自然语言处理(NLP)是人工智能领域中的一个重要分支,它的目标是让计算机能够理解、分析和生成自然语言。Java作为一种非常流行的编程语言,在NLP领域也有着广泛的应用。本文将介绍Java在NLP领域的应用,并通过演示代码来说明Java如何...
    99+
    2023-06-04
    自然语言处理 unix 容器
  • Python与自然语言处理:如何更好地理解人类语言?
    Python是一种广泛使用的编程语言,它在自然语言处理(NLP)领域中也扮演着重要的角色。NLP是一种涉及文本和语音数据的人工智能领域,它的目标是使计算机能够更好地理解人类语言。在本文中,我们将探讨如何使用Python来更好地理解人类语言。...
    99+
    2023-10-28
    http 大数据 自然语言处理
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作