Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Установка необходимых библиотек
- !pip install nltk pymorphy2
- import re
- import nltk
- import pymorphy2
- from nltk.corpus import stopwords
- from datasets import load_from_disk
- nltk.download("stopwords")
- stop_words = set(stopwords.words("russian"))
- morph = pymorphy2.MorphAnalyzer()
- # Загрузка сохраненного датасета
- dataset = load_from_disk("wikipedia_dataset")
- def preprocess_text(text):
- """Функция для очистки и нормализации текста."""
- # Приведение к нижнему регистру
- text = text.lower()
- # Удаление спецсимволов и цифр
- text = re.sub(r'[^а-яё\s]', ' ', text)
- # Токенизация и удаление стоп-слов
- tokens = [word for word in text.split() if word not in stop_words]
- # Лемматизация
- tokens = [morph.parse(word)[0].normal_form for word in tokens]
- return ' '.join(tokens)
- # Применение предобработки ко всем документам в датасете
- dataset = dataset.map(lambda x: {"text": preprocess_text(x["text"])})
- # Сохранение очищенного датасета
- dataset.save_to_disk("cleaned_wikipedia_dataset")
- print("Датасет очищен и нормализован.")
- # Установка необходимых библиотек для обработки текста
- !pip install nltk pymorphy2
- import re
- import nltk
- import pymorphy2
- from datasets import load_from_disk
- # Загрузка стоп-слов для русского языка и инициализация лемматизатора
- nltk.download("stopwords")
- stop_words = set(nltk.corpus.stopwords.words("russian"))
- morph = pymorphy2.MorphAnalyzer()
- # Загрузка ранее сохраненного датасета
- dataset = load_from_disk("wikipedia_dataset")
- def preprocess_text(text):
- """Функция для очистки и нормализации текста."""
- # Приведение к нижнему регистру
- text = text.lower()
- # Удаление спецсимволов и цифр
- text = re.sub(r'[^а-яё\s]', ' ', text)
- # Токенизация и удаление стоп-слов
- tokens = [word for word in text.split() if word not in stop_words]
- # Лемматизация
- tokens = [morph.parse(word)[0].normal_form for word in tokens]
- # Объединение обработанных токенов обратно в текст
- return ' '.join(tokens)
- # Применение предобработки ко всем документам в датасете
- dataset = dataset.map(lambda x: {"text": preprocess_text(x["text"])})
- # Сохранение очищенного датасета
- dataset.save_to_disk("cleaned_wikipedia_dataset")
- print("Датасет успешно очищен, нормализован и сохранен.")
- # Создание DataFrame для организации данных
- df = pd.DataFrame({"text": documents, "label": labels})
- # Создание датасета в формате Hugging Face datasets
- dataset = Dataset.from_pandas(df)
- # Сохранение датасета на диск
- dataset.save_to_disk("wikipedia_dataset")
- print("Датасет успешно сохранен.")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement