基于深度學習的股票分析和預測系統

摘要

【關鍵詞】

第一章 緒論

1.1 研究背景及意義

1.2 國內外文獻綜述

1.2.1 國外研究結果

1.2.2 國內研究結果

1.3 本課題主要工作

第二章 相關工作介紹

2.1文本量化方法

2.2 CNN、LSTM模型

2.3評測準確率及收益率

第三章 開發技術介紹

3.1 系統開發平臺

3.2平臺開發相關技術

3.2.1 Python技術

3.2.2 Mysql數據庫介紹

3.2.3 ?Mysql環境配置

3.2.4 ?B/S架構

3.2.5 ?Django框架

第四章 系統分析

4.1 可行性分析

4.1.1?技術可行性

4.1.2?操作可行性

3.1.3經濟可行性

4.2性能需求分析

4.3非功能性需求

第五章 系統設計

6.1功能結構

6.2?數據庫設計

6.2.1 數據庫E/R圖

6.2.2?數據庫表

第六章 系統功能實現

6.1?用戶登錄

6.2用戶管理

6.3?管理員管理

6.4股票列表

6.5 綜合數據

6.6?模型配置

第七章 系統測試

第八章 總結

8.1 總結

8.2 展望

致 ?謝

參考文獻

摘要

股市的漲跌變化及價格預測一直都是一個火熱的話題,以往機器學習剛興起時,便被用于股市預測的研究當中。而隨后來機器學習縱向發展,引發了深度學習的出現及興起,針對國內股市,量化交易較為火熱,但在國內學術上此方面的研究還較少,于是本文提出并實現了結合及股市歷史的CNN及LSTM預測模型,以深度學習方法來挖掘股市變化的規律,并分析是否能預測其變化。本研究主要內容有:(1)獲取2019.01-2023.12的內容,及相關股票在該期間的歷史數據,以此為基礎構建出多種不同的訓練集,如:CNN的新聞標題word2vec訓練集、新聞關鍵詞word2vec訓練集、新聞關鍵詞百度指數訓練集、新聞傾向值及股市數據訓練集;LSTM的股市數據訓練集、百度指數加股市數據訓練集、新聞傾向加股市歷史訓練集;(2)針對CNN的兩類訓練集,構建出文本量化預測模型和純數值預測模型;LSTM構建出一種預測模型。對其分別從模型參數、學習率、訓練次數、loss公式等方面進行優化,提高預測準確率和收益率;(3)依據集成學習方法,把本研究中所提出的模型構成一個集成模型,以得到一個總模型,并以十折十次交叉驗證法測試所有模型的準確率及收益率。從研究結果來分析,深度學習結合和股市歷史數據來預測股市未來變化有一定的準確性,為研究股市變化的內在規律提供了一定的幫助。

關鍵詞深度學習;文本量化;CNN;LSTM;股市預測

緒論

    1. 研究背景及意義

伴隨科技發展,人們通過各種軟件來進行股票交易,同時,在股市交易當中,出現了基本分析、技術分析、演化分析等分析方法。近年來,計算機領域快速發展,機器學習、深度學習等技術興起,也使得量化投資變得越來越火熱,人們相信他們能通過機器找出股市的內在關系并以此獲利。

人們每天通過交易軟件頻繁地進行買入賣出,由此,股票價格也會一直在變化,并且會產生海量的交易數據。投資者在投資股票時,越來越把這些數據作為重要的參考依據,能用其畫出各種各樣的K線及結合各種理論來得出買入賣出點,這也即是技術分析。

新聞對股市有一定影響,尤其是,這是投資者了解所購股票的公司經營狀況的主要手段,其能影響投資者的交易意愿。這些的報道往往包含有上市公司的戰略決策、經營狀況、財務報告等等,這些資訊對投資者選擇投資時機及研究市場走勢都起到了重要的作用,這也即是基本分析。

內容中通常包含大量有價值的信息,其與股市歷史數據有一定的關聯,應當用更為先進的方法來挖掘。在國內學術中,早在2012年便有人以機器學習方法去挖掘新聞中內容,證實新聞對股市有較強的影響[1]。而在國外,更早一點學者們便已對金融市場中的三種人工智能技術,即人工神經網絡,專家系統和混合智能系統進行了比較研究,?表明這些人工智能方法的準確性優于以傳統統計方法處理財務問題[2]。

