Python31 自然语言处理NLP之NLTK的使用

图片

图片

1.关于自然语言处理NLP

自然语言处理NLP是人工智能和计算机科学的一个子领域,专注于计算机与人类(自然)语言之间的互动。其目的是使计算机能够理解、解释和生成人类语言。NLP 涉及语言学、计算机科学和人工智能的多学科交叉,通过统计、机器学习和深度学习等方法处理和分析大量的自然语言数据。

核心任务和应用

NLP 包括多种任务和应用,主要分为以下几类:

1. 文本处理
  • 分词:将文本分割成独立的单词或短语。

  • 词性标注:标识每个单词在句子中的词性(如名词、动词、形容词等)。

  • 句法分析:解析句子的语法结构,包括依存关系和短语结构分析。

2. 文本分类
  • 情感分析:检测文本中的情感倾向,如积极、中立或消极。

  • 主题建模:识别文本中的主题或隐藏的语义结构。

  • 垃圾邮件过滤:检测并过滤电子邮件中的垃圾内容。

3. 信息提取
  • 命名实体识别(NER):识别文本中的实体,如人名、地名、组织等。

  • 关系抽取:从文本中提取实体之间的关系。

  • 事件抽取:识别和分类文本中的事件信息。

4. 机器翻译
  • 自动翻译:将文本从一种语言翻译成另一种语言,如 Google 翻译。

5. 文本生成
  • 语言生成:生成与输入语义相关的自然语言文本。

  • 摘要生成:从长文本中提取关键内容生成摘要。

6. 对话系统
  • 聊天机器人:与用户进行自然语言对话,如客服机器人。

  • 智能助理:提供信息查询、任务管理等服务,如 Siri、Alexa。

主要技术和方法
1. 统计方法

早期的 NLP 方法主要依赖于统计模型,如 n-gram 模型、隐马尔可夫模型(HMM)和条件随机场(CRF),用于各种语言处理任务。

2. 机器学习

传统机器学习方法,如支持向量机(SVM)、朴素贝叶斯、决策树等被广泛应用于文本分类、情感分析等任务。

3. 深度学习

近年来,深度学习技术在 NLP 中取得了显著进展,主要包括:

  • 循环神经网络(RNN):特别是长短期记忆(LSTM)和门控循环单元(GRU)被用于处理序列数据,如文本生成和机器翻译。

  • 卷积神经网络(CNN):用于文本分类和句子建模。

  • Transformer:由 Google 提出的 Transformer 结构及其衍生模型(如 BERT、GPT)在多种 NLP 任务中表现优异。

工具和库
  • NLTK:Python 的自然语言处理库,提供丰富的工具和资源。

  • spaCy:高效的 NLP 库,适用于工业应用。

  • Gensim:用于主题建模和文档相似性计算的库。

  • Transformers:Hugging Face 提供的库,包含多种预训练模型,如 BERT、GPT 等。

2.NTLK库

NLTK(Natural Language Toolkit)是一个广泛使用的开源 Python 库,专门用于处理自然语言文本。它提供了丰富的工具和资源,用于完成各种自然语言处理(NLP)任务,包括文本预处理词性标注句法分析语义分析机器翻译等。NLTK 适用于教育和研究领域,同时也是入门 NLP 的理想工具。

核心组件和功能

NLTK 包含多个模块和子包,提供了各种 NLP 功能。以下是一些核心组件和功能:

