首页 文章 精选 留言 我的

精选列表

搜索[虚拟化平台],共10000篇文章
优秀的个人博客,低调大师

sklearn.feature_extraction.text.CountVectorizer提取文本特征,将文档词块化

sklearn.feature_extraction.text. CountVectorizer ( input=u'content' , encoding=u'utf-8' , decode_error=u'strict' , strip_accents=None , lowercase=True , preprocessor=None , tokenizer=None , stop_words=None , token_pattern=u'(? u)\b\w\w+\b' , ngram_range=(1 , 1) , analyzer=u'word' , max_df=1.0 , min_df=1 , max_features=None , vocabulary=None , binary=False , dtype=<type 'numpy.int64'> ) 作用:Convert a collection of text documents to a matrix of token counts(计算词汇的数量,即tf);结果由scipy.sparse.coo_matrix进行稀疏表示。 看下参数就知道CountVectorizer在提取tf时都做了什么: strip_accents : {‘ascii’, ‘unicode’, None}:是否除去“音调”,不知道什么是“音调”?看:http://textmechanic.com/?reqp=1&reqr=nzcdYz9hqaSbYaOvrt== lowercase : boolean, True by default:计算tf前,先将所有字符转化为小写。 这个参数一般为True。 preprocessor : callable or None (default):复写thepreprocessing (string transformation) stage,但保留tokenizing and n-grams generation steps. 这个参数可以自己写。 tokenizer : callable or None (default):复写the string tokenization step,但保留preprocessingand n-grams generation steps. 这个参数可以自己写。 stop_words : string {‘english’}, list, or None (default):如果是‘english’, a built-in stop word list for English is used。如果是a list,那么最终的tokens中将去掉list中的所有的stop word。如果是None, 不处理停顿词;但 参数 max_df 可以设置为 [0.7, 1.0) 之间,进而根据 intra corpus document frequency(df) of terms自动detect and filter stop words。这个参数要根据自己的需求调整。 token_pattern : string:正则表达式,默认筛选长度大于等于2的字母和数字混合字符(select tokens of 2 or more alphanumeric characters),参数analyzer设置为word时才有效。 ngram_range : tuple (min_n, max_n):n-values值得上下界,默认是 ngram_range=(1 , 1), 该范围之内的n元feature都会被提取出来! 这个参数要根据自己的需求调整。 analyzer : string, {‘word’, ‘char’, ‘char_wb’} or callable:特征基于wordn-grams还是character n-grams。如果是callable是自己复写的从the raw, unprocessed input提取特征的函数。 max_df : float in range [0.0, 1.0] or int, default=1.0: min_df : float in range [0.0, 1.0] or int, default=1:按比例,或绝对数量删除df超过max_df或者df小于min_df的word tokens。有效的前提是参数vocabulary设置成Node。 max_features : int or None, default=None:选择tf最大的max_features个特征。有效的前提是参数vocabulary设置成Node。 vocabulary : Mapping or iterable, optional:自定义的特征word tokens,如果不是None,则只计算vocabulary中的词的tf。 还是设为None靠谱。 binary : boolean, default=False:如果是True,tf的值只有0和1,表示出现和不出现,useful for discrete probabilistic models that model binary events rather than integer counts.。 dtype : type, optional:Type of the matrix returned by fit_transform() or transform().。

优秀的个人博客,低调大师

Keras作者Chollet谈深度学习的未来:自动调参,极端泛化

本文来自AI新媒体量子位(QbitAI) Francois Chollet是深度学习框架Keras库的作者和谷歌人工智能研究员。近期,他在博客上连发两文,分别讨论了深度学习的理论局限和未来发展方向。 量子位昨天推送了第一篇《Keras作者、谷歌研究员Chollet:深度学习的理论局限》。 本文为第二篇,Chollet结合他的深度学习书Deep Learning with Python第9章第3节,在下文细致地讨论了深度学习的未来发展方向。 《深度学习的理论局限》一文加深了我们对深度神经网络机理的理解,进一步了解目前的技术局限性和研究现状,那么我们能预测到深度学习在短期内的可能发展方向吗? 下面纯粹是一些个人见解。需要注意的是,以下内容是根据现有技术进行的一些思考,所以很多猜测可能不会成为现实。这只是一个猜测未来的文章。 我之所以和大家分享这些

优秀的个人博客,低调大师

appium+python自动化34-获取元素属性get_attribute

