我使用hyperopt优化了我的keras模型。现在,我们如何将最佳优化的keras模型及其权重保存到磁盘。
我的代码:
from hyperopt import fmin, tpe, hp, STATUS_OK, Trials
from sklearn.metrics import roc_auc_score
import sys
X = []
y = []
X_val = []
y_val = []
space = {'choice': hp.choice('num_layers',
[ {'layers':'two', },
{'layers':'three',
'units3': hp.uniform('units3', 64,1024),
'dropout3': hp.uniform('dropout3', .25,.75)}
]),
'units1': hp.choice('units1', [64,1024]),
'units2': hp.choice('units2', [64,1024]),
'dropout1': hp.uniform('dropout1', .25,.75),
'dropout2': hp.uniform('dropout2', .25,.75),
'batch_size' : hp.uniform('batch_size', 20,100),
'nb_epochs' : 100,
'optimizer': hp.choice('optimizer',['adadelta','adam','rmsprop']),
'activation': 'relu'
}
def f_nn(params):
from keras.models import Sequential
from keras.layers.core import Dense, Dropout, Activation
from …Run Code Online (Sandbox Code Playgroud) 我正在尝试学习python,为此我使用python 2.7.3做了一个简单的添加程序
print("Enter two Numbers\n")
a = int(raw_input('A='))
b = int(raw_input('B='))
c=a+b
print ('C= %s' %c)
Run Code Online (Sandbox Code Playgroud)
我将文件保存为add.py,当我双击并运行它时,程序运行并在不显示答案的情况下立即退出.
然后我尝试了这个问题的代码简单的加法计算器在python中它接受用户输入但是在输入两个数字之后python退出而没有显示答案.
对上述代码的任何建议.感谢您的帮助
我正在学习 q-learning 并找到了一个维基百科帖子和这个网站。
根据教程和伪代码,我用 R 写了这么多
#q-learning example
#http://mnemstudio.org/path-finding-q-learning-tutorial.htm
#https://en.wikipedia.org/wiki/Q-learning
set.seed(2016)
iter=100
dimension=5;
alpha=0.1 #learning rate
gamma=0.8 #exploration/ discount factor
# n x n matrix
Q=matrix( rep( 0, len=dimension*dimension), nrow = dimension)
Q
# R -1 is fire pit,0 safe path and 100 Goal state########
R=matrix( sample( -1:0, dimension*dimension,replace=T,prob=c(1,2)), nrow = dimension)
R[dimension,dimension]=100
R #reward matrix
################
for(i in 1:iter){
row=sample(1:dimension,1)
col=sample(1:dimension,1)
I=Q[row,col] #randomly choosing initial state
Q[row,col]=Q[row,col]+alpha*(R[row,col]+gamma*max(Qdash-Q[row,col])
#equation from wikipedia
}
Run Code Online (Sandbox Code Playgroud)
但是我有一个问题max(Qdash-Q[row,col],根据网站是Max[Q(next state, all …
我有一个分类神经网络,我在非常大的数据集中以相当大的准确性和预测对其进行了训练。现在我要进行反向预测(正常预测:input-> output反向预测input <-output)。
这是针对此问题的示例神经网络。在这里,我采用自然数,并尝试使用神经网络将其分类为奇数或偶数。
from keras.models import Sequential
from keras.layers import Dense
import numpy as np
#model
model = Sequential()
model.add(Dense(1,input_dim=1))
model.add(Dense(4))
model.add(Dense(4))
model.add(Dense(2, activation='softmax'))
model.compile(loss='categorical_crossentropy', optimizer='adam',metrics=['accuracy'])
model.summary
#creating natural number features and binary odd and even targets
n=500
#natural numbers
x=np.arange(1,n)
x=x.reshape(n-1,1)
#even
y1=np.where(x%2==0,1,0)
#odd
y2=np.where(x%2!=0,1,0)
#target
Y=np.column_stack([y1,y2])
#model training
model.fit(x,Y,validation_split=0.3)
y_dash=np.arange(n,n+10)
#model prediction
model.predict(y_dash)
Run Code Online (Sandbox Code Playgroud)
其准确度为50%(对于此样本ANN来说已经足够了)
349/349 [==============================] - 0s - loss: 0.7077 - acc: 0.4871 - val_loss: 0.6991 - val_acc: 0.5000
Run Code Online (Sandbox Code Playgroud)
如何反向预测该神经网络?
例如,如果我想要这个神经网络输出一些奇数。
我正在学习 pytorch 的基础知识,并考虑创建一个带有 dropout 的简单 4 层神经网络来训练 IRIS 数据集进行分类。在参考了很多教程后,我编写了这段代码。
import pandas as pd
from sklearn.datasets import load_iris
import torch
from torch.autograd import Variable
epochs=300
batch_size=20
lr=0.01
#loading data as numpy array
data = load_iris()
X=data.data
y=pd.get_dummies(data.target).values
#convert to tensor
X= Variable(torch.from_numpy(X), requires_grad=False)
y=Variable(torch.from_numpy(y), requires_grad=False)
print(X.size(),y.size())
#neural net model
model = torch.nn.Sequential(
torch.nn.Linear(4, 10),
torch.nn.ReLU(),
torch.nn.Dropout(),
torch.nn.Linear(10, 5),
torch.nn.ReLU(),
torch.nn.Dropout(),
torch.nn.Linear(5, 3),
torch.nn.Softmax()
)
print(model)
# Loss and Optimizer
optimizer = torch.optim.Adam(model.parameters(), lr=lr)
loss_func = torch.nn.CrossEntropyLoss()
for i in range(epochs):
# …Run Code Online (Sandbox Code Playgroud) 我正在google colab中运行深度学习模型,并且可以在colab笔记本中正常工作。问题在于,随着在Cloud Colab笔记本中进行深度学习模型的训练的进行,我自己的计算机的CPU和内存使用率也开始上升。仅colab笔记本浏览器窗口的RAM使用量就超过500 MB,并且随着培训的进行而不断攀升。
在谷歌合作实验室,我们必须保持打开我们正在运行的笔记本来训练模型,否则我们将失去我们以前的所有工作,并且它将停止训练。我可以从终端窗口而不是浏览器运行google colab吗?有什么方法可以强迫Google colab仅在云中运行,即在不打开计算机的情况下运行笔记本?
在观看 Andrew Ng 关于Bleu Score的视频后,我想用 Python 从头开始实现一个。我用 python 和 numpy 编写了完整的代码。这是完整的代码
import numpy as np
def n_gram_generator(sentence,n= 2,n_gram= False):
'''
N-Gram generator with parameters sentence
n is for number of n_grams
The n_gram parameter removes repeating n_grams
'''
sentence = sentence.lower() # converting to lower case
sent_arr = np.array(sentence.split()) # split to string arrays
length = len(sent_arr)
word_list = []
for i in range(length+1):
if i < n:
continue
word_range = list(range(i-n,i))
s_list = sent_arr[word_range]
string = ' …Run Code Online (Sandbox Code Playgroud) 我想模拟自杀烧伤来学习和理解火箭着陆。OpenAI 健身房已经有一个 LunarLander 环境,用于训练强化学习代理。我正在使用这个环境来模拟 python 中的自杀烧伤。我已经(x,y)从这个环境的状态向量的前两个值中提取了坐标。根据这些值,将y坐标视为高度;我已经使用这些方程计算了降落着陆器的速度和加速度
velocity(v) = delta_y/ delta_t
acceleartion(a) = delta_v/delta_t
Run Code Online (Sandbox Code Playgroud)
随着模拟逐步递增,时间差delta_t被视为 1。无法找到 LunarLander 的重力参数,我给了它一个默认值g=1。然后使用此reddit 评论中的以下等式
开始自杀燃烧的高度 = [(当前高度)(重力加速度)+(1/2)(当前速度)2 ] /(发动机加速度)
我试图计算高度以开始自杀烧伤。这是我的完整 python 代码。我只计划使用四个可能操作中的两个操作 0(什么都不做)和 2(启动主引擎)。
import gym
env = gym.make('LunarLander-v2')
env.seed(0)
g = 1
delta_t = 1
action = 0
state = env.reset()
# x0 = state[0]
y0 = state[1]
v0 = 0
for t in range(3000):
state, reward, done, _ = env.step(action)
y = …Run Code Online (Sandbox Code Playgroud) 我是 django Rest Framework (DRF) 的新手,我需要POST使用基于函数的视图 (FDV) 的一些数据。我成功地使用了GET这种方式的方法,但不知道如何使用 POST 方法将值添加到数据库。
# app/models.py
class Item(models.Model):
name = models.CharField(max_length=50)
quantity = models.IntegerField()
price = models.FloatField()
# app/urls.py
urlpatterns = [
path('', views.get_data_list, name='list'),
path('post_val/', views.post_data, name='post_val'), # need to implement
]
# app/serializers.py
class ItemSerializer(serializers.ModelSerializer):
class Meta:
model = Item
fields = ('id', 'name', 'quantity','price')
# app/views.py
from django.http.response import JsonResponse
from rest_framework.parsers import JSONParser
from .models import Item
from .serializers import ItemSerializer
from rest_framework.decorators import api_view
@api_view(['GET',]) …Run Code Online (Sandbox Code Playgroud) 我已在计算机中下载了最新的引导程序css版本 4,它包含两个文件夹 one和 other js。css 文件夹包含大约 12 个 css 文件,而 js 文件夹包含大约 5 个 javascript 文件。我们需要将所有这 17 个文件链接到我们的 html 页面吗?有没有一种简单的方法可以通过文件夹链接 css 和 js?
python ×6
keras ×2
bootstrap-4 ×1
css ×1
django ×1
django-views ×1
game-physics ×1
http-post ×1
hyperopt ×1
javascript ×1
json ×1
math ×1
nlp ×1
nltk ×1
openai-gym ×1
physics ×1
prediction ×1
python-2.7 ×1
pytorch ×1
q-learning ×1
r ×1
simulation ×1
terminal ×1
theano ×1