小编aL_*_*_eX的帖子

Keras:如何保存模型并继续培训?

我有一个模型,我已经训练了40个时代.我为每个时代保留了检查站,也保存了模型model.save().培训的代码是

n_units = 1000
model = Sequential()
model.add(LSTM(n_units, input_shape=(None, vec_size), return_sequences=True))
model.add(Dropout(0.2))
model.add(LSTM(n_units, return_sequences=True))
model.add(Dropout(0.2))
model.add(LSTM(n_units))
model.add(Dropout(0.2))
model.add(Dense(vec_size, activation='linear'))
model.compile(loss='mean_squared_error', optimizer='adam')
# define the checkpoint
filepath="word2vec-{epoch:02d}-{loss:.4f}.hdf5"
checkpoint = ModelCheckpoint(filepath, monitor='loss', verbose=1, save_best_only=True, mode='min')
callbacks_list = [checkpoint]
# fit the model
model.fit(x, y, epochs=40, batch_size=50, callbacks=callbacks_list)
Run Code Online (Sandbox Code Playgroud)

但是,当加载模型并再次训练时,它会重新开始,就像之前没有训练过一样.损失不是从上次培训开始的.

让我感到困惑的是,当我用重新定义的模型结构加载模型时load_weight,model.predict()效果很好.因此我相信模型权重被加载.

model = Sequential()
model.add(LSTM(n_units, input_shape=(None, vec_size), return_sequences=True))
model.add(Dropout(0.2))
model.add(LSTM(n_units, return_sequences=True))
model.add(Dropout(0.2))
model.add(LSTM(n_units))
model.add(Dropout(0.2))
model.add(Dense(vec_size, activation='linear'))
filename = "word2vec-39-0.0027.hdf5"
model.load_weights(filename)
model.compile(loss='mean_squared_error', optimizer='adam')
Run Code Online (Sandbox Code Playgroud)

但是,当我继续训练时

filepath="word2vec-{epoch:02d}-{loss:.4f}.hdf5"
checkpoint = ModelCheckpoint(filepath, monitor='loss', …
Run Code Online (Sandbox Code Playgroud)

python keras

25
推荐指数
4
解决办法
4万
查看次数

ImportError:无法导入名称'ensure_dir_exists'

我将Jupyter笔记本从旧版本更新到最新的5.3.1.但是,当我尝试从anaconda启动笔记本时,它会抛出一个导入错误:我试图删除并安装Jupyter包,但问题仍然存在.

Traceback (most recent call last):
File "C:\Users\v-kangsa\AppData\Local\Continuum\anaconda3\Scripts\jupyter-notebook-script.py", line 6, in 
from notebook.notebookapp import main
File "C:\Users\v-kangsa\AppData\Local\Continuum\anaconda3\lib\site-packages\notebook\__init__.py", line 25, in 
from .nbextensions import install_nbextension
File "C:\Users\v-kangsa\AppData\Local\Continuum\anaconda3\lib\site-packages\notebook\nbextensions.py", line 27, in 
from jupyter_core.utils import ensure_dir_exists
ImportError: cannot import name 'ensure_dir_exists'
Run Code Online (Sandbox Code Playgroud)

python jupyter-notebook

25
推荐指数
3
解决办法
2万
查看次数

实现基于节点的图形界面?

我想实现一个节点接口,基本上是一个DAG,每个节点在它的输入连接上执行操作,并输出一些东西(你可以连接到另一个节点)

一些示例应用:


作为第一个目标,我想拥有一个只有2个节点的图形应用程序.一个简单输出一个固定数字的"数字"和一个"加"节点,它取两个输入并输出两者之和.

正如人们已经回答的那样,我对如何在代码中表示数据有一个粗略的想法,例如在Python中寻找伪代码:

class Number:
    def __init__(self, value):
        self.value = value

    def eval(self):
        return self.value

class Add:
    def __init__(self, input1, input2):
        self.input1 = input1
        self.input2 = input2

    def eval(self):
        return self.input1.eval() + self.input2.eval()


a = Number(20)
b = Number(72)

adder = Add(a, b)
print adder.eval()
Run Code Online (Sandbox Code Playgroud)

我如何围绕此包装自定义GUI?像下面的东西,但略少手绘!

节点UI模型

我从哪里开始?我目前打算用Objective-C/Cocoa编写它,尽管我对其他语言的建议不仅仅是开放的.

python user-interface directed-graph

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

cassandra 3.11.2发布中的cqlsh 5.0.1是否已损坏?

我的OSX安装的Cassandra似乎已经被昨天的发布打破了.卡桑德拉似乎开始行了.

Jeremys-MacBook-Pro: fractal jeremy$ cqlsh --version
cqlsh 5.0.1



Jeremys-MacBook-Pro:fractal jeremy$ cqlsh localhost
Traceback (most recent call last):
  File "/usr/local/Cellar/cassandra/3.11.2/libexec/bin/cqlsh.py", line 2443, in <module>
    main(*read_options(sys.argv[1:], os.environ))
  File "/usr/local/Cellar/cassandra/3.11.2/libexec/bin/cqlsh.py", line 2421, in main
    encoding=options.encoding)
  File "/usr/local/Cellar/cassandra/3.11.2/libexec/bin/cqlsh.py", line 488, in __init__
    **kwargs)
  File "cassandra/cluster.py", line 735, in cassandra.cluster.Cluster.__init__ (cassandra/cluster.c:10935)
