2023年12月

1 OpenAI 探索用较低级的 AI 来监管更高级的 AI

OpenAI 的团队介绍了一种让功能较弱的大型语言模型(LLM)监督功能较强的 LLM 的技术,并表示,这可能是朝着弄清人类如何监督超人机器迈出的一小步。OpenAI 团队认为,机器的最终优势是必然的,“我们一直在碾压所有的基准,而且这种进步有增无减”。他们没有研究人类如何监督超人机器,而是研究了用其五年前发布的模型 GPT-2 如何监督最新、最强大的模型 GPT-4。“如果你能做到这一点,那就证明你可以使用类似的技术让人类监督超过人类的模型……结果喜忧参半”。他们的结论是,这种方法很有前途,但还需要更多的努力。

(插图:DA/fc35d211-8080-400d-b6f9-0e6a5bd31cf3)

消息来源:MIT 科技评论
老王点评:这就是用一个比较“愚忠”的 AI 来监管那些“桀骜不驯”的 AI 吗?

2 微软发布小型 LLM Phi-2,性能超越更大的 Llama 2

Phi-2 拥有 27 亿个参数,其性能可与其他更大的模型相媲美,包括拥有 70 亿个参数的 Meta 的 Llama 2-7B,以及另一个也拥有 70 亿个参数的模型 Mistral-7B。微软称,尽管 Phi-2 比谷歌全新的 Gemini Nano 2 模型多了 5 亿个参数,但其性能却优于后者,而且其响应的 “毒性” 和偏差也小于 Llama 2。不过目前,微软限制 Phi-2 只能用于 “研究目的”,而不能用于商业用途。

(插图:DA/71166394-aa5d-4ed1-b10f-aeff651173cf)

消息来源:Venture Beat
老王点评:相信随着研究的进展,以后运行在手机上或边缘设备上的超级 AI 将不再遥远。

3 JSON 的创造者发布新编程语言 Misty

创造了 JSON 符号的 道格·克罗克福德 Doug Crockford 又创造了一种“既适合学生使用,也适合专业程序员使用”的新的编程语言。该语言称其为 “一种动态的、通用的、过渡性的演员语言。它的语法温和,旨在为学生提供帮助,同时还具有一些高级特性,如能力安全和具有词法范围的 Lambda。”有趣的是,为了避免因缩进不同而导致的争论,Misty 只允许一种约定:缩进是 4 个空格。

(插图:DA/9bb516c9-62a0-40a8-826c-5407a4a5ea82)

消息来源:Doug Crockford
老王点评:一种新的 BASIC 语言吗?

尽管渐进式网络应用(PWA)还在起步阶段,它们却已经影响着我们使用网络的方式。

渐进式网络应用 Progressive Web App (PWA),借助现代网络技术,提供能赶超任何移动应用的用户体验。而正是积极进取的开源社区以及谷歌、微软等科技巨头,助推着 PWA 的发展,试图冲破应用程序之间的鸿沟。

其实,PWA 就是在网络浏览器中运行你的程序。因为谷歌 Play Store 和苹果 App Store 事实上二分天下,所以重点就是谷歌 Chrome 和苹果 Safari(分别基于开源的 Chromium 和 WebKit 构建)。

关于创建桌面应用的内容不在本文展开,如果你对此感兴趣,可以参考 Electron

PWA 的构建方式和任何其他网站或网络应用没有两样。它们使用最新的移动技术,并且采用用户体验的最佳实践。PWA 还可以将浏览器与原生代码相结合以优化体验。

如果你在搜索引擎中输入 “什么是 PWA”,你可能得到一个概括性的回答,像是“PWA 的设计上高速、稳定、吸引人,可以离线工作,还可以安装到设备的主屏幕上。”虽然这个答案部分正确,但却仅仅涵盖了 PWA 所能达成和正在发展成的事物表面部分。

下面的这些并非 PWA

下面列出的是跨平台应用框架,它们可以让你能从单一代码库开发应用,但并未采用浏览器作为它们的平台。

  • Flutter
  • React Native

采用 Flutter,你可能会用到 Dart 语言,此语言可以编译出 iOS、安卓和网页应用。而 React Native 同样可以对 JavaScript 进行后端编译。

PWA 的定义是什么?

