标签:

Python调用中科院NLPIR(ICTCLAS2015)详解

南京理工大学 计算机科学与工程学院

RuiXia_NUSTM课题组 ChaoLiu(lch614730@163.com)

-------------------------

主要讲解内容:

1. NLPIR版本及下载

2. 代码问题

3. userdict的使用问题

-------------------------

友情提示:如果是swig问题,自己处理。首先下载swig,swig可以帮助我们将C或者C++编写的DLL或者SO文件绑定到包括Python在内的多种语言。Windows下将安装包下载到一定目录下将该目录加入环境变量的path中即可使用swig(当然也可以输入完整的路径来使用swig)。可以打开命令行窗口,在里面输入swig,如果出现“Must specify an input file. Use -help for available options.”则表示一切顺利。

其中【组合包(本人临时建立文件,所需要的仅是本文件夹里面的内容)】中的内容需要:

其中: bin文件夹(自己新建的)下包括:importuserdict文件夹下zip解压文件。Data文件夹为上级目录的Data文件夹所有内容,nlpir、__init__.py、nlpir.py为sample\pythonsample文件夹下文件。

2. A将【组合包】文件夹下的所有内容放入你自己的项目当中,注意修改nlpir.py代码中dll的路径,如下图红圈所示:其中32bit还是64bit是由你自己的python.exe版本决定,而不是你自己的操作系统。

B、为了分词、词性标注、分隔符便于编程,可将nlpir.py代码中的Seg函数改写成:

------------------------------------------------------------------------------------------

‘‘‘

Chao Liu(njust NUSTM RuiXia)

‘‘‘

def NLPIR_Seg_Pos(paragraph,flag = True,echo = ‘/‘):

# NLPIR 分词 Parameters(paragraph:字符串 ,flag:是否标注词性,echo:词性分割符)

para_seg_pos = ‘‘

atoms = segment(paragraph)

for a in atoms:

if len(a.sPOS) < 1: continue

i = paragraph[a.start: a.start + a.length]#.decode(‘utf-8‘)#.encode(‘ascii‘)

#yield (i, a.sPOS)

if flag == False :

para_seg_pos = para_seg_pos + (str(i) + ‘ ‘)

else:

para_seg_pos = para_seg_pos + (str(i)+ echo + a.sPOS +‘ ‘)

return para_seg_pos.rstrip()

-----------------------------------------------------------------------------------------

3. userdict用户字典的导入问题,下载的zip包中,有一个文件夹importuserdict,里面有个readme.txt文件,具体操作请看:

采用附件的小工具,可以实现脱机导入用户词典;具体步骤如下:

1.与分词Data文件夹同级建立 bin目录,下面建立二级目录ICTCLAS2014;

2.将附件的内容解压缩后放在ICTCLAS2014下面;

3.编辑bin/ICTCLAS2014下面的userdic.txt,这里放置用户词典与标注;

4.执行bin/ICTCLAS2014的批处理文件。即可导入用户词典到Data目录下的field.pdat field.pos。

5.30万词条会划分更多的时间,可能需要2小时左右。

4.其他问题

如若py代码中调用不同文件夹下的py程序,需在各级目录中添加 __init__.py文件,里面无需存放任何代码。

只需要在py开始添加python系统path,然后在导入文件py,例如:

import sys

sys.path.append(‘libsvm-3.20/python‘) //可添加绝对路径,也可以添加相对路径。

from svmutil import *

标签:

原文地址:http://www.cnblogs.com/levone/p/4403398.html

