机器学习的一些评价方法

tensorflow里的loss function

cross_entropy交叉熵

交叉熵刻画的是两个概率分布之间的距离,我们通过softmax回归将神经网络前向传播得到的结果变成交叉熵要求的概率分布得分。

softmax函数用于多分类神经网络输出, 使得神经网络输出层输出的是一个概率分布,哪个点的概率高代表着某个类别的概率高。
sigmoid函数也用于隐层输出,使用哪个函数看业务需求

pandas一些技巧

DataFrame的一些技巧操作

转置

方法加T .T

数据合并

主要方法 pd.concat, 参数有

  • axis 合并方向 axis=0 纵向合并
  • ignore_index 重置index ignore_index=True
  • join 合并方式 join='outer'为预设值,因此未设定任何参数时,函数默认join=’outer’。此方式是依照column来做纵向合并,有相同的column上下合并在一起,其他独自的column个自成列,原本没有值的位置皆以NaN填充。

遍历dataframe行

  • 方法df.iterrows(), 迭代,使用for index, row in df.iterrows(), index返回index, row返回行

应该会有相同的方法遍历的列

记一次猫狗分类线上比赛

前言

最近学了Google的深度学习库,TensorFlow,这个库是真的强大,当然还有更高的封装,keras之类的,但是既然一直用着TensorFlow,就想去找个好玩的东西试试,然后看到lintcode上有一个猫狗的分类比赛,就去试试吧。做了一个周末加几天,大概做出来了,因为做深度学习需要大量的计算资源,电脑是真的跑不起来(CPU版TensorFlow),这里是我的代码实现VGG16-tranfer,所以我用了Google的免费GPU资源进行计算Colaboratory,Colaboratory 是一个 Google 研究项目,旨在帮助传播机器学习培训和研究成果。它是一个 Jupyter 笔记本环境,不需要进行任何设置就可以使用,并且完全在云端运行。然后数据集和模型通过和Google Drive进行数据交互得到,别的不说,确实用GPU算的很快,无论是训练的时候还是验证的时候。

tensorflow基础备忘录

基础概念

计算图

tensorflow上的每一个计算都是计算图上的一个节点,节点之间的边描述了计算之间的依赖关系,TensorFlow会默认维护一个计算图。在tensorboard中可以看到可视化的计算图。

Vue从零养成

前言

现在前端框架的乱战从三强分立(React,Vue,AngularJS)逐渐变成了两强(React,Vue),虽然一直在做着数据分析的工作,但是还是想把一些东西直接放在web上可视化或者交互,趁着有一个清明假期就去学习了一下Vue框架(React接触过之后感觉有些难懂),以下是一些备忘录,细节不会说的太多,主要实现细节可以baidu or Google

现代前端较为复杂,有了webpack之后,更像是软件开发了(模块化带来的错觉)

ES6/ES5+了解一下

使用的版本:

  • Vue 2.9.3
  • npm 5.6.0
  • Vue-router 3.0.1
  • webpack 3.11.0

命令行的操作使用windows10下的console emulator(所以所有的命令都通配Liunx,但是要注意路径)
npm国内安装会稍微慢,如果嫌慢可以科学上网

数字图像处理笔记

一幅图像可以定义成一个二维函数,其中x和y是空间坐标(平面),而在任何一对空间坐标(x,y)处的幅值f成为图像在该点处的强度或者灰度,当x,y和灰度值f是有限的离散数值时, 我们成为该图像为数字图像。

灰度是表明图像明暗的数值,即黑白图像中点的颜色深度,范围一般从0到255,白色为255 ,黑色为0,故黑白图片也称灰度图像。灰度值指的是单个像素点的亮度。灰度值越大表示越亮。

|