在2023年10月,全球第一只應用人工智能、機器學習進行投資的ETF:AI-powered Equity?ETF被推出。它利用了相關數學方法,每天24小時不停地去處理上百萬條企業公告及新聞,以此不斷優化自身的模型。但從下圖1中可看出,該ETF從17年10月到18年4月仍出現了不少的大起大落,半年時間其股價總增長率為6.81%。而美股標準普爾500指數從2562.87上升到2670.29,增長率為4.19%,表明這AI-ETF整體上要好于市場,但其仍有不少錯誤的時候,仍需要進行一定的沉淀及發展。實際上在國內的眾多量化投資平臺上,也有多個不同的看似優秀的預測模型、交易策略,但往往這些模型的策略回測結果都很漂亮,但用于實戰時卻不盡人意。

圖1-1?AI-powered Equity ETF從2023/10/18-2023/04/23走勢圖,圖片來源[3]

現在深度學習也已經被用于股市投資當中。深度學習神經網絡是一個高度復雜的非線性人工智能系統,是對人腦抽象和具象能力的人工模擬,其具有自組織及自調整等能力,適合處理多影響因素、類隨機的復雜非線性難題。同時,利用神經網絡方法能把內容進行數值量化,化為一個個詞語矩陣,現在已有較為成熟的方法,如:Word2Vec。由此,把新聞文本內容量化后,便可將其加入到深度學習神經網絡中訓練。

而CNN和LSTM作為新型神經網絡,各自有其特性。CNN可訓練新聞文本轉換成數值矩陣后的數據集;而LSTM具備時序觀念,可以依照時間序列實現多個輸入輸出,訓練具有時序屬性的數據,且其通過記憶門解決了梯度消失問題。

以此,通過結合與股市歷史數據,把深度學習應用在股市變化的分析中,以對股市的變化進行預測,依據預測結果制定交易策略,計算收益率,分析內在規律,為以深度學習方法結合和股市歷史應用于國內股市的預測分析提供一定的理論與實踐價值。

    1. 國內外文獻綜述
      1. 國外研究結果

Nassirtoussi AK等學者基于金融新聞的標題來預測外匯市場中金額的日內變動[4],其實現了一種多層算法:第一層為語義抽象層,解決了文本挖掘中共同參考的問題;第二層為情感積分層,提取情緒權重;第三層為同步目標特征減少(STFR)的動態模型創建算法,使用了機器學習中的三個算法,分別為SVM、K-NN和樸素貝葉斯方法,準確率頗高,在分析傳統機器學習于股市預測中的應用有一定參考性。

而Maragoudakis M等學者使用了馬爾科夫鏈蒙特卡羅(MCMC)貝葉斯推理方法[5],估計了通過樹增強樸素貝葉斯(TAN)算法獲得的網絡結構的條件概率分布,來對股市進行預測。

而Vargas MR等人在2023年采用深度學習方法,以金融新聞標題和一套技術指標作為輸入,對標準普爾500指數進行了當日漲跌預測[6]。其重點研究了卷積神經網絡(CNN)和遞歸神經網絡(RNN)的結構,構建了RCNN模型且與其它文獻中的預測模型進行比較,研究結果顯示CNN在捕捉文本語義方面優于RNN,而RNN在捕捉上下文信息和以復雜時間特征建模來進行股市預測中更優,并且RCNN模型要優于其它模型。

也有學者使用高頻盤中股票的收益率作為輸入數據,研究了三種無監督特征提取方法(主成分分析,自動編碼器和受限波爾茲曼機)對網絡預測未來市場行為的整體能力的影響[7]。實證結果表明,深層神經網絡可以從自回歸模型的殘差中提取附加信息,提高預測性能。

國外相關文獻,多是以是美國的股票市場作為研究目標的。基于以中國為代表的發展中國家的股票市場,國外學者的研究中較少涉及。

      1. 國內研究結果

國內學者們更加傾向以一部分新聞財經內容或評論來量化為特征向量去預測股市的漲跌。

