我知道梯度下降和反向传播定理.我没有得到的是:什么时候使用偏见很重要,你如何使用它?
例如,在映射AND
函数时,当我使用2个输入和1个输出时,它不会给出正确的权重,但是,当我使用3个输入(其中1个是偏置)时,它会给出正确的权重.
请帮助我理解生成算法和 判别算法之间的区别,记住我只是一个初学者.
我发现很难理解Naive Bayes的过程,我想知道是否有人可以用英语简单的一步一步解释它.我理解它需要按时间比较概率,但我不知道训练数据如何与实际数据集相关.
请给我一个关于训练集扮演什么角色的解释.我在这里给出一个非常简单的水果例子,例如香蕉
training set---
round-red
round-orange
oblong-yellow
round-red
dataset----
round-red
round-orange
round-red
round-orange
oblong-yellow
round-red
round-orange
oblong-yellow
oblong-yellow
round-red
Run Code Online (Sandbox Code Playgroud) algorithm classification machine-learning dataset naivebayes
在Tensorflow中训练模型后:
我一直在开发一个投资组合管理工具的内部网站.有很多文本数据,公司名称等.我对一些搜索引擎能够快速回复查询的印象非常深刻,"你的意思是:xxxx".
我需要能够智能地进行用户查询并不仅响应原始搜索结果,还要回答"你的意思是?" 当有极有可能的替代答案等时作出回应
[我正在开发ASP.NET(VB - 不要反对我!)]
更新:好的,如果没有数百万"无偿用户",我怎么能模仿这个?
训练多层感知器时,纪元和迭代之间有什么区别?
artificial-intelligence terminology machine-learning neural-network deep-learning
ANN(人工神经网络)和SVM(支持向量机)是监督机器学习和分类的两种流行策略.通常不清楚哪种方法对特定项目更好,而且我确定答案总是"它取决于".通常,使用两者的组合以及贝叶斯分类.
有关ANN与SVM的问题已经在Stackoverflow上提出了这些问题:
在这个问题中,我想具体了解人工神经网络(特别是多层感知器)的哪些方面可能需要在SVM上使用?我问的原因是因为很容易回答相反的问题:支持向量机通常优于人工神经网络,因为它们避免了人工神经网络的两个主要缺点:
(1)人工神经网络通常会集中在局部最小值而不是全局最小值,这意味着它们有时基本上"错过了大局"(或者错过了树木的森林)
(2)如果训练时间过长,人工神经网络常常过度拟合,这意味着对于任何给定的模式,人工神经网络可能会开始将噪声视为模式的一部分.
SVM不会遇到这两个问题中的任何一个.然而,并不是很明显SVM应该是人工神经网络的完全替代品.那么人工神经网络对SVM有哪些具体优势可能使其适用于某些情况?我已经列出了SVM相对于ANN的特定优势,现在我想看一下ANN优势列表(如果有的话).
我在这里浏览tensorflow API文档.在tensorflow文档中,他们使用了一个名为的关键字logits
.它是什么?在API文档的很多方法中,它都是这样编写的
tf.nn.softmax(logits, name=None)
Run Code Online (Sandbox Code Playgroud)
如果写的是什么是那些logits
只Tensors
,为什么保持一个不同的名称,如logits
?
另一件事是我有两种方法无法区分.他们是
tf.nn.softmax(logits, name=None)
tf.nn.softmax_cross_entropy_with_logits(logits, labels, name=None)
Run Code Online (Sandbox Code Playgroud)
它们之间有什么区别?这些文档对我来说并不清楚.我知道是什么tf.nn.softmax
呢.但不是另一个.一个例子将非常有用.
在人工智能和机器学习方面,有监督和无监督学习有什么区别?您能举例说明一个基本的,简单的解释吗?
artificial-intelligence machine-learning unsupervised-learning supervised-learning
从Udacity的深度学习类中,y_i的softmax只是指数除以整个Y向量的指数之和:
哪里S(y_i)
是的SOFTMAX功能y_i
,并e
为指数和j
是否定的.输入向量Y中的列数.
我尝试过以下方法:
import numpy as np
def softmax(x):
"""Compute softmax values for each sets of scores in x."""
e_x = np.exp(x - np.max(x))
return e_x / e_x.sum()
scores = [3.0, 1.0, 0.2]
print(softmax(scores))
Run Code Online (Sandbox Code Playgroud)
返回:
[ 0.8360188 0.11314284 0.05083836]
Run Code Online (Sandbox Code Playgroud)
但建议的解决方案是:
def softmax(x):
"""Compute softmax values for each sets of scores in x."""
return np.exp(x) / np.sum(np.exp(x), axis=0)
Run Code Online (Sandbox Code Playgroud)
它产生与第一个实现相同的输出,即使第一个实现显式获取每列和最大值的差异,然后除以总和.
有人可以用数学方式显示原因吗?一个是正确的而另一个是错的吗?
实现在代码和时间复杂性方面是否相似?哪个更有效率?
machine-learning ×10
algorithm ×3
python ×3
tensorflow ×2
dataset ×1
difference ×1
model ×1
naivebayes ×1
nlp ×1
numpy ×1
softmax ×1
svm ×1
terminology ×1
text-search ×1