一个使用Python和NumPy从头构建的深度学习库
neowise的Python项目详细描述
neowise文档
使用neowise
训练自己的神经网络的步骤- 在
安装并
在import neowise as nw
- 在
获取数据并进行预处理。您的
在data
的维度应为(number_of_examples, number_of_features)
,而{}的维度应为{ }。 这是必须的,任何更改都会导致错误!在 - 在
通过调用
在model = nw.Model(your_train_data, your_train_labels, your_test_data, your_test_labels, your_crossval_data, your_crossval_labels)
创建模型如果没有交叉验证数据,请为最后两个参数输入None
。在 - 在
通过
在model.add(layer_name,num_inputs,num_outputs,activation_function,dropout)
将层添加到模型中,在这里您为每个层指定一个唯一的名称,以便您知道它是什么类型的层。例如dense
层,如果它是第一层,则将其命名为dense1
。在num_inputs
中输入该层的输入数,在num_outputs
中输入该层的单元数。 对于激活函数,请使用以下任何受支持的激活函数[“relu”,“sigmoid”,“tanh”,“softmax”,“sine”]。 为了防止溢出和nan,我们建议如果您使用softmax分类器,将输出层前一层的激活设置为“tanh”,因为它压缩-1和1之间的值,从而防止灾难。{13>如果你想在^和}之间的任何地方使用。否则,默认值取1,即不退出。在 - 在
为了确定您的体系结构并知道将要训练的参数数量,请调用
在model.summary()
,它使用prettytable打印出体系结构的摘要。在 - 在
使用
在model.fit(your_train_data, your_train_labels, learning_rate, number_of_iterations, optimizer, problem_type, mini_batch_size, regularization_type, lambda, learning_rate_decay)
训练您的模型,在这里输入训练数据,选择学习率,设置要训练的迭代次数,从[“GD”中选择您想要的哪种类型的优化器用于梯度下降,使用动量的梯度下降使用“Momentum”,用于均方根传播的RMSprop,“Adam”for Adaptive Moment]如果您想使用Batch Gradient Descent,请选择“GD”作为optimizer
,并将mini_batch_size
设置为训练数据中的示例总数,如果您想使用随机梯度下降,选择“GD”作为optimizer
,并将mini_batch_size
设置为1。对于problem_type
请选择当前支持的任务[“Binary”用于二进制分类任务,“Multi”用于多类分类任务]将mini_batch_size
设置为您希望每个小批次的大小,并确保该值小于您拥有的示例总数。如果要使用L1或L2正则化,请从[“L1”用于L1正则化,而“L2”用于L2正则化]并设置正则化参数lambda
。如果您希望您的learning_rate
不是常数,并且随着培训的进行而减少,请将alpha_decay
设置为True - 在
通过对训练数据调用
在model.test(your_test_data, your_test_labels, problem_type)
并像对model.fit
那样设置{},在测试数据上测试模型。这将显示一个prettytable,其中包含精确性、召回率和f1分数及其对测试数据的准确性。在 - 在
要绘制成本和精度与迭代次数的关系,请调用
在model.plot(type_function, animate, directory, frequency)
并将type_function
设置为“Cost”,以获得精度与迭代次数的关系。如果要创建动画图形,请将animate
设置为True,并指定要在directory
中保存绘图的目录,并设置图形在frequency
中更新的频率,然后将这些图像提供给GIF创建者以创建动画图。在 - 在
要保存模型,请调用
在model.save_model(file_name)
,并指定要在其中保存模型的目录,该目录的扩展名为filename
中的模型名为.h5 - 在
要加载先前保存的模型,请创建一个新模型,调用
在saved_model = nw.Model(your_train_data, your_train_labels, your_test_data, your_test_labels, your_crossval_data, your_crossval_labels)
,其中这些是训练模型所依据的数据相同。Call saved_model.load_model(file_name)
从^{中指定的目录加载模型 - 在
这些是neowise提供的功能。有关详细的文档字符串,请访问Source Code以了解有关该项目的更多信息!在
在
- 项目
标签: