小编suy*_*ash的帖子

使用TensorFlow 2.0 Alpha时无法在Tensorboard中看到keras模型图

我正在尝试在TensorFlow 2.0 alpha上进行自定义训练,同时我试图向TensorBoard添加一些指标和训练图。考虑下面的人为例子

import tensorflow as tf
from tensorflow.keras.layers import Dense, Input
from tensorflow.keras.models import Model


def create_model():
    inp = Input((32, ))
    net = Dense(16, activation="relu")(inp)
    net = Dense(8, activation="relu")(net)
    net = Dense(2, activation=None)(net)
    return Model(inp, net)


@tf.function
def grad(model, loss, x, y):
    with tf.GradientTape() as tape:
        y_ = model(x)
        loss_value = loss(y_true=y, y_pred=y_)
    return loss_value, tape.gradient(loss_value, model.trainable_variables)


@tf.function
def train_step(model, loss, optimizer, features, labels):
    loss_value, grads = grad(model, loss, features, labels)
    optimizer.apply_gradients(zip(grads, model.trainable_variables))
    return loss_value


def train():
    tf.summary.trace_on(graph=True, profiler=True) …
Run Code Online (Sandbox Code Playgroud)

python tensorflow tensorboard tensorflow2.0

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

如何从关闭中取回移动值的所有权?

考虑以下程序:

fn primes_up_to(n: usize) -> Vec<usize> {
    let mut ans = Vec::with_capacity(n);

    if n < 2 {
        return ans;
    }

    ans.push(2);

    // https://doc.rust-lang.org/1.22.0/book/first-edition/closures.html#closures-and-their-environment
    // The closure needs ownership of vec to access elements
    let is_prime = |n: usize| -> bool {
        for x in ans {
            if x * x > n {
                break;
            }

            if n % x == 0 {
                return false;
            }
        }

        true
    };

    let mut i = 3;
    while i <= n {
        if is_prime(i) …
Run Code Online (Sandbox Code Playgroud)

rust

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

如何获取BTreeSet中元素的下界和上界?

阅读BTreeSet文档,我似乎无法弄清楚如何BTreeSet在对数时间内获得大于或小于元素的最小值.

我看到有一种range方法可以在任意(最小,最大)范围内给出值,但是如果我不知道范围并且我只想在对数时间内使用前一个和/或下一个元素呢?

这将是类似lower_boundupper_boundstd::setC++中.

rust

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

二叉树中最大的完整子树

我将一个完整的子树定义为一棵树,所有级别都已满,并且最后一个级别左对齐,即所有节点都在最左端,我想在完整的树中找到最大的子树。

一种方法是针对每个节点作为根执行此处概述的方法,这将花费O(n ^ 2)时间。

有没有更好的方法?

algorithm

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

Apache Spark 无法处理大型 Cassandra 列族

我正在尝试使用 Apache Spark 来处理我的大型(约 230k 个条目)cassandra 数据集,但我不断遇到不同类型的错误。但是,在大约 200 个条目的数据集上运行时,我可以成功运行应用程序。我有 3 个节点的 spark 设置,其中包含 1 个主节点和 2 个工作线程,并且 2 个工作线程还安装了一个 cassandra 集群,其中数据索引的复制因子为 2。我的 2 个 spark 工作线程在 Web 界面上显示 2.4 GB 和 2.8 GB 内存,并且我spark.executor.memory在运行应用程序时设置为 2409,以获得 4.7 GB 的组合内存。这是我的 WebUI 主页

在此处输入图片说明

其中一项任务的环境页面

环境

在这个阶段,我只是尝试使用 spark 处理存储在 cassandra 中的数据。这是我用来在 Java 中执行此操作的基本代码

SparkConf conf = new SparkConf(true)
        .set("spark.cassandra.connection.host", CASSANDRA_HOST)
        .setJars(jars);

SparkContext sc = new SparkContext(HOST, APP_NAME, conf);
SparkContextJavaFunctions context = javaFunctions(sc);

CassandraJavaRDD<CassandraRow> rdd = context.cassandraTable(CASSANDRA_KEYSPACE, CASSANDRA_COLUMN_FAMILY);

System.out.println(rdd.count());
Run Code Online (Sandbox Code Playgroud)

为了成功运行,在一个小数据集(200 个条目)上,事件界面看起来像这样

在此处输入图片说明

但是当我在大型数据集上运行同样的事情时(即我只更改CASSANDRA_COLUMN_FAMILY),作业永远不会在终端内终止,日志看起来像这样 …

java cassandra apache-spark apache-spark-sql spark-cassandra-connector

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