0%

1、pytorch简介

pytorch是一个基于Python的科学计算包,PyTorch 的设计遵循tensor→variable(autograd)→nn.Module 三个由低到高的抽象层次,分别代表高维数组(张量)、自动求导(变量)和神经网络(层/模块),而且这三个抽象之间联系紧密,可以同时进行修改和操作。它主要有两个用途:

  • 类似于Numpy但是能利用GPU加速
  • 一个非常灵活和快速用于深度学习的研究平台
阅读全文 »

1.深度学习简述

为了学习一种好的表示,需要构建具有一定“深度”的模型,并通过学习算法来让模型自动学习出好的特征表示(从底层特征,到中层特征,再到高层特征),从而最终提升预测模型的准确率.所谓“深度”是指原始数据进行非线性特征转换的次数

深度学习是将原始的数据特征通过多步的特征转换得到一种特征表示,并进一步输入到预测函数得到最终结果.和“浅层学习”不同,深度学习需要解决的关键问题是贡献度分配问题(Credit Assignment Problem,CAP)[Minsky,1961],即一个系统中不同的组件(component)或其参数对最终系统输出结果的贡献或影响.从某种意义上讲,深度学习可以看作一种强化学习(Reinforcement Learning,RL),每个内部组件并不能直接得到监督信息,需要通过整个模型的最终监督信息(奖励)得到,并且有一定的延时性

阅读全文 »

1. Numpy概述

1.1 概念

Python本身含有列表和数组,但对于大数据来说,这些结构是有很多不足的。由于列表的元素可以是任何对象,因此列表中所保存的是对象的指针。对于数值运算来说这种 结构比较浪费内存和CPU资源。至于数组对象,它可以直接保存 数值,和C语言的一维数组比较类似。但是由于它不支持多维,在上面的函数也不多,因此也不适合做数值运算。Numpy提供了两种基本的对象:ndarray(N-dimensional Array Object)ufunc(Universal Function Object)。ndarray是存储单一数据类型的多维数组,而ufunc则是能够对数组进行处理的函数。

阅读全文 »

1. 使用Anaconda

Anaconda,中文大蟒蛇,是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖.可通过Anaconda下载。选择合适版本。

注意:一个python环境应当只安装一个版本的tensorflow,如果还需要安装其他版本的tensorflow,应该再创建一个python环境

阅读全文 »

0. 我的思考

两个可供突破的大方向:

  • 是否能推动深度学习的训练数据规模减小?
  • 怎么使得训练模型的结果更加精确。

资源:

  • kaggle机器学习竞赛
阅读全文 »

1. 步骤

  • 阅读大量文献:需要阅读该方向的经典论文和最新论文文献
  • 在阅读这些文献之后,需要自己提出一个具体的研究问题。
  • 制定详细的研究计划
  • 论文的写作和投稿

2. 论文检索与下载

正如前面所说的,阅读文献的选择应该是在你确定了一个大的研究方向之后,选择经典和最新的文献进行阅读其摘要是否与自己领域相关,相关都建议下载阅读,所谓经典和最新是指:

  • 经典(重要):高被引用的文献
  • 最新(重要):你所研究方向进一两年的最新成果,在此基础上提出你的具有创新性的研究小方向
  • 其他相关文献
阅读全文 »

1. Git是什么

Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git原来是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

阅读全文 »

1. 为什么使用VScode

VScode是微软推出一个轻量化编辑器,只需要下载相应的编译器和包即可支持C/C++、java、python的编写。相对于VS来说,VScode更加的轻便、体积小,支持许多插件。

2. VScode的界面使用

阅读全文 »

1. get请求和post请求的区别

GETPOST是 HTTP 协议中两种常用的请求方法,使用它们都可以跟服务器进行通讯,它们区别有以下几点:

  • 一般来说GET主要用来请求资源,而POST一般用于提交数据到服务器。因此对于GET来说如果有参数传递的话,会将参数直接拼接到URL(资源定位符)上;而对于POST来说,这些参数会写在请求消息体中。因此对于要传输一些敏感信息的话,get方法不是安全的,这种情况使用POST更好。
  • 此外,由于URL有长度限制,因此对于GET来说,其传递的数据长度会受到浏览器的限制(2048),而POST将数据放在消息体中,因此通常没有数据长度限制。
  • 还有就是GET方法得到常见如HTML、JS或者CSS这些资源会被浏览器缓存,如果下次传输的数据相同,那么他们就会返回缓存中的内容,以求更快的展示所需要的数据;而对于POST来说,Post请求不会进行缓存操作。
  • 另外呢GET产生一个TCP数据包,而POST可能会产生两个数据包(不是必然),浏览器回先发送header,服务器响应100 continue后再发送data数据包,因此,Post在时间上的消耗一般会被Get要大
  • Get请求可以直接进行回退和刷新,不会对用户和程序产生影响,但POST请求如果直接回滚和刷新的将会重新把数据提交。(缓存)
阅读全文 »

1. MySQL的架构

MySQL最重要最与众不同的就是它的存储引擎架构,这种架构设计将查询处理(QUERY PROCESSING)及其他系统任务和数据存储/提取相分离。在这里主要介绍MySQL的服务器架构、各种存储引擎之间的区别。

1.1 逻辑架构

MySQL各组件协同工作的示意图如下:

  • 最上层的客户端不是MySQL独有的,像许多C/S结构都具有。
  • 第二层架构是大多数MySQL的核心服务功能所在的一层,如查询解析、分析、优化、缓存和所有的内置函数,所有跨存储引擎的功能也在这一层实现:存储过程、视图、触发器等。
  • 第三层包含了存储引擎,存储引擎负责MySQL中数据的存储和提取
阅读全文 »