ria pc game
fle game engine - движок для создания игр
fle game engine - движок для создания игр


Balls and holes PC game / Balls and Holes PC игра
Вакансии
Игродельня
Сегодня
16 июня 2019 20:14
Вход Регистрация Забыли пароль ?

megainformatic - Разработка программ на c++
Разработка программ на c++ В свете современного мира интерес представляет разработка программ следующих направлений: Вирусные и антивирусные программы. Вирусные - для того, чтобы смоделировать возможные уязвимости современных систем, а антивирусные - естественно для защиты от современных вирусов, как смоделированных, так и реально существующих.
подробнее...

Теги создание сайтов, создание игр, дизайн, игры, информатика, уроки photshop, php, c++, музыка, delphi, cms, робосайт
Статьи сайта
сайт megainformatic - игра Веселый Буквоежка

сайт megainformatic - Работа с базами данных MySQL

сайт megainformatic - Говорящий Комикс Веселый Буквоежка

сайт megainformatic - Добавляем созданный счетчик на все страницы Вашего Сайта

сайт megainformatic - СССР - Создаем Сайт Своими Руками - Экспорт/импорт данных из баз данных MySQL

megainformatic - СССР - Создаем Сайт Своими руками - Введение в php

megainformatic - СССР - Создаем Сайт Своими Руками - Выводим дату и время в формате RU

сайт megainformatic - уроки php

megainformatic - Уроки 3ds max

megainformatic - КАК СОЗДАТЬ СВОЮ ИГРУ - Веселый Буквоежка Ваше Визуальное Шоу / Fun Letter Eater You Visual Show

megainformatic - Формы оплаты заказа

megainformatic - оплата через систему QIWI - выбор продукта

megainformatic - КАК СОЗДАТЬ СВОЮ ИГРУ - Набор разработчика игр - Нечто: Необъяснимое - в плену желаний

megainformatic - Как создать игру ? - Программируем сами - Самый первый шаг

megainformatic - Как создать игру ? - Программируем сами - Самый первый шаг - страница 2

megainformatic - Как создать игру ? - Программируем сами - Содержание

megainformatic - Как создать игру ? - Программируем сами - Самый первый шаг - страница 3

megainformatic - Как создать игру ? - Программируем сами - Изучаем и модифицируем пример CreateDevice

megainformatic - Как создать игру ? - Программируем сами - пример CreateDevice страница 2

megainformatic - Как создать игру ? - Программируем сами - пример CreateDevice страница 3

megainformatic - Как создать игру - Vertices - Вершины - страница 1

megainformatic - Как создать игру - пример Matrices

megainformatic - Уроки Photoshop - Чудеса

megainformatic - Уроки Photoshop - Чудеса - Коллаж от нуля

megainformatic - Уроки Photoshop - Чудеса - Коллаж от нуля - страница 2

megainformatic - Уроки Photoshop - Чудеса - Коллаж от нуля - страница 3

megainformatic - Уроки Photoshop - Чудеса - Коллаж от нуля - страница 4

megainformatic - Купить Уроки Photoshop - Чудеса

megainformatic - Уроки Photoshop

megainformatic - Уроки Photoshop - Рисуем волка из мультфильма

megainformatic - Уроки Photoshop - Рисуем волка из мультфильма стр 2

megainformatic - Уроки Photoshop - Рисуем волка из мультфильма стр 3

megainformatic - Уроки Photoshop - Рисуем волка из мультфильма стр 4

megainformatic - Уроки Photoshop - Анимируем волка из мультфильма

megainformatic - Уроки Photoshop - Анимируем волка из мультфильма стр 2

megainformatic - Уроки Photoshop - Анимируем волка из мультфильма стр 3

megainformatic - Уроки Photoshop - Анимируем волка из мультфильма стр 4

megainformatic - Эмулятор игры Ну, Погоди!

megainformatic - Оплата заказа через Сбербанк

megainformatic - Пример игры с исходным кодом Donuts3D

megainformatic - Как создать игру ВЕСЕЛЫЙ БУКВОЕЖКА - программируем сами

megainformatic - Как создать игру ВЕСЕЛЫЙ БУКВОЕЖКА - создаем игровую оболочку

megainformatic - Открытый Полный Исходный код игры Дорога в Город

megainformatic - Как создать игру - Веселый Единственный Буквоежка - программируем основу будущей игры