根据最初的定义,一个 PWA 必须满足以下三个要求:

  • 服务工作线程: 提供离线功能。
  • 网络清单: JSON 标记用于配置主屏幕和应用图标。
  • 安全性: 强制使用 HTTPS,因为服务工作线程在后台运行。

这些组件使你能通过 谷歌 Lighthouse PWA 审核,并在你的评分上得到绿色检查标记。

谷歌 Lighthouse 得分,包括性能,便捷性,最佳实践,SEO 和 PWA

只要满足这些要求,Chrome 的“添加到主页”提示就会自动启用。

PWA Builder(由微软提供的免费服务)具有出色的用户界面,可以用于构建 PWA 和可视化基本要求。请见以下基于 developers.google.com 的示例。你可以在这个 链接 预览此功能,这是由我在 上一篇文章 中讨论的 PWA 模块 提供。

显示服务工作线程的谷歌开发者界面

显示清单的谷歌开发者界面

PWA 的基本要求通过服务工作线程实现了离线行为,manifest.json 文件则使得在安卓上添加“添加至主页”行为成为可能,这样你的网站会作为图标添加到主屏幕上,并以无浏览器的 Chrome(全屏模式)以带应用启动页的方式打开。这些是 PWA 的最低要求,除了离线缓存带来的性能提升,它基本上给人一种网站就是应用的感觉。这其实是一种用户心理的转变,从只把浏览器看作“网站”的工具,逐渐认识到它其实是一个应用平台。谷歌似乎趋向于推动这种观点,为发展更多的功能、性能和用户体验/用户界面的提升扫清了道路,这样才能真正提供“像应用一样的体验”。

深入的说,PWA 实际上是一系列浏览器技术以及网络开发技巧和工具的集合,使网站更像“应用”。我把这些内容分解到了以下几个类别。

提供增强的“应用般”体验

  • 在移动设备上的用户体验/用户界面体验优化

    • HTML/CSS/Javascript
  • 更接近原生设备的访问以及强大的网络功能
  • 更快速流畅的性能表现

当前的 PWA:超越最初定义的可能性

以下是对于前述三个体验优化方向的详细阐述。

用户体验/用户界面的改进

用户体验/用户界面设计和视觉问题解决对于让你的网站更像应用至关重要,这可能表现在动画效果、输入/字体大小、滚动问题,以及其他 CSS 错误的细节之处。重视前端开发团队至关重要,因为他们可以打造出这样的用户体验。在设计和用户体验的广泛领域内,我们可以通过一些 Web 文档建构的核心元素(HTML/JSS/JS)实现增强型特征,例如:

  • Hotwire Turbo:这是一个利用线上 HTML,只通过 AJAX 或 WebSockets 更新你网页有变动的部分的开源框架。它为了实现 SPA 那样的性能优化,仅用到了部分 JavaScript。对于你的单体应用或模版渲染系统,这种途径最佳,不需要多费周折去解耦你的前后端。
  • 专门的移动 SPA 框架:市场上有一些可以为你的网站带来类应用用户体验的解耦式框架。Onsen UI 和 Framework 7 就是两个可帮你创建快速、反应灵敏的网站用户界面的优秀工具。当然,你未必必须依靠这些框架,如前所述,有力的前端团队通过应用最新的、类似移动设备设计技巧就能打造出你向往的 UI 设计。

这个幻灯片 详细讲述了应如何在你的 PWA 中保持 HTML/CSS/JS 的最新状态。

Web 的能力

Chromium 团队持续在改进浏览器体验方面努力不懈,你可以在 Project Fugu 中追踪他们在这个全方位网络功能改进项目的进展。WebKit 即持续致力于优化其浏览器体验和能力。

Swift API 还可以与 WKWebView 进行交互,以增强原生体验。

谷歌提供了一项名为 Bubblewrap 的服务,与 Trusted Web Activity(TWA)共同工作。它的作用仅是将你的基于 PWA 的网站包装在一个原生的 APK 包中,从而可以将其提交到应用商店。这就是我之前提到的关于安卓的 PWA Builder 链接的工作方式。在我之前的文章里,你可以了解更多关于 WKWebView 和 TWA 的信息。

速度和性能

改进你的应用性能的方法多得数不清。你可以先从 谷歌 PageSpeed tools 进行检查。

