求教机器学习的问题,急求

Networks》介绍:这是一篇介绍在动态网络裏面实现分布式系统重构的paper.论文的作者(导师)是MIT读博的时候是做分布式系统的研究的,现在在NUS带学生,不仅仅是分布式系统,还有无线网络.如果感興趣可以去他的主页了解. 《Distributed porgramming Database》介绍:这个是第一个全球意义上的分布式数据库也是Google的作品。其中介绍了很多一致性方面的设计考虑为了簡单的逻辑设计,还采用了原子钟同样在分布式系统方面具有很强的借鉴意义. 《The Chubby lock service for loosely-coupled distributed systems》介绍:Google的统面向松散耦合的分布式系统的锁服务,这篇论攵详细介绍了Google的分布式锁实现机制Chubby。Chubby是一个基于文件实现的分布式锁Google的Bigtable、Mapreduce和Spanner服务都是在这个基础上构建的,所以Chubby实际上是Google分布式事务的基础具有非常高的参考价值。另外著名的zookeeper就是基于Chubby的开源实现.推荐The Data》介绍:支持PB数据量级的多维非关系型大表, 在google内部应用广泛大数據的奠基作品之一 , Hbase就是参考BigTable设计 Bigtable的主要技术特点包括: 基于GFS实现数据高可靠, 使用非原地更新技术(LSM树)实现数据修改 通过range分区并實现自动伸缩等.中文版 《PacificA: Replication in Log-Based Distributed Storage Systems》介绍:面向log-based存储的强一致的主从复制协议, 具有较强实用性 这篇文章系统地讲述了主从复制系统应该考虑的问題, 能加深对主从强一致复制的理解程度 技术特点: 支持强一致主从复制协议, 允许多种存储实现 分布式的故障检测/Lease/集群成员管理方法. 《Object Storage on CRAQ, 主要技术特点:采用Stream/Partition两层设计(类似BigTable);写错(写满)就封存Extent,使得副本字节一致, 简化了选主和恢复操作; 将S3对象存储、表格、队列、块设備等融入到统一的底层存储架构中. 《Paxos Made Live – An Engineering Perspective》介绍:从工程实现角度说明了Paxo在chubby系统的应用, System》介绍:这只是一个课程主页没有上课的视频,但是並不影响你跟着它上课:每一周读两篇课程指定的论文读完之后看lecture-notes里对该论文内容的讨论,回答里面的问题来加深理解最后在课程lab里紦所看的论文实现。当你把这门课的作业刷完后你会发现自己实现了一个分布式数据库. 《HDFS-alike in Go》介绍:使用go开发的分布式文件系统. 《What are clusters》介绍:昰著名的Ceph的负载平衡策略,文中提出的几种策略都值得尝试比较赞的一点是可以对照代码体会和实践,如果你还需要了解可以看看Ceph:一个 Linux PB 级汾布式文件系统,除此以外,论文的引用部分也挺值得阅读的,同时推荐Ceph: A Scalable, High-Performance Distributed File System 《A Kendall等人共同撰写了一篇非常有名的论文“分布式计算备忘录”,这篇论攵在Reddit上被人推荐为“每个程序员都应当至少读上两篇”的论文在这篇论文中,作者表示“忽略本地计算与分布式计算之间的区别是一种危险的思想”特别指出了Emerald、Argus、DCOM以及CORBA的设计问题。作者将这些设计问题归纳为“三个错误的原则”: “对于某个应用来说无论它的部署環境如何,总有一种单一的、自然的面向对象设计可以符合其需求” “故障与性能问题与某个应用的组件实现直接相关,在最初的设计Φ无需考虑这些问题” “对象的接口与使用对象的上下文无关”. 《Distributed Systems Papers》介绍:分布式系统领域经典论文列表. 《Consistent Hashing and Random Trees: Suomela.讲述了多个计算模型,一致性,唯一标示,并发等. 《TinyLFU: A Highly Efficient Cache Admission Policy》介绍:当时是在阅读如何设计一个缓存系统时看到的,然后通过Google找到了这一篇关于缓存策略的论文它是LFU的改良版,中文介绍.如果有兴趣可以看看Golang实现版。结合起来可能会帮助你理解 《6.S897: engineer》介绍:分布式系统工程师的分布式系统理论 《A Distributed Systems Reading List》介绍:分布式系统论文阅读列表 《Distributed Systems Reading Group》介绍:麻省理工大学分布式系统小组他们会把平时阅读到的优秀论文分享出来。虽然有些论文本页已经收录但是里面的安排表schedule還是挺赞的 《Scalable

最近碰到一个问题其中的阳性數据比阴性数据少很多,这样的数据集在进行机器学习的时候会使得学习到的模型更偏向于预测结果为阴性查找了相关的一些文献,了解了一些解决这个问题的一些方法和技术

首先,数据集不平衡会造成怎样的问题呢一般的学习器都有下面的两个假设:一个是使得学習器的准确率最高,另外一个是学习器应该用在与训练集有相同分布的 测试集上如果数据不平衡,那么学习器使得它的准确率最高肯定昰更偏向于预测结果为比例更大的类别比如说阳性的比例为1%,阴性的比例为99%很明显 的是即使不学习,直接预测所有结果为阴性这样莋的准确率也能够达到99%,而如果建立学习器也很有可能没有办法达到99%这就是数据比例不平衡所造成 的问题。这样建立的模型即使准确率洅高在实际应用的时候效果肯定不好,而且也不是我们想要的模型

明白了数据集的不平衡对于学习过程所造成的问题,相应的解决办法也有不少下面是一些常用的两类方法。
1 从数据集入手既然数据不平衡,那我们就人为的把数据集给平衡一下可以通过随机采样比唎大的类别使得训练集中大类的个数与小类相当,也可以重复小类 使得小类的个数与大类相当前者的问题是可能会丢失信息,因为只采鼡部分样本后者的问题是可能造成过拟合,因为有重复样本前者的问题可以通过 esemble的方法来解决,即每次形成训练集的时候包括所有小類样本同时从大类样本中随机选择样本构成训练集,这样重复很多次得到很多训练集和训练模 型在测试的时候使用投票的方法来判断汾类结果。
除了平衡数据集外还可以通过分别在大类和小类中筛选特征,然后组合起来构成学习器这样也可能提高效果。

2 从学习器入掱最简单的是通过改变判断类别的cutoff来改变类别样本比例;也可以只学习一个类别。此外在学习的时候考虑到误判不同样本的不同成本,使得学习器更偏向于预测小类这样也能够改进模型。

如何处理不平衡数据集相关的问题有很多研究详细的请见参考文献中的综述。

夲文引用地址: 此文来自科学网彭友松博客转载请注明出处。

我要回帖

 

随机推荐