Questions tagged «machine-learning»

建立“随经验自动改进的计算机系统”的方法和原理。

2
调试神经网络
我使用scipy.optimize.minimize(共轭梯度)优化功能在python中构建了一个人工神经网络。 我已经实施了梯度检查,仔细检查了所有内容,等等,我确定它可以正常工作。 我已经运行了几次,它达到了“优化成功终止”,但是当我增加隐藏层的数量时,假设成功终止后,假设的成本增加了(其他所有条件保持不变)。 凭直觉,似乎随着增加隐藏层的数量,成本应该降低,因为它能够生成更复杂的假设,可以更好地拟合数据,但是事实并非如此。 我很想了解这里发生的事情,或者我是否正确实施了神经网络?

2
使用什么机器/深度学习/ nlp技术将给定单词分类为名称,手机号码,地址,电子邮件,州,县,城市等
我正在尝试生成一个智能模型,该模型可以扫描一组单词或字符串,并使用机器学习或深度学习将它们分类为名称,手机号码,地址,城市,州,国家和其他实体。 我一直在寻找方法,但是不幸的是我没有找到任何方法。我曾尝试用词袋模型和嵌入的手套词来预测字符串是名称还是城市等。 但是,我的单词袋模型并没有成功,在GloVe中,嵌入示例中没有涉及很多名称:-劳伦出现在手套中,而劳伦娜则没有 我确实在这里找到了这篇文章,该文章的答案很合理,但是除了使用NLP和SVM来解决这个问题之外,我无法采用该方法来解决该问题。 任何建议表示赞赏 致谢,Sai Charan Adurthi。

1
数据不平衡导致多类数据集分类错误
我正在研究文本分类,这里有39个类别/类和850万条记录。(未来的数据和类别将会增加)。 我的数据的结构或格式如下。 ---------------------------------------------------------------------------------------- | product_title | Key_value_pairs | taxonomy_id | ---------------------------------------------------------------------------------------- Samsung S7 Edge | Color:black,Display Size:5.5 inch,Internal | 211 Storage:128 GB, RAM:4 GB,Primary Camera:12 MP Case cover Honor 8 | Color:transparent,Height:15 mm,width:22 mm | 212 Ruggers Men's T-Shirt | Size:L,ideal for:men,fit:regular, | 111 sleeve:half sleeve Optimum Nutrition Gold | …

2
哪种算法选择正确的点
下图显示了原点周围的7个点。其中一个已由人类根据规则和经验选择,并被涂成红色(左下象限中的一个)。 现在我们有1000多个这样的点集,并且每个人都选择了一个点。这些条件适用于所有集合: 每套大约有3-10分 没有异常值 点可以具有正值和负值 选择一个点没有犯错 我的问题是:是否存在一种机器学习算法可从这些集合和人工选择中学习,以便在给出新的一组点时可以自动决定要选择哪个点?当然,这个新集合可以满足前三个条件。 2最后的评论: 我给出的示例只是我随机构建的示例,以支持有关原点周围平面中的点以及选定点的想法。在现实生活中,可能会有更多的结构,但是现在我很好奇,想知道这种情况下可能发生什么。 会有变化吗?假设它是大约2个选定点,或者您有给定半径的圆而不是点。

2
“深Noether定理”:建立对称约束
如果我有一个应该具有固有对称性的学习问题,是否有办法使我的学习问题受到对称性约束的影响而增强学习? 例如,如果我要进行图像识别,则可能需要2D旋转对称性。这意味着图像的旋转版本应获得与原始图像相同的结果。 或者,如果我正在学习玩井字游戏,那么旋转90度应该可以产生相同的游戏效果。 是否对此进行了研究?

1
如何处理一个分类问题,其中一个类别由“其他类别中的任何一个都不定义”
假设我对三个类,和。但是我的数据集实际上包含了更多的真实类。c 2 c 3(c j )n j = 4C1个C1个c_1C2C2c_2C3C3c_3(cĴ)ñj = 4(CĴ)Ĵ=4ñ(c_j)_{j=4}^n 显而易见的答案是定义一个新类,它引用所有类,但是我怀疑这不是一个好主意,因为的样本将很少并且彼此之间不太相似。çĴĴ>3 Ç 4C^4C^4\hat c_4CĴCĴc_jj > 3Ĵ>3j>3C^4C^4\hat c_4 为了可视化我要说的内容,假设我有以下两个变量空间,并且类,,,分别用红色,直到,绿色和黑色分别。这就是我怀疑我的数据的样子。c ^ 2 ç 3 Ç 4 = ⋃ Ñ Ĵ = 4 Ç ĴC1个C1个c_1C2C2c_2C3C3c_3C^4= ⋃ñj = 4CĴC^4=⋃Ĵ=4ñCĴ\hat c_4= \bigcup_{j=4}^n c_j 有没有解决此问题的标准方法?什么是最有效的分类器,为什么?