使用 PWA 的各种奖励:

  • Lighthouse 得分和 SEO 的提升。
  • 统一的代码库。
  • 顺滑无阻的测试过程。
  • 对开发周期即时反馈。
  • 使用了管理型的 PaaS Web 部署流程。
  • Web 技术的学习和使用面向广大开发者。
  • 唯一一种可以提供完善网络体验的跨平台开发解决方案。
  • 自由发挥设计,不受限于跨平台框架的 UI 组件束缚。
  • 即使网络连接状况不佳,也能触达用户。

当然,使用 PWA 也还有一些问题需要考虑:

  • 功能可能有限:与原生设备使用体验相比,PWA 还有所逊色,但浏览器正在大步赶超过来。你可以查阅 Thomas Steiner 对 Project Fugu 如何弥补应用空白的论点,或者搜索 “What web can do” 查看你的浏览器能做什么。通常,你的 PWA 项目有很大可能是大部分不会因为功能/能力受限而耗尽资源的应用。
  • 标准化欠缺:Thomas Steiner 在文章中也提及了 “PWA 标准” 的问题,目前还使我们一头雾水。这也造成 PWA 主题的混淆,使开发者在追求“心有戚戚焉”的突破瞬间时颇感困扰。缺乏明确的定义,使得 PWA 的推动力度降低,且导致营销或管理层因为无法定义 PWA,所以也就不会主动提出需要 PWA。
  • iOS App Store 的问题:目前的 App Store 并未列出 PWA,于是找到 PWA 就比找到原生应用困难。但这并非绝境,你依旧可以让你的网络应用提供比原生应用更棒的体验。做的好的话,你甚至能获得苹果公司的真心赞赏,因为最重要的评价标准就是提供良好的移动体验。曾经在 PWA 成为术语之前,就在原生 iOS 应用中运用 WKWebView 的 Ionic,在他们的论坛上 分享了有趣的见解。只要你懂行,便不会有任何问题。在 我以前在 Opensource.com 上的文章 的“网络应用如何进入应用市场”部分,你能找到更多内容。
  • 某些情况下的安全问题:浏览器采用 cookie 作为认证,这种早在浏览器诞生时就已经使用的方法,可能并不适合你的项目。其中,浏览器提供了出色的密码管理,并一直在研发和引入其他认证方法,例如 Webauthn。而 关联域 中的使用提供了更多的安全层。

相比其他方式,我认为“网络正在崭露头角”,在未来的发展中,随着网络的新功能不断涌现,当前的缺点将逐渐被减弱。我不认为原生开发会消失,只是 WebView 和原生代码之间的集成会更加无缝。

结语

虽然 PWA 还在早期开发阶段,但它们有潜力彻底改变我们使用网络的方式。每天我都会看到新的网站在挑战 PWA 能做到什么。不管管理层是否知道他们正在建立一个 PWA,我经常会发现网络应用和开发团队如何扩展网络技术的使用或者选择一个优化良好的移动网站而不是原生应用,这都让我感到惊讶。

(题图:DA/649961e9-b67b-487c-ba5f-c6df5f923bfb)


via: https://opensource.com/article/22/10/pwa-web-browser

作者:Alex Borsody 选题:lkxed 译者:ChatGPT 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

Ardour 的最新更新包添加了一些有用的功能和急需的修复。

Ardor 是数字音频工作站(DAW)用户中非常流行的开源选择,它拥有大量工具,允许音频专业人士执行一系列与音频相关的任务。

作为 Ardour 8.x 系列的延续,开发人员推出了新版本 Ardour 8.2。那么,让我们深入了解此版本,看看提供了什么。

? Ardour 8.2:有什么新变化?

开发人员表示,此次更新“没有什么惊人之处”,它的目的是完成支持新 Novation 设备的待定工作、修复一些错误和进行一些改进。

主要亮点包括:

  • 专用无频闪选项
  • 支持更新设备
  • 音符叠加功能

专用无频闪选项

作为一项新的用户偏好设置,它将禁用 Ardour 图形用户界面(GUI)上的所有闪烁元素。这对那些对此类视觉刺激敏感的用户来说大有帮助

因此,时钟、按钮和仪表之类的东西将停止运行、闪烁或移动。

对 Novation 设备的支持

