我知道数据集有 output_shapes,但它显示如下:
data_set: DatasetV1Adapter 形状: {item_id_hist: (?, ?), tags: (?, ?), client_platform: (?,), entry: (?,), item_id: (?,), label: (?,),模式:(?,),时间:(?,),user_id:(?,)},类型:{item_id_hist:tf.int64,标签:tf.int64,client_platform:tf.string,入口:tf.string,item_id :tf.int64,标签:tf.int64,模式:tf.int64,时间:tf.int64,user_id:tf.int64}
我怎样才能得到我的数据总数?
machine-learning deep-learning tensorflow tensorflow-datasets
我想在 JPA 中实现状态设计模式。这篇博文中概述了我目前的做法。
作者使用包含所有可用状态实现的枚举,而不是为状态抽象创建抽象类/接口并为每个状态编写实现。我发现这种方法非常有用,因为枚举可以在 JPA 中轻松序列化,并且您可以无需额外工作即可存储对象的当前状态。我还将状态接口和所有状态类嵌套到枚举中,使它们成为私有的,因为它们是特定于实现的,不应该对任何客户端可见。这是枚举的代码示例:
public enum State {
STATE_A(new StateA()),
STATE_B(new StateB());
private final StateTransition state;
private State(StateTransition state) {
this.state = state;
}
void transitionA(Context ctx) {
state.transitionA(ctx);
}
void transitionB(Context ctx) {
state.transitionB(ctx);
}
private interface StateTransition {
void transitionA(Context ctx);
void transitionB(Context ctx);
}
private static class StateA implements StateTransition {
@Override
public void transitionA(Context ctx) {
// do something
ctx.setState(STATE_B);
}
@Override
public void transitionB(Context ctx) {
// do something
ctx.setState(STATE_A);
} …Run Code Online (Sandbox Code Playgroud) 我正在尝试 Tensorflow 2.0 alpha 预览版并正在测试 Eager execution 。我的疑问是,如果您在中间有一个可变大小的 numpy 数组,例如
input.shape
(10,)
input[0].shape
(109, 16)
input[1].shape
(266, 16)
Run Code Online (Sandbox Code Playgroud)
等等数组的其余部分,如何急切地将它们转换为张量。
当我尝试
tf.convert_to_tensor(input)
Run Code Online (Sandbox Code Playgroud)
或者
tf.Variable(input)
Run Code Online (Sandbox Code Playgroud)
我得到
ValueError:无法将 numpy ndarray 转换为张量(无法以字节形式获取元素。)。
转换每个子数组有效,但由于子数组大小不同,tf.stack 不起作用。
任何帮助或建议?
我认为通过编写像这样的Jasmine模拟我取得了很好的进展.但我无法修复此错误.
spyOn方法实际上如何工作?实际上这种方法似乎被广泛使用.在2.0中有所改变
describe('Test Controller', function() {
var $scope, $rootScope, $q, controller, mockService, queryDeferred;
//What is the expected response ?
var expectedResponse = [{ suffix: 'Mr.'}, { prefix: 'Miss'}];
beforeEach(function () {
angular.module("Test", []);
});
beforeEach(module('Test'));
beforeEach(inject(function(_$rootScope_, _$q_, $controller) {
$q = _$q_;
$rootScope = _$rootScope_;
$scope = $rootScope.$new();
mockService = {
query: function() {
queryDeferred = $q.defer();
return queryDeferred.promise;
}
}
spyOn(mockService, 'query').andCallThrough();
// inject the mocked Service into the controller.
controller = $controller('TestController', {
'$scope': $scope,
'ServiceApi': mockService
}); …Run Code Online (Sandbox Code Playgroud) 我在STS的Spring Boot启动项目中使用了这个Spring AOP代码.经过一段时间的调试后,我发现AspectJ语法没有任何问题.Maven依赖关系是由STS为AOP启动项目生成的.这个代码中有一个明显的遗漏,就像注释一样吗?另一个问题可能是AOP启动项目或我尝试在@PostConstruct方法中测试代码的方式.
我安装了AJDT,但似乎STS应该在IDE中自己显示AspectJ标记.对 ?我没有看到标记.STS中包含哪些其他AspectJ调试选项?-Xlint是我在Eclipse/AJDT中使用的.
StateHandler.java
public class StateHandler<EVENTTYPE extends EventType> {
private State<EVENTTYPE> state;
private Event<EVENTTYPE> event;
public StateHandler(State<EVENTTYPE> state, Event<EVENTTYPE> event) {
this.state = state;
this.event = event;
}
public void handle( Event<EVENTTYPE> event ){
state = state.handle( event );
}
public State<EVENTTYPE> getState() {
return state;
}
}
Run Code Online (Sandbox Code Playgroud)
DeviceLogger .java
@Aspect
@Component
public class DeviceLogger {
private static Logger logger = Logger.getLogger("Device");
@Around("execution(* com.devicemachine.StateHandler.*(..))")
public void log() {
logger.info( "Logger" );
}
} …Run Code Online (Sandbox Code Playgroud) 一般来说,我知道我们必须查看源代码才能了解代码的性能。
但更具体地说,这段代码在竞争激烈的编程网站中会超时。
这将查找流中从0到的数字出现的频率100。数组中的数字介于0和之间100。
// Times out with int[] array containing 100000 elements.
List<Integer> l = new ArrayList<>();
for( int i = 0 ; i < array.length ; i ++){
l.add(array[i]);
}
int[] counts = new int[100];
Arrays.stream(array).forEach( i -> counts[i] = Collections.frequency( l, i));
Run Code Online (Sandbox Code Playgroud)
这段代码的 Big-O 分析是什么?我认为罪魁祸首是我使用 Streams API 的方式。
我想在新的tensorflow2.3 中测试一些功能但是,我在安装过程中苦苦挣扎。
我看到:当 conda 尚不支持时,如何在 Windows 上安装最新的 Tensorflow(此处:2.2)?
我执行了: pip install --upgrade pip
我有:
ERROR: Could not find a version that satisfies the requirement tensorflow-cpu==2.3.0rc2 (from versions: 1.15.0rc0, 1.15.0rc1, 1.15.0rc2, 1.15.0rc3, 1.15.0, 2.1.0rc0, 2.1.0rc1, 2.1.0rc2, 2.1.0)
ERROR: No matching distribution found for tensorflow-cpu==2.3.0rc2
Run Code Online (Sandbox Code Playgroud) 我已经广泛研究了 TensorFlow 上的其他答案,但我似乎无法让它在我的 CPU 上使用多个内核。
根据 htop,以下程序仅使用单个 CPU 内核:
import tensorflow as tf
n_cpus = 20
sess = tf.Session(config=tf.ConfigProto(
device_count={ "CPU": n_cpus },
inter_op_parallelism_threads=n_cpus,
intra_op_parallelism_threads=1,
))
size = 100000
A = tf.ones([size, size], name="A")
B = tf.ones([size, size], name="B")
C = tf.ones([size, size], name="C")
with tf.device("/cpu:0"):
x = tf.matmul(A, B)
with tf.device("/cpu:1"):
y = tf.matmul(A, C)
sess.run([x, y])
# run_options = tf.RunOptions(trace_level=tf.RunOptions.FULL_TRACE)
# run_metadata = tf.RunMetadata()
# sess.run([x, y], options=run_options, run_metadata=run_metadata)
# for device in run_metadata.step_stats.dev_stats:
# device_name = device.device …Run Code Online (Sandbox Code Playgroud) python parallel-processing multithreading affinity tensorflow
我[-1,256,256,3]使用如下所示的转置图层作为输出形状。我打印输出形状。我的问题特别是关于高度和宽度这两者的问题256。通道似乎是我代码中最后一个转置层的滤波器数量。
我相当简单地假设公式是这样的。我读了其他主题。
H = (H1 - 1)*stride + HF - 2*padding
Run Code Online (Sandbox Code Playgroud)
但是当我计算时,我似乎没有得到该输出。我想我可能会缺少填充计算,那么添加了多少填充'SAME'?
我的代码是这个。
H = (H1 - 1)*stride + HF - 2*padding
Run Code Online (Sandbox Code Playgroud) 我使用的是 TensorFlow 2.1.2 和 TensorBoard 2.4.1,
import os, shutil
import tensorflow as tf
print(tf.__version__)
SUMMARY_DIR = 'summary/testing_this'
if 1:
# SUMMARY_DIR is the path of the directory where the tensorboard SummaryWriter files are written
# the directory is removed, if it already exists
if os.path.exists(SUMMARY_DIR):
shutil.rmtree(SUMMARY_DIR)
train_summary_writer = tf.summary.create_file_writer(os.path.join(SUMMARY_DIR, 'train'))
test_summary_writer = tf.summary.create_file_writer(os.path.join(SUMMARY_DIR, 'test'))
train_summary_counter = 0
for i in range(100):
with train_summary_writer.as_default():
tf.summary.scalar('train/sampled-softmax loss', i+5, step=train_summary_counter)
train_summary_counter += 1
Run Code Online (Sandbox Code Playgroud)
上面写的代码工作得很好。但是当我升级到 TensorFlow 2.3.0 时,抛出了以下错误——
Serving TensorBoard on localhost; to expose …Run Code Online (Sandbox Code Playgroud) tensorflow ×6
python ×3
java ×2
affinity ×1
aspectj ×1
convolutional-neural-network ×1
jasmine ×1
java-stream ×1
jpa ×1
numpy ×1
pip ×1
spring-aop ×1
spring-boot ×1
tensorboard ×1
tensorflow2 ×1