1. 文本预处理
  • 分词(Tokenization):将文本分割成独立的单词或句子。

    # 导入 NLTK 库
    import nltk
    
    # 下载 punkt 数据包,用于分句和分词
    nltk.download('punkt')
    
    # 定义一个句子
    sentence = "Natural language processing is fun."
    
    # 使用 NLTK 的 word_tokenize 函数对句子进行分词
    # word_tokenize 函数将输入的字符串按单词进行分割,生成一个单词列表
    words = nltk.word_tokenize(sentence)
    
    # 打印分词后的结果
    # 结果是一个包含句子中每个单词的列表
    print(words)
    
    # 输出:
    '''
    ['Natural', 'language', 'processing', 'is', 'fun', '.']
    '''
    
  • 去除停用词(Stopword Removal):去除无意义的常见词(如 "the", "is")。

    # 从 NLTK 的语料库模块中导入 stopwords
    from nltk.corpus import stopwords
    
    # 下载 stopwords 数据包,包含各种语言的常见停用词
    nltk.download('stopwords')
    
    # 获取英语的停用词集合
    stop_words = set(stopwords.words('english'))
    
    # 过滤掉分词结果中的停用词
    # 对于每个单词 w,如果该单词(转换为小写后)不在停用词集合中,则保留该单词
    filtered_words = [w for w in words if not w.lower() in stop_words]
    
    # 打印过滤后的单词列表
    # 结果是一个去除了停用词的单词列表
    print(filtered_words)
    
    # 输出:
    '''
    ['Natural', 'language', 'processing', 'fun', '.']
    '''
    
  • 词干提取(Stemming):将单词还原为词干形式。

    # 从 NLTK 的 stem 模块中导入 PorterStemmer
    from nltk.stem import PorterStemmer
    
    # 初始化 PorterStemmer 对象
    stemmer = PorterStemmer()
    
    # 对分词结果中的每个单词进行词干提取
    # stemmer.stem(w) 方法会提取单词的词干
    stemmed_words = [stemmer.stem(w) for w in words]
    
    # 打印词干提取后的单词列表
    # 结果是一个包含每个单词词干形式的列表
    print(stemmed_words)
    
    # 输出:
    '''
    ['natur', 'languag', 'process', 'is', 'fun', '.']
    '''
    
  • 词形还原(Lemmatization):将单词还原为其基本形式。

    # 从 NLTK 的 stem 模块中导入 WordNetLemmatizer
    from nltk.stem import WordNetLemmatizer
    
    # 下载 wordnet 数据包,包含用于词形还原的词典
    nltk.download('wordnet')
    
    # 初始化 WordNetLemmatizer 对象
    lemmatizer = WordNetLemmatizer()
    
    # 对分词结果中的每个单词进行词形还原
    # lemmatizer.lemmatize(w) 方法会将单词还原为其基本形式
    lemmatized_words = [lemmatizer.lemmatize(w) for w in words]
    
    # 打印词形还原后的单词列表
    # 结果是一个包含每个单词基本形式的列表
    print(lemmatized_words)
    
    # 输出:
    '''
    ['Natural', 'language', 'processing', 'is', 'fun', '.']
    '''
    
2. 词性标注(Part-of-Speech Tagging)
  • 标注句子中的每个单词的词性:

    # 下载词性标注器的模型数据包
    nltk.download('averaged_perceptron_tagger')
    
    # 对分词结果进行词性标注
    # nltk.pos_tag(words) 方法会为每个单词分配词性标签
    tagged_words = nltk.pos_tag(words)
    
    # 打印词性标注后的单词列表
    # 结果是一个包含单词及其词性标签的元组列表
    print(tagged_words)
    
    # 输出:
    '''
    [('Natural', 'JJ'), ('language', 'NN'), ('processing', 'NN'), ('is', 'VBZ'), ('fun', 'NN'), ('.', '.')]
    '''
    
3. 命名实体识别(Named Entity Recognition)
  • 识别句子中的命名实体:

    # 下载用于命名实体识别的模型数据包
    nltk.download('maxent_ne_chunker')
    
    # 下载 words 数据包,包含用于命名实体识别的词典
    nltk.download('words')
    
    # 使用词性标注后的单词列表进行命名实体识别
    # nltk.chunk.ne_chunk(tagged_words) 方法会识别句子中的命名实体
    entities = nltk.chunk.ne_chunk(tagged_words)
    
    # 打印命名实体识别后的结果
    # 结果是一个包含标记的命名实体的树结构
    print(entities)
    
    # 输出:
    '''
    (S Natural/JJ language/NN processing/NN is/VBZ fun/NN ./.)
    '''
    
