Technical Blog

Welcome to my world! 有问题请osswangxining(at)163.com


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

使用定制数据集训练Faster-RCNN模型

发表于 2017-10-10 | 分类于 Machine Learning , Deep Learning

基本概念介绍

目标检测的四个基本步骤:

  • 候选区域生成
  • 特征提取
  • 分类
  • 位置精修

RCNN的算法:

    1. 将一张图片生成2K个候选区域;
    1. 对每个候选区域,使用深度网络(deep net)提取特征;
    1. 特征送入每一类的SVM分类器,判别是否属于该类;
    1. 使用回归器精细修正候选框的位置;

从RCNN到fast RCNN,再到faster RCNN,目标检测的四个基本步骤终于被统一到一个深度网络框架之内。所有计算没有重复,完全在GPU中完成,大大提高了运行速度。

fast RCNN在RCNN的基础之上,将分类和位置精修统一到了一个深度网络之内。faster RCNN可以简单地看做“区域生成网络+fast RCNN“的系统,用区域生成网络代替fast RCNN中的Selective Search方法。

阅读全文 »

Applying Chatbots to the Internet of Things

发表于 2017-09-30 | 分类于 AI

Applying Chatbots to the Internet of Things

Applying Chatbots to the Internet of Things

阅读全文 »

在使用sklearn时如何选择合适的分类器

发表于 2017-09-17 | 分类于 AI , 机器学习

选择合适的机器学习算法

All models are wrong, but some models are useful. — George Box (Box and Draper 1987)

根据No free lunch theorem,在机器学习中,不存在一个在各方面都最好的模型/算法,因为每一个模型都或多或少地对数据分布有先验的统计假设。取所有可能的数据分布的平均,每个模型的表现都一样好(或者一样糟糕)。因此,我们需要针对具体的问题,找到最好的机器学习算法。

下面是可能的效果图:

阅读全文 »

构建自己的聊天机器人(及如何接入微信)

发表于 2017-09-03 | 分类于 AI

Chatbot的开发框架

目前聊天机器人的云服务在各大公司中都有自己的框架,例如Facebook, 微软, Google以及IBM的Watson等。开源的框架中,基于机器学习的聊天机器人不多。其中,ChatterBot算是比较简洁(换种说话就是功能还比较弱)的一个,项目活跃, 文档清晰,代码也算干净利落。

具体说来,ChatterBot是一个基于机器学习的聊天机器人引擎,构建在python上,可以从已有的对话中学习, 该项目的设计允许它接入任何语言。

其特性:

  • 一个未经训练的ChatterBot机器人,并没有与用户交谈所需的知识。
  • 每当用户输入一句话,机器人将存下它,同时也存下答复的句子。
  • 随着机器人接受的输入的增加,它能够回答的问题的数量和准确度都会相应提升.

实现原理:

  • 首先从已知句子中匹配出与用户输入最相近的句子(如何衡量相近, 大家可以想想);
  • 之后找到最有可能的回复,那么如何得出最有可能的回复呢?由所有和机器交流过的人们,对这个输入问题(匹配过的)的各个回答的频率决定;
    阅读全文 »

IoT - 人工智能

发表于 2017-08-19 | 分类于 AI

NLU

rasa NLU is an open source tool for intent classification and entity extraction.

Rasa Core takes in structured input: intents and entities, button clicks, etc., and decides what your bot should do next.

Rather than writing a bunch of if/else statements, a Rasa bot learns from real conversations. A probabilistic model chooses which action to take, and this can be trained using supervised, reinforcement, or interactive learning.

阅读全文 »

Kafka Streams

发表于 2017-06-11 | 分类于 Kafka Streams , IOT

概述