中科院读芯术python答案_Python调用中科院NLPIR(ICTCLAS2015)详解 刘超(lch614730@163.com)...相关推荐

  1. 读芯术python答案_你爱 “Python”的身体,还是“R”的灵魂?

    全文共2337字,预计学习时长6分钟 数据科学界有三大宝: Python.SAS和R,不过像SAS这种高端物种,不是我们这些平民能供养得起的啊. 根据 IEEE Spectrum的最新排名,R和Pyt ...

  2. 读芯术python教程答案_攻略Python的免费书单:走进编程,从这五本书开始

    全文共1245字,预计学习时长5分钟 图源:unsplash Python一向是数据科学家最青睐的编程语言,它的语法相对简单.易于学习.除了机器学习数据库之外,还有非常活跃的开发人员社区,维护着各种库 ...

  3. python程序间通信_python进程间通信Queue工作过程详解

    Process之间有时需要通信,操作系统提供了很多机制来实现进程间的通信. 1. Queue的使用 可以使用multiprocessing模块的Queue实现多进程之间的数据传递,Queue本身是一个 ...

  4. 读芯术python数据处理答案_python数据处理(二)

    一.csv 文件格式 看下.csv文件的定义: 逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数 ...

  5. 读芯术python讲得怎么样_翟天临的噩梦:怎样用Python检测抄袭行为?

    本教程将介绍如何使用机器学习技术(如word2vec和余弦相似度等),在Python中用几行代码制作抄袭检测器.搭建完成后,抄袭检测器将会从文件中载入学生们的作业,然后通过计算相似度来判断学生有无相互 ...

  6. python 大智慧 dll_Python调用windows下DLL详解

    前言 朋友的公司是做GPS的,上周联系到我要帮做个程序把他们平台的车辆定位跟踪数据和省里的平台对接.看一下官方提供的三个文档,洋洋洒洒共一百多页,一大堆协议的定义甚是齐全,好在官方的文件中也带有个封装 ...

  7. 列表推导式 python原理_Python进阶-列表推导式详解总结

    列表推导式并不是什么特别的技术,它只是一种创建列表的简洁方法,目的是为了让大家写程序时更方便更快捷,写出更简洁的代码 初识列表 现在请创建一个list,元素为1到9的整数,先用普通方法做 lst = ...

  8. python时间戳_Python时间戳使用和相互转换详解

    本文实例为大家分享了Python时间戳使用和相互转换的具体代码,供大家参考,具体内容如下 1.将字符串的时间转换为时间戳 方法: import time a = "2013-10-10 23 ...

  9. python 加锁_Python 共享变量加锁、释放详解

    一.共享变量 共享变量:当多个线程访问同一个变量的时候.会产生共享变量的问题. 例子: import threading sum = 0 loopSum = 1000000 def myAdd(): ...

  10. c语言实现爬虫功能,用C/C 扩展Python语言_python 调用c语言 python实现简单爬虫功能_python实现简单爬虫...

    用C/C 扩展Python语言 Python是一门功能强大的脚本语言,它的强大不仅表现在功能上,还表现在其扩展性上.她提供大量的API以方便程序员利用C/C++对Python进行扩展.因为执行速度慢几 ...

最新文章

  1. 智能手环功能模块设计_智能手环的设计的方案.doc
  2. GAE上使用Struts2
  3. C语言长精度除法,高精度除法小数点位数
  4. IOS开发之手写约束
  5. OpenCV imgcodecs写入的实例(附完整代码)
  6. linux下错误的捕获:errno、perror和strerror的使用
  7. mysql 表设计 date_mysql 表 Date类型
  8. 集成学习之参数调整策略
  9. 网络信号_如何用有线电视线传输网络信号
  10. webservice和webserver区别
  11. java完全参考手册
  12. Filename too long,Clone succeeded,but checkout failed.
  13. linux常用网站(不定期更新)
  14. 【独行秀才】macOS Monterey 12.1Beta4(21C5045a)原版镜像
  15. PHP怎么发送邮件?
  16. 直播鉴黄?直播商城开发是如何实现的
  17. python猫抓老鼠_利用python如何实现猫捉老鼠小游戏
  18. 计算机硬件软件的英语,计算机硬件、软件,computer hardware and software,音标,读音,翻译,英文例句,英语词典...
  19. 关于ChatGPT的一切;CUDA入门之矩阵乘;PyTorch 2.0发布|AI系统前沿动态
  20. 操作系统之虚拟化CPU(一)介绍

热门文章

  1. 关于魔兽守卫军的改进建议
  2. 2020N1叉车司机证考试及N1叉车司机考试软件
  3. 利用图神经网络进行的知识图谱补全综述
  4. 幼儿园观察记录的目的和目标_幼儿园益智活动观察记录与反思
  5. 区块链以及蚂蚁开放联盟链初探索
  6. (附源码)计算机毕业设计SSM会议管理系统
  7. 小学信息技术 用计算机画画 教学目标,小学信息技术教学计划
  8. Deep Inductive Logic Reasoning深度感应逻辑推理模型 论文笔记
  9. OpenGrok简单使用
  10. 移动端设计的基础尺寸单位与转化