4. 句法分析(Syntactic Parsing)
  • 解析句子的语法结构:

    # 从 NLTK 导入上下文无关文法(CFG)模块
    from nltk import CFG
    
    # 定义上下文无关文法(CFG)
    grammar = CFG.fromstring("""
    S -> NP VP    # 句子 S 由名词短语 NP 和动词短语 VP 组成
    VP -> V NP    # 动词短语 VP 由动词 V 和名词短语 NP 组成
    NP -> 'John' | 'Mary' | 'Bob'    # 名词短语 NP 由三个名字中的一个组成
    V -> 'loves' | 'hates'    # 动词 V 包含 'loves' 和 'hates'
    """)
    
    # 使用定义的语法创建一个 ChartParser
    parser = nltk.ChartParser(grammar)
    
    # 将句子分词
    sentence = "John loves Mary".split()
    
    # 使用解析器解析句子
    for tree in parser.parse(sentence):
        # 打印解析得到的树结构
        print(tree)
    
    # 输出:
    '''
    (S (NP John) (VP (V loves) (NP Mary)))
    '''
    
5. 语料库和词典资源
  • NLTK 提供了丰富的语料库和词典资源,涵盖了各种语言和应用领域。主要语料库包括:Gutenberg Corpus(经典文学作品,如《白鲸》)、Brown Corpus(平衡的英语语料库)、Reuters Corpus(新闻文档)、Inaugural Address Corpus(美国总统就职演说)、Movie Reviews Corpus(影评文本)、Web Text Corpus(互联网文本)、Shakespeare Corpus(莎士比亚戏剧文本)和 Treebank Corpus(句法树和词性标注的文本)。主要词典资源包括:WordNet(大型英语词典数据库)、Names Corpus(常见男性和女性名字)、Stopwords Corpus(多种语言的停用词列表)、Swadesh Corpus(基本词汇列表)、CMU Pronouncing Dictionary(英语发音词典)和 Opinion Lexicon(正面和负面情感词汇列表)。这些资源为各种自然语言处理任务提供了基础数据支持。:

    # 从 NLTK 的语料库模块中导入 gutenberg 语料库
    from nltk.corpus import gutenberg
    
    # 下载 gutenberg 语料库
    nltk.download('gutenberg')
    
    # 获取 'melville-moby_dick.txt' 文件的原始文本内容
    sample = gutenberg.raw('melville-moby_dick.txt')
    
    # 打印前 500 个字符的文本内容
    print(sample[:500])
    
    # 输出是从 NLTK 的 Gutenberg 语料库中提取并打印了《白鲸》(Moby Dick)前 500 个字符的内容。:
    '''
    [Moby Dick by Herman Melville 1851]
    
    
    ETYMOLOGY.
    
    (Supplied by a Late Consumptive Usher to a Grammar School)
    
    The pale Usher--threadbare in coat, heart, body, and brain; I see him
    now.  He was ever dusting his old lexicons and grammars, with a queer
    handkerchief, mockingly embellished with all the gay flags of all the
    known nations of the world.  He loved to dust his old grammars; it
    somehow mildly reminded him of his mortality.
    
    "While you take in hand to school others, and to teac
    '''
    

3.代码示例

①文本预处理和词性标注

以下是一个完整的示例,展示了如何使用 NLTK 进行文本预处理和词性标注:

import nltk
import re
from nltk.corpus import stopwords
from nltk.stem import PorterStemmer, WordNetLemmatizer

# 下载必要的 NLTK 数据包
nltk.download('punkt')
nltk.download('stopwords')
nltk.download('averaged_perceptron_tagger')
nltk.download('wordnet')

# 加载文本
text = "NLTK is a leading platform for building Python programs to work with human language data."

# 分词
words = nltk.word_tokenize(text)

# 去除停用词
stop_words = set(stopwords.words('english'))
filtered_words = [w for w in words if not w.lower() in stop_words]

