RAntiquity
841 subscribers
231 photos
5 videos
4 files
461 links
Об античности на языке R и не только

@locusclassicus
加入频道
RAntiquity
Весна все ближе: и мы готовимся к путешествию в «Лес за деревьями…» с уже знакомой постоянным участникам онлайн-семинара «Цифровая среда» Ольгой Алиевой. Кандидат филологических наук, доцент Школы философии и культурологии Факультета гуманитарных наук НИУ…
Дорогие друзья, сегодня в 14-00 мск презентую итоги стилометрического исследования платоновского корпуса, которым я занималась последние несколько лет.

Это последняя статья в серии, которая, по моему замыслу, должна подвести некоторый итог всей работе. После этого, надеюсь, в моей жизни наступит сплошная метафизика.

Судя по рецензии, которую я на днях получила, поспорить сегодня будет о чем. Зарегистрироваться и подключиться можно по ссылке выше.

В согласии с принципами reproducible research делюсь репозиторием с данными, кодом, а также ссылкой на сегодняшнюю презентацию: https://github.com/locusclassicus/plato_new_model_2024
🔍 Как собрать датасет на основе библиографических данных Скопуса*

Понадобятся:
- API (https://dev.elsevier.com/),
- VPN
- пакет {rscopus} и обычный {tidyverse}


install.packages("rscopus")
library(rscopus)
library(tidyverse)

Sys.setenv(Elsevier_API = "0a0a0a0a0a0")
# проверяем
have_api_key()


Отправляем запрос. Я ищу по слову Plato в заголовке и предметной области ARTS. Уменьшите max_count или count, если функция капризничает.


res = scopus_search(query = "TITLE(Plato) AND SUBJAREA(ARTS)", max_count = 1000, count = 10, view = "STANDARD")


Тайдифицируем. Я забираю не все поля, посмотрите сами, что вам может быть интересно. Векторизованное переименование всех столбцов — разве это не красиво?


entries_df <- res$entries |>
gen_entries_to_df()

entries_df <- entries_df$df |>
select(`dc:title`, `dc:creator`,
`prism:publicationName`, `prism:coverDate`,
`subtypeDescription`) |>
rename_with(~ str_remove(., "^.*:"))


Повторить. Забрав первую сотню/тысячу описаний, можно использовать аргумент start = 1001 и т.п. Так вы начнете выгрузку со второй тысячи. Полученные датафреймы легко слепить воедино.

Исследовать. У меня получилось 5000 публикаций со словом Plato в заглавии, от 2025 до 1973 г. Что с ними делать, пока не решила. Может и не буду ничего делать 🤩 Публиковать датасеты Elsevier не разрешает, так что я просто сижу ищу друзей и знакомых
Please open Telegram to view this post
VIEW IN TELEGRAM
RAntiquity
🔍 Как собрать датасет на основе библиографических данных Скопуса* Понадобятся: - API (https://dev.elsevier.com/), - VPN - пакет {rscopus} и обычный {tidyverse} install.packages("rscopus") library(rscopus) library(tidyverse) Sys.setenv(Elsevier_API = "0a0a0a0a0a0")…
Ну вот например. И это только публикации с вхождением “Платон” в названии, то есть лишь некоторая часть того, что о нем пишется.
Сравниваем тексты с {diffobj}


ed1 <- "В начале было Слово, и Слово было у Бога, и Слово было Бог."
ed2 <- "Вначале было Слово, и Слово было к Богу, и Бог был Слово."

# Визуализация изменений
library(diffobj)
diffChr(ed1, ed2, mode = "sidebyside")


Ссылка на техническую документацию. Результат можно встраивать в markdown и shiny.

p.s. первая-то редакция получше будет
Гераклит называл Пифагора κοπίδων ἀρχηγός, “предводитель мошенников”, а всякий уважающий себя философ, как говорил Ямвлих, должен взять себе в руководители “родоначальника и отца божественной философии”.

Поэтому сегодня маленькая хитрость для тех, кто уже научился реферировать статьи с чатом GPT, но еще не придумал, как безболезненно скормить ему монографию. Для этого придется разрезать ее на главы, и самый простой способ это сделать в R — пакет {qpdf}


library(qpdf)

pdf_subset(input = “book.pdf",
output = "chapter.pdf",
pages = 10:20)


Дальше вы знаете что делать 🐳 Но, как показывает практика, надо хорошо подумать над промптом, т.е. по сути сначала прочесть источник, а потом уже задавать вопросы машине. Иначе получится обо всем и ни о чем.
Вот такую чудесную мимозу подарили сегодня студенты. С радостью делюсь и желаю, чтобы всем нам удавалось, подобно мифическому Орфею, оживлять пением камни и данные. С праздником 🌼
Хорошая новость для тех, кому приходится распознавать тексты в дореформенной орфографии.

Борис Орехов опубликовал датасет, а Александра Горшенина написала под него код, позволяющий дообучать модели Tesseract для русского языка. За основу взят мастер-класс Андре Круса с примерами дообучения для распознавания математических символов.

Очень полезная в филологическом хозяйстве вещь! Спасибо коллегам.
Как сделать так, чтобы RStudio «понимал» латынь


- Скачиваем https://latin-dict.github.io/docs/hunspell.html архив hunspell-la.zip и распаковываем его

- Находим на компьютере директорию со словарями:
• Linux and macOS: ~/.config/rstudio/dictionaries/languages-system/
• Windows: %AppData%\RStudio\dictionaries\languages-system\

- Добавляем туда два файла (с расширениями .dic и .aff) из архива

- После этого перезапускаем RStudio, идем в Tools — Global Options — Spelling, проверяем, что новый словарь доступен в списке словарей. Все, можно работать.
Просто зафиксирую для истории тот день, когда GPT начал мной командовать. Раньше он все больше говорил "Рад был вам помочь" или "Могу ли еще что-то сделать?" А теперь сплошные императивы, и какие. "Отпишитесь" 😬
В сети опубликована запись «Цифровой среды» с Ольгой Алиевой

🙂 Делимся новой записью онлайн-семинара Института цифровых гуманитарных исследований (DHRI) СФУ «Цифровая среда».

Кандидат филологических наук, доцент Школы философии и культурологии факультета гуманитарных наук НИУ ВШЭ и автор телеграм-канала RAntiquity Ольга Алиева рассказала об использовании филогенетических методов для определения авторства и хронологии платоновских текстов и поделилась важными итогами своего исследования.

Доклад «Лес за деревьями: филогенетические методы на службе платоноведения» будет интересен широкому кругу слушателей – тем, кто стремится по-новому взглянуть на исследования авторства и готов пересмотреть стереотипы, связанные со стилометрией.

Смотрим:

🔜 YouTube
🔜 Rutube
🔜 VK Видео

Здесь можно ознакомиться с перечнем всех выпусков «Цифровой среды» (гости семинара – исследователи-историки, филологи, лингвисты, культурологи, и не только).

#приоритет2030 #dhri #ицги #цифроваясреда #языкR #стилометрия
Please open Telegram to view this post
VIEW IN TELEGRAM
RAntiquity
Второй модуль позади, а значит мы с магистрами прошли еще 8 тем курса “Компьютерный анализ текста в R” #tar2024 . Как и в прошлый раз, делюсь ссылками на уроки и на видео. 2️⃣6️⃣1️⃣2️⃣ 9️⃣ Регулярные выражения (видео, текст). 🔟 Веб-скрапинг (видео,…
Третий модуль «Компьютерного анализа текста» #tar2024 (он же и 2025) подходит к концу, а значит я снова публикую текст и видео к урокам. Почти весь модуль посвящен деревьям и сетям 🕸️

1) Тематическое моделирование с LDA (текст, видео). Датасет: новости Lenta.Ru. Бонус: код и данные для статьи «Танцы, эрос и зачатие: о чем писали “Платоновские исследования” за последние 10 лет». К статье есть видео прошлогоднего выступления на «Цифровой среде».

2) Кластеризация и метод главных компонент (текст, видео). Датасеты: на дом — сценарий сериала «Друзья» из пакета {friends} для кластеризации персонажей; аудиторная — датасет Galbraith из пакета {stylo} на определение авторства романа, написанного Роулинг под псевдонимом. И еще немного пингвинов из {palmerpenguins} для упражнения. Потому что пингвины лишними не бывают.

