一个使用Python和NumPy从头构建的深度学习库

neowise的Python项目详细描述


neowise文档

使用neowise

训练自己的神经网络的步骤
  1. 安装并import neowise as nw

  2. 获取数据并进行预处理。您的data的维度应为(number_of_examples, number_of_features),而{}的维度应为{}。 这是必须的,任何更改都会导致错误!在

  3. 通过调用model = nw.Model(your_train_data, your_train_labels, your_test_data, your_test_labels, your_crossval_data, your_crossval_labels)创建模型如果没有交叉验证数据,请为最后两个参数输入None。在

  4. 通过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,即不退出。在

  5. 为了确定您的体系结构并知道将要训练的参数数量,请调用model.summary(),它使用prettytable打印出体系结构的摘要。在

  6. 使用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

  7. 通过对训练数据调用model.test(your_test_data, your_test_labels, problem_type)并像对model.fit那样设置{},在测试数据上测试模型。这将显示一个prettytable,其中包含精确性、召回率和f1分数及其对测试数据的准确性。在

  8. 要绘制成本和精度与迭代次数的关系,请调用model.plot(type_function, animate, directory, frequency)并将type_function设置为“Cost”,以获得精度与迭代次数的关系。如果要创建动画图形,请将animate设置为True,并指定要在directory中保存绘图的目录,并设置图形在frequency中更新的频率,然后将这些图像提供给GIF创建者以创建动画图。在

  9. 要保存模型,请调用model.save_model(file_name),并指定要在其中保存模型的目录,该目录的扩展名为filename中的模型名为.h5

  10. 要加载先前保存的模型,请创建一个新模型,调用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)从^{中指定的目录加载模型

  11. 这些是neowise提供的功能。有关详细的文档字符串,请访问Source Code以了解有关该项目的更多信息!在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
添加组件后,java JTable为空   java将json发送到php并插入mysql,但返回null   java Spring引导JNDI CommonJ资源   从不同PC创建和合并后的Java servlet问题   java如何在使用findelements时从xpath获取文本   java使用spring boot使用gmail smtp发送电子邮件   java在不使用pojo、bean或getter和setter的情况下获取Json标题的Json数组   Java中的OpenFile对话框将null作为响应   JavaBuilder模式。扩展接口   java中无需替换的数据结构选取   java如何评价Encog中的预测神经网络   java如何在安卓中使用实际的HttpURLConnection进行单元测试?   java使用XML配置禁用WebSocket中的CSRF保护   java如何通过hibernate从多表查询中获取数据?   mysql如何在java中获取更新的行Id   java AEM/CQ组件单一组件/有限组件   java FFmpeg Javacv延迟问题   显示整数数组的java不起作用