TypeError: __init__() got an unexpected keyword argument 'no_compact'
Run Code Online (Sandbox Code Playgroud)

python cassandra cqlsh

14
推荐指数
2
解决办法
1622
查看次数

在Python中获取字符串及其子字符串的所有组合

我已经看到很多关于获取所有可能的子串(即,相邻的字符集)的问题,但没有关于生成所有可能的字符串,包括其子串的组合.

例如,让:

x = 'abc'
Run Code Online (Sandbox Code Playgroud)

我希望输出类似于:

['abc', 'ab', 'ac', 'bc', 'a', 'b', 'c']
Run Code Online (Sandbox Code Playgroud)

重点是我们可以删除原始字符串中不相邻的多个字符(以及相邻的字符).

这是我到目前为止所尝试的:

def return_substrings(input_string):
    length = len(input_string)
    return [input_string[i:j + 1] for i in range(length) for j in range(i, length)]

print(return_substrings('abc'))
Run Code Online (Sandbox Code Playgroud)

但是,这只会从原始字符串中删除相邻字符串集,并且不会返回'ac'上面示例中的元素.

另一个例子是,如果我们使用字符串'abcde',输出列表应该包括的内容'ace','bd'等等.

python string

14
推荐指数
2
解决办法
5778
查看次数

设置张量流舍入模式

我正在使用小数字tensorflow,这有时会导致数值不稳定.

我想提高结果的精确度,或者至少确定我的结果的界限.

下面的代码显示了一个数字错误的具体示例(它输出nan而不是0.0,因为float64不够精确地处理1+eps/2):

import numpy as np
import tensorflow as tf

# setup
eps=np.finfo(np.float64).eps
v=eps/2
x_init=np.array([v,1.0,-1.0],dtype=np.float64)

x=tf.get_variable("x", initializer=tf.constant(x_init))
square=tf.reduce_sum(x)
root=tf.sqrt(square-v)

# run
with tf.Session() as session:
    init = tf.global_variables_initializer()
    session.run(init)

    ret=session.run(root)
    print(ret)
Run Code Online (Sandbox Code Playgroud)

我假设没有办法增加tensorflow中值的精度.但也许有可能设置舍入模式,就像在C++中使用std::fesetround(FE_UPWARD)?然后,我可以强制张量流总是向上舍入,这将确保我采用非负数的平方根.


我尝试了什么:我试图按照这个问题概述如何设置python/numpy的舍入模式.但是,这似乎不起作用,因为以下代码仍然打印nan:

import numpy as np
import tensorflow as tf

import ctypes
FE_TONEAREST = 0x0000 # these constants may be system-specific
FE_DOWNWARD = 0x0400
FE_UPWARD = 0x0800 …
Run Code Online (Sandbox Code Playgroud)

python rounding tensorflow

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

Windows - Pycharm - 无法安装python打包工具

在试图在Pycharm中为Python 3.6解释器安装软件包时,我得到了

Python packaging tools not found. *Install packaging tools*
Run Code Online (Sandbox Code Playgroud)

当我试图安装它时,给我这个错误

Traceback (most recent call last):
  File "C:\Program Files\JetBrains\PyCharm Community Edition 
2017.3.1\helpers\packaging_tool.py", line 2, in <module>
    import traceback
ModuleNotFoundError: No module named 'traceback'
Run Code Online (Sandbox Code Playgroud)

我正在使用Pycharm 2017.3.1社区版

python pycharm

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

如何从没有环境名称的文本文件创建新环境?

我正在尝试根据 Udacity此处提供的给定文件在 Anaconda 中创建一个新环境。但是,我不断收到此错误:

SpecNotFound:无法处理没有名称

我认为这是因为在给定的文件中,没有环境名称。我注意到了这一点,因为在我当前环境的导出 yaml 文件中,我有以下格式与上述给定的 requirements.txt 文件不同。

所以问题是,如何使用给定的文件创建新环境?谢谢!

name: base
channels:
  - anaconda
  - conda-forge
  - anaconda-fusion
  - defaults
dependencies:
  - graphviz=2.38.0=4
  - vs2017_runtime=15.5.2=1
  - backports.functools_lru_cache=1.4=py36_1
  - blinker=1.4=py_0
  - ca-certificates=2017.11.5=0
  - certifi=2017.11.5=py36_0
  - oauthlib=2.0.6=py_0
  - openssl=1.0.2n=vc14_0
  - pyjwt=1.5.3=py_0
  - python-json-logger=0.1.7=py36_0
  - requests-oauthlib=0.8.0=py36_1
  - tweepy=3.5.0=py36_0
  - vc=14=0
  - yaml=0.1.7=vc14_0
  - _license=1.1=py36_1
  - alabaster=0.7.10=py36hcd07829_0
  - anaconda-client=1.6.6=py36ha174c20_0
  - anaconda=custom=py36h363777c_0
  - anaconda-navigator=1.6.10=py36h51c3d4f_0
  - anaconda-project=0.8.2=py36hfad2e28_0
  - asn1crypto=0.24.0=py36_0
  - astroid=1.5.3=py36h9d85297_0
  - astropy=2.0.3=py36hfa6e2cd_0
  - attrs=17.3.0=py36hc87868e_0
  - babel=2.5.0=py36h35444c1_0
  - backports=1.0=py36h81696a8_1
  - …
Run Code Online (Sandbox Code Playgroud)

python anaconda conda

7
推荐指数
2
解决办法
7330
查看次数

如何将多项式变换应用于scikitlearn中的特征子集

Scikitlearn的PolynomialFeatures有助于生成多项式特征.

这是一个简单的例子:

import numpy as np
import pandas as pd
from sklearn.preprocessing import PolynomialFeatures

# Example data:
X = np.arange(6).reshape(3, 2)


# Works fine
poly = PolynomialFeatures(2)
pd.DataFrame(poly.fit_transform(X))

   0  1  2   3   4   5
0  1  0  1   0   0   1
1  1  2  3   4   6   9
2  1  4  5  16  20  25
Run Code Online (Sandbox Code Playgroud)

问题:是否有能力仅将多项式变换应用于指定的要素列表?

例如

# Use previous dataframe
X2 = X.copy()

# Categorical feature will be handled 
# by a one hot encoder in another …
Run Code Online (Sandbox Code Playgroud)

python scikit-learn

6
推荐指数
3
解决办法
2945
查看次数

ValueError:无效的端点:s3-api.xxxx.objectstorage.service.networklayer.com

我正在尝试访问我的 Watson Data Platform 目录中的 csv 文件。我使用了 DSX 笔记本中的代码生成功能:Insert to code> Insert StreamingBody object

生成的代码是:

import os
import types
import pandas as pd
import boto3

def __iter__(self): return 0

# @hidden_cell
# The following code accesses a file in your IBM Cloud Object Storage. It includes your credentials.
# You might want to remove those credentials before you share your notebook.

os.environ['AWS_ACCESS_KEY_ID'] = '******'
os.environ['AWS_SECRET_ACCESS_KEY'] = '******'
endpoint = 's3-api.us-geo.objectstorage.softlayer.net'

bucket = 'catalog-test'

cos_12345 = boto3.resource('s3', endpoint_url=endpoint) …
Run Code Online (Sandbox Code Playgroud)

python data-science-experience ibm-cloud

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