Kafka Streams是一个客户端程序库,用于处理和分析存储在Kafka中的数据,并将得到的数据写回Kafka或发送到外部系统。Kafka Stream基于一个重要的流处理概念。如正确的区分事件时间和处理时间,窗口支持,以及简单而有效的应用程序状态管理,并利用kafka的并行模型来透明的处理相同的应用程序作负载平衡。

  • 一个简单的、轻量级的客户端库,可以很容易地嵌入在任何java应用程序与任何现有应用程序封装集成。
  • Kafka本身作为内部消息层,没有外部系统的依赖,使用kafka的分区模型水平扩展处理,并同时保证有序。
  • 支持本地状态容错,非常快速、高效的状态操作(如join和窗口的聚合)。
  • 采用一次一个消息处理以实现低延迟,并支持基于事件时间(even-time)的窗口操作。
  • 提供必要的流处理原语(primitive),以及一个 高级别的Steram DSL 和 低级别的Processor API。
    阅读全文 »

IoT Platform

发表于 2017-05-27 | 分类于 分布式&云计算 , IOT

环境准备

因为本人的开发环境是Mac,所以需要使用socat工具来转发,从而可以访问Remote Docker API。

1
socat TCP-LISTEN:1234,reuseaddr,fork UNIX-CONNECT:/var/run/docker.sock

阅读全文 »

Istio

发表于 2017-05-27 | 分类于 分布式&云计算 , 微服务

概述

Istio是一个用于连接/管理以及安全化微服务的开放平台, 提供了一种简单的方式用于创建微服务网络,并提供负载均衡/服务间认证/监控等能力,关键的是并不需要修改服务本身. 主要提供以下功能:

  • Traffic Management: 控制服务之间调用的流量和API调用;
  • Observability: 获取服务之间的依赖,以及服务调用的流量走向;
  • Policy Enforcement: 控制服务的访问策略,不需要改动服务本身;
  • Service Identity and Security: 服务身份与安全相关的功能;

架构

Istio从架构上看,主要分为2个部分,即:

  • 控制面板: 管理代理,用于支持流量路由/运行时执行策略等;
  • 数据面板: 由一系列的智能代理(Envoy)构成,用于仲裁和控制服务之间的网络交互;

Istio Arch

阅读全文 »

容器集群、网络连接、自动化部署

发表于 2017-05-12 | 分类于 分布式&云计算 , Kubernetes

容器与编排

毋庸置疑,容器是未来的最为重要的配置编排格式之一, 打包应用程序也将会变得更加容易。虽然像Docker这样的工具提供真实的容器,但是也需要其他工具来处理如replication,failover以及API来自动化部署到多个机器。

用Kubernetes来进行负载均衡

Service在部署之前存在一个IP地址,但是这个地址只存在于Kubernetes集群之内。这也就意味着Service对于网络来说根本不可用!当运行在谷歌GCE上的时候,Kubernetes能够自动配置一个负载均衡器来访问应用程序。如果你不是在谷歌GCE上面的话,你就需要做些额外的工作来使负载均衡运行起来。

阅读全文 »

分布式锁

发表于 2017-05-08 | 分类于 分布式&云计算 , 分布式技术架构

分布式锁

分布式锁,是控制分布式系统之间同步访问共享资源的一种方式。在分布式系统中,常常需要协调他们的动作。如果不同的系统或是同一个系统的不同主机之间共享了一个或一组资源,那么访问这些资源的时候,往往需要互斥来防止彼此干扰来保证一致性,在这种情况下,便需要使用到分布式锁。

保证一个方法在同一时间内只能被同一个线程执行

分布式锁期望的效果:

可以保证在分布式部署的应用集群中,同一个方法在同一时间只能被一台机器上的一个线程执行。

这把锁要是一把可重入锁(避免死锁)

这把锁最好是一把阻塞锁(根据业务需求考虑要不要这条)

有高可用的获取锁和释放锁功能

获取锁和释放锁的性能要好

阅读全文 »
123…5
Xi Ning Wang

Xi Ning Wang

专注于分布式高性能技术架构、容器|K8S、IoT云平台,支持语言:Java(script) | Python | Golang

47 日志
16 分类
34 标签
GitHub E-Mail Google StackOverflow
Links
  • Istio
  • gRPC
0%
© 2015 — 2018 Xi Ning Wang
由 Hexo 强力驱动
|
主题 — NexT.Gemini v5.1.4