|
152 / 100 / 40
Регистрация: 14.10.2016
Сообщений: 379
|
||||||||||||||||
Инициализация элементов списка списков (List<List>) происходит одинаково для каждого элемента22.02.2020, 18:44. Показов 1954. Ответов 7
Доброго времени суток.
Не знаю как лучше озаглавить эту тему, но у меня проблема со следующим участком кода:
Кликните здесь для просмотра всего текста
Класс нейрона (Neuron): Кликните здесь для просмотра всего текста
Весь проект целиком можно найти тут Проблема либо в методе WeightsInitialization, либо в самой логике инициализации значений Weights нейронов Neurons слоя Layer_1. Сам код компилируется и работает, но у каждого нейрона набор весов (Weights) получается абсолютно одинаковый: Скриншот Я по-разному пробовал решить проблему - не выходит. Текущий вариант кода последний. Наверняка кривой и бестолковый, но я только начал изучать C# и многого не знаю. Вот общее описание того, что должна делать программа (Readme на GitHub): Кликните здесь для просмотра всего текста
Попытка создать простой линейный классификатор через работу с List. Цель программы:
Взять куб 2х2х2 (класс Cube) Запутать его (Scramble) Создать нейросеть из входного и выходного слоя. Слои полносвязные (Fully Connected). Инициализировать все её нейроны случайными весами. На основании состояния кубика сеть должна выдать какой ход она намерена сделать при таком состоянии кубика. Обучение нейросети будет добавлено позже. Планируется по приниципу Reinforcement Learning. Если мне удастся разобраться в том как это всё реализовать - буду считать, что я хоть немного продвинулся в изучении C#. В настоящий момент (2020-02-22) проблема в том, что инициализцаия весов нейронов происходит абсолютно одинаковыми числами для каждого нейрона. За основу этой программы была взята предыдущая версия, которая лежит в репозитории Cube-2x2.
0
|
||||||||||||||||
| 22.02.2020, 18:44 | |
|
Ответы с готовыми решениями:
7
Количество совпадений для каждого элемента List<string>
Вернуть список списков (List<List<>>) |
|
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
|||||||||||
| 22.02.2020, 20:36 | |||||||||||
|
В классе Layer, создайте приватное статическое поле рандома,
0
|
|||||||||||
|
152 / 100 / 40
Регистрация: 14.10.2016
Сообщений: 379
|
||
| 22.02.2020, 21:06 [ТС] | ||
|
Пока искал по форуму понял, что у меня ещё и количество нейронов в слое (_numberOfNeurons) является статическим, чтобы могло передаваться в конструктор. Но в этом случае получается, что количество нейронов в каждом слое будет одинаковым. А хотелось бы, чтобы это был параметр, настраиваемый для каждого экземпляра класса слоя. Т.е. индивидуальный для каждого слоя. То же самое с количеством входов на нейрон и количеством весов нейрона (_numberOfInputs в классе нейрона и _numberOfNeuronInputs в классе слоя). Можете подсказать как сделать так, чтобы эти параметры могли быть индивидуальными для экземпляров класса, но при этом их значения могли использоваться в конструкторе?
0
|
||
|
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
|||
| 22.02.2020, 21:35 | |||
|
0
|
|||
|
152 / 100 / 40
Регистрация: 14.10.2016
Сообщений: 379
|
||||||||
| 22.02.2020, 21:41 [ТС] | ||||||||
|
"Для нестатического поля метода или свойства требуется ссылка на объект".
0
|
||||||||
|
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
|
| 22.02.2020, 21:52 | |
|
Да, увидел, спасибо за подсказку.
Но я не вижу причин делать эти поля статичными.. Неужели эта статика лишь для того, чтобы можно было создать экземпляр Layer не передавая ничего в конструктор? Мне кажется что наоборот, нужно чтобы пользователь обязательно передавал все важные данные в конструктор, тем более если эти данные должны быть индивидуальными.
0
|
|
|
152 / 100 / 40
Регистрация: 14.10.2016
Сообщений: 379
|
||
| 22.02.2020, 22:01 [ТС] | ||
|
0
|
||
|
152 / 100 / 40
Регистрация: 14.10.2016
Сообщений: 379
|
||||||
| 24.02.2020, 16:50 [ТС] | ||||||
|
Нашёл ошибку! Проблема была в том, что список нейронов содержал одинаковые объекты:
0
|
||||||
| 24.02.2020, 16:50 | |
|
Помогаю со студенческими работами здесь
8
Копирование списков <List<List>>
Получение элемента из списка List<class>
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|
Фото: Daniel Greenwood
kumehtar 13.11.2025
|