# 词干提取
stemmer = PorterStemmer()
stemmed_words = [stemmer.stem(w) for w in filtered_words]

# 词形还原
lemmatizer = WordNetLemmatizer()
lemmatized_words = [lemmatizer.lemmatize(w) for w in filtered_words]

# 词性标注
tagged_words = nltk.pos_tag(lemmatized_words)

print("分词:", words)
print("去除停用词:", filtered_words)
print("词干提取:", stemmed_words)
print("词形还原:", lemmatized_words)
print("词性标注:", tagged_words)

图片

②使用 NLTK 和 Matplotlib 可视化文本词汇分布与频率分析
import nltk
from nltk.book import *  # 导入 NLTK 书中的所有内容
import matplotlib.pyplot as plt

# 下载所需的资源包
nltk.download('genesis')
nltk.download('book')
nltk.download('inaugural')
nltk.download('punkt')
nltk.download('averaged_perceptron_tagger')
nltk.download('maxent_ne_chunker')
nltk.download('words')
nltk.download('stopwords')
nltk.download('wordnet')

# 搜索文本
text1.concordance("monstrous")
text2.concordance("affection")
text3.concordance("lived")
text5.concordance("lol")  # 聊天记录

# 搜索相似词
text1.similar("monstrous")
print("-----分割线----")
text2.similar("monstrous")  # 不同文本中的相似词

# 搜索共同上下文
text2.common_contexts(["monstrous","very"])

# 词汇分布图
text4.dispersion_plot(["citizens","democracy","freedom","duties","America"])  # 救济演说语料
# 随着时间发展,单词出现的频率

# 使用 text1 生成文本(需要 text1 已经导入)
generated_text = text1.generate(50)  # 生成 50 个单词的文本
print(generated_text)

# 计数词汇
len(text3)
print(len(text3))
sorted(set(text3))  # 排序
len(set(text3))  # 去重

#重复词密度
print(len(text3)/len(set(text3)))  # 平均每个标识符出现16次

# 关键词密度
print(text3.count("smote"))
print(100* text4.count("a")/len(text4))
def lexical_diversity(text):
    return len(text)/len(set(text))
def percentage(count,total):
    return 100*count/total
print(lexical_diversity(text3))
print("text5 diversity is {}".format(lexical_diversity(text5)))
print("in text4,a percentage {}%".format(percentage(text4.count("a"),len(text4))))


# 创建词汇频率分布
fdist1 = FreqDist(text1)

# 打印词汇频率分布的摘要
print(fdist1)

# 获取词汇表
vocabulary1 = fdist1.keys()

# 可视化频率分布
plt.figure(figsize=(10, 6))
fdist1.plot(30, cumulative=False)  # 绘制前30个词汇的频率分布
plt.show()