megainformatic - Как создать игру - Веселый Единственный Буквоежка - выводим заставку

megainformatic - Как создать игру - Веселый Единственный Буквоежка - игровое меню

megainformatic - Как создать игру - Веселый Единственный Буквоежка - движение и анимация героя

Как Создать игру ВЕБ - Веселый Единственный Буквоежка - Программируем сами

Как Создать игру ВЕБ - Веселый Единственный Буквоежка - Программируем сами

megainformatic - Примеры моих работ

megainformatic - Музыкальные темы

megainformatic - Уроки Photoshop - Чудеса

megainformatic - Купить Уроки Photoshop - Чудеса

megainformatic - Онлайн Обучение, Репетитор

megainformatic - Уроки Photoshop - Рисуем и Анимируем

megainformatic - Уроки Photoshop - Рисуем и Анимируем - Урок 1 - Старт

Создание простейшей нейросети на примере распознавания цифр

нейронная сеть перцептрон

Данная статья основана на статье -

Глава 4. Персептроны

В статье объясняется понятие элементарной нейросети, персептрона и принципов
её создания на конкретном примере - программы для распознавания
цифр от 0 до 9.

Пример программы представлен на языке python.

Я привожу пример этой же программы, но на языке php, так что вы можете
увидеть результат её работы прямо здесь - на данной странице
в вашем браузере.

Результат работы программы: (при каждом обновлении страницы результат будет варьировать).

количество итераций: 10000

Вывод значений весов

0 1 0
2 0 -9
0 1 0
-11 0 1
1 1 0


обучение сети:

0 это 5? 0
1 это 5? 0
2 это 5? 0
3 это 5? 0
4 это 5? 0
6 это 5? 0
7 это 5? 0
8 это 5? 0
9 это 5? 0


тестирование сети:

Узнал 5? 1
Узнал 5 - 1? 0
Узнал 5 - 2? 1
Узнал 5 - 3? 1
Узнал 5 - 4? 1
Узнал 5 - 5? 0
Узнал 5 - 6? 0




