Перейти до вмісту

Файл:Frequency of digrams in Ukrainian words.png

Вміст сторінки не підтримується іншими мовами.
Матеріал з Вікіпедії — вільної енциклопедії.

Повна роздільність (1252 × 1252 пікселів, розмір файлу: 498 КБ, MIME-тип: image/png)

Опис файлу

Опис
English: Dot (.) represents beginning and the end of a word. Number under the bigram AB is % probability that given letter A, next letter would be B.

Diagram should be read per row. Total probability in row is 100%. First row represents probability of each character starting a word. Second - probability of characters that appear after "а".

Firsts column - probability that when we are on a character of that row, word ends. Not probability of a word ending with that character. So total sum of probabilities in column is not 100%.


Code to obtain this image:

words = open('/usr/share/dict/ukrainian').read().splitlines() # needs package wukrainian to be installed
itos = ".абвгґдеєжзиіїйклмнопрстуфхцчшщьюя'-"
stoi = {s: i for i, s in enumerate(itos)}
nchars = len(itos)

import torch
import random

N = torch.zeros((len(stoi), len(stoi)), dtype=torch.int32)
for w in words:
    chrs = ['.'] + list(w.lower()) + ['.']
    for c1, c2 in zip(chrs, chrs[1:]):
        i1 = stoi[c1]
        i2 = stoi[c2]
        N[i1, i2] += 1

P = N.float()
P = P / P.sum(1, keepdim=True)

import matplotlib.pyplot as plt
%matplotlib inline
# plt.imshow(N)
fig = plt.figure(figsize=(16, 16))
plt.imshow(P, cmap='Blues')
for i in range(nchars):
    for j in range(nchars):
        chstr = itos[i] + itos[j]
        plt.text(j, i, chstr, ha="center", va="bottom", color='gray')
        plt.text(j, i, '%.1f' % (P[i, j].item()*100.0), ha="center", va="top", color='gray')
plt.axis('off')
fig.savefig('uk_digrams.png', bbox_inches='tight')
Code following lesson The spelled-out intro to language modeling: building makemore, by Andrej Karpathy
Час створення
Джерело Власна робота
Автор Bunyk

Ліцензування

Я, власник авторських прав на цей твір, добровільно публікую його на умовах такої ліцензії:
w:uk:Creative Commons
зазначення авторства поширення на тих же умовах
Ви можете вільно:
  • ділитися – копіювати, поширювати і передавати твір
  • модифікувати – переробляти твір
При дотриманні таких умов:
  • зазначення авторства – Ви повинні вказати авторство, надати посилання на ліцензію і вказати, чи якісь зміни було внесено до оригінального твору. Ви можете зробити це в будь-який розсудливий спосіб, але так, щоб він жодним чином не натякав на те, наче ліцензіар підтримує Вас чи Ваш спосіб використання твору.
  • поширення на тих же умовах – Якщо ви змінюєте, перетворюєте або створюєте іншу похідну роботу на основі цього твору, ви можете поширювати отриманий у результаті твір тільки на умовах такої ж або сумісної ліцензії.

Підписи

Додайте однорядкове пояснення, що саме репрезентує цей файл

Об'єкти, показані на цьому файлі

зображує

Історія файлу

Клацніть на дату/час, щоб переглянути, як тоді виглядав файл.

Дата/часМініатюраРозмір об'єктаКористувачКоментар
поточний18:33, 10 серпня 2023Мініатюра для версії від 18:33, 10 серпня 20231252 × 1252 (498 КБ)BunykUploaded own work with UploadWizard

Така сторінка використовує цей файл:

Метадані