# 输出:
'''
Displaying 11 of 11 matches:
ong the former , one was of a most monstrous size . ... This came towards us , 
ON OF THE PSALMS . " Touching that monstrous bulk of the whale or ork we have r
ll over with a heathenish array of monstrous clubs and spears . Some were thick
d as you gazed , and wondered what monstrous cannibal and savage could ever hav
that has survived the flood ; most monstrous and most mountainous ! That Himmal
they might scout at Moby Dick as a monstrous fable , or still worse and more de
th of Radney .'" CHAPTER 55 Of the Monstrous Pictures of Whales . I shall ere l
ing Scenes . In connexion with the monstrous pictures of whales , I am strongly
ere to enter upon those still more monstrous stories of them which are to be fo
ght have been rummaged out of this monstrous cabinet there is no telling . But 
of Whale - Bones ; for Whales of a monstrous size are oftentimes cast up dead u
Displaying 25 of 79 matches:
, however , and , as a mark of his affection for the three girls , he left them
t . It was very well known that no affection was ever supposed to exist between
deration of politeness or maternal affection on the side of the former , the tw
d the suspicion -- the hope of his affection for me may warrant , without impru
hich forbade the indulgence of his affection . She knew that his mother neither
rd she gave one with still greater affection . Though her late conversation wit
 can never hope to feel or inspire affection again , and if her home be uncomfo
m of the sense , elegance , mutual affection , and domestic comfort of the fami
, and which recommended him to her affection beyond every thing else . His soci
ween the parties might forward the affection of Mr . Willoughby , an equally st
 the most pointed assurance of her affection . Elinor could not be surprised at
he natural consequence of a strong affection in a young and ardent mind . This 
 opinion . But by an appeal to her affection for her mother , by representing t
 every alteration of a place which affection had established as perfect with hi
e will always have one claim of my affection , which no other can possibly shar
f the evening declared at once his affection and happiness . " Shall we see you
ause he took leave of us with less affection than his usual behaviour has shewn
ness ." " I want no proof of their affection ," said Elinor ; " but of their en
onths , without telling her of his affection ;-- that they should part without 
ould be the natural result of your affection for her . She used to be all unres
distinguished Elinor by no mark of affection . Marianne saw and listened with i
th no inclination for expense , no affection for strangers , no profession , an
till distinguished her by the same affection which once she had felt no doubt o
al of her confidence in Edward ' s affection , to the remembrance of every mark
 was made ? Had he never owned his affection to yourself ?" " Oh , no ; but if 
Displaying 25 of 38 matches:
ay when they were created . And Adam lived an hundred and thirty years , and be
ughters : And all the days that Adam lived were nine hundred and thirty yea and
nd thirty yea and he died . And Seth lived an hundred and five years , and bega
ve years , and begat Enos : And Seth lived after he begat Enos eight hundred an
welve years : and he died . And Enos lived ninety years , and begat Cainan : An
 years , and begat Cainan : And Enos lived after he begat Cainan eight hundred 
ive years : and he died . And Cainan lived seventy years and begat Mahalaleel :
rs and begat Mahalaleel : And Cainan lived after he begat Mahalaleel eight hund
years : and he died . And Mahalaleel lived sixty and five years , and begat Jar
s , and begat Jared : And Mahalaleel lived after he begat Jared eight hundred a
and five yea and he died . And Jared lived an hundred sixty and two years , and
o years , and he begat Eno And Jared lived after he begat Enoch eight hundred y
 and two yea and he died . And Enoch lived sixty and five years , and begat Met
 ; for God took him . And Methuselah lived an hundred eighty and seven years , 
 , and begat Lamech . And Methuselah lived after he begat Lamech seven hundred 
nd nine yea and he died . And Lamech lived an hundred eighty and two years , an
ch the LORD hath cursed . And Lamech lived after he begat Noah five hundred nin
naan shall be his servant . And Noah lived after the flood three hundred and fi
xad two years after the flo And Shem lived after he begat Arphaxad five hundred
at sons and daughters . And Arphaxad lived five and thirty years , and begat Sa
ars , and begat Salah : And Arphaxad lived after he begat Salah four hundred an
begat sons and daughters . And Salah lived thirty years , and begat Eber : And 
y years , and begat Eber : And Salah lived after he begat Eber four hundred and
 begat sons and daughters . And Eber lived four and thirty years , and begat Pe
y years , and begat Peleg : And Eber lived after he begat Peleg four hundred an
Displaying 25 of 822 matches:
ast PART 24 / m boo . 26 / m and sexy lol U115 boo . JOIN PART he drew a girl w
ope he didnt draw a penis PART ewwwww lol & a head between her legs JOIN JOIN s
a bowl i got a blunt an a bong ...... lol JOIN well , glad it worked out my cha
e " PART Hi U121 in ny . ACTION would lol @ U121 . . . but appearently she does
30 make sure u buy a nice ring for U6 lol U7 Hi U115 . ACTION isnt falling for 
 didnt ya hear !!!! PART JOIN geeshhh lol U6 PART hes deaf ppl here dont get it
es nobody here i wanna misbeahve with lol JOIN so read it . thanks U7 .. Im hap
ies want to chat can i talk to him !! lol U121 !!! forwards too lol JOIN ALL PE
k to him !! lol U121 !!! forwards too lol JOIN ALL PErvs ... redirect to U121 '
 loves ME the most i love myself JOIN lol U44 how do u know that what ? jerkett
ng wrong ... i can see it in his eyes lol U20 = fiance Jerketts lmao wtf yah I 
cooler by the minute what 'd I miss ? lol noo there too much work ! why not ?? 
 that mean I want you ? U6 hello room lol U83 and this .. has been the grammar 
 the rule he 's in PM land now though lol ah ok i wont bug em then someone wann
flight to hell :) lmao bbl maybe PART LOL lol U7 it was me , U83 hahah U83 ! 80
ht to hell :) lmao bbl maybe PART LOL lol U7 it was me , U83 hahah U83 ! 808265
082653953 K-Fed got his ass kicked .. Lol . ACTION laughs . i got a first class
 . i got a first class ticket to hell lol U7 JOIN any texas girls in here ? any
 . whats up U155 i was only kidding . lol he 's a douchebag . Poor U121 i 'm bo
 ??? sits with U30 Cum to my shower . lol U121 . ACTION U1370 watches his nads 
 ur nad with a stick . ca u U23 ewwww lol *sniffs* ewwwwww PART U115 ! owww spl
ACTION is resisting . ur female right lol U115 beeeeehave Remember the LAst tim
pm's me . charge that is 1.99 / min . lol @ innocent hahah lol .... yeah LOLOLO
 is 1.99 / min . lol @ innocent hahah lol .... yeah LOLOLOLLL U12 thats not nic
s . lmao no U115 Check my record . :) Lol lick em U7 U23 how old r u lol Way to
true contemptible christian abundant few part mean careful puzzled
mystifying passing curious loving wise doleful gamesome singular
delightfully perilous fearless
-----分割线----
very so exceedingly heartily a as good great extremely remarkably
sweet vast amazingly
am_glad a_pretty a_lucky is_pretty be_glad
long , from one to the top - mast , and no coffin and went out a sea
captain -- this peaking of the whales . , so as to preserve all his
might had in former years abounding with them , they toil with their
lances , strange tales
long , from one to the top - mast , and no coffin and went out a sea
captain -- this peaking of the whales . , so as to preserve all his
might had in former years abounding with them , they toil with their
lances , strange tales
44764
16.050197203298673
5
1.457806031353621
16.050197203298673
text5 diversity is 7.420046158918563
in text4,a percentage 1.457806031353621%
<FreqDist with 19317 samples and 260819 outcomes>

<Figure size 640x480 with 1 Axes>
<Figure size 1000x600 with 1 Axes>
'''