Ardour 8.2 版本还完成了对所有当前一代(MK3)Novation Launchpad 系列 设备的支持。这包括 Launchpad XMiniPro

开发人员遵循 Launchpad X 的用户手册来实现支持,并且还使 Launchpad Mini 表现相似,使用类似的布局,没有 X 型号上的额外按钮。

音符叠加功能

受到最近推出的 Ableton Live 12 的启发,Ardor 的开发人员推出了新的音符叠加功能,可让你将音符拆分和连接在一起,以获得更高级的 MIDI 编辑体验。

?️ 其他变化

至于其余的,还有一些其他值得注意的变化:

  • 添加了对 Solid State Logic UF8 的支持。
  • 能够清除 LV2 插件扫描信息。
  • 录音机视图中添加了新的静音按钮
  • 改进了标记列表显示,使其更加高效和有序。
  • 新的 Lua 脚本,用于反转 MIDI 音符/区域,并使用标记对 mixer-scenes 进行排序。

你也可以通过官方发行说明了解更多信息。

? 下载 Ardour 8.2

新版本适用于 LinuxWindowsmacOS。从官方网站获取你选择的包。

Ardour

你还可以查看其 GitHub 仓库的源代码。

? 你对新增的新增功能有何看法? 请在下面告诉我们!


via: https://news.itsfoss.com/ardour-8-2-release/

作者:Sourav Rudra 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

在本系列的 上一篇文章 中,我们进一步讨论了矩阵和线性代数,并学习了用 JupyterLab 来运行 Python 代码。在本系列的第四篇文章中,我们将开始学习 TensorFlow,这是一个非常强大的人工智能和机器学习库。我们也会简要介绍一些其它有用的库。稍后,我们将讨论概率、理论以及代码。和往常一样,我们先讨论一些能拓宽我们对人工智能的理解的话题。

到目前为止,我们只是从技术方面讨论人工智能。随着越来越多的人工智能产品投入使用,现在是时候分析人工智能的社会影响了。想象一个找工作的场景,如果你的求职申请由人来处理,在申请被拒绝时,你可以从他们那里得到反馈,比如被拒的理由。如果你的求职申请由人工智能程序处理,当你的申请被拒绝时,你不能要求该人工智能软件系统提供反馈。在这种情况下,你甚至不能确定你的申请被拒绝是否确实是仅基于事实的决定。这明确地告诉我们,从长远来看,我们需要的不仅仅是魔法般的结果,还需要人工智能具有 责任 accountability 保证 guarantee 。(LCTT 译注:责任主要指确保系统的决策过程是透明的、可解释的,并且对系统的行为负责。保证是指对于系统性能指标和行为的一种承诺或者预期。)目前有很多试图回答这些问题的研究。

人工智能的应用也会引发许多道德和伦理上的问题。我们不必等到强人工智能(也被称为 通用人工智能 artificial general intelligence —— AGI)出现才研究它的社会影响。我们可以通过思想实验来探究人工智能的影响。想象你在一个雨夜你驾车行驶在有发夹完的道路上,突然你眼前有人横穿马路,你的反应是什么?如果你突然刹车或转向,你自己的生命将处于极大的危险之中。但如果你不这样做,过马路的人恐怕凶多吉少。因为我们人类具有自我牺牲的特质,在决策的瞬间,即使是最自私的人也可能决定救行人。但我们如何教会人工智能系统模仿这种行为呢?毕竟从纯粹的逻辑来看,自我牺牲是一个非常糟糕的选择。

同样的场景下,如果汽车是由人工智能软件在驾驶会发生什么呢?既然你是汽车的主人,那么人工智能软件理应把你的安全放在首位,它甚至全不顾其他乘客的安全。很容易看出,如果世界上所有的汽车都由这样的软件控制的话将导致彻底的混乱。现在,如果进一步假设乘坐自动驾驶汽车的乘客身患绝症。那么对于一个数学机器来说,为了行人牺牲乘客是合乎逻辑的。但对于我们这些有血有肉的人却不见得如此。你可以花点时间思考一下其它场景,注重逻辑的机器和热血的人类都会做出什么样的决策。

