首页 文章 精选 留言 我的

精选列表

搜索[强化学习],共10006篇文章
优秀的个人博客,低调大师

大模型对齐核心技术拆解:详解RLHF强化学习、PPO优化、DPO偏好对齐的差异与实践22.3

在日常使用大模型的过程中,很多人都会遇到一类典型问题:模型本身储备的知识足够全面,但输出的回答往往生硬冗长、重点模糊,甚至频繁出现内容幻觉、答非所问等问题,无法贴合人类的对话逻辑与使用习惯。这类问题并非源于预训练阶段的知识训练不足,核心原因是模型未完成人类偏好对齐优化。

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

Python数据挖掘(爬虫强化)

(我喜欢雨天,因为雨天我可以回到童年踩水花!哈!) 2018年 --7月--12日 : 多云又暴雨 T—T 前言 我要把爬虫的终极利器介绍一下,这个只要是我们肉眼能看到的,就算在源码中或者在json中,或是post也无法得到的数据,我们都可以获取到,雷同F12后源码暴露在你面前一样! 这次需要用到selenium家族的一些成员,它们各司其职,各个身怀绝技。 先介绍一下selenium模块:Selenium is a suite of tools specifically for automating web browsers.(Selenium是一套专门用于自动化web浏览器的工具。) ---:(这里补充一下,在需要用到这种大型模块的时候,一定要去读官方文档,不要去听百度里面和一些断章取义的人瞎写的内容,他们更容易把你带偏。) 这个Selenium模块主要是应对我们自动浏览网页数据所需要用的,让程序来执行半智能,前提你要教会它去做什么事情! 直接介绍此次所需要用到的家族模块: 1 from selenium import webdriver 2 import time 3 from selenium.webdriver.common.keys import Keys 4 from selenium.webdriver.common.action_chains import ActionChains 5 from selenium.webdriver.common.by import By 一、每一个解释一下哈,按顺序对号: 1、主模块的嵌入,主要是应对控制程序自动打开浏览器浏览网页功能。 2、作为开发人员,尤其是对网页自动化测试的开发工具必须需要time模块来制约程序的访问时间,因为可能网站会直接把你IP封掉。 3、selenium 模块家族成员Keys,此成员是应当以模拟键盘操作,应对模拟输入用户登录名和密码,或者价值数据索引输入。 4、selenium 模块家族成员ActionChains,它则是应对模拟鼠标操作,对与鼠标的双击,单击,左右键,应对我们翻页,搜索按钮的点击功能。 5、selenium 模块家族成员By,这个则是我们要教会它所要做的事情,也是我们数据挖掘又要用到的核心价值功能之一,应对价值数据抓取。 二、开发初步: 1、操作程序打开浏览器并打开我们需要进入的网页: 1 url = 'https://www.xxx.com' 2 driver=webdriver.Chrome() 3 driver.get(url) 4 time.sleep(5) 5 driver.quit() 这里可以自己测试一下,我所使用的是Google的浏览器,你们可以尝试使用Firefox,他们有一些的区别,主要是站点的区别! 2、进入页面后锁定tag html: 1 <div id="aaa" class="bbb" name="ccc"> 2 <p></p> 3 <p><a></p> 4 </div> python: 1 element = driver.find_element_by_id("aaa") 2 frame = driver.find_element_by_tag_name("div") 3 cheese = driver.find_element_by_name("ccc") 4 cheeses = driver.find_elements_by_class_name("bbb") 5 6 or 7 8 from selenium.webdriver.common.by import By 9 element = driver.find_element(by=By.ID, value="aaa") 10 frame = driver.find_element(By.TAG_NAME, "div") 11 cheese = driver.find_element(By.NAME, "ccc") 12 cheeses = driver.find_elements(By.CLASS_NAME, "bbb") 这里每一个都是锁定tag树,它们都是根据id,class,name,tagname来定义的。 1 xpath_class = driver.find_element_by_xpath('//div[@class="bbb"]/p') 2 xpath_id = driver.find_element_by_xpath('//div[@id="aaa"]/p') 这是通用方法的,Xpath方法,它们都输属于解析网页的内容锁定tag。 3、处理操作: 当我们锁定功能键的tag属性的时候,我们就可以进一步操作,比如换页,搜索功能的实现,对于模拟键盘输入的可以参考我的另一篇博客,《python自动化爬虫》 这里我们就介绍一下模拟鼠标的操作: 1 elem = driver.find_element_by_xpath('//a[@id="tagname"]') 2 ActionChains(driver).double_click(elem).perform() 3 time.sleep(3) 因为时间问题,我只是介绍一下鼠标左键单击换页操作,其他的何以参考一下官方文档:Selenium Webdrive ActionChains:锁定浏览器,double_click锁定tag标签树,.perform():点击标签树 4、获取价值数据 这里的操作类似与Xpath的语法: driver.find_elements_by_tag_name('td')[3].text driver.find_elements_by_tag_name('a').get_attribute('href') 这里注意一下elements,指所有的tag-> a比标签的href,这里是list格式,需要遍历。 5、最后来一串完整代码: 1 from selenium import webdriver 2 import time 3 import lxml.html as HTML 4 from bs4 import BeautifulSoup 5 from selenium.webdriver.common.keys import Keys 6 from selenium.webdriver.common.action_chains import ActionChains 7 from pymongo import MongoClient,ASCENDING, DESCENDING 8 from selenium.webdriver.common.by import By 9 def parser(): 10 url = 'https://www.xxx.com' 11 driver=webdriver.Chrome() 12 driver.get(url) 13 time.sleep(5) 14 for i in range(1,675): 15 a = driver.find_element_by_xpath('//div[@class="aaa"]') 16 tr = a.find_elements_by_tag_name('tr') 17 for j in xrange(1,len(tr)): 18 quantity = tr[j].find_elements_by_tag_name('td')[3].text 19 producturl = tr[j].find_elements_by_tag_name('td')[0].find_elements_by_tag_name("div")[1].find_element_by_tag_name('ul').find_element_by_tag_name('li').find_element_by_tag_name('a').get_attribute('href') 20 producturl_db(producturl,quantity) 21 elem = driver.find_element_by_xpath('//a[@id="eleNextPage"]') 22 ActionChains(driver).double_click(elem).perform() 23 time.sleep(3) 24 25 driver.quit() selenium有个小GUB,就是在用Xpath的时候,你已经找到父级tag,但是这个父级很多,比如tr,你如果遍历它,寻找td的话,那么你还是使用find_elements_by_tag_name,因为那个会初始化,不会管你找到那个父级。所以这里是需要注意的!最后祝你们加油!!!!! Welcome to Python world! I have a contract in this world! How about you?

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

