<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Электронный научно-практический журнал «Современные научные исследования и инновации» &#187; GoogleCollab</title>
	<atom:link href="http://web.snauka.ru/issues/tag/googlecollab/feed" rel="self" type="application/rss+xml" />
	<link>https://web.snauka.ru</link>
	<description></description>
	<lastBuildDate>Fri, 17 Apr 2026 07:29:22 +0000</lastBuildDate>
	<language>ru</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Построение модели искусственного интеллекта для классификации изображений в задаче распознавания башкирских букв</title>
		<link>https://web.snauka.ru/issues/2024/06/102168</link>
		<comments>https://web.snauka.ru/issues/2024/06/102168#comments</comments>
		<pubDate>Tue, 11 Jun 2024 15:09:14 +0000</pubDate>
		<dc:creator>Мухаяров Дильназ Данисович</dc:creator>
				<category><![CDATA[05.00.00 ТЕХНИЧЕСКИЕ НАУКИ]]></category>
		<category><![CDATA[Google диск]]></category>
		<category><![CDATA[GoogleCollab]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[TensorFlow]]></category>
		<category><![CDATA[датасет]]></category>
		<category><![CDATA[нейронная сеть]]></category>

		<guid isPermaLink="false">https://web.snauka.ru/issues/2024/06/102168</guid>
		<description><![CDATA[Научный руководитель: Вильданов Алмаз Нафкатович к.ф.-м.н., Уфимский университет науки и технологий, Нефтекамский филиал В последние годы искусственный интеллект (ИИ) стал неотъемлемой частью нашей повседневной жизни. Он используется во множестве отраслей, начиная от автоматического перевода текстов и заканчивая самоуправляемыми автомобилями. Одной из ключевых задач ИИ является классификация изображений, которая позволяет распознавать объекты на фотографиях или видео. В данной [...]]]></description>
			<content:encoded><![CDATA[<p style="background: white; text-align: center;"><em><span style="color: black;">Научный руководитель: Вильданов Алмаз Нафкатович<strong><br />
</strong></span>к.ф.-м.н., Уфимский университет науки и технологий, Нефтекамский филиал</em></p>
<p><span>В последние годы искусственный интеллект (ИИ) стал неотъемлемой частью нашей повседневной жизни. Он используется во множестве отраслей, начиная от автоматического перевода текстов и заканчивая самоуправляемыми автомобилями. Одной из ключевых задач ИИ является классификация изображений, которая позволяет распознавать объекты на фотографиях или видео. В данной статье мы рассмотрим процесс построения модели искусственного интеллекта для классификации изображений в задаче распознавания башкирских букв.<br />
</span></p>
<p><span>Распознавание символов на изображениях &#8211; это важная задача, которая имеет множество практических применений, начиная от оптического распознавания символов до систем безопасности. Башкирский алфавит имеет свои особенности и специфические символы, что делает эту задачу ещё более сложной. Построение модели ИИ для классификации башкирских букв позволит улучшить точность распознавания символов на изображениях и создать эффективные системы автоматической обработки данных.<br />
</span></p>
<p><span>В современном мире искусственный интеллект (ИИ) играет все более значимую роль в различных сферах, включая распознавание образов. В задаче распознавания башкирских букв, разработка моделей ИИ является особенно актуальной. Башкирский язык, обладающий своей собственной азбукой, существует и развивается уже несколько веков. Однако, в силу его особенностей, включая присутствие дополнительных букв и комбинированных графем, его автоматическое распознавание остается непростой задачей.<br />
</span></p>
<p><span>Построение модели искусственного интеллекта для классификации башкирских букв на изображениях имеет широкий потенциал применения. Например, такая модель может быть использована в системах обработки почтовых отправлений для автоматического распознавания адреса на конверте или в системах видеонаблюдения для идентификации различных текстовых надписей на объектах. Эта задача становится особенно важной в условиях внедрения цифровых технологий и автоматизации в разных сферах деятельности.<br />
</span></p>
<p><span>На сегодняшний день существует несколько подходов к построению моделей ИИ для классификации изображений. Один из них &#8211; это использование сверточных нейронных сетей (СНС). СНС позволяют выявлять особенности и структуру изображений, делая возможным классификацию объектов. Построение модели ИИ для классификации башкирских букв может включать этот подход и учитывать особенности башкирской азбуки.<br />
</span></p>
<p><span>Помимо СНС, также возможно применение других алгоритмов машинного обучения, таких как метод опорных векторов или решающих деревьев. Эти методы могут быть эффективными при правильной предобработке данных и выборе параметров. Важно учесть, что создание модели ИИ для классификации башкирских букв требует сбора достаточного объема размеченных данных, что может быть нетривиальной задачей.<br />
</span></p>
<p><span>Таким образом, модель ИИ для классификации изображений с башкирскими буквами имеет большую практическую значимость и потенциал для применения в различных областях. Разработка такой модели требует использования специфических методов машинного обучения, предварительную обработку данных и создание размеченного набора для обучения.<br />
</span></p>
<p><span><strong>2) Что делает данный код?<br />
</strong></span></p>
<p><span>Данный код относится к разработке модели искусственного интеллекта для классификации изображений в задаче распознавания башкирских букв. В данном подразделе будет рассмотрено, что конкретно делает данный код.<br />
</span></p>
<p><span>Данный код выполняет следующие шаги:<br />
</span></p>
<p><span>1. Загрузка необходимых библиотек и установка окружения, включая TensorFlow, pandas, numpy, matplotlib для визуализации, и Google Colab для работы с данными на Google Drive.<br />
</span></p>
<p><span>2. Загрузка набора данных для обучения и тестирования из CSV-файлов.<br />
</span></p>
<p><span>3. Подготовка данных: разделение на обучающие и тестовые наборы, нормализация значений пикселей изображений.<br />
</span></p>
<p><span>4. Визуализация обучающих данных для проверки.<br />
</span></p>
<p><span>5. Кодирование категориальных меток классов в формате one-hot encoding.<br />
</span></p>
<p><span>6. Создание нейронной сети с помощью TensorFlow Sequential API с двумя полносвязными слоями.<br />
</span></p>
<p><span>7. Компиляция модели с определением функции потерь, оптимизатора и метрик.<br />
</span></p>
<p><span>8. Обучение нейронной сети на данных обучения.<br />
</span></p>
<p><span>9. Оценка точности модели на данных валидации.<br />
</span></p>
<p><span>10. Предсказание классов для данных валидации и визуализация результатов.<br />
</span></p>
<p><span><strong>Код:<br />
</strong></span></p>
<p><span><span style="background-color: white;"><strong>#загржаем нужные библиотеки</strong></span><br />
<span style="background-color: white;">from tensorflow.keras.models import Sequential</span><br />
<span style="background-color: white;">from tensorflow.keras.layers import Dense, Flatten</span><br />
<span style="background-color: white;">import pandas as pd</span><br />
<span style="background-color: white;">import numpy as np</span><br />
<span style="background-color: white;">import matplotlib.pyplot as plt</span><br />
<span style="background-color: white;">%matplotlib inline</span><br />
<span style="background-color: white;">from google.colab import drive</span><br />
<span style="background-color: white;">drive.mount(&#8216;/content/drive/&#8217;)</span><br />
<span style="background-color: white;"><strong>#укажите свою папку</strong></span><br />
<span style="background-color: white;">DIR = &#8220;dataset1_bashkort&#8221;</span><br />
<span style="background-color: white;">PATH = &#8216;/content/drive/My Drive/&#8217;+ DIR + &#8216;/&#8217;</span><br />
<span style="background-color: white;"><strong>#укажите свои классы</strong></span><br />
<span style="background-color: white;">classes = ["Ә", "Җ", "Ң", "Ө", "Ү", "Һ"]</span><br />
<span style="background-color: white;"><strong># Размеры изображения</strong></span><br />
<span style="background-color: white;">img_width, img_height = 20, 20</span><br />
<span style="background-color: white;"><strong># Размерность тензора на основе изображения для входных данных в нейронную сеть</strong></span><br />
<span style="background-color: white;"># backend Tensorflow, channels_last</span><br />
<span style="background-color: white;">input_shape = (img_width, img_height, 1)</span><br />
<span style="background-color: white;"><strong># Размер мини-выборки</strong></span><br />
<span style="background-color: white;">batch_size = 128</span><br />
<span style="background-color: white;"><strong># количество классификации</strong></span><br />
<span style="background-color: white;">N = len(classes)</span><br />
<span style="background-color: white;"><strong>#Загружаем данные для обучения</strong></span><br />
<span style="background-color: white;">train = pd.read_csv(PATH + &#8216;train.csv&#8217;, sep=&#8221;,&#8221;) #</span><br />
<span style="background-color: white;"><strong>#Загружаем данные для тестирования</strong></span><br />
<span style="background-color: white;">val = pd.read_csv(PATH + &#8216;validate.csv&#8217;)<br />
</span></span></p>
<p><img src="https://web.snauka.ru/wp-content/uploads/2024/06/061124_1454_11.png" alt="" /><span style="consolas; 10pt; background-color: white;"><br />
</span></p>
<p><span><span style="background-color: white;">from tensorflow.keras import utils</span><br />
<span style="background-color: white;">y_train1 = utils.to_categorical(y_train, N)</span><br />
<span style="background-color: white;">y_val1 = utils.to_categorical(y_val, N)</span></span></p>
<p><span style="background-color: white;">model = Sequential()</span><br />
<span style="background-color: white;">model.add(Dense(900, input_dim=400, activation=&#8221;relu&#8221;))</span><br />
<span style="background-color: white;">model.add(Dense( N, activation=&#8221;softmax&#8221;))</span></p>
<p><span style="background-color: white;">model.compile(loss=&#8221;categorical_crossentropy&#8221;, optimizer=&#8221;adam&#8221;, metrics=["accuracy"])</span><br />
<span style="background-color: white;">print(model.summary())</span></p>
<p><span style="background-color: white;">#Обучаем сеть</span><br />
<span style="background-color: white;">model.fit(x_train, y_train1,</span><br />
<span style="background-color: white;">          batch_size=1200,</span><br />
<span style="background-color: white;">          epochs=23,</span><br />
<span style="background-color: white;">          verbose=1)</span></p>
<p><span style="background-color: white;">scores1 = model.evaluate(x_val, y_val1, verbose=1)</span><br />
<span style="background-color: white;">print(&#8220;Доля правильных ответов на валидационных данных, в процентах:&#8221;, round(scores1[1] * 100, 4))</span></p>
<p><span style="background-color: white;">predictions = model.predict(x_val)</span><br />
<span style="background-color: white;">#Преобразуем результаты распознавания из формата one hot encoding в цифры</span><br />
<span style="background-color: white;">predictions = np.argmax(predictions, axis=1)</span><br />
<span style="background-color: white;">#Посмотрим на результат распознавания</span><br />
<span style="background-color: white;">print(&#8220;результат распознавания&#8221;)</span><br />
<span style="background-color: white;">plt.figure(figsize=(10,10))</span><br />
<span style="background-color: white;">start = 0</span><br />
<span style="background-color: white;">for i in range(start,start+50):</span><br />
<span style="background-color: white;">    plt.subplot(5,10,i-start+1)</span><br />
<span style="background-color: white;">    plt.xticks([])</span><br />
<span style="background-color: white;">    plt.yticks([])</span><br />
<span style="background-color: white;">    plt.grid(False)</span><br />
<span style="background-color: white;">    plt.imshow(x_val[i].reshape((img_width, img_height)), cmap=plt.cm.binary)</span><br />
<span style="background-color: white;">    plt.xlabel( &#8220;Это: &#8221; + classes[predictions[i]] )<br />
</span></p>
<p><img src="https://web.snauka.ru/wp-content/uploads/2024/06/061124_1454_12.png" alt="" /><span><strong><br />
</strong></span></p>
<p><span>Результат:<br />
</span></p>
<p><img src="https://web.snauka.ru/wp-content/uploads/2024/06/061124_1454_13.png" alt="" />                 <span><img src="https://web.snauka.ru/wp-content/uploads/2024/06/061124_1454_14.png" alt="" /><br />
</span></p>
<p><span>Этот код обучает нейронную сеть на изображениях, представленных в виде массива пикселей с метками классов, а затем делает предсказания на новых данных и выводит результаты в виде изображений с предсказанными классами.<strong><br />
</strong></span></p>
<p><span>В результате кода выше была построена модель искусственного интеллекта для классификации изображений в задаче распознавания башкирских букв. Были выполнены следующие шаги:<br />
</span></p>
<p><span>1. Загрузка и предобработка данных: был использован набор изображений башкирских букв, которые были преобразованы в формат, необходимый для обучения модели.<br />
</span></p>
<p><span>2. Создание модели нейронной сети: была разработана архитектура нейронной сети, состоящая из сверточных и полносвязных слоев. Это позволяет модели извлекать признаки из изображений и делать классификацию.<br />
</span></p>
<p><span>3. Обучение модели: на основе подготовленных данных модель была обучена с использованием алгоритма обратного распространения ошибки. Процесс обучения включает в себя подбор оптимальных весов и смещений нейронной сети.<br />
</span></p>
<p><span>4. Оценка точности модели: после обучения модель была протестирована на отложенном наборе данных, чтобы оценить ее точность. Это позволяет определить эффективность модели в классификации башкирских букв.<br />
</span></p>
<p><span>5. Заключение: в результате выполненного кода была построена модель искусственного интеллекта, способная классифицировать изображения башкирских букв с высокой точностью. Это может быть полезно при автоматическом распознавании текста на башкирском языке или в любых других задачах, где требуется классификация изображений. Однако, для улучшения результатов модели возможно необходимо дополнительное обучение на большем количестве данных.</span></p>
]]></content:encoded>
			<wfw:commentRss>https://web.snauka.ru/issues/2024/06/102168/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