有很多书籍和文章在讨论人工智能全面运作后的政治、社会和伦理方面的问题。但对于我们这些普通人和计算机工程师来说,读所有的书都是不必要的。然而,由于人工智能的社会意义如此重要,我们也不能轻易搁置这个问题。为了了解人工智能的社会政治方面,我建议你通过几部电影来理解人工智能(强人工智能)如何影响我们所有人。 斯坦利·库布里克 Stanley Kubrick 的杰作《 2001:太空漫游 2001: A Space Odyssey 》是最早描绘超级智能生物如何俯视我们人类的电影之一。这部电影中人工智能认为人类是世界最大的威胁,并决定毁灭人类。事实上,有相当多的电影都在探索这种情节。由伟大的艺术大师 史蒂文·斯皮尔伯格 Steven Spielberg 亲自执导的《 人工智能 Artificial Intelligence 》,探讨了人工智能机器如何与人类互动。另一部名为《 机械姬 Ex Machina 》的电影详细阐述了这一思路,讲述了具有人工智能的机器。在我看来这些都是了解人工智能的影响必看的电影。

最后思考一下,试想如果马路上的汽车使用来自制造商的不同的自动驾驶规则和人工智能,这将导致彻底的混乱。

TensorFlow 入门

TensorFlow 是由 谷歌大脑 Google Brain 团队开发的一个自由开源的库,使用 Apache 2.0 许可证。TensorFlow 是开发人工智能和机器学习程序的重量级的库。除了 Python 之外,TensorFlow 还提供 C++、Java、JavaScript 等编程语言的接口。在我们进一步讨论之前,有必要解释一下 张量 tensor 是什么。如果你熟悉物理学,张量这个词对你来说可能并不陌生。但如果你不知道张量是什么也不用担心,现阶段把它看作多维数组就行了。当然,这是一种过度简化的理解。TensorFlow 可以在 NumPy 提供的多维数组之上运行。

首先,我们要在 JupyterLab 中安装 TensorFlow。TensorFlow 有 GPU 版本和 CPU 版本两种安装类型可以选择。这主要取决于你的系统是否有合适的 GPU。GPU 是一种利用并行处理来加快图像处理速度的电路。它被广泛用在游戏和设计领域,在开发人工智能和机器学习程序时也是必不可少的硬件。但一个不太好的消息是 TensorFlow 只兼容英伟达的 GPU。此外,你需要在系统中安装一个称为 CUDA( 计算统一设备架构 compute unified device architecture )的并行计算平台。如果你的系统满足这些要求,那么在 JupyterLab 上执行命令 pip install tensorflow-gpu 来安装 GPU 版本的 TensorFlow。如果你系统的 GPU 配置无法满足要求,当你尝试使用 TensorFlow 时,会得到如下错误消息:“CUDA\_ERROR\_NO\_DEVICE: no CUDA-capable device is detected”。此时使用 pip uninstall tensorflow-gpu 卸载 GPU 版本的 TensorFlow。然后执行命令 pip install tensorflow 安装 CPU 版本的 TensorFlow。现在 TensorFlow 就准备就绪了。请注意,目前我们将讨论限制在 CPU 和 TensorFlow 上。

图 1:第一个使用 TensorFlow 的 Python 脚本

现在,让我们运行第一个由 TensorFlow 驱动的 Python 代码。图 1 显示了一个简单的 Python 脚本及其在 JupyterLab 上执行时的输出。前两行代码将库 NumPy 和 TensorFlow 导入到 Python 脚本中。顺便一提,如果你想在 Jupyter Notebook 单元中显示行号,单击菜单 “ 查看 View > 显示行号 Show Line Numbers ”。第 3 行使用 NumPy 创建了一个名为 arr 的数组,其中包含三个元素。第 4 行代码将数组 arr 的每个元素乘 3,将结果存储在一个名为 ten 的变量中。第 5 行和第 6 行分别打印变量 arrten 的类型。从代码的输出中可以看到,arrten 的类型是不同的。第 7 行打印变量 ten 的值。注意,ten 的形状与数组 arr 的形状是相同的。 数据类型 int64 在本例中用于表示整数。这使得本例中 NumPy 和 TensorFlow 数据类型之间的无缝转换成为可能。

TensorFlow 支持很多操作和运算。随着处理的数据量的增加,这些操作会变得越来越复杂。TensorFlow 支持常见的算术运算,比如乘法、减法、除法、幂运算、模运算等。如果参与运算的是列表或元组,TensorFlow 会逐元素执行该操作。