强化物联网 区块链帮大忙

看好物联网未来市场发展潜力,信息电子厂商皆积极展开智能工厂、车联网等,物联网垂直领域应用相关开发、布局与试验。然而,在此同时亦出现对于物联网发展的各种条件,包含安全风险、维运成本过高、获利模式等是否已完备的质疑。 安全是常被提及的物联网潜在风险。联网的复杂性使安全防护更加困难,当连上物联网的各式装置愈来愈多时,网络即可能出现被攻击的破口,一旦控制系统遭到攻击入侵,轻则数据外漏,重则危及人身安全。 IT业者惠普检视目前主要的物联网系统,发现有80%进行数据传输时未加密,60%进行软件更新时未加密等问题,显示出联网装置安全防护常被忽略,物联网潜在安全问题相当严重。 维运成本过高则是物联网发展的根本问题。维运成本高是商业模式无法获利的原因之一,存在因果关系。此乃由于目前物联网应用思维仍停留在传统的模式与架构,需要第三方中介者,且使用云端集中式管理,设备投资与维护费用相当高,导致维运成本居高不下。 长期而言,若如同预测十年后,联网装置达到300亿至500亿个的规模,届时必须在物联网平台上,精准监管亿级数量的装置,并同步收集与处理装置产生的庞大数据量,就是极大的挑战。 此外,软件为物联网应用之核心,必须持续投入研发与维护,不仅造成业者营运沉重负担,亦压缩可能的获利空间。联网对象使用周期长,例如生产设备、汽车10年以上、住宅建筑40年以上、公共设施50年以上,但软件技术发展快速,几年就需进行更新,因此须长时间投入软件维护。 智能手机等消费性产品虽然亦有软件更新问题,但用户大约二、三年就换购新机,创造的新营收可支撑相关研发费用,并维持获利。目前物联网的应用主要集中在喷射引擎、大型建设机具、智慧电网、远距医疗等高附加价值的领域,其他如智能家庭等领域进展则相对缓慢。 在此状况下,因金融科技风潮而受到关注的区块链(blockchain)技术,由于具备去中间化、不可逆的安全性、快速交易决算、自动执行合约等特性,可解决物联网安全、维运成本高的痛点,加上在比特币等虚拟货币的自动交易上,已经验证可行,而被视为加速物联网应用发展的有力技术选项。因此除国际大厂展开相关应用实证测试,亦吸引许多新创公司投入研发。 IBM与Samsung合作执行ADEPT计划,以共同开发的洗衣机W9000 ,进行自动叫修、洗衣剂等耗材管理、电力管理等实验,这些运作都在区块链上完成,只要事先以智能合约的计算机协议做好约定,在确认合约有效后,就会自动进行维修、送货、付款或设备间的协作等动作。 德国新创Slock.it运用区块链技术,开发称为以太坊计算机的小型消费电子装置,以智能锁结合物联网,让持有者欲租赁、出售或分享资产时,只需事先设定智能合约、保证金与收费金额,使用者支付相关款项后,即可开锁使用,在无中介者、无人管理,自动完成交易,降低营运成本。 物联网的技术涵盖面广,应用多元,目前仍处于从摸索到测试的发展初期阶段。各种有助落实相关应用的技术将陆续被提出,但是除技术面验证需要时间,形成生态系更非一朝一夕可达成的事,因此短期内恐难归于一宗,出现主流。物联网应用上结合区块链技术想法的提出已有一段时间,虽然目前应用仍以试验或小规模营运为主,但至少提供相关业者一个具可行性发展方向。而由于物联网各环节技术关联性高,区块链亦不可能自成一格独立发展,实际应用需考虑因素仍多,应仍在萌芽。 本文转自d1net(转载)

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

