文章目录
- 〇、推荐
- 一、liblinear版本
- 二、翻译整合
-
- 介绍
- 安装
- 快速开始
- Scipy快速入门
- 设计说明
- 数据结构
- 效用函数
- 附加信息
- 三、整体翻译
- 四、原文
〇、推荐
无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里可以跳转到教程。
一、liblinear版本
二、翻译整合
介绍
Python(http://www.python.org/)是一种适合快速编程的编程语言
发展。该工具为LIBLINEAR(一个库)提供了一个简单的Python接口
用于支持向量机(http://www.csie.ntu.edu.tw/~cjlin/liblinear)。
该界面非常易于使用,因为其用法与LIBLINEAR的用法相同。该界面是使用内置的Python库“ctypes”开发的。
安装
在Unix系统上,输入
该接口只需要生成的LIBLINEAR共享库
上面的命令。我们假设共享库在LIBLINEAR上
主目录或系统路径。
对于Windows,共享库liblinear.dll已在目录中准备就绪’… WINDOWS’。您也可以将其复制到系统目录(例如,
用于Windows XP的’C: WINDOWS system32 ‘。要重新生成共享库,
请按照LIBLINEAR README中构建Windows二进制文件的说明进行操作。
快速开始
“Scipy快速入门”将在下一节中介绍。
有两个级别的使用。高级别使用实用功能
在liblinearutil.py中,用法与LIBLINEAR MATLAB接口相同。
#以LIBSVM格式读取数据
#以python格式构造问题
#密集数据
#稀疏数据
#其他实用功能
#获取在线帮助
低级用法直接调用liblinear.py导入的C接口。注意
所有参数和返回值都是ctypes格式。你需要处理它们
小心。
Scipy快速入门
确保已安装Scipy以继续本节。
如果安装了numba(http://numba.pydata.org),一些操作会快得多。
有两个级别的使用。高级别使用实用功能
在liblinearutil.py中,用法与LIBLINEAR MATLAB接口相同。
#以LIBSVM格式读取数据
#以Scipy格式构造问题
#密集数据:numpy ndarray
#稀疏数据:scipy csr_matrix((data,(row_ind,col_ind))
#以Scipy格式应用数据缩放
#其他实用功能
#获取在线帮助
低级用法直接调用liblinear.py导入的C接口。注意
所有参数和返回值都是ctypes格式。你需要处理它们
小心。
#将ndarray(索引,数据)的元组转换为feature_nodearray,一个ctypes结构
#请注意,索引从0开始,但以下示例将在内部更改为1:1,3:1
设计说明
有两个文件liblinear.py和liblinearutil.py,分别对应于
低级和高级别使用界面。
在liblinear.py中,我们采用Python内置库“ctypes”来实现
Python可以直接访问定义的C结构和接口函数
在linear.h中。
高级用户可以在liblinear.py中使用结构/函数
避免处理ctypes结构,在liblinearutil.py中我们提供了一些易于使用的方法
功能。用法类似于LIBLINEAR MATLAB接口。
数据结构
从linear.h派生的三个数据结构是node,problem和
参数。它们都包含具有相同名称的字段
linear.h。请仔细访问这些字段,因为您直接使用C结构
而不是Python对象。以下描述引入了附加内容
领域和方法。
在使用数据结构之前,请执行以下命令来加载
LIBLINEAR共享库:
-
class feature_node:
构造一个feature_node。
idx:整数表示特征索引。
val:浮点数表示特征值。
显示索引和节点的值。
-
功能:gen_feature_nodearray(xi [,feature_max = None])
从Python列表/元组/字典,numpy ndarray或(索引,数据)元组生成特征向量:
xi_ctype:返回的feature_nodearray(一个ctypes结构)
max_idx:xi的最大特征索引
feature_max:如果指定了feature_max,则索引大于的特征
feature_max已删除。
-
课堂问题:
构造一个问题实例
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!