小编Fer*_*ndo的帖子

R中的n臂强盗模拟

我正在使用Sutton&Barto的电子书强化学习:研究强化学习的入门.我在尝试模拟动作值页面上的结果(图表)时遇到了一些问题.

更具体地说,我如何模拟greedy每个任务的值?这本书说:

...我们可以根据经验超过1000次改进来绘制各种方法的表现和行为......

所以我想我必须跟踪探索性值,因为找到了更好的值.问题是如何使用贪婪的方法来做到这一点- 因为没有探索性的动作,我怎么知道什么是贪婪行为

感谢所有的评论和答案!

更新:请参阅我的答案代码.

simulation r reinforcement-learning

6
推荐指数
1
解决办法
1641
查看次数

将日期增加一段时间

使用"+"运算符增加日期(或日期时间)时,如何指定增量以天(或月,或几周或几年)为单位?

> Sys.Date()
[1] "2013-08-23"
> Sys.Date() + 1
[1] "2013-08-24"
> ISOdate(2013,8,23)
[1] "2013-08-23 12:00:00 GMT"
> ISOdate(2013,8,23) + 1
[1] "2013-08-23 12:00:01 GMT"
Run Code Online (Sandbox Code Playgroud)

r

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

Keras合并层警告

我一直在收到这个警告:

lstm.py:119:UserWarning:该merge功能已弃用,将于08/2017之后删除.使用来自代替层keras.layers.merge,例如add,concatenate等merged_vector =合并([L1,L2],模式=拉姆达X:(X [0] - X [1])**2,output_shape =拉姆达X:X [0]) /Library/Python/2.7/site-packages/keras/legacy/layers.py:456:UserWarning:该Merge图层已弃用,将于08/2017之后删除.使用来自代替层keras.layers.merge,例如add,concatenate等名称=名)

这与以下代码行有关:

merged_vector = merge([l1, l2], mode=lambda x: (x[0] - x[1])**2, output_shape=lambda x: x[0])
Run Code Online (Sandbox Code Playgroud)

我的模型工作正常,但如何实现自定义合并Keras 2.0.2?谢谢.

python deep-learning keras

6
推荐指数
1
解决办法
1739
查看次数

在R中匹配函数arg

我在R take中有一个函数可以采取一些默认值或自定义用户函数:

myfun = function(x = c('funA', 'funB', 'funC'), customFUN = NULL)
{
}
Run Code Online (Sandbox Code Playgroud)

如果用户为x选择任何默认列出的值,则将忽略customFUN.在R中处理这个问题的最佳方法是什么?

我可以使用

myfun = function(x = c('funA', 'funB', 'funC'), customFUN = NULL)
{

  if (! is.null(customFUN)) {
    choosenFUN = match.fun(customFUN)
  }
  else {
    choosenFUN.string = match.arg(x)

    if (choosenFUN == 'funA')
       choosenFUN = algorithmA
    else if (choosenFUN == 'funB')
       choosenFUN = algorithmB
    #...and so on for the other defaults
  }

}
Run Code Online (Sandbox Code Playgroud)

但是添加额外的arg customFUN似乎很奇怪,也许有一个聪明的方法来做到这一点.谢谢!

arguments r function

5
推荐指数
1
解决办法
886
查看次数

最近一对点算法变异

我知道这可能是重复的,但它似乎是"最近点对"算法的变体.

给定单位平方中的一组N个点(x,y)和距离d,找到所有点对,使得它们之间的距离最多为d.

对于大N,蛮力方法不是一种选择.除了"扫描线"和"分而治之"的方法,还有一个更简单的解决方案吗?这对点是无向图的边缘,我需要遍历它并说它是否连接(我已经使用DFS做过,但是当N = 100万时它永远不会完成!).

欢迎任何伪代码,评论或想法,谢谢!

编辑:我在Sedgewick上发现了这本书(我正在查看代码):

当N足够大时,程序3.18使用链接列表的二维数组来将程序3.7的运行时间提高约1/d2.它将单位正方形划分为大小相等的网格.然后,对于每个方格,它构建一个落入该方格的所有点的链表.二维阵列提供了立即访问靠近给定点的点集的能力; 链表提供了灵活性,可以存储它们可能落下的点,而不必提前知道每个网格方格中有多少点.