孟雪井[8]等學者在2016年時選取了國內9大財經網站爬取新聞作文本挖掘,然后從中獲取出關鍵的詞語,隨后以這些詞語去關聯百度指數作為特征向量,以隨機森林算法去選擇重要特征,再以KNN算法去預測股市大盤指數漲跌。

同在2016年,鄒海林使用 Adaboost結合決策樹算法訓練漲跌預測模型,其使用最近鄰回歸k-NN方法對股市收盤指數和漲幅進行回歸結果分析,并對各種 HICT 詞特征選擇方法實驗結果進行比較[9]。其在文本詞語的處理上做出了較多的研究,使文本預測股市應用有一定的進展。

另外,孫瑞奇分析了BP、RNN、LSTM三種神經網絡的區別并以LSTM神經網絡對美股進行短期預測的可行性并作出相應對比,研究預測模型準確性[10]。其對2013年至2015年的美股股指進行預測,誤差均值在1%以內,而對中國的上證指數預測時,誤差在8.66%左右,故其認為預測中國股市時,需加入一些內容作輸入特征,才能有效把誤差減小。

    1. 本課題主要工作

本課題的主要目的是預測股市中個股在未來交易日的漲跌情況,以獲取收益,故希望能獲得較高的預測準確率及收益率。

經過了解、思索以及結合股市預測這一主題后,決定選用CNN和LSTM這兩種深度學習算法來研究預測情況。本文主要解決的問題包括把的標題和內容以機器學習、百度指數和傾向詞典等方法量化,結合股市歷史數據組合成各種不同的訓練集,建立CNN對文本矩陣及數值的兩種輸入數據的預測模型和LSTM對文本量化值這一種數據的預測模型,預測出股市中單個股票的未來漲跌情況(收盤價格漲跌情況),并以此設定交易策略,獲取收益(計算出收益率)。

對其分析得出和股市歷史數據在深度學習應用下對國內股市預測所能提供的幫助,為對國內股市的研究預測提供一定的參考。

第二章 相關工作介紹

2.1文本量化方法

一般需要把文本量化為數值數據,才方便用于進行模型輸入。而從Deep learning for stock market prediction from financial news articles[7]一文中了解到,對于新聞文本的量化處理有各種各樣的方法,得到各種各樣量化后的數據,如:單詞嵌入向量、句子嵌入向量、事件嵌入向量、詞袋、結構化事件元組等。

而在這里參考了多篇相關文獻的常用方式,及針對國內股市這一問題背景,提出了四種文本量化方法。

一為量化新聞標題為詞語向量;二為以TF-IDF方法提取出每篇新聞中的關鍵詞,然后將其量化為詞語向量;三為以TF-IDF方法提取出每篇新聞中的關鍵詞,然后以相關權重計算方法,得出一定數量的新聞集關鍵詞語,去獲取百度指數,即把新聞集量化為百度指數;四為利用相關數學公式去處理新聞集中詞語的詞頻,量化為漲跌傾向值。

2.2 CNN、LSTM模型

CNN(卷積神經網絡):

CNN一般用來處理圖像任務,其卷積、池化操作能夠提取出圖像中各種不同的特征,并最終通過全連接網絡實現信息的匯總及輸出。在文本處理中,由于句子長度較短,且能獨立表達意思,使得CNN也能較好地處理這些文本內容[11]。

CNN模型在結構上一般包括有4個部分,下圖2-1為處理詞向量訓練集的CNN基本模型結構:

圖2-1 處理詞向量的CNN模型基本結構,圖片來源[11]

1、輸入層:

在文本處理中,輸入層是文本詞語對應的詞向量從上到下排列的矩陣,假設文本m個詞,詞向量長度為l,那么這個矩陣就是m*l(可看作一副為m*l大小的圖像)。對于未知詞語,其向量可用相關默認值來填充。

2、卷積層:

卷積層通過卷積操作得到若干個特征圖,卷積窗口的大小為n*l,其中n表示詞語的個數,而l表示詞向量的維數。通過這樣的卷積操作,將得到若干個列數為1的特征圖(一般同時會有多個不同大小的卷積窗口,來提取出不同的特征)。

3、池化層:

