<?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; случайный лес</title>
	<atom:link href="http://web.snauka.ru/issues/tag/sluchaynyiy-les/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/2025/04/103223</link>
		<comments>https://web.snauka.ru/issues/2025/04/103223#comments</comments>
		<pubDate>Tue, 22 Apr 2025 09:24:42 +0000</pubDate>
		<dc:creator>Абраев Айдар Фаритович</dc:creator>
				<category><![CDATA[05.00.00 ТЕХНИЧЕСКИЕ НАУКИ]]></category>
		<category><![CDATA[Kaggle]]></category>
		<category><![CDATA[агроаналитика]]></category>
		<category><![CDATA[агротехнологии]]></category>
		<category><![CDATA[дикая черника]]></category>
		<category><![CDATA[климатические данные]]></category>
		<category><![CDATA[машинное обучение]]></category>
		<category><![CDATA[нормализация данных]]></category>
		<category><![CDATA[прогнозирование урожайности]]></category>
		<category><![CDATA[случайный лес]]></category>
		<category><![CDATA[экология]]></category>

		<guid isPermaLink="false">https://web.snauka.ru/issues/2025/04/103223</guid>
		<description><![CDATA[Введение Прогнозирование урожайности сельскохозяйственных культур является одной из ключевых задач агроаналитики. Особую актуальность приобретает оценка урожайности дикорастущих ягод, таких как черника, которая обладает высокой пищевой и лекарственной ценностью. В рамках соревнования на платформе Kaggle [1] участникам предлагалось спрогнозировать урожайность дикой черники по множеству природных и климатических факторов. Методология Обработка данных Были использованы данные из файлов [...]]]></description>
			<content:encoded><![CDATA[<p><span><strong>Введение</strong><br />
</span></p>
<p><span>Прогнозирование урожайности сельскохозяйственных культур является одной из ключевых задач агроаналитики. Особую актуальность приобретает оценка урожайности дикорастущих ягод, таких как черника, которая обладает высокой пищевой и лекарственной ценностью. В рамках соревнования на платформе Kaggle [1] участникам предлагалось спрогнозировать урожайность дикой черники по множеству природных и климатических факторов.<br />
</span></p>
<p><span><strong>Методология</strong><br />
</span></p>
<p><span><strong>Обработка данных</strong><br />
</span></p>
<p><span>Были использованы данные из файлов train.csv и test.csv, содержащих характеристики окружающей среды: температура, влажность, кислотность почвы и др. После исключения неинформативных столбцов и идентификаторов была проведена стандартизация признаков.<br />
</span></p>
<p><span>Таблица 1. Основные этапы обработки данных<br />
</span></p>
<div>
<table style="border-collapse: collapse;" border="0">
<colgroup>
<col style="width: 373px;" />
<col style="width: 373px;" /></colgroup>
<tbody valign="top">
<tr style="height: 41px;">
<td style="padding-left: 9px; padding-right: 9px; border-width: 1pt 0.5pt 1pt 1pt; border-style: solid; border-color: initial; text-align: center;"><strong>Этап обработки</strong></td>
<td style="padding-left: 9px; padding-right: 9px; border-top: 1pt solid; border-left: none; border-bottom: 1pt solid; border-right: 0.5pt solid; text-align: center;"><strong>Описание</strong></td>
</tr>
<tr style="height: 67px;">
<td style="padding-left: 9px; padding-right: 9px; border-top: none; border-left: solid 1pt; border-bottom: solid 1pt; border-right: solid 1pt;"><span>Импорт данных</span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top: none; border-left: none; border-bottom: solid 1pt; border-right: solid 1pt;"><span>Загрузка из файлов train.csv и test.csv</span></td>
</tr>
<tr style="height: 67px;">
<td style="padding-left: 9px; padding-right: 9px; border-top: none; border-left: solid 1pt; border-bottom: solid 1pt; border-right: solid 1pt;"><span>Определение признаков</span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top: none; border-left: none; border-bottom: solid 1pt; border-right: solid 1pt;"><span>Исключение столбца id, выбор числовых признаков</span></td>
</tr>
<tr style="height: 94px;">
<td style="padding-left: 9px; padding-right: 9px; border-top: none; border-left: solid 1pt; border-bottom: solid 1pt; border-right: solid 1pt;"><span>Масштабирование</span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top: none; border-left: none; border-bottom: solid 1pt; border-right: solid 1pt;"><span>Стандартизация признаков по среднему и стандартному отклонению</span></td>
</tr>
<tr style="height: 68px;">
<td style="padding-left: 9px; padding-right: 9px; border-top: none; border-left: solid 1pt; border-bottom: solid 1pt; border-right: solid 1pt;"><span>Разделение выборки</span></td>
<td style="padding-left: 9px; padding-right: 9px; border-top: none; border-left: none; border-bottom: solid 1pt; border-right: solid 1pt;"><span>Обучающая и тестовая выборка разделены по принципу задания</span></td>
</tr>
</tbody>
</table>
</div>
<p><span>Визуализация данных<br />
</span></p>
<p><span>Для лучшего понимания распределения и взаимосвязей между признаками на этапе анализа данных были построены графики распределения, тепловые карты корреляции и диаграммы рассеяния. Это позволило выявить потенциальные зависимости между климатическими переменными и уровнем урожайности.<br />
</span></p>
<p style="text-align: center;"><img src="https://web.snauka.ru/wp-content/uploads/2025/04/042225_0920_1.png" alt="" /><span><strong><br />
</strong></span></p>
<p style="text-align: center;"><span>Рисунок 1. Тепловая карта корреляции признаков<br />
</span></p>
<p><span>Такие визуализации не только помогают в интерпретации данных, но и позволяют лучше понять значимость отдельных признаков при построении модели.<br />
</span></p>
<p><span>Выбор модели и настройка гиперпараметров<br />
</span></p>
<p><span>На этапе выбора модели было протестировано несколько алгоритмов: линейная регрессия, градиентный бустинг и случайный лес. Последний показал наилучшие результаты при разумном времени обучения. Гиперпараметры модели (число деревьев, глубина, случайное состояние) подбирались эмпирически с использованием кросс-валидации, что позволило избежать переобучения и повысить стабильность модели.<br />
</span></p>
<p><span>Модель и обучение<br />
</span></p>
<p><span>В качестве модели использовался алгоритм Random Forest Regressor [2], реализованный в библиотеке scikit-learn. Параметры модели:<br />
- число деревьев: 490<br />
- максимальная глубина: 7<br />
- случайное зерно: 42<br />
- количество параллельных потоков: -1</span></p>
<p>После обучения модель была применена к тестовому набору для получения предсказаний урожайности, которые были сохранены в формате csv для последующей отправки на Kaggle.</p>
<p><span><strong>Результаты</strong><br />
</span></p>
<p><span>Модель показала устойчивость к переобучению и высокую точность предсказаний на основе валидированных метрик: средняя абсолютная ошибка (MAE) и коэффициент детерминации (R²). Хотя точные оценки производительности были недоступны из-за отсутствия меток в тестовой выборке, модель успешно прошла конкурсную валидацию Kaggle.<br />
</span></p>
<p><span><strong>Возможности и перспективы развития<br />
</strong></span></p>
<p><span>Разработанная модель может быть интегрирована в геоинформационные системы (ГИС) для визуального отображения прогнозов урожайности в различных регионах. Также модель может быть адаптирована для других культур, что позволит расширить область её применения. С дальнейшим накоплением данных возможно применение более сложных нейросетевых архитектур, таких как LSTM или трансформеры, для учёта временных изменений и предсказаний на будущие сезоны.<br />
</span></p>
<p><span><strong>Заключение</strong><br />
</span></p>
<p><span>Использование алгоритма случайного леса для задачи прогнозирования урожайности дикой черники показало свою практическую состоятельность. Предложенный подход может быть расширен на другие дикорастущие культуры, учитывая доступность климатических и почвенных данных. Конкурсы подобного рода способствуют развитию аналитических навыков у студентов и специалистов, а также способствуют интеграции науки и практики в области агропромышленного комплекса.</span></p>
]]></content:encoded>
			<wfw:commentRss>https://web.snauka.ru/issues/2025/04/103223/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Разбор по косточкам: как случайный лес принимает решения на примере медицинской диагностики</title>
		<link>https://web.snauka.ru/issues/2025/11/103927</link>
		<comments>https://web.snauka.ru/issues/2025/11/103927#comments</comments>
		<pubDate>Wed, 05 Nov 2025 05:33:31 +0000</pubDate>
		<dc:creator>Пальгова Полина Павловна</dc:creator>
				<category><![CDATA[01.00.00 ФИЗИКО-МАТЕМАТИЧЕСКИЕ НАУКИ]]></category>
		<category><![CDATA[ансамбли]]></category>
		<category><![CDATA[бэггинг]]></category>
		<category><![CDATA[дерево решений]]></category>
		<category><![CDATA[диабет]]></category>
		<category><![CDATA[Классификация]]></category>
		<category><![CDATA[машина опорных векторов]]></category>
		<category><![CDATA[машинное обучение]]></category>
		<category><![CDATA[медицинская диагностика]]></category>
		<category><![CDATA[правило большинства]]></category>
		<category><![CDATA[случайный лес]]></category>

		<guid isPermaLink="false">https://web.snauka.ru/issues/2025/11/103927</guid>
		<description><![CDATA[Научный руководитель: Вильданов Алмаз Нафкатович к.ф.-м.н., Уфимский университет науки и технологий, Нефтекамский филиал 1. Задача (Постановка проблемы) В задачах бинарной классификации, таких как медицинская диагностика, критически важна не только точность, но и устойчивость прогноза. Одно дерево решений может быть неустойчивым и сильно зависеть от шума в данных. Как создать модель, которая была бы более надежной и точной? [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;" align="right"><em>Научный руководитель: Вильданов Алмаз Нафкатович<br />
</em><em>к.ф.-м.н., </em><em>Уфимский университет науки и технологий, Нефтекамский филиал</em></p>
<h3><strong>1. Задача (Постановка проблемы)</strong></h3>
<p>В задачах бинарной классификации, таких как медицинская диагностика, критически важна не только точность, но и устойчивость прогноза. Одно дерево решений может быть неустойчивым и сильно зависеть от шума в данных. Как создать модель, которая была бы более надежной и точной? Решением этой проблемы является использование ансамблей — комитета моделей, которые совместно принимают решение.</p>
<p><strong>Конкретная задача:</strong> Имея данные пациента (ИМТ = 28, Возраст = 60) и структуру обученного случайного леса из трех деревьев, необходимо:</p>
<ol>
<li>Определить индивидуальный прогноз каждого дерева.</li>
<li>Вывести итоговый прогноз леса по правилу большинства голосов.</li>
<li>Выявить дерево, прогноз которого отличается от остальных.</li>
</ol>
<h3><strong>2. Теория</strong></h3>
<p><strong>Случайный лес (Random Forest)</strong> — это алгоритм машинного обучения, относящийся к группе ансамблевых методов. Его основная идея — <strong>бэггинг (Bootstrap Aggregating)</strong> и <strong>случайность</strong>.</p>
<ul>
<li><strong>Ансамблирование:</strong> Принцип «один за всех, и все за одного». Вместо одного сложного дерева строится множество (лес) более простых. Каждое дерево в лесе «голосует» за тот или иной класс.</li>
<li><strong>Бэггинг:</strong> Каждое дерево обучается на своем, случайном подмножестве исходных данных. Это позволяет деревьям быть разнообразными и не повторять ошибки друг друга.</li>
<li><strong>Случайность признаков:</strong> При построении каждого узла дерева рассматривается не все множество признаков, а лишь их случайное подмножество. Это заставляет деревья быть еще более независимыми.</li>
</ul>
<p><strong>Преимущества подхода:</strong></p>
<ul>
<li><strong>Высокая точность:</strong> Коллективное решение обычно лучше индивидуального.</li>
<li><strong>Устойчивость к переобучению:</strong> Разные деревья компенсируют переобучение друг друга.</li>
<li><strong>Робастность:</strong> Устойчив к выбросам и шуму в данных.</li>
</ul>
<h3><strong>3. Решение (Практическая реализация)</strong></h3>
<p>Проведем пациента с данными <strong>(ИМТ=28, Возраст=60)</strong> через каждое из трех деревьев.</p>
<p><strong>Дерево 1:</strong></p>
<ol>
<li><strong>Правило:</strong> ИМТ ≤ 30? Да, 28 ≤ 30.</li>
<li>Следуем по левой ветке и сразу попадаем в лист с <strong>ответом: «нет» (0)</strong>.</li>
</ol>
<p><strong>Дерево 2:</strong></p>
<ol>
<li><strong>Правило:</strong> Возраст ≤ 50? Нет, 60 &gt; 50.</li>
<li>Следуем по правой ветке.</li>
<li>Следующее правило: ИМТ ≤ 28? Да, 28 ≤ 28.</li>
<li>Следуем по левой ветке и попадаем в лист с <strong>ответом: «да» (1)</strong>.</li>
</ol>
<p><strong>Дерево 3:</strong></p>
<ol>
<li><strong>Правило:</strong> ИМТ ≤ 27? Нет, 28 &gt; 27.</li>
<li>Следуем по правой ветке.</li>
<li>Следующее правило: Возраст ≤ 45? Нет, 60 &gt; 45.</li>
<li>Следуем по правой ветке и попадаем в лист с <strong>ответом: «да» (1)</strong>.</li>
</ol>
<p><strong>Анализ голосования:</strong></p>
<ul>
<li>Дерево 1: <strong>0 («нет»)</strong></li>
<li>Дерево 2: <strong>1 («да»)</strong></li>
<li>Дерево 3: <strong>1 («да»)</strong></li>
</ul>
<p><strong>Итоговое решение по правилу большинства:</strong> Победил класс <strong>1 («да»)</strong> с двумя голосами против одного.</p>
<p><strong>Ответы на вопросы задачи:</strong></p>
<ul>
<li><strong>Итоговый прогноз:</strong> У пациента есть диабет (<strong>класс 1</strong>).</li>
<li><strong>Дерево с другим результатом:</strong> <strong>Дерево 1</strong> предсказало отсутствие диабета, в то время как Дерево 2 и Дерево 3 предсказали его наличие.</li>
</ul>
<h3><strong>4. Вывод</strong></h3>
<p>Данный пример наглядно демонстрирует мощь ансамблирования в машинном обучении. Даже несмотря на то, что одно из деревьев (Дерево 1) дало ошибочный, с точки зрения большинства, прогноз, совокупное решение леса оказалось другим и, вероятно, более точным. Это произошло потому, что Дерево 1, ориентированное в первую очередь на ИМТ, «не учло» важность возраста для данного конкретного пациента, которую смогли уловить другие деревья. Таким образом, случайный лес повышает надежность прогноза, агрегируя мнения множества слабых, но разнообразных моделей, что делает его незаменимым инструментом для решения сложных задач классификации.</p>
]]></content:encoded>
			<wfw:commentRss>https://web.snauka.ru/issues/2025/11/103927/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Бинарное кодирование категориальных признаков: теория и практика на примере признака «Служба в армии»</title>
		<link>https://web.snauka.ru/issues/2025/12/103926</link>
		<comments>https://web.snauka.ru/issues/2025/12/103926#comments</comments>
		<pubDate>Wed, 03 Dec 2025 05:44:30 +0000</pubDate>
		<dc:creator>Пальгова Полина Павловна</dc:creator>
				<category><![CDATA[01.00.00 ФИЗИКО-МАТЕМАТИЧЕСКИЕ НАУКИ]]></category>
		<category><![CDATA[ансамбли]]></category>
		<category><![CDATA[бэггинг]]></category>
		<category><![CDATA[дерево решений]]></category>
		<category><![CDATA[диабет]]></category>
		<category><![CDATA[Классификация]]></category>
		<category><![CDATA[машина опорных векторов]]></category>
		<category><![CDATA[машинное обучение]]></category>
		<category><![CDATA[медицинская диагностика]]></category>
		<category><![CDATA[правило большинства]]></category>
		<category><![CDATA[случайный лес]]></category>

		<guid isPermaLink="false">https://web.snauka.ru/issues/2025/12/103926</guid>
		<description><![CDATA[Научный руководитель: Вильданов Алмаз Нафкатович к.ф.-м.н., Уфимский университет науки и технологий, Нефтекамский филиал В области машинного обучения и анализа данных большинство алгоритмов (такие как линейная регрессия, логистическая регрессия, деревья решений и нейронные сети) работают исключительно с числовыми данными. Однако на практике исходные наборы данных часто содержат категориальные (номинальные) признаки. Примером такого признака в вашем задании является столбец [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;" align="right"><em>Научный руководитель: Вильданов Алмаз Нафкатович<br />
</em><em>к.ф.-м.н., </em><em>Уфимский университет науки и технологий, Нефтекамский филиал</em></p>
<p>В области машинного обучения и анализа данных большинство алгоритмов (такие как линейная регрессия, логистическая регрессия, деревья решений и нейронные сети) работают исключительно с числовыми данными. Однако на практике исходные наборы данных часто содержат категориальные (номинальные) признаки. Примером такого признака в вашем задании является столбец «Служил» со значениями «да» и «нет».</p>
<p><strong>Задача:</strong> Преобразовать категориальный текстовый признак «Служил» в числовой формат, пригодный для обработки алгоритмами машинного обучения, без потери его логического смысла.</p>
<h3>2. Теория</h3>
<p>Категориальные признаки — это переменные, которые принимают значение из ограниченного набора возможных вариантов (категорий). Они бывают:</p>
<ul>
<li><strong>Номинальные:</strong> Категории не имеют порядка (например, «красный», «синий», «зеленый»; «да»/«нет»).</li>
<li><strong>Порядковые:</strong> Категории имеют内在ний порядок (например, «младший», «средний», «старший»).</li>
</ul>
<p><strong>Проблема «наивного» присвоения чисел:</strong> Прямое присвоение чисел (например, «да» = 1, «нет» = 2) для номинальных признаков может ввести алгоритм в заблуждение. Модель может ошибочно интерпретировать, что «нет» (2) больше, чем «да» (1), или что расстояние между «да» и «нет» равно 1, что лишено смысла.</p>
<p><strong>Решение: Бинарное кодирование (Label Encoding для бинарных признаков)</strong><br />
Для признаков, имеющих ровно две категории (бинарных), применяется простой и эффективный метод — прямое сопоставление с числами 0 и 1. Этот частный случай более общего метода Label Encoding является безопасным, так как между двумя состояниями действительно существует лишь одно логическое «расстояние».</p>
<ul>
<li><strong>«да» → 1</strong></li>
<li><strong>«нет» → 0</strong></li>
</ul>
<p>Такой подход полностью сохраняет информативность признака, преобразуя его в удобный для вычислений формат.</p>
<h3>3. Решение (Практическая реализация)</h3>
<p>Решение задачи состоит из двух этапов: ручного преобразования (для понимания сути) и программной реализации.</p>
<p><strong>3.1. Ручное преобразование (Ответ на ваше задание)</strong><br />
Мы проходим по каждой строке Таблицы 1 и в соответствии с правилом «да» → 1, «нет» → 0 заполняем Таблицу 2.</p>
<p><strong>Таблица 2. Кодировка (результат)</strong></p>
<table width="0" border="1" cellspacing="0" cellpadding="7">
<thead>
<tr>
<td>
<p style="text-align: center;"><strong>№</strong></p>
</td>
<td style="text-align: center;"><strong>Возраст</strong></td>
<td>
<p style="text-align: center;"><strong>Служба</strong></p>
</td>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">1</td>
<td style="text-align: left;">44</td>
<td style="text-align: left;">1</td>
</tr>
<tr>
<td>2</td>
<td>41</td>
<td>0</td>
</tr>
<tr>
<td>3</td>
<td>39</td>
<td>0</td>
</tr>
<tr>
<td>4</td>
<td>17</td>
<td>1</td>
</tr>
<tr>
<td>5</td>
<td>33</td>
<td>1</td>
</tr>
<tr>
<td style="text-align: left;">6</td>
<td style="text-align: left;">47</td>
<td style="text-align: left;">0</td>
</tr>
</tbody>
</table>
<p><strong>3.2. Программная реализация на Python с использованием библиотеки Pandas</strong><br />
На практике преобразования выполняются автоматически. Вот пример кода:</p>
<p>python</p>
<p>Копировать</p>
<p>Скачать<br />
import pandas as pd</p>
<p># Создаем DataFrame из исходных данных<br />
data = {<br />
    &#8216;№&#8217;: [1, 2, 3, 4, 5, 6],<br />
    &#8216;Возраст&#8217;: [44, 41, 39, 17, 33, 47],<br />
    &#8216;Служил&#8217;: ['да', 'нет', 'нет', 'да', 'да', 'нет']<br />
}<br />
df = pd.DataFrame(data)</p>
<p># Преобразуем признак &#8220;Служил&#8221; в числовой формат<br />
df['Служба'] = df['Служил'].map({&#8216;да&#8217;: 1, &#8216;нет&#8217;: 0})</p>
<p># Выводим результат<br />
print(df[['№', 'Возраст', 'Служба']])</p>
<p># Сохраняем в CSV-файл (как в вашем задании)<br />
df[['№', 'Возраст', 'Служба']].to_csv(&#8216;my_submission.csv&#8217;, index=False)<br />
<strong>Результат выполнения кода будет в точности соответствовать заполненной вами Таблице 2.</strong></p>
<h3>4. Вывод</h3>
<p>Преобразование категориальных признаков в числовые — это критически важный и обязательный этап предобработки данных перед построением моделей машинного обучения. Для бинарных признаков, таких как «Служил», наиболее простым и корректным методом является прямое отображение значений «да»/«нет» на 1/0. Этот подход устраняет барьер между данными, понятными человеку, и данными, пригодными для машинной обработки, не искажая при этом исходную информацию и не внося ложных закономерностей в модель.</p>
]]></content:encoded>
			<wfw:commentRss>https://web.snauka.ru/issues/2025/12/103926/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
