Algorithms – NVIDIA 技術博客
http://www.open-lab.net/zh-cn/blog
閱讀開發者創建的最新技術信息、頭條新聞 和內容。
Thu, 28 Jul 2022 05:37:14 +0000
zh-CN
hourly
1
196178272 -
使用樸素貝葉斯和 GPU 進行更快的文本分類
http://www.open-lab.net/zh-cn/blog/faster-text-classification-with-naive-bayes-and-gpus/
Mon, 25 Jul 2022 05:27:00 +0000
http://www.open-lab.net/zh-cn/blog/?p=4674
Continued]]>
樸素貝葉斯( NB )是一種簡單但功能強大的概率分類技術,具有良好的并行性,可以擴展到大規模數據集。 如果您一直從事數據科學中的文本處理任務,您就會知道 機器學習 模型可能需要很長時間來訓練。在這些模型上使用 GPU 加速計算通常可以顯著提高時間性能, NB 分類器也不例外。 通過使用 CUDA 加速操作,根據使用的 NB 模型,我們實現了從 5 到 20 倍的性能提升。對稀疏數據的智能利用使其中一個模型的速度提高了 120 倍。 在本文中,我們介紹了 RAPIDS cuML 中 NB 實現的最新升級,并將其與 Scikit-learn 在 CPU 上的實現進行了比較。我們提供基準測試來演示性能優勢,并通過算法的每個支持變量的簡單示例來幫助您確定哪個最適合您的用例。 NB 使用 Bayes’ theorem (圖 1…
Source
]]>
4674
-
使用三種穩健線性回歸模型處理異常值
http://www.open-lab.net/zh-cn/blog/dealing-with-outliers-using-three-robust-linear-regression-models/
Wed, 20 Jul 2022 04:28:00 +0000
http://www.open-lab.net/zh-cn/blog/?p=4622
Continued]]>
線性回歸是最簡單的機器學習模型之一。它通常不僅是學習數據科學的起點,也是構建快速簡單的最小可行產品( MVP )的起點,然后作為更復雜算法的基準。 一般來說,線性回歸擬合最能描述特征和目標值之間線性關系的直線(二維)或超平面(三維及三維以上)。該算法還假設特征的概率分布表現良好;例如,它們遵循高斯分布。 異常值是位于預期分布之外的值。它們導致特征的分布表現較差。因此,模型可能會向異常值傾斜,正如我已經建立的那樣,這些異常值遠離觀測的中心質量。自然,這會導致線性回歸發現更差和更有偏差的擬合,預測性能較差。 重要的是要記住,異常值可以在特征和目標變量中找到,所有場景都可能惡化模型的性能。 有許多可能的方法來處理異常值:從觀察值中刪除異常值,處理異常值(例如,將極端觀察值限制在合理值),或使用非常適合自己處理此類值的算法。本文重點介紹了這些穩健的方法。 我使用相當標準的庫:
Source
]]>
4622
-
合并排序解釋:數據科學家的算法指南
http://www.open-lab.net/zh-cn/blog/merge-sort-explained-a-data-scientists-algorithm-guide/
Thu, 31 Mar 2022 07:48:00 +0000
http://www.open-lab.net/zh-cn/blog/?p=3539
Continued]]>
數據科學家每天都在處理算法。然而,數據科學學科作為一個整體已經發展成為一個不涉及復雜算法實現的角色。盡管如此,從業者仍然可以從對算法的理解和掌握中獲益。 本文介紹、解釋、評估和實現了排序算法 merge-sort 。本文的目的是為您提供有關合并排序算法的可靠背景信息,該算法是更復雜算法的基礎知識。 盡管合并排序不被認為是復雜的,但是理解該算法將有助于您認識到選擇最有效的算法來執行與數據相關的任務時需要考慮的因素。創建于 1945 年的 約翰·馮·諾依曼 使用分治方法開發了合并排序算法。 要理解合并排序算法,您必須熟悉分治范式,以及遞歸的編程概念。計算機科學領域中的遞歸是指定義用于解決問題的方法在其實現體中調用自身。 換句話說,函數會反復調用自身。 分治算法(合并排序是一種)在其方法中使用遞歸來解決特定問題。分治算法將復雜問題分解為更小的子部分,
Source
]]>
3539
-
梯度下降和反向傳播算法數據科學家指南
http://www.open-lab.net/zh-cn/blog/a-data-scientists-guide-to-gradient-descent-and-backpropagation-algorithms/
Wed, 09 Feb 2022 02:52:00 +0000
http://www.open-lab.net/zh-cn/blog/?p=3053
Continued]]>
人工神經網絡 ( ANN )是 人工智能( AI ) 技術的基本構件。人工神經網絡是 machine-learning 模型的基礎;它們模擬的學習過程與人腦相同。簡言之,人工神經網絡賦予機器完成特定任務的類似于人的性能(以及更高性能)的能力。本文旨在為數據科學家提供基本的高級知識,以了解在訓練 ANN 時調用的函數和方法所涉及的低級操作。 作為數據科學家,我們的目標是通過暴露數據中的模式來解決業務問題。通常,這是通過使用機器學習算法來識別模式和以模型表示的預測來完成的。為特定用例選擇正確的模型,并適當地調整參數,需要徹底了解問題和底層算法。對問題域和算法的理解是需要考慮的,以確保我們正確使用模型,并正確解釋結果。 本文介紹并解釋了梯度下降和反向傳播算法。這些算法有助于 ANN 從數據集中學習,特別是在涉及數據點和神經網絡預測的操作導致網絡參數值發生修改的情況下。
Source
]]>
3053
-
自然語言處理的第一步:算法如何理解文本
http://www.open-lab.net/zh-cn/blog/natural-language-processing-first-steps-how-algorithms-understand-text/
Thu, 20 Jan 2022 08:34:00 +0000
http://www.open-lab.net/zh-cn/blog/?p=2844
Continued]]>
本文將討論如何通過矢量化、哈希、標記化和其他技術來準備文本,以便與機器學習( ML )和其他數值算法兼容。我將解釋并演示該過程。 自然語言處理( NLP )將 機器學習 ( ML )和其他技術應用于語言。然而,機器學習和其他技術通常在被稱為向量的數字數組上工作,這些向量表示數據集中的每個實例(有時稱為觀察、實體、實例或行)。我們稱所有這些數組的集合為矩陣;矩陣中的每一行表示一個實例。按列查看矩陣,每列表示一個特征(或屬性)。 到目前為止,如果不習慣數學語言,這種語言可能看起來相當抽象。然而,在處理表格數據時,數據專業人員已經接觸過這種類型的數據結構,包括電子表格程序和關系數據庫。 畢竟,當人們將行視為實例,將列視為特征時,電子表格就是矩陣。例如,考慮包含過去和現在雇員的數據集,其中每行(或實例)具有表示雇員的年齡、任期、工資、資歷級別等的列(或特征)。
Source
]]>
2844
-
解釋插入排序 – 數據科學家算法指南
http://www.open-lab.net/zh-cn/blog/insertion-sort-explained-a-data-scientists-algorithm-guide/
Thu, 09 Dec 2021 03:56:00 +0000
http://www.open-lab.net/zh-cn/blog/?p=2614
Continued]]>
算法在數據科學和機器學習領域很常見。算法為社交媒體應用程序、谷歌搜索結果、銀行系統等提供動力。因此,數據科學家和 機器學習 實踐者在分析、設計和實現算法方面擁有直覺是至關重要的。 當應用于大規模計算任務時,高效算法為公司節省了數百萬美元,并減少了內存和能源消耗。本文介紹了一種簡單的算法,插入排序。 雖然知道如何實現算法是必不可少的,但本文也包括了數據科學家在選擇利用時應該考慮的插入算法的細節。因此,本文提到了算法復雜性、性能、分析、解釋和利用等因素。 重要的是要記住為什么數據科學家應該在解釋和實現之前研究數據結構和算法。 數據科學和 ML 庫和包抽象了常用算法的復雜性。此外,由于抽象,需要 100 行代碼和一些邏輯推導的算法被簡化為簡單的方法調用。這并沒有放棄數據科學家研究算法開發和數據結構的要求。 當給定一組要使用的預構建算法時,
Source
]]>
2614
人人超碰97caoporen国产