接下來的池化層,一般使用取最大值(其代表著最重要的信號)的方法來處理特征圖,故也稱最大池化層。這種池化方式可以解決可變長度的句子的輸入問題,最終池化層的輸出為各個特征圖的最大值們,即一個一維的向量。

4、全連接+softmax層:

池化層的一維向量的輸出通過全連接的方式,連接一個Softmax層,來獲得輸出(通常反映著最終類別上的概率分布)。

在此中間,卷積層和池化層可擁有多層,這些卷積池化層可以是同級的,即使用多個不同大小的卷積核及池化層去卷積并池化數據,獲得多種不同的特征并拼接起來,再進行下一層處理;或是在一次卷積池化結束后,對得到的特征圖再進行卷積池化,即特征多次提取,縮減單元數。

參考基于卷積神經網絡的互聯網短文本分類方法[12]一文中的流程模型圖,及基于文本量化情況、輸入數據集結構,構建了兩種CNN預測模型。分別處理文本型(詞向量)數據集(新聞標題訓練集和新聞關鍵詞訓練集)和數值型數據集(新聞百度指數數據集和新聞漲跌傾向數值及股市歷史數據集)。

同時,從卷積層數量、卷積窗口大小、多重卷積、特征拼接、全連接層數量等方面進行調優。

LSTM(長短時序記憶網絡)

實際上LSTM的發展是有一個演變過程的,其演變順序為BP神經網絡(反向傳播神經網絡)-> RNN(循環神經網絡)->?LSTM(長短時序記憶網絡)。在每一個演變階段,其保留前一階段的特性同時還會針對于各種缺陷進行改進,于是本實驗中直接采用LSTM應用于股票預測,LSTM的基本結構[10]可見圖2-2。

圖2-2 LSTM基本結構,圖片來源[10]

傳統BP神經網絡模型是由輸入層、隱藏層和輸出層組成,其中隱藏層包含一層或多層。數據從輸入層輸入,然后通過全連接向隱藏層傳遞下去,最后傳導到輸出層,其通過一層層反饋傳遞修正權值,從而調整整個神經網路。而其不足在于,其在訓練的過程中并未體現先后時序關系,所以每次神經元權值的修正均只是基于單條數據的影響,沒有時序概念。這在股票價格預測中理論上具有極大的缺陷。

隨后因相關應用需要,RNN出現,其通過添加跨越時間點的自連接隱藏層而具有對時間進行顯式建模的能力。即隱藏層的反饋,除了進入輸出端,還進入了下一時間步的隱藏層,從而影響下一個時間步上的各個權值。而其主要缺陷在于隨著神經網絡層數的增加,會出現梯度消失的問題。

LSTM應運而生,它主要是給每個單元增加了記憶單元,這些記憶單元的入口主要由三個門控制著,分別是輸入門、忘記門和輸出門,操作功能有保存、寫入和讀取。這些門都是邏輯單元,用選擇性記憶反饋的誤差函數來隨著梯度下降修正參數,根據反饋的權值修正數來選擇性遺忘和部分或全部接受,這樣就不會每個神經元都得到修改了,從而使梯度不會多次消失,這樣前面幾層的權值也可以得到相應的修改,同時使誤差函數隨梯度下降得更快。

調整LSTM隱藏層數、記憶單元門控遺忘概率,能使模型獲得更好的效果。

集成模型:

????最后對于所提出的所有模型,結合集成學習方法,將它們組成一個集成模型,主要使用結合策略中的學習法,來生成最終模型。

2.3評測準確率及收益率

利用各模型對于個股的漲跌進行預測,以預測結果為依據,來按照同樣的交易策略進行交易,計算出預測的準確率及收益率。

其中使用十折十次交叉驗證法來評測模型在準確率、收益率上的效果。十折十次交叉驗證法,即在十折交叉驗證(數據處理形式如圖2-3)基礎上,對于每一折的數據進行十次訓練得到十次預測結果。這樣一來,即一個模型對于一個數據集需進行10*10次訓練,得到上百次預測結果、準確率及收益率。

圖2-3 十折交叉驗證法,圖片來源[13]

通過這種做法,能得出各模型的泛化結果,較好地評測各模型的真實效果。