可视化输出:

词汇分布图 显示了特定单词在文本中的出现位置,便于分析这些单词在不同部分的分布情况。

图片

词频分布图 则展示了文本中高频词汇的出现次数,帮助识别和分析文本中的重要词汇和常用词汇的使用频率。

图片

NLTK 是一个强大且灵活的自然语言处理工具包,适用于学术研究和教育。它提供了丰富的工具和资源,可以完成从文本预处理到高级语言分析的各种任务。通过结合使用 NLTK 的各种功能,我们可以构建复杂的自然语言处理应用程序,并深入理解语言数据。

以上内容总结自网络,如有帮助欢迎转发,我们下次再见!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/791969.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SAP与税控系统集成案例

一、项目背景 重庆润通控股有限公司成立于2007年&#xff0c;是一家集合汽柴油动力及终端、摩托车、储能电源、汽车零部件、金融服务等产业的多元化集团公司。 大量订单数据导致订单业务会很复杂&#xff0c;为提供订单完成质量&#xff0c;引入税控系统服务商进行订单开票…

实战精选 | 如何在一台 Linux AI PC 上高效运行 OpenVINO™

点击蓝字 关注我们 作者&#xff1a;Adrian Boguszewski&#xff0c;英特尔 AI 软件布道师 武卓博士&#xff0c;英特尔 AI 软件布道师 什么是 AI PC&#xff0c;为什么它有一个特殊的名字&#xff1f; AI PC 是时下 PC 领域的一个热门话题。与普通 PC 不同&#xff0c;AI PC 配…

