语言识别
编辑语言识别
编辑语言识别使您可以确定文本的语言。
您的集群中提供了一个语言识别模型,您可以通过其模型 ID(lang_ident_model_1
)在摄取管道的推理处理器中使用它。有关示例,请参阅将 NLP 推理添加到摄取管道。
传递到语言识别模型的文本越长,模型识别语言的准确性就越高。它在某些语言的短样本(例如,50 个字符长的流)中相当准确,但彼此相似的语言基于短字符流更难以识别。如果无法推断出有效的文本以进行身份识别,则模型将返回特殊语言代码 zxx
。如果您希望使用不同的默认值,可以调整摄取管道以将 zxx
预测替换为您首选的值。
在构建特征集时,语言识别会考虑 Unicode 边界。如果文本带有变音符号,则模型会使用该信息来识别文本的语言。在某些情况下,即使语言并非使用该语言传统上使用的文字书写,模型也可以检测到源语言。这些语言在支持的语言表(见下文)中用 Latn
子标签标记。语言识别支持 Unicode 输入。
支持的语言
编辑下表包含语言识别支持的语言的 ISO 代码和英文名称。如果一种语言具有 2 个字母的 ISO 639-1
代码,则表中包含该标识符。否则,将使用 3 个字母的 ISO 639-2
代码。Latn
子标签表示该语言已音译为拉丁文字母。
代码 |
语言 |
代码 |
语言 |
代码 |
语言 |
af |
南非荷兰语 |
hr |
克罗地亚语 |
pa |
旁遮普语 |
am |
阿姆哈拉语 |
ht |
海地克里奥尔语 |
pl |
波兰语 |
ar |
阿拉伯语 |
hu |
匈牙利语 |
ps |
普什图语 |
az |
阿塞拜疆语 |
hy |
亚美尼亚语 |
pt |
葡萄牙语 |
be |
白俄罗斯语 |
id |
印尼语 |
ro |
罗马尼亚语 |
bg |
保加利亚语 |
ig |
伊博语 |
ru |
俄语 |
bg-Latn |
保加利亚语 |
is |
冰岛语 |
ru-Latn |
俄语 |
bn |
孟加拉语 |
it |
意大利语 |
sd |
信德语 |
bs |
波斯尼亚语 |
iw |
希伯来语 |
si |
僧伽罗语 |
ca |
加泰罗尼亚语 |
ja |
日语 |
sk |
斯洛伐克语 |
ceb |
宿务语 |
ja-Latn |
日语 |
sl |
斯洛文尼亚语 |
co |
科西嘉语 |
jv |
爪哇语 |
sm |
萨摩亚语 |
cs |
捷克语 |
ka |
格鲁吉亚语 |
sn |
绍纳语 |
cy |
威尔士语 |
kk |
哈萨克语 |
so |
索马里语 |
da |
丹麦语 |
km |
高棉语 |
sq |
阿尔巴尼亚语 |
de |
德语 |
kn |
卡纳达语 |
sr |
塞尔维亚语 |
el |
现代希腊语 |
ko |
韩语 |
st |
南索托语 |
el-Latn |
现代希腊语 |
ku |
库尔德语 |
su |
巽他语 |
en |
英语 |
ky |
吉尔吉斯语 |
sv |
瑞典语 |
eo |
世界语 |
la |
拉丁语 |
sw |
斯瓦希里语 |
es |
西班牙语,卡斯蒂利亚语 |
lb |
卢森堡语 |
ta |
泰米尔语 |
et |
爱沙尼亚语 |
lo |
老挝语 |
te |
泰卢固语 |
eu |
巴斯克语 |
lt |
立陶宛语 |
tg |
塔吉克语 |
fa |
波斯语 |
lv |
拉脱维亚语 |
th |
泰语 |
fi |
芬兰语 |
mg |
马达加斯加语 |
tr |
土耳其语 |
fil |
菲律宾语 |
mi |
毛利语 |
uk |
乌克兰语 |
fr |
法语 |
mk |
马其顿语 |
ur |
乌尔都语 |
fy |
西弗里斯兰语 |
ml |
马拉雅拉姆语 |
uz |
乌兹别克语 |
ga |
爱尔兰语 |
mn |
蒙古语 |
vi |
越南语 |
gd |
盖尔语 |
mr |
马拉地语 |
xh |
科萨语 |
gl |
加利西亚语 |
ms |
马来语 |
yi |
意第绪语 |
gu |
古吉拉特语 |
mt |
马耳他语 |
yo |
约鲁巴语 |
ha |
豪萨语 |
my |
缅甸语 |
zh |
中文 |
haw |
夏威夷语 |
ne |
尼泊尔语 |
zh-Latn |
中文 |
hi |
印地语 |
nl |
荷兰语,佛兰芒语 |
zu |
祖鲁语 |
hi-Latn |
印地语 |
no |
挪威语 |
||
hmn |
苗语 |
ny |
奇切瓦语 |
语言识别的示例
编辑在下面的示例中,我们将包含变音符号的简短匈牙利语文本和几个英语单词输入到经过训练的语言识别模型中。该模型以高概率正确地将文本识别为匈牙利语。
POST _ingest/pipeline/_simulate { "pipeline":{ "processors":[ { "inference":{ "model_id":"lang_ident_model_1", "inference_config":{ "classification":{ "num_top_classes":5 } }, "field_map":{ } } } ] }, "docs":[ { "_source":{ "text":"Sziasztok! Ez egy rövid magyar szöveg. Nézzük, vajon sikerül-e azonosítania a language identification funkciónak? Annak ellenére is sikerülni fog, hogy a szöveg két angol szót is tartalmaz." } } ] }
在上例中,num_top_classes
值表示仅报告前五种语言(即概率最高的语言)。
请求返回以下响应
{ "docs" : [ { "doc" : { "_index" : "_index", "_type" : "_doc", "_id" : "_id", "_source" : { "text" : "Sziasztok! Ez egy rövid magyar szöveg. Nézzük, vajon sikerül-e azonosítania a language identification funkciónak? Annak ellenére is sikerülni fog, hogy a szöveg két angol szót is tartalmaz.", "ml" : { "inference" : { "top_classes" : [ { "class_name" : "hu", "class_probability" : 0.9999936063740517, "class_score" : 0.9999936063740517 }, { "class_name" : "lv", "class_probability" : 2.5020248433413966E-6, "class_score" : 2.5020248433413966E-6 }, { "class_name" : "is", "class_probability" : 1.0150420723037688E-6, "class_score" : 1.0150420723037688E-6 }, { "class_name" : "ga", "class_probability" : 6.67935962773335E-7, "class_score" : 6.67935962773335E-7 }, { "class_name" : "tr", "class_probability" : 5.591166324774555E-7, "class_score" : 5.591166324774555E-7 } ], "predicted_value" : "hu", "model_id" : "lang_ident_model_1" } } }, "_ingest" : { "timestamp" : "2020-01-22T14:25:14.644912Z" } } } ] }