美文网首页
Mathematica 简单的洗牌算法生成5*5注意力训练矩阵

Mathematica 简单的洗牌算法生成5*5注意力训练矩阵

作者: 赵禾禾 | 来源:发表于2019-06-14 23:01 被阅读0次

    应用场景

    • 可以用来生成 5*5的矩阵,用来训练注意力

    • 舒尔特方块”。舒尔特方格是全世界最简单有效,并且最科学的专注力训练法。你需要做的就是在最短的时间里,按顺序从1数到10

    • 我们的目标就是对1-25进行洗牌,这样每次都能生成新的矩阵

    相关游戏界面

    算法思路

    • 参考python洗牌算法
    • 先生成一个25个数的a列表
    • 新建一个列表b
    • 生成随机数p
    • 以随机数为索引,引用a列表中的元素,附加到b列表
    • 然后从a列表中删除该元素
    • 进入循环,反复附加到新列表,删除旧列表,直到a中参数为0

    代码如下

    ClearAll[a, b, p, b]
    a = Range[25];
    b = {};
    While[Length[a] > 0,
     l = Length[a];
     p = RandomInteger[{1, l}];
     b = AppendTo[b, a[[p]]];
     (*Print[a];*)a = Drop[a, {p}]]
    ArrayReshape[b, {5, 5}] // MatrixForm
    

    计算结果

    image.png

    相关文章

      网友评论

          本文标题:Mathematica 简单的洗牌算法生成5*5注意力训练矩阵

          本文链接:https://www.haomeiwen.com/subject/aygmfctx.html