登录
首页 » Others » PCI EXPRESS体系结构导读 PDF

PCI EXPRESS体系结构导读 PDF

于 2020-12-12 发布
0 1157
下载积分: 1 下载次数: 4

代码说明:

PCI+EXPRESS体系结构导读,王齐,我下载合为一本,希望对你有帮助。PCI Express体系结构导读王齐编著★机械工业出版社本书讲述了与Pc及 PCI Express总线相关的最为基础的内容,并介绍了一些必要的、与PCI总线相关的处理器体系结构知识,这也是本书的重点所在。深入理解处理器体系结构是理解PCI与 PCI Express总线的重要基础。读者通过对本书的学习,可超越PCI与 PCI Express总线自身的内容,理解在一个通用处理器系统中局部总线的设计思路与实现方法,从而理解其他处理器系统使用的局部总线。本书适用于希望多了解一些硬件的软件工程师,以及希望多了解一些软件的硬件工程师,也可供电子工程和计算机类的研究生自学参考。图书在版编目(CIP)数据PCI Express体系结构导读/王齐编著.一北京:机械工业出版社,2010.3lBN978-7-111-29822-9.①P…Ⅱ.①王…Ⅲ.愚线一结构Ⅳ.①TP35中国版本图书馆CIP数据核字(2010)第028735号机械工业出版社(北京市百万庄大街2号邮政编码1007)责任编辑:车忱责任印制:洪汉军三河市宏达印刷有限公司印刷2010年3月第1版·第1次印刷l84mmx260mm·28.5印张·704T子0O0I-3500册标准书号:ISRN9787-1129829定价;5500元凡购本书,如有缺页、倒页、脱页,由本社发行部调换电话服务网络服务社服务中心:(010)8861066销售一部:(00)6326294门户网:址:/wmok.m销售二部:(010)88379649教材网:htp:∥www.amped.com读者服务部:(O10)6899821封面无防伪标均为盗版序PCI Express总线是新一代的O局部总线标准,是取代PCI总线的革命性总线架构PCI总线曾经是PC体系结构发展史上的一个里程碑,但是随着技术的不断发展,新涌现出的一些外部设备对传输速度和带宽有更高的要求,如千兆和万兆以太网、4Gb/8Gb的 FiberChannel和高速显示设备等。同时有些外部设备对总线的服务质量还有更严格的要求。PCI总线在设计之初并没有考虑这些因素,因此并不能完全满足这些外部设备的需要。PCI Express总线正是在这种背景下应运而生的。在2001年的春季英特尔开发者论坛上,英特尔公布了取代PCI总线的第三代L0技术,当时被称为“3GIO”。经 PCI-SIG审核,于202年7月正式公布了第一版规范,并更名为 PCI Express。从2004年开始, PCI Express总线逐渐全面取代PCI和ACP总线,成为新的局部总线工业标准。与PCI总线的共享并行架构不同, PCI Express总线使用高速串行传送方式,能够支持更高的频率,连接的设备不再像PCI总线那样共享总线带宽。除此之外 PCI Express总线还引人了一些新特性,如流量控制机制、服务质量管理、热插拔支持、数据完整性和新型错误处理机制等。而且 PCI Expres总线在系统软件级与PCI总线保持兼容,最大程度上降低了系统软件从原有的PCI总线体系结构移植到 PCI Expres总线体系结构的难度。目前关于 PCI Express总线规范的文献和书籍已有多种,但多集中在介绍规范本身。对于广大的开发者来说,能够从处理器系统的角度了解 PCI Express总线功能,无疑更有实用价值。无论是系统外部设备的开发、驱动程序的编写,还是其他系统软件的开发,处理器系统始终处于核心位置。本书正是从处理器系统的视角来讲述 PCI Express总线的体系结构,较为细致地介绍了如何使用FPGA实现一个基于PCle总线的外部设备,以及基于Linx系统的 PCI/PCI Express总线驱动程序和设备驱动程序。本书对于 PCI Express总线相关的软硬件开发人员具有很高的参考价值。PCI Express总线规范仍在不断发展。总的来说, PCI Express总线规范提出的最新技术概念往往在英特尔的x86处理器系统和外部设备中最先出现。本书的作者王齐先生,目前工作于英特尔开源技术研究中心,对处理器体系结构和Lmx系统核心技术均有深入研究,相信本书的读者能够从他的经验分享中获益。杨继国英特尔开源技术中心Ⅲ前言PCⅠI与 PCI Express(PCle)总线在处理器系统中得到了大规模应用。 PCISIG也制定了系列PCI与 PCI Express总线相关的规范,这些规范所涉及的内容庞杂广泛。对于已经理解了PCI与 PCI Express总线的工程师,这些规范便于他们进一步获得必要的细节知识。对于刚刚接触PCI与 PCI Express总线的工程师,这些规范性的文档并不适合阅读。在阅读这些规范时,工程师还需要具备一些与体系结构相关的基础知识,这恰是规范并不涉及的内容。对于多数工程师,规范文档适于查阅,而不便于学习。本书将以处理器体系结构为主线介绍 PCI Express总线的组成,以便读者进一步理解PcIExpress总线协议。本书并不是关于PCI和 PCI Express总线的百科全书,因为读者完全可以通过阅读PCI和 PCI Express总线规范获得细节信息。本书侧重的是PCI和 PCI Express总线中与处理器体系结构相关的内容。本书不会对PCI总线的相关规范进行简单重复,部分内容并不在PCI总线规范定义的范围内,例如HOST主桥和RC。PCI总线规范并没有规定处理器厂商如何实现HOST主桥和RC,不同的处理器厂商实现的HOST主桥和RC有较大差异,而这些内容正是本书所讨论的重点。此外本书还讲述了一些在PCI总线规范中提及,但是容易被忽略的一些重要概念。本书共由三篇组成。第Ⅰ篇(第1~3章)介绍PCI总线的基础知识。第Ⅱ篇(第413章)介绍 PCI Express总线的相关概念。第Ⅱ篇的內容以第Ⅰ篇为基础。从系统软件的角度来看, PCI Express总线向前兼容PCI总线,理解 PCI Express总线必须建立在深刻理解PCI总线的基础之上。读者需要按照顺序阅读这两篇。第1章主要说明PCl总线涉及的一些基本知识。有些知识稍显过时,但是在PC总线中出现的一些数据传送方式,如 Posted、Nn- Posted和 Split数据传送方式,依然非常重要,也是读者需要掌握的。第2章重点介绍PCI桥。PCI桥是PCI及 PCI Express体系结构的精华所在,本章还使用了一定篇幅介绍了非透明桥。非透明桥不是PCI总线定义的标准桥片,但是在处理器系统之间的互联中得到了广泛的应用。第3章详细阐述PCI总线的数据传送方式,与 Cache相关的内容和预读机制是本章的重点。目前pC与 PCI Express对预读机制的支持并不理想。但是在可以预见的将来, PCI EXpres总线将充分使用智能预读机制进一步提高总线的利用率。第4章是 PCI Express篇的综述。第5章以 Intel的笔记本平台 Montevina为例说明RC的各个组成模块。实际上RC这个概念,只有在x86处理器平台中才真正存在。其他处理器系统中,并不存在严格意义上的RC。第6、7章分别介绍 PCI Express总线的事务层、数据链路层和物理层。物理层是PCIExpress总线的真正核心,也是中国工程师最没有机会接触的内容。这也是我们这一代工程师的遗憾与无奈。第8章简要说明了 PCI Express总线的链路训练与电源管理。第9章主要讨论的是通用流量控制的管理方法与策略。 PCI Express总线的流量控制机Ⅳ制仍需完善,其中不等长的报文长度也是限制 PCI Express总线流量控制进一步提高的重要因素。第10章重点介绍MS和MSI-X中断机制。MS中断机制在PCI总线中率先提出,但是在PCⅠ Express总线中也得到大规模普及。目前x86架构多使用MSIX中断机制,而在许多嵌入式处理器中仍然使用MSI中断机制。第11章的篇幅很短,重点介绍PCI和 PCI Express总线中的序。有志于学习处理器体系结构的工程师务必掌握这部分内容。在处理器体系结构中有关 Cache和数据传送序的内容非常复杂,掌握这些内容也是系统工程师进阶所必须的。第12章讲述了笔者的一个实际设计—Capc卡,简单介绍了 Linux设备驱动程序的实现过程,并对 PCI Express总线的延时与带宽进行了简要分析。第13章介绍PCI总线与虚拟化相关的一些内容。虚拟化技术已崭露头角,与虚拟化相关的一系列内容将对处理器体系结构产生深远的影响。目前虚拟化技术已经在x86和 PowerPC处理器中得到了广泛的应用第Ⅲ篇以Linx系统为实例说明PCI总线在处理器系统中的使用方法,也许有许多读者对这一篇有着浓厚的兴趣。Iinx无疑是一个非常优秀的操作系统。但是需要提醒系统工程师,lix系统仅是一个完全开源的操作系统。对于有志于学习处理器体系结构的工程师,学习 Linux系统是必要的,但是仅靠学习 Linux系统并不足够。通常说来,理解处理器体系结构至少需要了解两三种处理器,并了解它们在不同处理器上的实现。尺有所短,寸有所长。不同的处理器和操作系统所应用的领域并不完全相同。也是因为这个原因,本书以 PowerPC和x86处理器为基础对PCI和 PCI Express总线进行说明。本书在写作过程中得到了我的同事和在处理器及操作系统行业奋战多年的朋友们的帮助。在Linx系统中许多与处理器和PCI总线相关的模块,都有着他们的辛勤付出。刘建国和郭超宏先生审阅了本书的第Ⅰ篇。马明辉先生审阅了本书的第Ⅱ篇。张巍、余珂与刘劲松先生审阅了第13章。吴晓川、王勇、丁建峰、李力与吴强先生共同审阅了全书。本书第12章中出现的 Capric和 Cornus卡由郭冠军和高健协助完成。看着他们通过对PCI Express总线理解的逐渐深入,最终设计出一个具有较高性能的 Cornus卡,备感欣慰。此外杨强浩先生也参与了 Capric和 Cornus卡的原始设计与方案制定,在此对他及他的团队在这个过程中给予的帮助表示感谢,我们也一道通过这两块卡的制作进一步领略了 PCI EX-press总线的技术之美。个优秀的协议,从制定到广大技术人员理解其精妙之处,再到协议应用到一个个优秀产品中,需要更多的人参与、投人、实践,这也是编写此书最大的动力源泉。本书的完成与我的妻子范淑琴的激励直接相关, Capricornus也是她的星座。还需要感谢本书的编辑车忱与策划时静,正是他们的努力使得本书提前问世。对本书尚留疑问的读者,可通过我的邮箱sailing.w@gmail.com与我联系。最后希望这本书对您有所帮助。作者目录序前言第丨篇PC|体系结构概述第1章PC|总线的基本知识3第2章PC|总线的桥与配置……281.1PCI总线的组成结构………52.1存储器域与PCI总线域…281.1.1HOsT主桥2.1.ICPU域、DRAM域与存储器域…291.1.2PCI总线…………72.1.2PCI总线域…301.1.3PCI设备…………1.3处理器域1.1.4HOST处理器82.2HOST主桥…………321.1.5PCI总线的负载…2.2.1PCI设备配置空间的访间机制……331.2PCI总线的信号定义曹重量自道2.2.2存储器域地址空间到PCI总线1.2.I地址和数据信号中看语面“,·域地址空间的转换1.2.2接口控制信号……02.2.3PCI总线域地址空间到存储器123仲裁信号……………12域地址空间的转换…………371.2.4中断请求等其他信号····:122.2.4x86处理器的HOST主桥………401.3PCI总线的存储器读写总线事务…132.3PCI桥与PCI设备的配置空间…421.3.1PCI总线事务的时序…142.3.1PI桥………………………421.3.2 Posted和Non- Posted传送方式………52.3.2 PCI Agent设备的配置空间………441.3.3HOST处理器访问PCI设备162.3.3PCI桥的配置空间501.3.4PCI设备读写主存储器……82.4PCI总线的配置…………531.3.5 Delayed传送方式……24.1Type01h和 Type 00h配置请求1.4PCI总线的中断机制…22.42PCI总线配置请求的转换原则…551.4.1中断信号与中断控制器的连接2.4.3PCI总线树Bus号的初始化…关系………………………………212.4.4PCI总线 Device号的分配……591.4.2中断信号与PCI总线的连接2.5非透明PCI桥关系……2225.1 Intel21555中的配置寄存器…621.4.3中断请求的同步………………23252通过非透明桥片进行数据传递…631.5PCI-X总线简介…吾量由……252.6小结651.5.1 Split总线事务…25第3章PC总线的数据交换甲·看当血61.5.2总线传送协议………263.1PCI设备BAR空间的初始化……6653基于数据块的突发传送…3.1.1存储器地址与PCI总线地址1.6小结27的转换3.1.2PCI设备BAR寄存器和PCI桥空间进行DMA读写……………8Base、 Limit寄存器的初始化3.3.4PCI设备进行DMA写时发生3.2PCI设备的数据传递69Cache命中………………………823.2.1PCI设备的正向译码与负向3.3.5DMA写时发生 Cache命中译码………………………………69的优化………85322处理器到PC设备的数据传送…713.4预读机制……863.2.3PCI设备的DMA操作……………723.4.1指令预读3.24PCI桥的 Combining、 Merging34.2数据预读···89和 Collapsing中··自串暮暮福品品画733.4.3软件预读…93.3与 Cache相关的PCI总线事务…74344硬件预读……933.3.1 Cache一致性的基本概念…3.4.5PCI总线的预读机制…………943.3.2PCI设备对不可 Cache的存储器3.5小结··即自甲要普有当布普面首由a…98空间进行DMA读写3.3.3PCI设备对可 Cache的存储器第‖篇Pc| Express体系结构概述第4章PCe总线概述5.1.1 EPBAR寄存器……1444.1PCIe总线的基础知识…………lO51.2 MCHBAR寄存器………………1444.1.1端到端的数据传递……………0n5.I.3其他寄存器…………l444.1.2PCle总线使用的信号…1035.2 Montevina平台的存储器空间的4.1.3Pcle总线的层次结构…07组成结构………………,1454.1.4Pcle链路的扩展…I085.2.1 Legacy地址空间…………l474.1.5PCIe设备的初始化…………Il052.2DRAM域474.2PCe体系结构的组成部件……25.2.3存储器域…144.2.1基于PC架构的处理器系统…25.3存储器域的PCI总线地址4.2.2RC的组成结构………………1l7间……………………………504.2.3 Switch解着喜+「中··鲁曲曲「85.3.1PCI设备使用的地址空间………1504.24VC和端口仲裁……1205.3.2FCIe总线的配置空间………………5l425 PCle-to-PCLPCI-X桥片………1225.4小结·::···中.d;=·".:7544.3PCIe设备的扩展配置空间…123第6章PCe总线的事务层…7554.3.1 Power Management Capability6.1TLP的格式155结构l246.1.1通用TP头的Fmt字段和Ty4.3.2 PCI Express Capability结构127字段………………………1564.3.3 PCI Express Extended Capabilities6.1.2TC字段…………………………l58结构…………………l36.1.3Amr字段……………………………1594.4小结l396.1.4通用TLP头中的其他字段160第5章 Montevina的MCH和|CH…1406.2TLP的路由……1615.1PCI总线0的Deve0设备……,1416.2.1基于地址的路由Ⅶ6.2.2基于ID的路由8.1.3 Receiver detect识别逻辑2176.2.3隐式路由……暴音前自mm1668.2 LTSSM状态机…2I86.3存储器、LO和配置读写8.2.1 Detect状态…………220请求TIP……………….1678.22 Polling状态…………………22l6.3.1存储器读写请求TLP…………1688.2.3 Configuration状态………2236.3.2完成报文……………………1728.2.4 Recovery状态22863.3配置读写请求mP……………1741748.2.5 LTSSM的其他状态……2316.34消息请求报文………………758.3PCle总线的 ASPM……………2326.3.5PCIe总线的原子操作……1778.3.1与电源管理相关的链路状态…23263.6 TLP Processing Hint∴……………i788.3.2D0状态…………………………2336.4TLP中与数据负载相关的8.3.3I0状态………………234参数………………………1818.3.4Ll状态…2356.4.1 Max_Payload_Size参数………·l88.3.5L2状态…2366.4.2 Max_ Read_ Request_Siz参数…l828.4 PCI PM机制……4日#······世23764.3RCB参数……………………838.4.1PCle设备的 D-State…………2376.5小结8.4.2D- State的状态迁移238第7章PCe总线的数据链路层与8.5小结………………………………240物理层·普自·自:.吾.“:a日平;.千画185第9章流量控制··自自·着暮;品吾.“中24l7.l数据链路层的组成结构………1859I流量控制的基本原理………2427.1.1数据链路层的状态…………1869.1.1Rate- Based流量控制………………2437.L.2事务层如何处理DL_Down和9.1.2 Credit- Based流量控制244状态1899.2 Credit- Based机制使用的算法…2467.1.3DILP的格式……………8992.1N23算法和N123+算法2497,2ACK/NAK协议………………1919.2.2N23算法……25072.I发送端如何使用ACK/NAK9.2.3流量控制机制的缓冲管理……252协议1929.3PCle总线的流量控制2547.2.2接收端如何使用ACK/NAK9.3.lPCe总线流量控制的缓存协议…………………………l95管理25572.3数据链路层发送报文的顺序……19993.2 Current节点的 Credit…2577.3物理层简介…9.3.3VC的初始化……………2597.3.,1PCle链路的差分信号…………20093.4PCIe设备如何使用FCP…26l7.3.2物理层的组成结构…………2049.4小结………………,2627.3.38/10b编码与解码…………206第10章MS和MS|X中断机制2637.4小结………………21010.1 MSI MSI-X Capability结构…263第8章PCe总线的链路训练与电源10.1.1 MSI Capability结构………264管理……………………………2l10.1.2MsL- X Capability结构………2668. 1 PCle链路训练简介……2/10.2 PowerPC处理器如何处理8.1.1链路训练使用的字符序列……213MSI中断请求……………2688.1.2 Electrical Idle状态-u+aiua,21610.2.1MSI中断机制使用的寄存器270Ⅷ

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • 使用matlab进行质心计算
    使用matlab 进行图像质心计算,用于计算质心。
    2020-11-29下载
    积分:1
  • 自适应Simpson积分公式matlab源代码
    数值积分课程需编制自适应的Simpson公式,此代码采用递归函数,函数中采用了fcnchk函数,matlab6.5及以下版本会报错,只需将函数定义语句改成inline函数即可
    2020-06-28下载
    积分:1
  • 机器学习车牌检测正负样本图片库 3000多张
    可用于初级出门学习机器学习的资料,图片库,1000多张车牌正样本,2000多张负样本
    2020-12-05下载
    积分:1
  • matlab的BP神经网络的数据分类-语音特征信号分类
    BP神经网络的数据分类-语音特征信号分类,matlab实现。
    2020-11-29下载
    积分:1
  • 信息系统项目管理师资源汇总
    资源包含从CSDN下载最新的信息系统项目管理师考试资料,具体文件列表如下;信息系统项目管理师备考指南、信息系统项目管理师教程学习安排表、信息系统项目管理师的专业英语知识精华(中英文对照)、2014年信息系统项目管理师考试葵花宝典之历年真题分类详细解析、信息系统项目管理师学习方案、信管网信息系统项目管理师论文精编(2014下半年版)。还有一些文件较大,有需要可留言联系。祝考试顺利通过
    2021-05-07下载
    积分:1
  • 时间序列模型ARIMA的讲解与matlab代码实现(含多个实例).rar
    时间序列预测建模,移动平滑、指数平滑、等模型的描述讲解和matlab程序实现代码。arima、arma等等
    2021-05-06下载
    积分:1
  • 风控建模等奖
    使用拍拍贷数据,建模全过程,从数据预处理开始到最后的模型比较。仅用于交流学习。队伍介绍队名“不得仰视本王”,队伍由五个小伙伴组成,我们是在一个类以的比赛(微额借款用户人品预测大赛)认识的,对数据挖掘竹热爱让我们走到了一起,以下是成员简介:姓名学校、学历比赛经历匚陈靖」中国科学技术大学研二天泡科学家总分第三,微额借贷用户人品预测大赛季军朱治亮浙江大学研二淘宝穿衣搭配比赛李军,微额借贷用户人品预测大赛李军质耀重庆邮电大学研二微额借贷用户人品预测大赛冠军匚赵蕊」重庆邮电大学研微额借贷用户人品预测大赛亚军黄伟鹏北京大学研一微额借贷用户人品预测大赛冠军解决方案概述2.1项目介绍与问题分析拍拍贷“魔镜风控系统”从平均400个数据维度评估厍户当前的信用状态,给每个告款人打出当前状态的信用分,在此基础上再结合新发标的信息,打出对于每个标约6个月内逾期率的预沨,为没资人提供关键的决策依据。本次竞赛目标是根据用户历史行为数据来颈测用户在六来6个月内是否会逾期还款的概率。问题转换成2分类问题,评估指标为AUC,从 Master, LogInfo, Update Info表中构建恃征,考虑评估指标为AUC,其本质是排序优化问题,所以我们在模型顶层融合也使用基于排序优化的 RANK AVG融合方法。2.2项目总体思路本文首先从数据清洗开始,介绍我们对缺失值的多维度处、对离群点的剔除方法以及对字符、空格等的处理;其次进行特征工程,包括对地理位置信息的特征构建、成交玉间特征、类别特征编码、组合特征构建、 Lpdatelnfo和 Log Info表的特征提取等;再次进行特征选择,我们采用了 boost, boost的训练过栏即对特征重要性的排序过程;然后处理类别的不平衡度,由于赛题数据出现了类不平衡的情况,我们采用了代价敏感学习和过采样两和方法,重点介绍我们所使用的过采样方法;最后一部分是模型设计与分析,我们采用了二业界广泛应用的逻辑回归模型、数据挖掘比赛大杀器 ghost.,创新性地揆索了large- scale sⅧm的方法在本赛题二的应用,玟得了不错的效果,此外还介绍了模型融合方、数据清洗3.1缺失值的多维度处理在征信领域,用户信总的完善程度可能会影响该层户的信用评级。一个信息完苦程度为100%的户比起完善程度为50%的用户,会更加容易官核通过并得到借款。从这一点亡发,我们对缺失值进行了多维度的分析和处理按列(属性)统计缺失值个数,进一步得到各列的缺失比率,下图(图1)显示了含有缺失值的属性和相应的缺失比率sing rate of Attributes图1.属性缺失比枣WeblogInfo_1和 WeblogInfo3的缺失值比率为97%,这两列属性基本不携带有用的信息,直接剔除。 Uscr Info_11、 Userinfo_12和 Uscr info_13的缺失值比率为63%,这三列属性是类别型的,可以将缺失值用-1垣充,相当于“是否缺失”当成另一种类别。其他缺失值比卒较小的数值型属性用中值填充按行统计每个样本的属性缺矢值个数,将缺失值个数从小到大排序,以序号为横坐标,缺失值个数为纵坐标,画出如下散点图(图2)test set16016014014C12012Cw9mczE100400060008000Order Numbe(sort ircreasinglyOrde Nt mber(sort increasing ly)图2.样本属性缺失个数对比 trainset和 testset上的样本的属性缺失值个数,可以发现其分有基本一致,但是trainset上出了几个缺失值个数特别多的样本(红框区域内),这几个样本可以认为是离群点,将其剔除另外,缺矢值个数可以作为一个特征,衡量用户信息的完善程度。3.2剔除常变量原始数据宁有190维数值型特征,通过计算每个数值型特征的标准差,剔除部分变亿很小的特征,下表(表1)列出的15个特征是标准差接近于0的,我们剔了这15维特征表1.剔除数值特征标准差属性标准差属性标准差属忾标准差Webloglnfo_10 0.0707 WeblogInfo_41 0.0212 Webloglnfo_490.0071Webloglnfo_23.0939 WeblogInfo_43 0.0372 Webloglnfo_5200512Webloglnfo_31.0828 Webloglnfo_44.0166 Webloglnfo_5400946Webloglnfo_32 0.0834 Webloglnfo_46.0290 WeblogInfo_5500331Webloglnfo_40.0666 Webloglnfo_47 0.0401 WeblogInfo_58006093.3高群点剔除在样本空间中与其他样本点的一般行为或特征不一致的点称为离群点,考虑到离群点的异常特征可能是多维度的组合,我们通过分析样本属性的缺矢值个数,剔除了极少量的离群点(见3.1节)此外,我们还采用了另外一种简单有效的方法:在原始数捶上训练ⅹ gboost,用得到的xgb模型输出特征的重要性,取最重要的前20个特征(如图3所示),统计每个栏本在这20个特征上的缺失值个数,将缺矢值个数大于10的样本作为离群点。ThrciParty Ifn PeriodIntrAparty nto HerodThrcPorty hfo Penod3ardiParty hfo Period?ThirdParty Info Penod图3.Xgb特征重要性通过这个方法,易除了400多个样水。这些样在重要特征上的取值是缺失的,会使得模型学习变得因难,从这个角度妖说,它们可以看成是离群点,应剔除掉。3.4其他处理(1)字符大小写转换Userupdate Info表宁的 Userupdate Info1字段,属性取值为英文字符,包含了大小写,如Q"和”qQ",很玥显是同一和取值,我们将所有字符统一转换为小写(2)空格符处理Mastor表中 UserInfo9字段的取值包含了空格字符,如“中国移动”和“中国移动”它们是同一种取值,需要将空格符去除。(3)城市名处理Userinfo_8包含有“重庆”、“重庆市”等取僬,它们实际上是同一个城市,需要把字符中的“市”全部去掉。去掉“市”之后,城市数由600多下降到400多。四、特征工程4.1地理位置的处理对地理位置信(类别型变量)最简单的处理方式是独热编码(one- hot encoding),但是这样会得到很高维的稀疏特征,影响糢型的学习,我们在独热编码旳基础上,做了特征选择。下面介绍具体的方法。赛题数据提供了用户的地挛位置信息,包括7个字段: Userinfo2、 Userinfo4、UserInfo7、 UserInfo8、 UserInfo I9、 UserInfo20,其中 UserInfo_7和 UserInfo19是省份信息,其余为城市信息。我们统计了每个省份和城市的违约率,下图以 Userinfo_7为例图1.省分违约率可视化图5可视化了每个省份的违约率,颜色越深代表违约率越大,其中违约率最大的几个省份或直辖市为四川、湖南、湖北、吉林、天津、山东,如下图所示:图5.违约深突出省份可视化因此我们可以构建6个二值特征:“是否为四川省”、“是否为湖南省”...“是否为山东省”,其取值为或1。其实这相当于对地理位置信息做了独热编码,然后保留其中有判别性的菜些列。这里 UserInfo_7何含32和取值,编码后可以得到32维的稀疏特征,而我们只保留其宇的6维以上我们是通过人工的分析方法去构延二值特征,在处理省份信息时还是匕较直观的,但是处理城市信息,比如 Userinfo2,包含了33个减市,就没有那么直观了。为了得到有判别性的二值特征,我们首先对 Userinfo2进行独热编码,得到333维的二值特征,然后在这333维稀疏特征上训练ⅹgb模型,再根据xgb输出的特征重要性刷选二值痔征,以下是选取到的部分二值特征(对应的城市):“淮纺市”、“九江市”、“三门峡市”、“汕头市”、“长春市”、“铁岭市”、“济菊市”、“成都市”、“淄博市”、“牡丹江市”。按城市等级合并类别型特征取值个数太多时,独热编码后得到太高维的稀疏特征,除了采用上面提到的特征选择方法外,我们还使用了合并变量的方法。按照城市等级,将类别变量合并,例如线城市北京、上海、广州、深圳合并,赋值为1,同样地,二线城市合并为2,三线城市合并为3>经纬度特征的引入以上对地理位置信息的处理,都是基于类别型的,我们另外收集了各个城市的经纬度,将城市名用经纬度替换,这样就可以将类别型的变量转化为数值型的变量,比如北京市,用经纬度(39.92,116.46)替换,得到北纬和东经两个数值型特征。加入经纬度后,线下的cross validation有千分位的提升。城市特征向量化我们将城可特征里的城市计数,并取Log,然后等值离散化到610个区间内。以下图为例,将 serino2这个特征里面的325个城市离散为一个6维向量。向量“100000”表示该城位于第一个区间。线下的 cross validation有千分位的提升。Loglui2 num)6.城市特征离散化地理位置差异特征如图8所示,1,2,1,6列郗是城市。那么我们构建一个城市差异的特征,比妇diff_12表示1,2列的城市是否相同。如此构建 diff l2,diff_14,diff_l6,diff_24,diff26,diff46这6个城市差异的特征。线下的 cross validation有千分位的提升。⊥aJse⊥nfa2 userinfo4 Userinfo7 Userinfo8 Userinfo19uer⊥nf。201C013郴州1C020惠州1C033零1c035深圳东东东东建东福建省10038济104连云港远言港带1C042德州1c043青岛聊拔东自聊城市46深圳汕广东广东省汕尾市105所多工新乡图7.地理位置差异样例4.2成交时间特征按日统计训练集中每天借贷的成交量,正负样本分别统计,得到如下的曲线图8,横坐标是日期(20131101至20141109),纵坐标是每天的借贷量。蓝色由线是违约的样本每天的数量(为了对比明显,将数量乘上了2),绿色曲线对应不违约的样本train set1200count o10008004002广外从20030350Date20131101~20141109图8.每日借贷量统计可以发现拍拍贷的业务量总体是在埤长的,而违约数量一开始也是缓慢增长,后面基本保持不变,总体上违约率是平稳甚至下降的。在横坐标300~350对应的日期区间,出现了些借贷量非鸴大的时间苄点,这些可能隐减着苿些信息,我们尚未挖掘出来。考虑到违约率跟时间线有关,我们将戒交时间的字段 Listinginfc傲了几种处理,一和是直接将其当做连续值特征,也就是上图对应的横坐标,另一和是离散化夂理,每10天作为一个区间,乜就是将日期0`10离散化为1,日期1120离散化为2.4.3类别特征的处理除了上面提到的对菜些类别特征进行特殊处理外,其他类别特征都做独热编码。44组合特征Xgboost的训练完成后可以输出特征的重要性,我们发现第三方数据特征ThirdParty Info Period XX”的 feature score比较大(见图3),即判别性比较高,于是用这部分特征构建了ξ合特征:将特征两两相除得到7000个特征,然后使用 boost对这7000多个特征单独训练模型,训练完成后得到特征重要性的排序,取其中top500个特征线下cv能达到0.73+的AUC值。将这500个特征添加到原始特征体系中,线下cv的AC值从0.777捉高到0.7833。另外,也组合了乘法特征(取对数):10g(x*y),刷选出其中的270多维,加入到原始特征休系中,单模型cv又提高到、0.785左右。4.5 Upadte Info表特征根据提供的修改信息表,我们从中抽取了用户的修改信息特征,比如:修改信息次数,修改信息时间到成交时间的跨度,每和信息的修改次数等等特征。46 LogInfo表特征类似地,我们从登录信息表里提取了用户的登录信息特征,比如登录天数,平均登录间隔以及每种操作代码的次数等47排序特征对原始特征中190维数值型特征接数值从小到大进行排序,得到190维排序特征。排序特征对异常数据有更强的鲁棒性,使得模型更加稳定,降低过拟合的风险。五、特征选择在特征工程部分,我们构建了一系列位置信息相关的特征、组合特征、成交时间特征、排序特征、类别稀疏侍征、 updateinfo和1 oginfo相关的特征等,所有特征加起来将近1500维,这么多维特征一方面可能会导致维数灾难,另一方面很容易导致过拟合,需要做降维处理,降维方法赏用的有如PCA,tSNE等,这类方法的计算复杂度比较高。并且根据以往经验,在数据挖掘类的匕赛中,PCA或t-SNE效果仨往不好。除了釆用降维算法之外,也可以通过特征选择来降低特征维度。特征选择的方法很多:最大信息系数(MIC)、皮尔森相关系数(衡量变量间的线性相关性)、正则化方法(L1,L2)、基于模型的特征排序方法。比较高效的是最后一种,即基于学习模型的特征排序方法,这种方法有一个好处:模型学习的过程和特征选择的过程是同时进行的,医此我们采用这和方法,基于 boost来做特征选择, xgboost模型洲练完成后可以输岀特征的重要性(见3.3图),据此我们可以保留TopN个特征,从而达到特在选择的目的。
    2020-06-23下载
    积分:1
  • 软件著作权使用说明书范本
    一个Word文档的范本,方便大家在撰写软件著作权申请材料时使用。这是使用说明书的范本看我的博客,在官网下载页面上有免费本文档的下载连接
    2020-11-28下载
    积分:1
  • STM32L系列标准库工模板
    亲测可试,每个程序都是可以使用的
    2020-11-27下载
    积分:1
  • Java+sql酒店管理系统
    Java 开发的酒店管理系统Java 开发的酒店管理系统Java 开发的酒店管理系统Java 开发的酒店管理系统Java 开发的酒店管理系统
    2020-11-29下载
    积分:1
  • 696516资源总数
  • 106436会员总数
  • 7今日下载