Ниже привожу полный исходный код программы на языке php.

	// Цифры (Обучающая выборка)
	
	$num0 = '111101101101111';
	$num1 = '001001001001001';
	$num2 = '111001111100111';
	$num3 = '111001111001111';
	$num4 = '101101111001001';
	$num5 = '111100111001111';
	$num6 = '111100111101111';
	$num7 = '111001001001001';
	$num8 = '111101111101111';
	$num9 = '111101111001111';
	
	//Список всех вышеуказанных цифр
	
	$nums = array($num0, $num1, $num2, $num3, $num4, $num5, $num6, $num7, $num8, $num9);
	
	//# Виды цифры 5 (Тестовая выборка)
	
	$num51 = '111100111000111';
	$num52 = '111100010001111';
	$num53 = '111100011001111';
	$num54 = '110100111001111';
	$num55 = '110100111001011';
	$num56 = '111100101001111';
	
	//Инициализация весов сети
	
	global $weights;
	
	$weights = array();
	
	for ( $i = 0; $i < 15; $i++ )
	{
		$weights[$i] = 0;
	}
	
	//Порог функции активации
	
	global $bias;
	
	$bias = 7;
	
	//Является ли данное число 5
	
	function proceed($number)
	{
		global $weights;
		global $bias;
	
		$net = 0;
		
		for ( $i = 0; $i < 15; $i++ )
		{
			$net += intval($number[$i]) * $weights[$i];			
		}		
		
		//превышен ли порог ?
		return $net >= $bias;
	}
	
	//Уменьшение значений весов, если сеть ошиблась и выдала 1
	
	function decrease($number) 
	{
		global $weights;	
	
		for ( $i = 0; $i < 15; $i++ )
		{
			if ( intval($number[$i]) == 1 )
			{
				$weights[$i] -= 1;
			}
		}
	}
	
	//Увеличение значений весов, если сеть ошиблась и выдала 0
	
	function increase($number) 
	{
		global $weights;
	
		for ( $i = 0; $i < 15; $i++ )
		{
			if ( intval($number[$i]) == 1 )
			{
				$weights[$i] += 1;
			}
		}
	}
	
	/*
	# Тренировка сети
	for i in range(10000):
    # Генерируем случайное число от 0 до 9
    option = random.randint(0, 9)
 
    # Если получилось НЕ число 5
    if option != 5:
        # Если сеть выдала True/Да/1, то наказываем ее
        if proceed(nums[option]):
            decrease(nums[option])
    # Если получилось число 5
    else:
        # Если сеть выдала False/Нет/0, то показываем, что эта цифра - то, что нам нужно
        if not proceed(num5):
            increase(num5)
	*/
	
	//инициализируем генератор случайных чисел
	srand((double) microtime() * 1000000);
		
	//выполняем тренировку сети
	for ( $i = 0; $i < 10000; $i++ )
	{
		//Генерируем случайное число от 0 до 9
		$option	= rand(0, 9);
		
		//Если получилось НЕ число 5
		if ( $option != 5 )
		{	
			//Если сеть выдала True/Да/1, то наказываем ее
			if ( proceed($nums[$option]) )
				decrease($nums[$option]);	
		}
		else {
		//Если получилось число 5
		
			//Если сеть выдала False/Нет/0, то показываем, что эта цифра - то, что нам
			//нужно
			if ( !proceed($num5) )
				increase($num5);
		}
	}
	
	//Вывод значений весов
	
	$c = 0;
	for ( $i = 0; $i < count($weights); $i++ )
	{
		echo $weights[$i].' ';
		$c++;
		if ( $c == 3 )
		{
			$c = 0;
			echo '<br>';
		}
	}
	echo "<br>"; echo "<br>";
	
	echo "0 это 5? ". intval(proceed($num0)); echo "<br>";
	echo "1 это 5? ". intval(proceed($num1)); echo "<br>";
	echo "2 это 5? ". intval(proceed($num2)); echo "<br>";
	echo "3 это 5? ". intval(proceed($num3)); echo "<br>";
	echo "4 это 5? ". intval(proceed($num4)); echo "<br>";
	//echo "5 это 5? ". intval(proceed($num5)); echo "<br>";
	echo "6 это 5? ". intval(proceed($num6)); echo "<br>";
	echo "7 это 5? ". intval(proceed($num7)); echo "<br>";
	echo "8 это 5? ". intval(proceed($num8)); echo "<br>";
	echo "9 это 5? ". intval(proceed($num9)); echo "<br>";
	
	echo "<br>";
	echo "<br>";
	
	echo "Узнал 5? ". intval(proceed($num5));  echo "<br>";
	echo "Узнал 5 - 1? ". intval(proceed($num51)); echo "<br>";
	echo "Узнал 5 - 2? ". intval(proceed($num52)); echo "<br>";
	echo "Узнал 5 - 3? ". intval(proceed($num53)); echo "<br>";
	echo "Узнал 5 - 4? ". intval(proceed($num54)); echo "<br>";
	echo "Узнал 5 - 5? ". intval(proceed($num55)); echo "<br>";
	echo "Узнал 5 - 6? ". intval(proceed($num56)); echo "<br>";

Теперь вы можете сами заняться созданием собственной нейросети
начав с основ.

Показанная программа является действующим реальным примером
простейшей нейронной сети, умеющей распознавать образы цифр от
0 до 9, представленных в виде строковых значений в виде побитовой
маски.

образы цифр для нейросети распознавания цифр в виде черно-белых пикселей

образы цифр для нейросети распознавания цифр в виде побитовой маски

Каждому черному пикселю соответствует значение 1, а белому - 0.

1 – 001001001001001
2 - 111001111100111
3 - 111001111001111
4 - 101101111001001
5 - 111100111001111
6 - 111100111101111
7 - 111001001001001
8 - 111101111101111
9 - 111101111001111

Эти строки и записаны в самом начале программы.

	// Цифры (Обучающая выборка)
	
	$num0 = '111101101101111';
	$num1 = '001001001001001';
	$num2 = '111001111100111';
	$num3 = '111001111001111';
	$num4 = '101101111001001';
	$num5 = '111100111001111';
	$num6 = '111100111101111';
	$num7 = '111001001001001';
	$num8 = '111101111101111';
	$num9 = '111101111001111';
megainformatic live chat
Начать беседу
X
 

Оставленные комментарии



fle game engine - движок для создания игр
fle game engine - движок для создания игр


Something: Unexplained 2 captive of desires / Нечто: Необъяснимое 2 в плену желаний
Костя Коробкин Комикс Коллекционное издание - 6 комиксов, 81 страница, 220 mp3 треков
megainformatic Размещение баннерной рекламы у нас
Время загрузки: 0,1001