获取text # coding:utf-8 from appium import webdriver from time import sleep desired_caps = { 'platformName': 'Android', 'deviceName': '127.0.0.1:62001', 'platformVersion': '4.4.2', 'appPackage': 'com.baidu.yuedu', 'appActivity': 'com.baidu.yuedu.splash.SplashActivity', 'noReset': 'true', 'resetKeyboard': 'true', 'unicodeKeyboard': 'true' } driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps) # 等主页面activity出现 driver.wait_activity(".base.ui.MainActivity", 10) # 点取消升级 driver.find_element_by_id("com.baidu.yuedu:id/negativeUpgrade").click() # 获取text t1 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").text print(t1) tag_name 1.tag_name实质上是获取class属性 # 获取tag_name t2 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").tag_name print(t2) 2.打印结果:android.widget.TextView get_attribute 1.获取content-desc属性,这里注意了,如果content-desc属性为空,那么获取的就是text属性,不为空获取的才是content-desc属性 2.content-desc属性为空,打印结果:书架 # content-desc为空,获取的是text t3 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("name") print(t3) 3.content-desc属性不为空,打印结果:百度阅读 # content-desc t4 = driver.find_element_by_id("com.baidu.yuedu:id/fragment_banner").get_attribute("name") print t4 4.id,calss,text属性获取 # id t5 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("resourceId") print(t5) # class t6 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("className") print(t6) # text t7 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("text") print(t7) 5.其它属性获取,注意这里并不是所有的都可以获取,一些标准的属性是可以获取到的 # checkable t8 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("checkable") print t8 # clickable t9 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("clickable") print t9 size和location 1.获取size,返回的是字典,如:{'width': 84, 'height': 84} 2.获取location,返回的是字典,如:{'y': 38, 'x': 192} # size t10 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").size print t10 # location t11 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").location print t11 参考代码 # coding:utf-8 from appium import webdriver desired_caps = { 'platformName': 'Android', 'deviceName': '127.0.0.1:62001', 'platformVersion': '4.4.2', 'appPackage': 'com.baidu.yuedu', 'appActivity': 'com.baidu.yuedu.splash.SplashActivity', 'noReset': 'true', 'resetKeyboard': 'true', 'unicodeKeyboard': 'true' } driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps) # 等主页面activity出现 driver.wait_activity(".base.ui.MainActivity", 10) # 点取消升级 driver.find_element_by_id("com.baidu.yuedu:id/negativeUpgrade").click() # 获取text t1 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").text print(t1) # 获取tag_name t2 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").tag_name print(t2) # content-desc为空,获取的是text t3 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("name") print(t3) # content-desc t4 = driver.find_element_by_id("com.baidu.yuedu:id/fragment_banner").get_attribute("name") print t4 # id t5 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("resourceId") print(t5) # class t6 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("className") print(t6) # text t7 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("text") print(t7) # checkable t8 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("checkable") print t8 # clickable t9 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").get_attribute("clickable") print t9 # size t10 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").size print t10 # location t11 = driver.find_element_by_id("com.baidu.yuedu:id/lefttitle").location print t11 appiumQQ群:512200893

优秀的个人博客,低调大师

关于项目自动化测试架构的改良计划 - 解析XInclude标记

因为在test_suite.xml中,我们多处使用了XInclude标记,他们会被申明在一个叫"http://www.w3.org/2001/XInclude"的名字空间中,并且引入部分用xi:include来声明,我们这个类的作用就是把这些所有的<xi:include>的部分,都用被引入的文件插入和替换掉。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 /** * This class will handle converting a xinclude+xpointer marked xml file to a normal xml file * Because of the shortage of the current jdk ,it only support the xPointer with element instead of NCName *@author cwang58 *@created date: Jun 10, 2013 */ public class XIncludeConverter { /** * this method will handle change the XInclude+XPointer marked xml as normal xml * @param origialXML the original xml which has the xInclude feature * @return the parsedXML without the xInclude feature */ public static String convertXInclude2NormalXML(String originalXML) throws SAXException,ParserConfigurationException,TransformerConfigurationException,IOException,TransformerException{ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); //open up the namespace aware so that it can recognize the "xi" namespace factory.setNamespaceAware( true ); //let this SAXParser support XInclude factory.setXIncludeAware( true ); //factory.setValidating(true); //ignore all the comments added in the source document factory.setIgnoringComments( true ); DocumentBuilder docBuilder = factory.newDocumentBuilder(); Document doc = docBuilder.parse( new InputSource( new ByteArrayInputStream(originalXML.getBytes( "utf-8" )))); Transformer transformer = TransformerFactory.newInstance().newTransformer(); //format the output xml string so it support indent and more readable transformer.setOutputProperty(OutputKeys.INDENT, "yes" ); //initialize StreamResult with File object to save to file StreamResult result = new StreamResult( new StringWriter()); DOMSource source = new DOMSource(doc); transformer.transform(source, result); return result.getWriter().toString(); } 这里讲一个小插曲,其实,W3C中,XInclude经常和Xpointer联合起来应用的,xpointer可以帮助来定位目标文件的某个小片段而不是整个目标文件,定位方法可以用element(),或者xpointer(),如果element的话,可以用(/1/2/3)这种方式来定位DOM,或者基于 id,对应java的解析框架是xerce,但是非常不幸运的是,最新版本的xerce框架只支持element(/1/3/4/5)这种定位,而对于基于schema-id的方式,也就是某个element声明了id的情况,它没办法定位,但是未来可能会支持这个功能。 http://xerces.apache.org/xerces2-j/faq-xinclude.html#faq-8 基于上述的局限性,我决定只采用xi:include来包含全部文件,然后局部调整的做法,并且绕过xpointer。 所以实现代码如上所示,事实上从JDK 1.6开始,他已经提供了对XInclude的支持,内部是委托给xerce来实现的,这是对应架构图的第3-4步骤。 本文转自 charles_wang888 51CTO博客,原文链接:http://blog.51cto.com/supercharles888/1221731,如需转载请自行联系原作者

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册