章 開發技術介紹

此系統的關鍵技術和架構,Python技術、B/S結構、Django框架和Mysql數據庫,是本系統的關鍵開發技術,對系統的整體、數據庫、功能模塊、系統頁面以及系統程序等設計進行了詳細的研究與規劃。

3.1 系統開發平臺

在該在線股票量化分析系統中,Eclipse能給用戶提供更多的方便,其特點一是方便查詢股票信息,方便快捷;二是有非常大的信息儲存量,主要功能是用在對數據庫中查詢和編程。其功能有比較靈活的數據應用,只需利用小部分代碼就能實現非常強大的功能。因此,利用Eclipse 技術進行系統代碼管理是該系統數據庫的首選。

3.2平臺開發相關技術

3.2.1 Python技術

Python?是一個高層次的腳本語言結合了解釋性、編譯性、互動性和面向對象的。Python?的設計,相比其他語言經常使用英文關鍵字和其他語言的一些標點符號,它具有比其他語言更有特色語法結構,具有很強的可讀性。

解釋型語言:類似于PHP和Perl語言,這意味著開發過程中沒有了編譯這個環節。

交互式語言:可以在一個 Python?提示符 >>>?后直接執行代碼。

面向對象語言:Python支持面向對象的風格或代碼封裝在對象的編程技術。

3.2.2 Mysql數據庫介紹?

利用Mysql的數據獨立性、安全性等特點,在軟件項目中對數據進行操作,可以保證數據準確無誤,并降低了程序員的應用開發時間。

Mysql的特點是支持多線程,能方便的對系統資源充分利用,有效提高速度,還提供多種方式途徑來對數據庫進行連接;Mysql的功能相對弱小、規模也小,但本系統要求不高,Mysql完全可以滿足本系統使用。

利用Mysql建立系統數據庫,不僅有利于數據處理業務的早期整合,還能利于發展后兩種數據擴展的操作。

3.2.3 ?Mysql環境配置

本系統的數據使用的是Mysql,所以要將Mysql安裝到指定目錄,如果下載的是非安裝的Mysql壓縮包,直接解壓到指定目錄就可以了。然后點擊C:\Program Files\Mysql\bin\winMysqladmin.exe這個文件其中C:\Program Files\MysqlMysql安裝目錄。輸入winMysqladmin的初始用戶、密碼(注:這不是Mysql里的用戶、密碼)隨便填不必在意,確定之后右下角任務的啟動欄會出現一個紅綠燈的圖標,紅燈亮代表服務停止,綠燈亮代表服務正常,左擊這個圖標->winnt->install the service 安裝此服務,再左擊這個圖標->winnt->start the service 啟動Mysql服務。

修改Mysql數據庫的root密碼。用cmd進入命令行模式輸入如下命令:

cd C:\Program Files\Mysql\bin

Mysqladmin -u root -p password 123

回車出現Enter password: ,這是要輸入原密碼. 剛安裝時密碼為空,所以直接回車,此時Mysql?中賬號 root 的密碼被改為 123 安裝完畢。

3.2.4 ?B/S架構?

B/S結構是目前使用最多的結構模式,它可以使得系統的開發更加的簡單,好操作,而且還可以對其進行維護。使用該結構時只需要在計算機中安裝數據庫,和一些很常用的瀏覽器就可以了。瀏覽器就會與數據庫進行信息的連接,可以實現很多的功能,B/S結構是可以直接進行使用的,而且B/S結構在使用中極大的減少了工作的維護。基于B/S的軟件,所有的數據庫之間都是相互獨立的,因此是非常安全的。因為基于B/S結構可以清楚的看到系統正在處理的業務,并且能夠及時的讓管理人員做出決策,這樣就可以避免學校的損失。B/S結構的基本特點是集中式的管理模式,用戶使用系統生成數據后,這些數據就可以存儲到系統的數據庫中,方便日后能夠用到,這樣就可以滿足人們的所有的需求。

圖2-1 ?B/S模式三層結構圖

3.2.5 ?Django框架