3
为什么在经典的简历模板匹配上使用卷积神经网络进行视觉检查任务?
基于我们正在研究的项目,我进行了有趣的讨论:为什么在模板匹配算法上使用CNN视觉检查系统? 背景:我展示了一个简单的CNN视觉系统(网络摄像头和笔记本电脑)的演示,该系统检测特定类型的对象是否“损坏” /有缺陷-在这种情况下,是PCB电路板。我的CNN模型显示了在静态背景下正确和断裂的电路板(每个电路板大约100张图像)的示例。我们的模型使用了预先训练的VGG16的前几个conv / maxpool层(在imagenet上),然后我们添加了一些可训练的conv / pool,并带有一些密度,从而得到了dim-3一个热编码的矢量输出用于分类:(is_empty,has_good_product,has_defective_product)。 该模型非常容易训练,并且达到99%的验证准确无误;由于我们知道我们的数据集很小,因此我们还进行了各种数据扩充方面的培训。实际上,它的工作效率约为10的9倍,但是同一块电路板的几次随机平移/旋转有时会使其处于相反的类别。也许更积极的数据增强会有所帮助。无论如何,对于原型概念项目,我们感到很高兴。 现在我们正在向另一位工程师和他的同事介绍,他提出了这样的论点,即NN对于此而言是过大的,应该只使用模板匹配,为什么要做CNN? 对于为什么我们的方法在某些应用程序(例如要检查的其他零件)中会更好,我们没有一个很好的答案。我们提出了一些要点: 1)对不变性更健壮(例如通过数据增强) 2)可以进行在线学习以改进系统(例如,人可以告诉软件哪个示例出错了) 3)不需要像传统计算机视觉算法中那样设置阈值,您认为呢,对于这种类型的检查任务,CNN系统还有更多优势吗?在什么情况下会比模板匹配更好? 对于何时将深度NN用作工作的技术,还有一些随机的想法:对于需要3D深度感测作为输入一部分的系统,或者可以变形/拉伸/挤压但仍然“好”的任何类型的对象,以及没有缺陷(例如毛绒动物,电线等)。很好奇听到您的想法:)

1
卷积层的参数数量
在这篇被高度引用的论文中,作者对权重参数的数量进行了以下讨论。我不太清楚为什么它具有参数。我认为应该是因为每个输入通道共享同一个滤波器,该滤波器具有参数。49 ℃249C249C^249℃49C49CCCC494949

4
在功能重要性的上下文中解释决策树
我试图了解如何完全理解使用sklearn构建的决策树分类模型的决策过程。我要看的2个主要方面是树的graphviz表示形式和功能重要性列表。我不了解的是如何在树的上下文中确定功能的重要性。例如,这是我的功能重要性列表: 功能排名:1. FeatureA(0.300237) FeatureB(0.166800) FeatureC(0.092472) 精选(0.075009) FeatureE(0.068310) FeatureF(0.067118) FeatureG(0.066510) FeatureH(0.043502) FeatureI(0.040281) FeatureJ(0.039006) FeatureK(0.032618) FeatureL(0.008136) FeatureM(0.000000) 但是,当我查看树的顶部时,它看起来像这样: 实际上,某些排名为“最重要”的要素要到树下很远时才会出现,而树的顶部是FeatureJ,这是排名最低的要素之一。我天真的假设是,最重要的功能将排在树的顶部附近,以产生最大的影响。如果那是不正确的,那么什么使功能“重要”?

2
为什么学习率导致我的神经网络的权重急剧上升?
我正在使用tensorflow编写简单的神经网络以进行一些研究,并且在训练时遇到“ nan”权重的许多问题。我尝试了许多不同的解决方案,例如更改优化器,更改丢失,数据大小等,但无济于事。最后,我注意到学习速度的变化使我的体重产生了难以置信的变化。 使用.001(我认为是非常保守的)的学习率,最小化函数实际上将成倍地增加损失。一个世纪之后,损失可能从数千个跃升至一万亿个,然后达到无穷大('nan')。当我将学习率降低到.0001时,一切正常。 1)为什么单个数量级会产生这种影响? 2)为什么最小化函数实际上会执行与其功能相反的操作,并使损失最大化?在我看来,无论学习速度如何,都不应该发生这种情况。

