标签: artificial-intelligence

如何编码人工神经网络(Tic-tac-toe)?

我想用人工神经网络玩Tic-tac-toe.我对网络的配置如下:对于9个字段中的每个字段,我使用2个输入神经元.当然,我有18个输入神经元.对于每个场,我有1个输入神经元用于一个玩家1和1个神经元用于一个玩家2.除此之外,我有1个输出神经元,它给出了当前电路板位置的评估.输出值越高,玩家1的位置越好.玩家2的位置越低,玩家2的位置越好.

但我的问题是:我怎么能编码神经网络?我的想法是使用Array [1-18]作为输入神经元.此数组的值是输入权重.我将使用循环遍历数组.每当有神经元被激活时,我都会将权重加到输出值上.所以输出值是激活的输入神经元的权重之和:

Output = SUM(ActivatedInputNeurons)
Run Code Online (Sandbox Code Playgroud)

你认为这是一种编程网络的好方法吗?你有更好的想法吗?

我希望你能帮助我.提前致谢!

artificial-intelligence game-ai neural-network

21
推荐指数
3
解决办法
3万
查看次数

图像处理中的"能量"是什么?

我已经阅读了几本图像处理书籍和网站,但我仍然不确定图像处理中"能量"一词的真正定义.我找到了几个定义,但有时它们只是不匹配.所以要确定......

当我们在图像处理中说"能量"时,我们暗示什么?

artificial-intelligence energy image-processing definition computer-vision

21
推荐指数
4
解决办法
3万
查看次数

机器人探索算法

我正在尝试为机器人设计一种算法,试图找到一个位于包含障碍物的世界中的旗帜(位于未知位置).机器人的任务是捕获旗帜并将其带到他的家乡(代表他的起始位置).机器人,在每一步,只看到一个有限的邻居(他不知道世界如何提前看),但他有无限的记忆来存储已经访问过的细胞.

我正在寻找有关如何以有效方式执行此操作的任何建议.特别是第一部分; 即到达国旗.

在此输入图像描述

algorithm robotics artificial-intelligence

21
推荐指数
2
解决办法
7202
查看次数

FIND-S算法 - 简单的问题

FIND-S算法可能是最简单的机器学习算法之一.但是,我找不到很多例子.只是标准的"晴天,下雨,玩球"的例子总是用于机器学习.请有人帮我这个应用程序(它是机器学习中的过去的考试问题).

假设是形式a <= x <= b,c <= y <= d其中xyx,y平面中的点,c并且d是任何整数.基本上,这些假设定义了x,y空间中的矩形.

这些是训练示例,其中-是一个反面的例子,+是一个积极的例子,对是x,y坐标:

 + 4, 4
 + 5, 3 
 + 6, 5 
 - 1, 3 
 - 2, 6 
 - 5, 1 
 - 5, 8 
 - 9, 4
Run Code Online (Sandbox Code Playgroud)

我想要做的就是将FIND-S应用到这个例子中!一定很简单!一些提示或解决方案将是非常棒的.

谢谢.

artificial-intelligence machine-learning

21
推荐指数
1
解决办法
2万
查看次数

批量标准化而不是输入标准化

我可以在输入层后立即使用批量规范化层而不规范化我的数据吗?我希望得到类似的效果/表现吗?

在keras功能中它将是这样的:

x = Input (...)
x = Batchnorm(...)(x)
...
Run Code Online (Sandbox Code Playgroud)

artificial-intelligence machine-learning neural-network keras batch-normalization

21
推荐指数
1
解决办法
2799
查看次数

Rasa核心与Rasa nlu之间的区别

我试图从Rasa核心Rasa nlu的官方文档中了解rasa 但不能推断太多.我能理解的是

Rasa核心用于指导对话流,而Rasa nlu是理解并处理文本以提取信息(实体)

第二件事,有一些例子可以在Rasa核心中构建chatbot 以及Rasa nlu都可以用来构建chatbot但是无法理解两种方法的区别以及何时关注哪一种.

能帮助我更好地理解你吗?

nlp artificial-intelligence chatbot rasa-nlu rasa-core

21
推荐指数
2
解决办法
4975
查看次数

如何使用 BERT 聚类相似的句子

对于 ElMo、FastText 和 Word2Vec,我正在对句子中的词嵌入进行平均,并使用 HDBSCAN/KMeans 聚类对相似的句子进行分组。

在这篇短文中可以看到一个很好的实现示例:http : //ai.intelligentonlinetools.com/ml/text-clustering-word-embedding-machine-learning/

