CogniPy for Pandas,语义技术推理和编辑

cognip的Python项目详细描述


Pandas的认知-内存图形数据库和具有自然语言接口的知识图

盒子里有什么

使用OWL/rlreasoner(Jena)以及SPARQL图形查询(Jena)和可视化,对RDF/OWL、FluentEditorCNL文件进行推理、探索。在

你可以用它做什么:

  1. 用受控自然语言编写图形/本体,或者从RDF/OWL导入
  2. 在受控自然语言中添加推理规则/T-Box
  3. 使用Pandas导入数据或从互联网上丢弃它们
  4. 绘制结果,物化图形
  5. 使用SPARQL执行图形查询
  6. 使用输出数据帧进一步处理Pandas

入门

安装

先决条件:

  • 如果您在Mac或Linux上,您的系统上必须有mono installed。在
  • 基于依赖于GraphViz的pydot绘制图形-应尝试下载并手动安装。或者只是conda install pydot graphviz
  • 用水蟒测试
  • 在MacOS、Winows和Linux上测试(UBuntu)

使用以下命令在系统上安装cognipy

pip install cognipy

你好世界计划

在朱庇特你写道:

^{pr2}$
%%writefile hello.encnl
World says Hello.
Hello is a word.
onto = Ontology("cnl/file","hello.encnl")
print(onto.select_instances_of("a thing that says a word")[["says","Instance"]])

输出(熊猫数据帧):

saysInstance
0HelloWorld

示例

可以在Examples section中找到在多个场景中使用CogniPy的Jupyter笔记本示例

认知文档

编译后的文档存储在github页面上:Cognipy Documentation

相关研究论文

  1. Semantic rules representation in controlled natural language in FluentEditor
  2. Collaborative Editing of Ontologies Using Fluent Editor and Ontorion
  3. Semantic OLAP with FluentEditor and Ontorion Semantic Excel Toolchain
  4. Ontology-aided software engineering
  5. Ontology of the Design Pattern Language for Smart Cities Systems

如何引用认知

如果使用CogniPy的项目产生的科学出版物能在确认部分包括以下句子:“这项工作是使用CogniPy包进行的,这是一个由Cognitum Services S.A.https://www.cognitum.eu维护的开源项目。”

贡献者

本项目所基于的开源库

  1. IKVM
  2. 命令行分析器
  3. 在Newtonsoft.JSon在
  4. ELK-ELK是一个本体推理器,旨在支持OWL2EL概要文件。有关详细信息,请参见http://elk.semanticweb.org/。在
  5. HermiT-HermiT是一个使用直接语义的符合owl2dl推理器。它 支持所有owl2dl构造和OWL2规范所需的数据类型。在
  6. ApacheJena-Jena是一个用于构建语义web应用程序的Java框架。它提供工具和Java库来帮助您开发语义web和链接数据应用程序、工具和服务器。在
  7. 猫头鹰

构建新版本

nuget restore cognipy\CogniPy.sln
msbuild cognipy\CogniPy.sln /t:Rebuild /p:Configuration=Release /p:Platform="any cpu"
python setup.py bdist_wheel
python -m twine upload dist/* --verbose

常见问题解答

Why it is done this way?

该软件是作为FluentEditor的后代出现的,因此它有一些共同的部分。其中之一是.net。我们正计划将这些部分转移到java中,这样整个堆栈将更加符合技术要求。convert_to_java分支已经包含从.net自动转换为java的项目文件。不管怎样,现在需要手工制作才能让一切正常。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java以编程方式最小化JInternalFrame?   java使用JsonPath将不均匀列表提取为类型化对象   spring如何将java/resources文件获取到InputStream?   Java逻辑错误并不总是存在   java Firebase,更新特定字段   Java stream groupby并同时加入以进行csv导出   java安卓:如果出现任何声音,监听器将录制声音   java如何从多个文件中轮询最后修改的文件并发送到apache camel中的目标端点?   java是否返回多个比较器?   JavaBean IO:Date MMM在CAPS中不解析   当JButton从另一个类单击时,java正在更新JLabel   基类中子类的Java泛型初始化   jakarta ee Java ee制作一个以毫秒为间隔的计时器来发送数据包   json Windows Azure日期格式转换为Java日期