linux 0.11 中的重要的全局变量

通过对全局变量的了解&#xff0c;也有助于了解整个代码的逻辑。就跟学习类一样&#xff0c;了解类有哪些成员变量&#xff0c;也有助于了解类的成员函数的功能。 &#xff08;1&#xff09;内存初始化相关 static u_char mem_map [ PAGING_PAGES ] { 0 , } .本数组对 1M 以外…

JavaSE 面向对象程序设计进阶 IO 练习读取多个对象

练习读取多个对象 用序列化流将对象写入文件 import java.io.*; import java.nio.charset.Charset;public class Main {public static void main(String[] args) throws IOException, ClassNotFoundException {//序列化多个对象Person p1new Person("多多", 男,20)…

动手学深度学习(Pytorch版)代码实践 -循环神经网络-57长短期记忆网络(LSTM)

57长短期记忆网络&#xff08;LSTM&#xff09; 1.LSTM原理 LSTM是专为解决标准RNN的长时依赖问题而设计的。标准RNN在训练过程中&#xff0c;随着时间步的增加&#xff0c;梯度可能会消失或爆炸&#xff0c;导致模型难以学习和记忆长时间间隔的信息。LSTM通过引入一组称为门…

55070-001J 同轴连接器

型号简介 55070-001J是Southwest Microwave的连接器。这款连接器外壳和中心接触件采用 BeCu 合金制成&#xff0c;这是一种具有良好导电性和机械性能的铜合金。绝缘珠则使用了 PEEK HT 材料制成&#xff0c;这是一种耐高温、耐化学腐蚀的工程塑料。为了确保连接的可靠性和稳定性…

旷野之间11 - 开源 SORA 已问世!训练您自己的 SORA 模型!

​​​​​ 目前最接近 SORA 的开源模型是 Latte,它采用了与 SORA 相同的 Vision Transformer 架构。Vision Transformer 究竟有何独特之处?它与之前的方法有何不同? Latte 尚未开源其文本转视频训练代码。我们复制了论文中的文本转视频训练代码,并将其提供给任何人使用,…

袋鼠云产品支持全栈信创适配,更加安全可靠、自主可控

随着国产替换的深化&#xff0c;企业对信创产品的需求逐渐融合更丰富的业务诉求以及未来数智规划&#xff0c;正从“同类替换”转向“迭代升级”。 当前&#xff0c;袋鼠云的产品与芯片、服务器、数据库、操作系统、中间件、云平台等主流信创厂商全面兼容适配&#xff0c;为企…

3.相机标定原理及代码实现(opencv)

1.相机标定原理 相机参数的确定过程就叫做相机标定。 1.1 四大坐标系及关系 &#xff08;1&#xff09;像素坐标系&#xff08;单位&#xff1a;像素&#xff08;pixel&#xff09;&#xff09; 像素坐标系是指相机拍到的图片的坐标系&#xff0c;以图片的左上角为坐标原点&a…

工厂人员定位系统介绍及解决方案

着现代工业不断发展&#xff0c;工厂人员定位系统已经广泛的用于各个大型工厂&#xff0c;这主要是因为UWB人员定位系统功能性非常强大&#xff0c;发挥着更加全面的功能优势&#xff0c;满足了不同厂区对工作环境的管理。而它的出现&#xff0c;将人员定位系统达到了更加精准的…

CISCN2024 RE 后两道 wp 复现

5. gdb_debug 其实逻辑还是挺简单的&#xff0c;当时没认真做 伪代码还算清晰 几个循环的加密之后判断密文 难点是前面有随机数参与加密&#xff0c;不过可以猜测随机数是不变的。 第一段加密 flag异或一组随机数&#xff0c;这里可以在异或的位置下条件断点&#xff0c;用…

windows信息收集和提权

目录 手动收集 工具收集 windows本地内核提权 本地提权 根据windows去找需要的exp进行利用 提权后结合mimikatz使用 msf提权 简单提权 生成后门 上线 BypassUAC绕过UAC提权 msf带的bypassuac模块可以尝试提权 Bypassuac提权命令操作 提权成功 ​local_exploi…

【python】随机森林预测汽车销售

目录 引言 1. 数据收集与预处理 2. 划分数据集 3. 构建随机森林模型 4. 模型训练 5. 模型评估 6. 模型调优 数据集 代码及结果 独热编码 随机森林模型训练 特征重要性图 混淆矩阵 ROC曲线 引言 随机森林&#xff08;Random Forest&#xff09;是一种集成学习方法…

全网最炸裂的5款SD涩涩模型!身体真的是越来越不好了!建议收藏,晚上自己偷偷打开看!

很多人说&#xff0c;**自从学了SD后&#xff0c;身体一天不如一天了。**今天就再接再厉&#xff0c;给大家推荐5个涩涩的模型。 【身材调节器】 顾名思义&#xff0c;这个lora可以帮你在出图时凹出想要的S型曲线。出图效果的大小由lora的权重来设定&#xff0c;权重越小越贫穷…

本地开发微信小程序,使用巴比达内网穿透

在微信小程序开发的热潮中&#xff0c;开发者常面临的一个挑战是如何在复杂的网络环境下测试和调试内网环境中的服务。巴比达正为这一难题提供了一条解决方案&#xff0c;极大简化了微信小程序与内网服务器之间通信的流程&#xff0c;加速了开发迭代周期。 以往&#xff0c;开…

3D渲染模型是白色的?问题出在以下6点,教你快速解决!

你的3D模型渲染出来是不是黑色、白色、粉色或者扭曲的&#xff1f; 出现这种情况很有可能是你的贴图纹理丢失或损坏&#xff01; 幸运的是&#xff0c;有一些常见的方法可以解决此问题并恢复纹理。在本文中&#xff0c;小编将分享如何排查和解决不同方案下的纹理问题。通常问…

小红书的大模型有点「怂」

大模型发展至今&#xff0c;各个公司都根据自己的业务发布了各自的大模型。而小红书作为种草类产品的代表&#xff0c;自研的大模型一直引而不发&#xff0c;还在内测阶段。 AI以及自研大模型的持续火热&#xff0c;让以原创内容为主导的小红书坐不住了。 近期&#xff0c;据多…

本周六!上海场新能源汽车数据基础设施专场 Meetup 来了

本周六下午 14:30 新能源汽车数据基础设施专场 Meetup 在上海&#xff0c;点击链接报名 &#x1f381; 到场有机会获得 Greptime 和 AutoMQ 的精美文创周边哦&#xff5e; &#x1f52e; 会后还有观众问答 & 抽奖环节等你来把神秘礼物带回家&#xff5e; &#x1f9c1; 更…

傅里叶级数的3D表示 包括源码

傅里叶级数的3D表示 包括源码 flyfish 傅里叶级数的基本形式 &#xff1a; y ( t ) ∑ n 1 , 3 , 5 , … N 4 A n π sin ⁡ ( n π T t ) y(t) \sum_{n1,3,5,\ldots}^{N} \frac{4A}{n\pi} \sin\left(\frac{n\pi}{T} t\right) y(t)n1,3,5,…∑N​nπ4A​sin(Tnπ​t) 其中&…

WPF/C#:在WPF中如何实现依赖注入

前言 本文通过 WPF Gallery 这个项目学习依赖注入的相关概念与如何在WPF中进行依赖注入。 什么是依赖注入 依赖注入&#xff08;Dependency Injection&#xff0c;简称DI&#xff09;是一种设计模式&#xff0c;用于实现控制反转&#xff08;Inversion of Control&#xff0…