c graph depth-first-search closest-points

5
推荐指数
1
解决办法
837
查看次数

Highcharts - 沿特定日期范围更改背景颜色

给定一个简单的日期 - 时间(x)与值(y)图在高图中,是否可以改变背景颜色,给定2个日期作为范围?换句话说,每个给定范围将定义具有某种特定颜色的"矩形".

的jsfiddle:

http://jsfiddle.net/gh/get/jquery/1.9.1/highslide-software/highcharts.com/tree/master/samples/highcharts/demo/spline-irregular-time/

码:

$(function () {
    $('#container').highcharts({
        chart: {
            type: 'spline'
        },
        title: {
            text: 'Snow depth in the Vikjafjellet mountain, Norway'
        },
        subtitle: {
            text: 'An example of irregular time data in Highcharts JS'
        },
        xAxis: {
            type: 'datetime',
            dateTimeLabelFormats: { // don't display the dummy year
                month: '%e. %b',
                year: '%b'
            }
        },
        yAxis: {
            title: {
                text: 'Snow depth (m)'
            },
            min: 0
        },
        tooltip: {
            formatter: function() {
                    return '<b>'+ this.series.name +'</b><br/>'+
                    Highcharts.dateFormat('%e. …
Run Code Online (Sandbox Code Playgroud)

javascript highcharts

5
推荐指数
1
解决办法
6027
查看次数

与dplyr分组相关(仅适用于控制台)

我正在尝试使用dplyr计算分组相关性,但由于下面的代码仅在控制台起作用,因此显然是错误:

require(dplyr)
set.seed(123)
xx = data.frame(group = rep(1:4, 100), a = rnorm(400) , b = rnorm(400))
gp = group_by(xx, group)
summarize(gp, cor(a, b))

  group   cor(a, b)
1     1 -0.02073084
2     2  0.12803353
3     3  0.06236264
4     4 -0.06181904
Run Code Online (Sandbox Code Playgroud)

如果我在RStudio中使用相同的代码,我得到:

   cor(a, b)
1 0.02739193
Run Code Online (Sandbox Code Playgroud)

发生了什么?

r plyr dataframe dplyr

5
推荐指数
1
解决办法
9493
查看次数

神经网络包中的R大错误

我试图找出如何使神经网络包工作.我对我创建的数据及其结果进行了一些测试(大约50行数据和三列,其中第四行是我想要的结果,它是通过简单的数学执行来完成的,比如总结其他三列),到目前为止一直很好.然后我决定在真实数据上应用这个包.我从这里下载了mpg数据集http://vincentarelbundock.github.io/Rdatasets/datasets.html

我正在运行下面的代码:

net<- neuralnet(cty~displ+year+cyl+hwy,
                datain, hidden=3)
Run Code Online (Sandbox Code Playgroud)

即使我有3个隐藏层,或8或18,错误是相同的,并且包处理数据的时间相对较少(这234行):

        Error Reached Threshold Steps
1 2110.173077    0.006277805853    54
Run Code Online (Sandbox Code Playgroud)

对此有什么好的建议吗?

r normalization neural-network

4
推荐指数
1
解决办法
5844
查看次数

R 代码检查单词是否与模式匹配

我需要根据字符向量模式验证字符串。我当前的代码是:

trim <- function (x) gsub("^\\s+|\\s+$", "", x)

# valid pattern is lowercase alphabet, '.', '!', and '?' AND
# the string length should be >= than 2
my.pattern = c(letters, '!', '.', '?')

check.pattern = function(word, min.size = 2)
{
    word = trim(word)
    chars = strsplit(word, NULL)[[1]]
    all(chars %in% my.pattern) && (length(chars) >= min.size)
}
Run Code Online (Sandbox Code Playgroud)

例子:

w.valid = 'special!'
w.invalid = 'test-me'

check.pattern(w.valid) #TRUE
check.pattern(w.invalid) #FALSE
Run Code Online (Sandbox Code Playgroud)

我想这非常慢......有没有更快的方法来做到这一点?也许是正则表达式?谢谢!

PS:感谢大家的精彩回答。我的目标是构建一个 29 x 29 矩阵,其中行名称和列名称是允许的字符。然后我迭代一个巨大文本文件的每个单词并构建一个“字母优先级”矩阵。例如,考虑单词“special”,从第一个字符开始:

row s, col p -> increment 1 …
Run Code Online (Sandbox Code Playgroud)

regex r pattern-matching

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

提取ARIMA规范

从auto.arima()打印拟合的模型对象包括诸如
"带漂移的ARIMA(2,1,0)"之类的线,
这将是包括在描述拟合模型的sweave(或其他)输出中的一个很好的项目.是否可以将该行提取为块?在这一点上,我所做的最好的是从arma组件中提取适当的顺序(可能与拟合模型的系数名称相关联,例如"with drift"或"with non-zero mean".)

# R 3.0.2 x64 on Windows, forecast 5.3 
library(forecast)  
y <- ts(data = c(-4.389, -3.891, -4.435, -5.403, -2.501, -1.858, -4.735, -1.085, -2.701, -3.908, -2.520, -2.009, -6.961, -2.891, -0.6791, -1.459, -3.210, -2.178, -1.972, -1.207, -1.376, -1.355, -1.950, -2.862, -3.475, -1.027, -2.673, -3.116, -1.290, -1.510, -1.736, -2.565, -1.932, -0.8247, -2.067, -2.148, -1.236, -2.207, -1.120, -0.6152), start = 1971, end = 2010)  
fm <- auto.arima(y)  
fm  

# what I want is the line: "ARIMA(2,1,0) with drift`"  

str(fm) …
Run Code Online (Sandbox Code Playgroud)

r time-series

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

在每个请求中实例化JSF会话ManagedBean

我的应用程序中有一个@ManagedBean,带有@sessionScoped anotation.

问题是为每个请求调用public no arg构造函数,因此我的字段被重置,我的模型逻辑进入空间.

我尝试构建并清理,重置glassFish,但仍然在每次请求时调用bean构造函数.我还有一个faces-config.xml来控制页面导航.

我可以通过在faces-config中重新声明bean来解决这个问题,现在它可以工作了......

有关为什么会发生这种情况的任何想法?如果我删除faces-config,问题仍然存在.

谢谢大家!

jsf constructor javabeans

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

在C中提取字符串模式(无libs)

我正在阅读具有以下格式的文件:

    /* ...more text above */
    [Text=WORKING CharacterOffsetBegin=73516 CharacterOffsetEnd=73523 PartOfSpeech=VBG                 
    Lemma=work] [Text=MEN CharacterOffsetBegin=73524 CharacterOffsetEnd=73527                    
    PartOfSpeech=NNS Lemma=man] [Text=OF CharacterOffsetBegin=73528
    CharacterOffsetEnd=73530 PartOfSpeech=IN Lemma=of] [Text=ALL
    CharacterOffsetBegin=73531 CharacterOffsetEnd=73534 PartOfSpeech=NN Lemma=all] 
    [Text=COUNTRIES CharacterOffsetBegin=73535 CharacterOffsetEnd=73544 PartOfSpeech=NNS 
    Lemma=country] [Text=, CharacterOffsetBegin=73544 CharacterOffsetEnd=73545
    PartOfSpeech=, Lemma=,] [Text=UNITE CharacterOffsetBegin=73546
    CharacterOffsetEnd=73551 PartOfSpeech=VB Lemma=unite] [Text=!
    CharacterOffsetBegin=73551 CharacterOffsetEnd=73552 PartOfSpeech=. Lemma=!]
    /* ...more text below */
Run Code Online (Sandbox Code Playgroud)

我想要做的是将Text =Lemma =给出的字符串提取到数组中.例如,对于上面的文本,输出将是:

 WORKING
 work
 MEN
 man
 OF
 of
Run Code Online (Sandbox Code Playgroud)

等等.我尝试过的:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define MAX_LINE 4096

int main()
{
  FILE …
Run Code Online (Sandbox Code Playgroud)

c regex string scanf

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