Django是一種開源的大而且全的Web應用框架,是由python語言來編寫的。他采用了MVC模式,Django最初是被開發來用于管理勞倫斯出版集團下的一些以新聞為主內容的網站。一款CMS(內容管理系統)軟件。并于 2005 年 7 月在 BSD 許可證下發布。這套框架是以比利時的吉普賽爵士吉他手 Django Reinhardt 來命名的。

Django是Python語言中的一個web框架,并遵循MVC設計。Python語言中主流的web框架有Django、Tornado、Flask 等多種,Django相較與其它WEB框架,其優勢為:大而全,框架本身集成了ORM、模型綁定、模板引擎、緩存、文件管理、認證權限Session等功能,是一個全能型框架,擁有自己的Admin數據管理后臺,第三方工具齊全,性能折中。Django的主要目的是簡便、快速的開發數據庫驅動的網站。?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:
http://www.pswp.cn/pingmian/92797.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/92797.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/92797.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ML基礎設施(Machine Learning Infrastructure)

ML基礎設施(Machine Learning Infrastructure) 是指支持機器學習項目從開發到部署全生命周期所需的底層技術架構和工具集合。其核心目標是讓數據科學家和工程師能專注于模型創新,而非環境搭建等重復性工作。以下是深度解析:一、ML…

代碼隨想錄刷題Day29

逆波蘭表達式求值這是一道經典地使用棧來解決后綴表達式求解的題目。使用棧來求解后綴表達式的流程如下:借助棧的結構,可以求解出原始表達式是:9 (-3 - 1)* 3 10 / 2 2,在遵照規則過程中,還有…

crew AI筆記[3] - 設計理念

二八法則-task設計最重要80%精力設計tasks,20%精力定義agents花最多的實踐定義任務說明清晰定義輸入輸出增加示例和預期結果來約束輸出剩下的精力完善agent的role、goal、backstory1、Agent設計三要素role-goal-backstory框架Role - 職能定義足夠具體【作家 &#x…

【李宏毅-2024】第六講 大語言模型的訓練過程1——預訓練(Pre-training)

目錄概述1. 預訓練(Pre-training)2. 微調(Fine-tuning,又稱 SFT,Supervised Fine-Tuning)3. 對齊(Alignment,又稱 RLHF 或 DPO 等)4 三階段對比6 第一階段——自我學習&a…

基于LLVM的memcpy靜態分析工具:設計思路與原理解析(C/C++代碼實現)

在程序開發中,內存復制操作(如memcpy)往往是性能瓶頸的關鍵來源——尤其是大型內存塊的復制,可能導致緩存失效、帶寬占用過高等問題。為了精準定位這些潛在的性能熱點,開發者需要一種能自動識別程序中memcpy調用&#…

使用 Conda 安裝 xinference[all](詳細版)

1. 安裝 Miniconda(若未安裝) Miniconda 是 Anaconda 的輕量版,僅包含 Conda 和 Python,適合服務器環境。 下載并安裝 Miniconda 下載地址:Index of /miniconda ,可以自行選擇適合的版本 # 下載最新版 …

服務器登上去,顯示 failed to send WATCHDOG 重啟有效嗎?