我想使用 BERT(使用 Hugging face 中的 BERT python 包)做同样的事情,但是我不太熟悉如何提取原始词/句子向量以将它们输入到聚类算法中。我知道 BERT 可以输出句子表示 - 那么我实际上如何从句子中提取原始向量呢?

任何信息都有帮助。

python nlp artificial-intelligence word-embedding bert-language-model

21
推荐指数
3
解决办法
2万
查看次数

模块 jdk.compiler 不会向未命名模块“打开 com.sun.tools.javac.processing”@4bae33a6

我从 Github 克隆了这个项目

https://github.com/PacktPublishing/Java-Machine-Learning-for-Computer-Vision.git

我将使用该项目中的 FaceRecognizition。但是当我尝试在 IntelliJ 中运行它时,我收到此错误

java: java.lang.ExceptionInInitializerError 无法使字段私有 com.sun.tools.javac.processing.JavacProcessingEnvironment$DiscoveredProcessors com.sun.tools.javac.processing.JavacProcessingEnvironment.discoveredProcs 可访问:模块 jdk.compiler 不“打开 com. sun.tools.javac.processing”到未命名模块@4bae33a6

我能做些什么?

java artificial-intelligence github face-recognition intellij-14

21
推荐指数
2
解决办法
6万
查看次数

支持Java的矢量机?

我想在Java中编写一个"智能监视器",它会在检测到即将发生的性能问题时发出警报.我的Java应用程序正在以结构化格式将数据写入日志文件:

<datetime> | <java-method> | <seconds-to-execute>
Run Code Online (Sandbox Code Playgroud)

因此,例如,如果我有一个Widget#doSomething(String)执行812ms 的方法,它将被记录为:

2013-03-24 11:39:21 | Widget#doSomething(String) | 812
Run Code Online (Sandbox Code Playgroud)

随着性能开始下降(例如在主要收集期间,在峰值负载期间,或者如果系统正在慢慢爬行),方法执行时间开始减慢; 所以最右边的列开始看到大量的数字(有时候执行单个方法需要20到40秒).

在大学 - 进行机器学习练习 - 我写了我的教授所谓的线性二分法,它采用简单的测试数据(一个人的身高,体重和性别),并"学会"如何根据他们的人将男性或女性分类身高体重.然后,一旦它掌握了所有的训练数据,我们就会向它提供新的数据,以确定它可以准确地确定性别.

认为线性二分法的多变量版本称为支持向量机(SVM).如果我错了,那么请澄清,我会将问题的标题更改为更合适的名称.无论如何,我需要这个应用程序来做以下事情:

  • 以"测试模式"运行,我从我的主Java应用程序(我希望监视的那个)提供结构化日志文件,并获取每个日志条目(如上所示)并将其用于测试数据
    • 只有java-methodseconds-to-execute列作为输入/测试数据很重要; 我不关心日期时间
  • 在"监控模式"下运行,它正在从日志文件中主动读取新的日志数据,并使用类似的"机器学习"技术来确定性能下降是否迫在眉睫

重要的是要注意这一seconds-to-execute列并不是唯一重要的因素,因为我看到某些方法在令人敬畏的性能期间出现了可怕的时序,并且在服务器似乎即将死亡的时候,其他方法确实很好的时机并推动雏菊.因此,显然某些方法比其他方法"加权"/更重要.

我的问题

  • 谷歌搜索"线性二分法"或"支持向量机"出现了一些非常可怕,高学术,超脑白皮书,我只是没有精神能量(也没有时间)消费 - 除非他们真的是我唯一的选择; 所以我问是否有一个外行人对这些东西的介绍,或者是用Java构建这样一个系统的优秀网站/文章/教程
  • 是否有任何可靠/稳定的开源Java库?我只能找到jlibsvm,svmlearn但前者看起来处于纯beta状态,而后者似乎只支持二元决策(就像我的旧线性二分法).我知道有Mahout,但它位于Hadoop之上,我认为我没有足够的数据来保证建立我自己的Hadoop集群所需的时间和精力.

提前致谢!

java artificial-intelligence machine-learning svm mahout

20
推荐指数
2
解决办法
2万
查看次数

Q学习与价值迭代的区别

Q学习如何与强化学习中的价值迭代不同?我知道Q学习是无模型的,训练样本是过渡(s, a, s', r).但是,既然我们知道Q学习中每次转换的过渡和奖励,那么它与基于模型的学习不同,我们知道状态和动作对的奖励,以及来自州的每个动作的转换(无论如何)随机的还是确定的)?我不明白其中的区别.

artificial-intelligence machine-learning reinforcement-learning q-learning

20
推荐指数
3
解决办法
1万
查看次数