锐英源软件
第一信赖

精通

英语

开源

擅长

开发

培训

胸怀四海 

第一信赖

当前位置:锐英源 / 开源技术 / C#开源 / C#算法开源英语 / 以命名管道和过滤架构实现简单人工智能AI框架
联系方式
固话:0371-63888850
手机:138-0381-0136
Q Q:396806883
微信:ryysoft
服务方向
人工智能数据处理
人工智能培训
kaldi数据准备
小语种语音识别
语音识别标注
语音识别系统
语音识别转文字
kaldi开发技术服务
软件开发
运动控制卡上位机
机械加工软件
软件开发培训
Java 安卓移动开发
VC++
C#软件
汇编和破解
驱动开发

锐英源精品原创,禁止全文或局部转载,禁止任何形式的非法使用,侵权必究。点名“简易百科”和闲暇巴盗用锐英源原创内容。

以命名管道和过滤架构实现简单人工智能AI框架


背景

最近开发平台,需要进程间通信,用命名管道,找到本文和人工智能AI有关,人工智能也是锐英源软件关注的方向,所以翻译下,学习下里面的精华。初学者要理解人工智能AI精神,就要学一些简单人工智能AI框架,但是简单的确实比较少,如果想深入学人工智能AI,锐英源软件有这方面的开源服务,欢迎关注锐英源软件。

 

管道和过滤器架构模式

该主题的读者 -开发人员,架构师

报道主题

  • 管道和过滤器的基本概念
  • 管道和过滤器架构风格
  • 基本管道和过滤器示例
  • 你什么时候需要使用它
  • 管道和过滤器框架
  • 一个微型 AI 工具实现

让我们深入了解基本概念

 

矿泉水制造厂有水源。但它包含病毒、细菌、颜色、盐、沙子、石头和草。因此,他们需要进行水处理来清洁水。

 

解决方案:他们可以添加少量过滤器来清理通过管道的污水。因此,他们将能够将矿泉水储备到水箱中。

 

筛选

 

过滤器具有输入管道和输出管道。

管道和过滤器

过滤器通过管道连接,一个过滤器的输出是下一个过滤器的输入。

 

管道和过滤器建筑风格

它有两个子系统,即管道和过滤器。

  • 过滤器:过滤器处理数据。
  • 管道:管道或管道是两个过滤器之间的连接器。

你什么时候需要使用它

如果您有需要一系列流程的连续数据流。

使用管道和过滤器架构模式实现 AI 工具

问题

组织需要验证其员工的教育历史。比如说,我是那个组织的员工,我已经完成了计算机科学的学士和硕士学位。该组织将考虑我的最高学位类别。我的意思是,我有两个学位,学士和硕士。与学士学位相比,硕士学位是最高的学位。现在他们将验证硕士学位。在这种情况下,学士学位将被忽略。

因此,他们需要一种能够找出最高学位的工具。它有两个部分:

  • 分类学位Category
  • 只获得最高的学位。

分类学位类别

 

如果员工拥有理学学士和理学硕士等学位,则:

  • “理学士”属于学士类别,并且
  • “理学硕士”属于硕士类别

处理数据以过滤出最高达到的程度

  • 从候选人学位中找出可能的类别
  • 过滤出最高类别并从该学位中排名

微型 AI 工具的基本概念

初始数据和数据源

数据源 - 字典

取2个数据源字典如下:

  1. 二级词词典:这个词本身没有任何意义,但有助于造句。所以,我猜,这些词得1分。下表给出。
  2. 主关键词词典:这个关键词将有助于确定学位的类别。我的意思是——如果我们知道关键词是学士、硕士或文凭,那么我们可以确定学位是有意义的。所以,我猜这些词得5分。

 

管道和过滤器核心接口类图

 

核心接口的实现

接口使用泛型类型。因此,定义您自己的数据输入模型以及接收器模型。我们需要在过滤器类中使用它。

 

过滤器实现

候选过滤器类将继承FilterBase该类,我们只需要实现一个称为流程的方法。现在我们可以根据需要实现任意数量的过滤器。

 

注:没有面向对象基础理解不了这些话。

 

数据传递到框架的通道

  • 初始化以下对象,例如输入数据模型SingleTemplateChannel和MainChannelStaters类。
  • 接下来,初始化ModelForSetupFilters模型类并将所需的过滤器注入其中,然后将其发送到singleChannel. SingleChannel将从中注册所有过滤器ModelForSetupFilters。
  • 设置mainChannelsStartup对象,它包含:channelstaters.SetupChanelList(singleChannel, educationDegreeList);
  • resultList最后,调用启动器并从对象中获取最终结果。IList resultList = Channelstaters.ChannelCaller();

 

渠道的并行过程

我们可以包含我们需要的尽可能多的过滤器和通道。每个输入都将通过 Channel 并且每个通道都将保存一个过滤器列表。比如说,如果我们有 5 个教育历史——这意味着,我们需要 5 个通道,并且它将同时运行以用于并行进程。

 

找出最高学位的例子

输入输出

输入:接受错误输入:理学学士硕士 bla bla

预期类别:学士

来自过滤器的数据处理序列

DegreeMatchFilter:查找关键字

输入错误:Master of Bachelor Science bla bla :(

清洁关键字:Master Bachelor Science

InsertPointToSentenceFilter

从关键字字典中,每个单词的点:

 

第 1 步:匹配来自数据源的文本

结果取决于关键字:Master; Bachelor; Science

[0]:“理学硕士”

[1]:“硕士学位”

[2]:《工商管理硕士》

[3]:“大师”

[4]:《文学硕士》

[5]:“硕士”

[6]:“理学学士”

[7]:“文学学士”

[8]:“学士学位”

[9]:“学士”

[10]:“学士”

[11]:《工商管理学士》

[12]:“学士学位(±16年)”

[13]:“理学学士”

[14]:“护理学学士”

[15]:“理学学士”

[16]:“理学士”

[17]:“理学硕士”

[18]:“科学助理”

[19]:“应用科学副学士”

[20]:“理学硕士”

[21]:“理学学士”

[22]:“护理学学士”

[23]:“科学协会”

第 2 步:计算每个句子的分数

 

步骤 3:匹配并删除与 Max Point 比较的句子

根据步骤 3 的表格,最大点为6。因此,删除所有小于 的句子6。

 

删除重复的句子和这些步骤的输出是:

 

DegreeCategoryFilter : 找出类别

 

DegreeRankFilter:查找排名点

 

DegreeCategoryProbabilityPartAFilter:应用概率

可能性

 

 

DecisionMakingInputFilter:删除较低的类别和排名

找出类别和pank点。根据上表,最高点为13.5。因此,删除所有小于 13.5 的句子。

FinalDecisionMakingOutputFilter:最终输出

最高分是 13.5,类别是单身汉。

因此,输出:Bachelor of Science :==> Points [13.5]; 单身汉 :=> 排名 4

因此,学士学位是需要验证的最高学位。

类别:学士;排名: 4

 

 

 

 

友情链接
版权所有 Copyright(c)2004-2021 锐英源软件
公司注册号:410105000449586 豫ICP备08007559号 最佳分辨率 1024*768
地址:郑州大学北校区院(文化路97号院)内劳动服务器公司办公楼一层