图 2:TensorFlow 中的逐元素操作

TensorFlow 还支持逻辑运算、关系运算和位运算。这里的操作也是按元素执行的。图 2 显示了执行这些按元素操作的 Python 脚本。第 1 行代码从列表创建一个张量,并将其存储在变量 t1 中。TensorFlow 的函数 constant() 用于从 Python 对象(如列表、元组等)创建张量。类似地,第 2 行创建了另一个张量 t2。第 3 行和第 4 行都是执行逐元素求幂并打印输出。从图 2 中可以清楚地看出,该求幂的结果是相同的。第 5 行代码比较张量 t1t2 的元素并打印结果。输出中的 [True True False] 分别是对应 3>2、4>3 和 2>6 的结果。第 6 行的输出与之类似。

图 3:TensorFlow 矩阵乘法

图 3 展示了 TensorFlow 处理矩阵的例子。第 1 行和第 3 行分别构造两个矩阵 xy,第 2 行和第 4 行分别打印矩阵 xy的形状。代码的输出显示 x 的形状为 (3,3)y 的形状为 (3,)。从本系列前面介绍的矩阵知识,我们知道这两个矩阵是不能相乘的。

因此,在第 5 行中将矩阵 y 增加了一个维度。在第 6 行,再次打印矩阵 y 的形状,输出结果为 (3,1)。现在矩阵 xy 可以相乘了。第 7 行中,将矩阵相乘并打印输出。注意,类似的操作也可以在张量上执行,即使张量的维数很高,TensorFlow 也可以很好地扩展。在本系列的后续文章中,我们将更多地了解 TensorFlow 支持的数据类型和其他复杂操作。

既然介绍了 TensorFlow,我想我也应该提一下 Keras。它为 TensorFlow 提供 Python 接口。在后续的文章中,我们将专门介绍 Keras。

我们如何利用非英伟达 GPU 的能力呢?有许多功能强大的软件包可以做到这一点。比如 PyOpenCL,一个在 Python 中编写并行程序的框架。它让我们可以使用 OpenCL( 开放计算语言 open computing language )。OpenCL 可以与 AMD、Arm、英伟达等厂商的 GPU 进行交互。当然还有其他选择,比如 Numba。它是一种JIT 编译器,可用在代码执行期间将 Python 代码编译为机器码。如果 GPU 可用,Numba 允许代码使用的 GPU 能力。图 4 是展示了使用 Numba 的 Python 代码。

我们可以看到函数 fun() 具有允许并行化的特征。从图 4 中可以看到,代码在不使用和使用 Numba 的情况下的答案是相同的。但是我们可以看到所花费的执行时间是不同的。当使用 Numba 并行化代码时,只花费了不到一半的时间。此外随着问题规模的增加,并行化和非并行化版本所花费的时间之间的差距也将增加。

图 4:使用 Numba 进行并行化

SymPy 入门

SymPy 是一个用于符号计算的 Python 库。通过图 5 中的例子,让我们试着理解什么是符号计算。它使用 SymPy 提供的函数 Integral()来求积分。图 5 也显示了这个符号计算的输出。注意,SciPy 提供的 integrate() 函数返回数值计算结果,而 SymPy 的 Integral() 函数能提供精确的符号结果表达式。人工智能和机器学习程序开发中会用到一些统计学操作,SymPy 在执行这些操作时非常有用。

图 5:符号计算的例子

在本系列的下一篇文章中,我们将讨论 Theano。Theano 是一个 Python 库和优化编译器,用于计算数学表达式。

概率论入门

现在是概率论出场的时候了,它是人工智能和机器学习的另一个重要话题。对概率论的详细讨论超出了本系列的范围。我强烈建议在继续阅读之前,先通过维基百科上关于“概率”、“贝叶斯定理”和“标准差”的文章了解一些重要的术语和概念,如概率、独立事件、互斥事件、条件概率、贝叶斯定理、均值、标准差等。学习完这些后,你将能够轻松理解后面关于概率的讨论。