3) Стилометрический анализ с пакетом stylo (текст, видео). Датасет: древнегреческая литература, собранная автором для статьи «Delta Берроуза для древнегреческих авторов: опыт применения» (выборочно, ссылка на репозиторий). Также очень пригодились данные, опубликованные Даниилом Скоринкиным @fckndh. Даня, спасибо, особенно за Ильфа и Петрова!

4) Консенсусные деревья и сети (текст, видео). Аудиторная работа на том же Galbraith (он же Роулинг), домашняя — датасет Бориса Орехова «Стилеметрические данные “Тихого Дона” и современной ему прозы». Бонус: видео выступления на «Цифровой среде» с докладом «Лес за деревьями: филогенетические методы на службе платоноведения» (дискутант: Артем Юнусов из ИФЕ @philosophy_diary).

5) Сетевые данные в igraph (текст, видео). Датасеты из пакета {networkdata}, а также собранный Борисом Ореховым «Словарь русских писателей XVIII века: сеть персоналий».

6) Графический дизайн сетей с ggraph и visNetwork (текст, видео). Датасет: Тюдоры из пакета {historydata}.

7) Анализ сетей и обнаружение сообществ (текст, видео). Датасет: драматический корпус Dracor. На дом: сети Ходасевича (снова спасибо Борису Орехову) и сети «Войны и мира» (снова спасибо Даниилу Скоринкину).

Ссылка на весь видео-плейлист. Всего там 23 записи за этот учебный год.

🖥 Ссылка на репозиторий для issues и пул-реквестов.

Я уползаю готовиться к четвертому модулю, в планах добраться до многослойного перцептрона, но это уж как пойдет
Please open Telegram to view this post
VIEW IN TELEGRAM
Осваиваю веселенький пакет FastTextR (снова неутомимый Эмиль Хвитфельдт!), позволяющий работать с предобученными эмбеддингами. Хочется, глядя на это, сказать голосом Любшина:
Please open Telegram to view this post
VIEW IN TELEGRAM
В рубрике BEST DH TRAINING MATERIALS ищите вашу locusclassicus ☺️ http://dhawards.org/dhawards2024/voting/

Конкуренция серьезная, но хорошая новость в том, что можно голосовать в разных номинациях за разные проекты.

P.S. Расшары друзьям и знакомым кролика приветствуются! Правила конкурса это допускают
Как проверить латинский текст на опечатки и ошибки распознавания с пакетами {hunspell} и {spelling}

Это решение подойдет для быстрой “очистки” после OCR. Код позволяет выбрать замену слова или скипнуть исправление в интерактивном режиме.

https://teletype.in/@locusclassicus/BBSaUFXR-1S