是否可以使用scikit-learn K-Means Clustering指定您自己的距离函数?
python cluster-analysis machine-learning k-means scikit-learn
我曾问一个问题,几天就回来了如何找到一个给定矢量最近的邻居.我的矢量现在是21维,在我继续前进之前,因为我不是来自机器学习领域,也不是数学领域,我开始问自己一些基本问题:
有人可以澄清一些(或所有)上述问题吗?
language-agnostic algorithm search machine-learning nearest-neighbor
我注意到LSH似乎是一种寻找具有高维属性的类似项目的好方法.
在阅读了论文http://www.slaney.org/malcolm/yahoo/Slaney2008-LSHTutorial.pdf之后,我仍然对这些公式感到困惑.
有没有人知道一个博客或文章解释这个简单的方法?
c machine-learning hashmap nearest-neighbor locality-sensitive-hash
我可以从决策树中的受过训练的树中提取基础决策规则(或"决策路径")作为文本列表吗?
就像是:
if A>0.4 then if B<0.2 then if C>0.8 then class='X'
谢谢你的帮助.
python machine-learning decision-tree random-forest scikit-learn
是否有一个经验法则(或一组例子)来确定何时使用遗传算法而不是神经网络(反之亦然)来解决问题?
我知道有些情况下你可以混合使用这两种方法,但我正在寻找这两种方法之间的高级别比较.
artificial-intelligence machine-learning neural-network genetic-algorithm
我正在努力让人工神经网络玩电子游戏,我希望能从这里的精彩社区获得一些帮助.
我已经确定了暗黑破坏神2.因此,游戏玩法是实时的,并且从等角度的角度来看,玩家控制着摄像机所在的单个化身.
为了使事情具体化,任务是获得你的角色x经验值,而不将其生命值降为0,通过杀死怪物获得经验值.以下是游戏玩法的示例:

现在,由于我希望网络仅根据屏幕上的像素获得的信息进行操作,因此必须学习非常丰富的表示以便有效地发挥作用,因为这可能需要它(至少隐含地)知道如何将游戏世界划分为对象以及如何与它们进行交互.
所有这些信息都必须以某种方式传授给网络.我不能为我的生活想到如何培养这件事.我唯一的想法就是有一个单独的程序从屏幕上直观地从游戏中提取一些好的/坏的东西(例如健康,黄金,经验),然后在强化学习过程中使用该属性.我认为这将是答案的一部分,但我认为这还不够; 从原始视觉输入到目标导向行为的抽象层次太多,这种有限的反馈在我的一生中训练网络.
所以,我的问题是:你还有什么其他的方法来训练网络至少完成这项任务的某些部分?最好不要制作数千个带标签的例子......
只是为了更多方向:我正在寻找其他一些强化学习来源和/或任何用于在此设置中提取有用信息的无监督方法.或者,如果您可以想到一种将标记数据从游戏世界中取出而无需手动标记的方法,则可以采用监督算法.
UPDATE(04/27/12):
奇怪的是,我仍然在努力,似乎正在取得进展.让ANN控制器工作的最大秘诀是使用适合该任务的最先进的ANN架构.因此,我一直在使用一个深层次的信念网络,这是由我用无人监督的方式训练的因素条件限制Boltzmann机器(在我玩游戏的视频中),然后使用时间差异反向传播进行微调(即用标准进行强化学习)前馈人工神经网络.
仍在寻找更有价值的输入,特别是关于实时动作选择的问题以及如何编码用于ANN处理的彩色图像:-)
UPDATE(15年10月21日):
记得我在今天回答了这个问题,我想应该提一下,这不再是一个疯狂的想法.自从我上次更新以来,DeepMind发布了他们的自然论文,用于通过视觉输入获取神经网络来玩atari游戏.事实上,唯一阻止我使用他们的架构来玩,暗黑2的有限子集是缺乏对底层游戏引擎的访问.渲染到屏幕然后将其重定向到网络的速度太慢,无法在合理的时间内进行训练.因此,我们可能不会很快看到这种机器人在玩暗黑破坏神2,但这只是因为它会播放某些东西,无论是开源还是对渲染目标的API访问.(也许是地震?)
machine-learning video-processing computer-vision reinforcement-learning neural-network
我最近开始研究深度学习和其他ML技术,我开始寻找简化构建网络和训练它的过程的框架,然后我发现TensorFlow,在该领域经验不多,对我来说,似乎速度是一个如果使用深度学习,那么制作大型ML系统的重要因素就更多了,那么为什么谷歌选择python制作TensorFlow?用一种可以编译而不是解释的语言来表达它会不会更好?
使用Python而不是像C++这样的语言进行机器学习有什么好处?
我正在尝试培训CNN按主题对文本进行分类.当我使用binary_crossentropy时,我得到~80%acc,而categorical_crossentrop我得到~50%acc.
我不明白为什么会这样.这是一个多类问题,这是否意味着我必须使用分类,二进制结果是没有意义的?
model.add(embedding_layer)
model.add(Dropout(0.25))
# convolution layers
model.add(Conv1D(nb_filter=32,
filter_length=4,
border_mode='valid',
activation='relu'))
model.add(MaxPooling1D(pool_length=2))
# dense layers
model.add(Flatten())
model.add(Dense(256))
model.add(Dropout(0.25))
model.add(Activation('relu'))
# output layer
model.add(Dense(len(class_id_index)))
model.add(Activation('softmax'))
Run Code Online (Sandbox Code Playgroud)
然后
model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
Run Code Online (Sandbox Code Playgroud)
要么
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
Run Code Online (Sandbox Code Playgroud) machine-learning neural-network deep-learning conv-neural-network keras
在iOS电子邮件客户端中,当电子邮件包含日期,时间或位置时,文本将成为超链接,只需点击链接即可创建约会或查看地图.它不仅适用于英语电子邮件,也适用于其他语言.我喜欢这个功能,想了解他们是如何做到的.
这样做的天真方法是拥有许多正则表达式并运行它们.但是我不能很好地扩展它并且只适用于特定的语言或日期格式等.我认为Apple必须使用一些机器学习的概念来提取实体(晚上8点,晚上8点,8点, 0800,20:00,20h,20h00,2000等).
知道Apple如何能够在其电子邮件客户端中如此快速地提取实体?您将应用什么机器学习算法来完成这样的任务?
nlp machine-learning named-entity-recognition information-extraction
我注意到,当在特定数据集(矩阵)上使用One Hot编码并将其用作学习算法的训练数据时,与使用原始矩阵本身作为训练数据相比,它在预测准确性方面提供了明显更好的结果.这种性能提升如何发生?
machine-learning ×10
python ×3
scikit-learn ×3
algorithm ×1
c ×1
c++ ×1
data-mining ×1
hashmap ×1
k-means ×1
keras ×1
nlp ×1
search ×1
tensorflow ×1