mica v2.0.0 强化基础工具集

mica(云母) mica 云母,寓意为云服务的核心,增强 Spring cloud 功能,使得 Spring cloud 服务开发更加方便快捷。 mica 2.x核心依赖 mica 基于 java 8,没有历史包袱,支持传统 Servlet 和 Reactive(webflux)。采用 mica-auto 自动生成 spring.factories 和 spring-devtools.properties 配置,仅依赖 Spring boot、Spring cloud 全家桶,无第三方依赖。市面上鲜有的微服务核心组件。 依赖 版本 Spring Boot 2.2.x 关于此版本 此次版本相比 mica 1.x 少了一些模块,主要原因如下: mica-launcher、 mica-boot-testmica 2.x中采用新方式给精简掉了。 部分模块本次版本暂不开源,后续会逐步开放。 部分模块开发层度比较低,转到内部继续研发。 其他模块付费提供,付费版很多模块都已经打通。 知识付费,让你我走的更远!!! mica 2.x 现有模块示意图: 注意:左边开锁状态的模块,后续都会开放。 更新说明 ✨mica-http 支持指定协议 protocols。 ⚡mica-http 扩展 HttpRequest proxy 方法,方便使用。 ✨mica-http 拆出 mica-spider 爬虫工具,精简依赖。 ✨mica-spider 增强 CssQueryMethodInterceptor。 ⚡mica-captcha 验证码抽象,支持数学计算型验证码。 ✨mica-captcha 验证码缓存接口,完善验证码生成说明。 ✨mica-swagger 升级 swagger 到 knife4j。 ✨mica-redis 限流算法改为同 Spring cloud gateway,减少内存占用。 ✨mica-jobs 添加 xxl-job starter。 ✨mica-core 生成 mica 版本信息到 Mica 类中。 ✨mica-core 添加 compiler 工具类。 ✨mica-core 添加用于计数的 CountMap。 ✨mica-core 添加 Once 对象。 ✨mica-core 中的 jackson 包移动到 mica-boot,并做调整用于支持 mica-api-encrypt 组件。 ✨mica-core 简化 aes 工具类代码。 ⚡mica-core 优化 DateUtil。 ⚡mica-core 优化 RuntimeUtil。 ✨mica-core 拆解完善 HexUtil。 ✨mica-core 添加 DesUtil。 ✨mica-core 添加 RsaUtil。 ✨mica-core 优化 ResourceUtil 工具类。 ✨mica-core 微调 Bean copy。 ✨mica-core function 添加序列化。 ✨mica-core MD5 不再依赖 Spring DigestUtils。 ✨mica-core 优化 file 工具对文件名处理。 ⚡add .gitattributes。 ⚡ @configuration 替换为 @configuration(proxyBeanMethods = false)。 ⬆️升级 okhttp 到 3.14.8。 ⬆️升级 jsoup 到 1.13.1。 ⬆️升级 mica-auto 到 1.2.2。 ⬆️升级 spring boot 到 2.2.6,不再支持,spring boot 2.2.x 以下版本。 ⬆️升级 spring cloud 到 Hoxton.SR4。 文档 mica 源码 Github:https://github.com/lets-mica mica 源码 Gitee(码云):https://gitee.com/596392912/mica 文档地址(官网):https://www.dreamlu.net/mica2x/index.html 文档地址(语雀-可关注订阅):https://www.yuque.com/dreamlu 示例项目:https://github.com/lets-mica/mica-example 欢迎关注我们的公众号:JAVA架构日记,精彩内容每日推送。

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

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

用户登录
用户注册