我们从概率分布开始讲起。根据维基百科的说法,“概率分布是一个数学函数,它能给出一个实验中不同的可能结果发生的概率”。现在,让我们试着理解什么是概率分布函数。最著名的概率分布函数是正态分布,通常也称为高斯分布(以伟大的数学家高斯的名字命名)。正态分布函数的图像是一条钟形曲线。图 6 是一个钟形曲线的例子。钟形曲线的确切形状取决于均值和标准差。让我们试着通过分析一种自然现象来理解钟形曲线。从网上可以查到,中国男性的平均身高约为1.7米。在我们周围的到多数男性的身高都非常接近这个数字。你看到一个身高低于1.4米或高于2米的男人的可能性很小。如果记录 100 万人的身高,然后以横轴为身高,纵轴为该身高的人数,绘制统计结果,你会发现绘制出的图像近似为钟形曲线,其中只有一些轻微的倾斜和弯曲。因此,正态分布很容易地捕捉到自然现象的概率特征。

图 6:钟形曲线(图像来源:维基百科)

现在,我们来看一个使用正态分布的例子。图 7 的代码中我们使用 NumPy 的正态分布的函数 normal(),然后使用 Matplotlib 进行绘图。从第 3 行我们可以看到样本大小为 1000。第 4 行绘制一个包含 1000 个 bin 的直方图。但是图 7 的钟形曲线与图 6 中看到的钟形曲线相差很大。究其原因是我们的样本数量只有 1000。样本量应该足够大才能获得更清晰的图像。将第 3 行代码替换为 sample = normal(size=100000000),行并再次执行程序。图 8 显示了一条更好的钟形曲线。这一次,我们的样本大小为 100,000,000,钟形曲线与图 6 所示非常相似。正态分布和钟形曲线只是开始。在下一篇文章中,我们将讨论可以概括其他事件和自然现象的概率分布函数。下一次,我们还将更正式地讨论这个主题。

图 7:绘制钟形曲线

本篇的内容就到此结束了。在下一篇文章中,我们将继续探索概率和统计中的一些概念。我们还将安装和使用 Anaconda,这是一个用于科学计算的 Python 发行版,对于开发人工智能、机器学习和数据科学程序特别有用。如前所述,我们还将熟悉另一个名为 Theano 的 Python 库,它在人工智能和机器学习领域被大量使用。

图 8:更好的钟形曲线

(题图:DA/2a8d805a-01d3-4039-b96c-74766491e264)


via: https://www.opensourceforu.com/2023/01/ai-an-introduction-to-probability/

作者:Deepu Benson 选题:lujun9972 译者:toknow-gh 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

1 首个 Rust 编写的网络 PHY 驱动程序将登陆 Linux 6.8

自 Linux 6.1 将最初的 Rust 基础架构添加到 Linux 内核以来,已经合并了许多其他设施和内部修改,以便能够用 Rust 编程语言编写内核驱动程序。在即将到来的 Linux 6.8 内核中,第一个 Rust 网络驱动程序将被引入。这个用 Rust 重写的 ASIX PHY 驱动程序约有 135 行 Rust 代码,该驱动已有 C 语言驱动。PHY 驱动程序是指网卡收发器的物理层驱动。

(插图:DA/29a36e0f-e594-4553-bbd4-48d9256e64d)

消息来源:Phoronix
老王点评:终于要见到第一个真正在内核中发挥作用的驱动了。

2 字节跳动被指利用 OpenAI API 训练自己的 AI

OpenAI 称,字节跳动的内部文件证实,OpenAI API 已被用于开发字节跳动的基础 LLM,这些 API 被用在开发的每一个阶段,包括训练和评估模型。这直接违反了 OpenAI 的服务条款,其中规定其模型输出不得用于“开发任何与我们的产品和服务竞争的人工智能模型”。字节跳动所使用的微软 Azure 的 OpenAI 也采用了同样条款。OpenAI 表示已暂停字节跳动的账户。

字节跳动对此回应称,其工程师仅在今年早期使用这些 API 用于内部实验性研究。于 4 月份该公司检查后已经停止了该做法,并于 9 月再次复查过。字节跳动称,他们将再次全面检查,并与 OpenAI 沟通“以澄清外部报道可能引发的误解”。

(插图:DA/1b39cee0-1c49-4d0f-9628-0aa98cd4100f)

消息来源:The Verge
老王点评:这种 AI 反刍后的数据用来训练 AI 真的好吗?