文章目錄 概要整體架構流程技術名詞解釋技術細節小結 概要 當你登錄服務器時,看到類似以下提示: failed to send WATCHDOG: Resource temporarily unavailable這通常和系統的 systemd 服務有關,尤其是那些啟用了 watchdog(看門…

重學React(五):脫圍機制一

背景: 之前將React的基礎知識以及狀態管理相關的知識都過了一遍,查漏補缺的同時對React也有了一些新鮮的認知,接下來這個模塊的名字很有意思:脫圍機制,內容也比之前的部分難理解一些。但整體看下來,理解之后…

去除Edge微軟瀏覽器與Chrome谷歌瀏覽器頂部出現“此版本的Windows不再支持升級Windows 10”的煩人提示

前言 在 Windows 7 中,安裝 Microsoft Edge 109 版本后,啟動瀏覽器時會彈出提示: 此版本的 Windows 不再支持 Microsoft Edge。升級到 Windows 10 或更高版本,以獲取常規功能和安全更新。 同樣地,安裝 Google Chrome 1…

PWM、脈沖

要求:一、PWM輸出PWM波生成原理在此處使用TIM2生成PWM,PA1輸出PWM波。CNT小于CCR時,輸出高電平;CNT大于CCR時,輸出低電平。 輸入捕獲測量頻率的原理輸入捕獲的捕獲意思是它在PWM波上升沿或者下降沿的時候,會…

文件IO(1)

.文件IO1.概念標準IO是有緩存的IO,文件IO沒有緩存,適合于通信、硬件設備操作標準IO是庫函數,文件IO是系統調用2.系統調用與庫函數系統調用:是Linux內核中的代碼,只能在Linux系統中使用庫函數:是對系統調用的…

【AI】Pycharm中要注意Python程序文件的位置

博主試著在本地電腦用Pycharm環境運行隨便一個機器學習然后做圖像識別的模型,Python的程序一直報博主學習圖片的路徑不正確,博主查了好幾遍,也沒找出問題,后來借助Deepseek才知道,Python主程序的位置一定要在Project下…

TDengine 可觀測性最佳實踐

TDengine 介紹 TDengine 是一款開源、高性能、云原生的時序數據庫,專為物聯網、車聯網、工業互聯網、金融、IT 運維等場景優化設計。它不僅提供了高效的數據存儲和查詢功能,還帶有內建的緩存、流式計算、數據訂閱等系統功能,能大幅減少系統設…

Jenkins 搭建鴻蒙打包

1、創建流水線工程 選擇 Freestyle project 2、配置模板倉庫、憑證 配置倉庫地址 創建憑證,憑證選擇賬號-密碼(能夠訪問該倉庫的個人或管理員 Gitlab 賬密) 到這里執行構建,便可以克隆倉庫到工作目錄 3、安裝插件 3.1 Rebuild…

【SpringBoot】02 基礎入門-什么是Spring Boot?:Spring與SpringBoot

文章目錄1、Spring能做什么1.1、Spring的能力1.2、Spring的生態1.3、Spring5重大升級1.3.1、響應式編程1.3.2、內部源碼設計2、為什么用SpringBoot2.1、SpringBoot優點2.2、SpringBoot缺點3、時代背景3.2、分布式分布式的困難分布式的解決3.3、云原生上云的困難4、如何學習Spri…

FFmpeg 編譯安裝和靜態安裝

FFmpeg 編譯安裝和靜態安裝 簡介 FFmpeg 是一個領先的多媒體框架,能夠解碼、編碼、轉碼、復用、解復用、流化、過濾和播放幾乎所有人類和機器創建的格式。本指南將詳細介紹如何在 CentOS 8.5.2111 系統上從源代碼編譯并安裝 FFmpeg 6.1.1 版本。從源代碼編譯安裝可…

人大BABEC地平線高效率具身導航!Aux-Think:探索視覺語言導航中數據高效的推理策略

作者: Shuo Wang1,3^{1,3}1,3, Yongcai Wang1^{1}1, Wanting Li1^{1}1 , Xudong Cai1^{1}1, Yucheng Wang3^{3}3, Maiyue Chen3^{3}3, Kaihui Wang3^{3}3, Zhizhong Su3^{3}3, Deying Li1^{1}1, Zhaoxin Fan2^{2}2單位:1^{1}1中國人民大學,2^…

01. maven的下載與配置

1.maven的下載與初步配置a.下載并配置倉庫地址下載maven壓縮包,并解壓,解壓后應有如下幾個文件點擊conf,打開settings.xml(我用的VScode打開的),我們需要聲明一下內部倉庫的地址,以及私服的一些…

1701. 請輸出所有的3位對稱數

問題描述請輸出所有的 33 位對稱數,對稱數指的是一個整數 nn 正過來和倒過來是一樣的,比如:101、121、282…101、121、282…請從小到大輸出符合條件的3位對稱數,每行 11 個。輸入無。輸出從小到大按題意輸出符合條件的數&#xff…

C++算法·排序

排序的定義 這個不用說吧 就是根據某個條件對一個數列進行有序的操作 例如要求從小到大排序、從大到小排序等等 排序的分類 比較排序(Comparison(Comparison(Comparison Sorts)Sorts)Sorts) 特點:通過元素間的比較決定順序 時間復雜度下限:O(nO(nO(n…