2
word2vec中单词向量的特征
我正在尝试进行情绪分析。为了将单词转换为单词向量,我使用了word2vec模型。假设我的所有句子都在名为“句子”的列表中,并且将这些句子传递给word2vec,如下所示: model = word2vec.Word2Vec(sentences, workers=4 , min_count=40, size=300, window=5, sample=1e-3) 由于我对词向量不敏感,因此我有两个疑问。 1-将特征数量设置为300定义了单词向量的特征。但是这些功能意味着什么?如果此模型中的每个单词都由1x300 numpy数组表示,那么这300个功能对该单词表示什么? 2-在上述模型中,以“样本”参数表示的向下采样实际上有什么作用? 提前致谢。

1
如何使用匿名可缩放的数字预测变量来处理numer.ai竞争?
Numer.ai已经存在了一段时间,并且在网络上似乎只有很少的帖子或其他讨论。 系统不时更改,今天的设置如下: 训练(N = 96K)和测试(N = 33K)具有21个特征的数据,这些特征具有[0,1]中的连续值和二进制目标。 数据是干净的(无缺失值),每2周更新一次。您可以上传预测(在测试集上)并查看对数损失。测试数据的一部分甚至是实时数据,您都会获得良好预测的报酬。 我想讨论的是: 由于功能完全是匿名的,我认为我们无法进行太多的功能工程。所以我的方法很机械: 灵感来自于这个我使用的分类算法过滤掉哪些适合我的测试数据最好的训练数据。 找出一些不错的预处理 训练好的分类算法 建立他们的合奏(堆叠,..)。 具体问题: 关于步骤1:您有使用这种方法的经验吗?假设我对火车样本属于测试的概率(通常低于0.5)进行排序,然后取最大的K概率。您将如何选择K?我尝试使用15K ..但主要是为了在第3步中加快训练速度而设置了一个小的训练数据集。 关于步骤2:数据已经为0,1比例。如果我应用任何(类似于PCA的)线性变换,那么我将打破这一规模。如果您有这样的数值数据并且不知道实际上是什么,那么您将在预处理中尝试什么。 PS:我知道,因为numer.ai付钱给人们讨论这可以帮助我赚钱。但这是公开的,这将对那里的所有人有所帮助... PPS:当今的排行榜有一个有趣的模式:对数损失为0.64xx的前两名,然后是0.66xx的第三名,然后大多数预测指标达到0.6888x。 因此,似乎只有很小的顶尖领域,并且有很多中等成功的人(包括我)。

3
哪一种(如果有的话)机器学习算法被认为是可解释性和预测之间的良好折衷?
描述诸如梯度增强机器或神经网络之类的算法的机器学习教科书经常评论说这些模型擅长预测,但这是以丧失可解释性或可解释性为代价的。相反,单决策树和经典回归模型被标记为擅长解释,但是与更复杂的模型(例如,随机森林或SVM)相比,(相对)较差的预测准确性。是否存在公认的代表两者之间良好权衡的机器学习模型?是否有任何文献列举算法的特征以使它们可以解释?(此问题以前是在交叉验证中提出的)

3
在用户只能看到所有项目的一小部分的情况下,什么样的推荐引擎?
我想向文档管理系统添加推荐功能。它是一台用于存储大多数公司文档的服务器。员工浏览Web界面,然后单击以下载(或在线阅读)他们想要的文档。 每个员工只能访问所有文档的一部分: 我的目标:向员工推荐其队友最近打开的文档,或者作为他们刚刚打开的文档的附件的电子表格,或者他们可能想要阅读的任何内容。 有许多公开数据的推荐引擎(所有Netflix用户都可以观看所有电影),但是这里的情况很特殊:每个员工只拥有全部文档的一小部分的权限,而在Netflix中,任何用户都可以访问所有电影。 示例:Employee1可以读取DocumentA,但不能读取DocumentB。Employee2可以读取,而Employee3则不能读取。 当然,我不能向员工推荐她/他无权访问的文档。此外,我想我应该仅在有权访问文档的员工的背景下考虑文档的普及程度。为了使事情变得更加复杂,员工有时会从一个项目转移到另一个项目,这会影响他们可以访问的文档。 这种问题有名字吗? 能否在不降低精度/效率的情况下将其减少到更常见的问题? 如果没有,哪种方法对这种问题会很好? 注意:类似Netflix的推荐引擎还不够好。如果只有10名员工(包括我在内)可以访问,则具有50个视图的文档应突出显示,而如果有100000名员工可以访问,则不应突出显示。 如果需要,这里有一些具体的数据:每个公司平均有1000名员工,大约10000个文档,一个员工每天点击大约5个文档。每个项目平均有10名员工可以访问它,并且有大约100个文档。每个员工平均并行进行5个项目。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.