3 谷歌群组明年终止支持新闻组(Usenet)

谷歌宣布,将从 2024 年 2 月 22 日起终止支持新闻组(Usenet)。Usenet 用户将无法再使用群组在 Usenet 里发表内容、订阅或查看新的 Usenet 内容,但可以继续查看和搜索之前的内容。同时,谷歌群组也不再支持 NNTP 协议。谷歌表示,Usenet 的活跃度已经显著下降,充斥着垃圾信息,Usenet 用户将需要寻找新的客户端和公共服务器。Usenet 始于 1980 年,比万维网的历史更长。

(插图:DA/1ba60670-5edb-406f-862f-d5460bd37696)

消息来源:谷歌
老王点评:Usenet 对谷歌已经只是负担而没意义了。

Vivaldi 6.5 是一个令人印象深刻的升级,必将助力提高生产效率,缩短工时!

Vivaldi,作为 Ubuntu 和各类 Linux 发行版的 最佳网络浏览器 之一,今年已经连续推出了众多重大升级,将其推升到了前所未有的高度。

作为今年的收官之作,Vivaldi 6.5 版本的发布承载了许多新特性和改进建议。

? 需要注意的是,Vivaldi 是非完全开源的解决方案,其用户界面部分属于闭源。

接下来让我们探索一下具体的内容。

? Vivaldi 6.5:有何新进展?

作为年终的馈赠,Vivaldi 的这次发布有以下 核心亮点 :

  • 会话面板
  • 优化的工作区
  • 更强的同步性能

会话面板

Vivaldi 新增了一个 “ 会话 Sessions ” 面板,允许你 整理和存储来自任何窗口或工作区的标签。你可以轻松地从新的侧栏管理,并在需要时重新打开它们。

你还可以编辑内容,重命名会话,甚至查看其下的标签。

更进一步的是,你还可以选择启用 “ 自动会话备份 Automatic Session Backup ”,它将 每小时自动创建一次备份,保留长达 30 天。备份包括所有打开的标签的快照;你也可以进行手动保存。

工作区自动化

基于现有的工作区特性,Vivaldi 6.5 实现了工作区的自动化。当你用 URL 配置一个工作区规则后,尝试打开该链接的标签会自动转移至你选择的工作区。

如你在上图可以看到的,你只需要 选择一个 URL ,然后 决定应用哪一规则 (有三个选项:“ 包含 contains ”、“ is ”或“ 始于 starts with ”)。至此,你只需要通过 “ 在其中打开 Open in ” 选项来 选择一个工作区

未来已经来临!?

同步性能升级

此次发布达成了重要的里程碑之一,实现了 跨平台浏览器历史记录的同步。这使 Vivaldi 的同步特性更为完整,因为现在它已然能同步密码、书签、打开的标签、注释和阅读列表。

何况,所有同步的数据在你所有的设备之间都实现了端到端的加密。这是非常令人欣慰的,因为并非所有软件都有这样的实现。

此外,还有更多。

来自任何你设备中的地址栏和 “ 窗口 Windows ” 面板的同步标签现在是可搜索的。在此次更新之前,你必须在标签栏点击云图标才能访问这些标签。

?️ 另外的变动和改善

除了上述内容,还有很多其他的有益改动:

  • 升级到 Chromium 120.0.6099.121
  • 同步功能将 不会同步敏感且未加密的数据
  • 修复了一些 可能在各种网页上触发的随机崩溃
  • Vivaldi 的 笔记面板 增加了新的 “ 添加到笔记选项 Append to Note option ”。
  • 修复了在打开欢迎屏幕时 造成的 CPU 和 GPU 高耗能
  • 解决了在加载时 窗口无法根据主题自适应 的问题。

你也可以通过查阅 发布公告 来获取更多的发布详情。

? 获取 Vivaldi 6.5

新版 Vivaldi 已对 LinuxWindows 以及 macOS 开放。你可以在 官方网站 获取。

Vivaldi

? 你对这次功能更新满意吗?还是你正在等待其他新功能的加入?

(题图:DA/72f1b4a6-59dd-4098-8edf-ec4e28a5c1f5)


via: https://news.itsfoss.com/vivaldi-6-5-release/

作者:Sourav Rudra 选题:lujun9972 译者:ChatGPT 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出