原创 【字典樹】用python實現Trie樹

字典樹常用做高效的文本詞語保存,適用於敏感詞過濾、關鍵詞提取等場景。在字典樹中相同前綴的詞之間共享相同的樹節點和路徑。 字典樹結構一般包括如下功能和屬性:(1)構建;(2)添加;(3)刪除;(4)前綴統計;(5)搜索 實現一:通

原创 docker的基本使用筆記

docker是一種用於解決跨平臺、跨環境下編程、測試和部署兼容性問題的強有力工具,其中涉及的操作對象主要包括: 倉庫(Repository):用於存放鏡像的地方,包括官方倉庫,各鏡像源倉庫和自己建立的私有倉庫。 鏡像(Image

原创 動態規劃法求解最長上升子串問題

問題描述: 給出一個array的數值(有正有負),給出一個最長的上升子串(可以不連續)的長度 定義子狀態: m[i]m[i]m[i]表示以數組元素A[i]A[i]A[i]結尾的最長上升子串的長度 狀態轉移關係:m[j]=max⁡i

原创 【Pytorch】記錄自定義DataLoader時一個易犯的隱性錯誤

Mark下在自定義DataLoader時犯的一個隱性錯誤,最後還是通過閱讀源碼發現了癥結。 場景:根據一個dataframe自定義DataLoader 原始數據: import pandas as pd import random

原创 自定義數據迭代器

方案一:定義迭代器類 自定義數據迭代器類,主要需要申明如下方法: (1)__init__:初始化方法,可用於傳入數據路徑或導入數據; (2)__iter__:定義返回的可迭代對象,在自定義數據迭代器類時,直接返回本對象self即可

原创 【動態規劃】數組最長上升子序列問題(LIS)

相較於最長上升子串問題,LIS問題並不嚴格要求連續的子串,其求解難度也有所提升。 在嘗試將該問題由nnn規模縮減時,我們不光要考慮n−1n-1n−1規模的,還需要考慮所以更小規模的子問題。因爲對於任何位置結尾的最長子串,無法確定其

原创 【動態規劃】上升數組中的最長上升子串問題

所謂的上升子串,要求子序列連續。如對於[3,2,4,5,3,6] ,應當返回3,對應的最長子串爲[2,4,5]。 定義狀態變量dp[i]:包括nums[i]在內的最長子串長度。 狀態轉移函數: 如果nums[i]>nums[i−1

原创 適用於分詞的前向/後向最大匹配算法

字符串最大匹配算法是建立在詞典表基礎上的,用於字符串分詞的經典算法。根據字符串掃描的方向,可分爲從前往後的前向最大匹配算法、從後往前的後向最大匹配算法,以及兩者均做然後採取某些策略進行取捨的雙向最大匹配算法。 字符串最大匹配算法採

原创 二分搜索及其問題拓展

二分搜索是適用於有序數組的高效搜索方式,本文先介紹二分搜索的遞歸和非遞歸形式,然後將其拓展到類似問題。 1. 二分搜索的基本實現 1.1 遞歸實現 def binarySearch(array, num): """

原创 【文本分類】RCNN模型

RCNN模型也是用於文本分類的常用模型,其源論文爲Recurrent Convolutional Neural Networks for Text Classification。 模型整體結構如下: 架構主要包括如下模塊: (1

原创 【最優二叉樹】Huffman樹

Huffman樹,又稱作最優二叉樹,是一種用於信息編碼的數據結構。其通過對比各元素的頻率/數量,自底向頂構建一顆二叉樹,頻率越低的元素越在底部。在Huffman樹中,所有元素均爲葉子節點,而中間節點和根節點用於記錄兩顆孩子節點頻次

原创 【論文解析】如何將Bert更好地用於文本分類(How to Fine-Tune BERT for Text Classification?)

論文How to Fine-Tune BERT for Text Classification?基於Bert模型,在6份英文語料和1份中文預料上(包括情感分析、問題分類和主題分類),進行了翔實的文本分類效果對比實驗結果,雖然fin

原创 動態規劃法求解最大子序列和問題

問題描述:給出一個數字array(其元素值可正可負),求其連續子序列中,各元素和的最大值(不要求子序列的長度) 定義子狀態:m[i]m[i]m[i]表示以數組元素A[i]A[i]A[i]結尾的最大子序列之和 狀態轉移關係:m[i+

原创 動態規劃法求解硬幣劃分問題

硬幣劃分問題指:給定一些基礎硬幣(如1、2、5元),最少需要多少枚硬幣能夠劃分能夠湊成目標的金額。 思路一:遞歸法 從大——>小進行逐層分解,遞歸求得所有的劃分可能性,然後取得其中數量最少的劃分方案。 # 這裏只給出所有可能的劃分

原创 【算法實例】股票收益最大問題

問題描述:在T+1交易規則下,給出每天股票的買/賣價序列,要求在序列期間內最多隻允許買、賣各一次,求此期間內的最大收益是多少(可以選擇不賣,即收益爲0) 比如: (1)價格序列爲[7,1,5,3,6,4],則最大收益爲5,即選擇第