嵌入(Embeddings)

0
视频
0
完成
0%
进度
0
分钟
0
完成
0%
进度

Embeddings 这种技术可以测量文本的相关程度。使用 OpenAI 提供的 embeddings,在我们的应用实现语义搜索,聚类,推荐,异常检测等等。

在自然语言处理中,嵌入,就是把文字转换成使用数字来表示。因为对于人类来说我们能理解一句话里的每个字还有词的意思,但是计算机并不能理解这些字还有词汇的含义,所以就需要一种方法,把这些文本转换成能被计算机理解的东西,这就是嵌入这种技术。

在嵌入里面不仅会包含字的语义信息,也就是这个字或词的意思,还会包含它的上下文信息,也就是这个字或词所在的位置,还有它周围的词汇。把文本转换成嵌入以后,计算机就可以做一些任务了,比如计算相似度,做情感分析等等。

嵌入是一组数字,每个数字对应的就是文本的一个特定的特征或维度,这组数字其实是一个 Vector,也就是向量,向量就是既带方向又带大小的值。在嵌入里的数字都是小数,也就是带小数点的数字,或者叫浮点数,因为小数可以更好的表达向量在高维空间里的位置还有方向,可以更精确地捕捉到不同向量之间的语义关系。

OpenAI 提供的嵌入技术,就是通过深度学习,可以让模型把一个词或者一段文字转换成高维向量,这个向量的维度可能是几百或者几千。通过计算两个向量之间的距离,我们就可以判断它们之间的相似程度,比如可以使用 cosine similarity ,余弦相似度,它是一种比较两个向量之间的相似度用的计算方法,它测试的是两个向量之间的一个夹角的余弦值,求出来的这个值越大,就表示这两个向量越相似。

在这组练习里,我们会使用这种嵌入技术实现一个语义搜索功能,也就是搜索的结果不再依赖关键词匹配,而是计算搜索内容与被搜索的内容之间的意思的相似程度。

如果你想在大量的向量里快速搜索,需要再配合使用一种 vector database,向量数据库,比如可以使用 Pinecone 或者 Weaviate。

嵌入(Embeddings)《 OpenAI:嵌入向量 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点