научная статья по теме Адаптация линейной нейронной сети к задаче прогнозирования остаточных знаний учащихся Биология

Текст научной статьи на тему «Адаптация линейной нейронной сети к задаче прогнозирования остаточных знаний учащихся»

адаптация линейной нейронной сети к задаче прогнозирования остАточных знаний учащихся

Садыкова Р.Р., Мигранов Н.Г.

ФГБОУ ВПО «БГПУ им. М. Акмуллы», г. Уфа, РФ

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

Ключевые слова: нейронная сеть; прогнозирование; остаточные знания; моделирование; нейрон; адаптация сети; веса; смещение.

adaptation of linear neural network to predict the residual problem of students' knowledge

Sadykova R.R., Migranov N.G.

Bashkir State Pedagogical University M. Akmulla, Ufa, Russia

The article is devoted to the prediction of residual knowledge of students using linear neural network. To predict changes in the level of mastering the material over time students, a model based on the approach to the assessment continuing in different periods of knowledge within the neural networks

presented in an integrated system Matlab. These schedules take into account the impact of small fluctuations in the statistical analysis in the processing of data. This study opens the possibility of adjusting the academic discipline and to evaluate the tendency reduce the acquired material (residual knowledge) with time.

Keywords: neural network; forecasting; residual knowledge modeling; the neuron adaptation of the network; weight; displacement.

В данной работе рассмотрим пример использования однослойной статистической линейной нейронной сети (функция newlind) в задаче прогнозирования остаточных знаний учащихся 8 классов (а,б).

Проведена промежуточная аттестация учащихся 8а, 8б классов по предмету «Информатика и ИКТ». Тестовый материал (2 варианта) состоял из 20 заданий, каждое задание оценивался в 5 баллов.

Данные 8а класса

JV» Фамилия, имя ученика Опенка (I) Количество Правильн Забывание Забывание

CP) ошибок ын ответ <%) материала {%) материала (в долях)

1 Акмалов Азамат 6 70 30 0,3

2 Ahí геймов Данил 5 75 25 0,25

3. Байрамгулова Арина 8 60 40 0,4

4. Гарипова Лейсан 2 90 10 од

5 Гильванов Денис 8 60 40 0,4

6. Миннегалиева Аделина 4 80 20 ол

7. Ризванов Артем 90 10 0=1

8. Сиваков Эмиль 6 70 30 0,3

9. Султанбеков Ренат 5 75 25 0.25

10. Тухватуллин Тимур 1 95 5 0.05

11. Уринбаев Огабек 7 65 35 0.35

12. Хакимов Артур 2 90 10 0=1

13. Шигапова Алина 1 95 5 0=05

14. Егорова Изабелла 3 85 15 0=15

15. Деведжи Джан 5 75 25 0=25

16. Дубасов Иван 5 75 25 0=25

17. Киля ев Николай 9 55 45 0=45

18. Курбангалиева Камила 2 90 10 0=1

19. Лазарева Карина 3 85 15 0.15

20. Лукманова Альфира 3 85 15 0=15

21. Мельникова Дарья 2 90 10 0,1

22. Насырова Алсу 3 85 15 0,15

23. Парамонова Яна 4 80 20 0,2

Данные 8б класса

А В С D Е F G

Л". Фамвлня, имя ученика (Р) Опенка | Г> Количество ошибок Ира в ильн ы й ответ <%) Забывание материала (•/о) Забывание материала {в долях)

1. Алферов Никита 5 3 85 15 0.15

2. Аюпов Лин ар 4 4 80 20 0,2

3. Булатов Роберт 5 1 95 5 0.05

4. Габдурахманов Рустем 5 3 85 15 0.15

5 Газизов Арсен 4 б 70 30 0,3

6. Кильднярова Диана 4 5 75 25 0,25

7. Колиниченко Никита 3 7 65 35 0,35

8. Копылов Илья 4 5 75 25 0,25

9. Мгафюшва Дарина 5 3 85 15 0.15

10. Нигматуллин Эрик 5 2 90 10 0.1

11. Петровский Володя 4 б 70 30 0,3

12. Сахаутдинов Артур 4 5 75 25 0.25

13. Сираева Рената 5 1 95 5 0,05

14. Слегтынин картин 5 2 90 10 0.1

15. Степная Валерия 3 8 60 40 0.4

16. Фаттахов Ибрагим 4 4 80 20 0,2

17. Хандога Ирина 4 5 75 25 0,25

18. Эргашев Акрам 4 4 80 20 0,2

Остаточные знания - это знания учебного материала, которые сохраняются в памяти длительное время и позволяют ему использовать их в практической деятельности [4, с. 167].

Забывание - один из процессов в системе памяти, проявляющийся в невозможности (неспособности) припомнить или узнать, либо в ошибочном припоминании и узнавании информации.

Нейронная сеть (НС) - это система, которая принимает решения при множестве заданных условий (на входе много разных условий, по которым выдается решение на выходе) [2, с. 17].

Одношаговое прогнозирование - это прогнозирование, когда один входной вектор отображается в выходной вектор.

Для моделирования нейронной сети воспользуемся программой Matlab/Simulink. Рассмотрим функцию создания слоя линейных нейронов newlin (PR, S, id, lr): PR - Rx2 - матрица минимальных и максимальных значений для R-входных элементов; S - число элементов в выходном слое; id-вектор входной задержки, по умолчанию [0]; lr - коэффициент обучения, по умолчанию 0,01. Функция newlin требует дополнительного обучения [5, с. 170].

Функция newlind (P,T) проектирования нового слоя методом наименьших квадратов (МНК) определяет веса и смещения линейной сети. Начальные веса и смещение по умолчанию равны нулю.

Для того чтобы построить прогнозы НС, необходимо моделировать сеть с вектором P, а не с T. В нашей модели вход (P) и выход (T) связаны между собой линейно.

Рассмотрим алгоритм настройки линейной НС с использованием функции newlind на примере данных промежуточной аттестации учащихся 8а и 8б классов средней общеобразовательной школы.

P = [1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 ]; Ряд забывания:

T = [0.300 0.250 0.400 0.100 0.400 0.200 0.100 0.300 0.250 0.050 0.350 ...

0.100 0.050 0.150 0.250 0.250 0.450 0.100 0.150 0.150 0.100 0.150 0.200];

net = newlind(P,T);

Веса: net.IW{1,1};

Смещение: net.b{1}

y = sim(net,P);

plot(P, T, P, y)

Результат изображен на рис. 1.

CS Figure 1 _ □

File Edit View Insert Tools Desktop Window Help

oa id WL te | ^ о ■ ® « л -1 m, | □ 0 и О

0.45

' Л

0.4 - Л Л Л -

0.35 - А A / -

0.3 ' \ / к л /1 -

0.25 A Hfb у-* -

0.2 - Чгг JLA / "

0.15 - v \ /

0.1 - V V v \ V V -

0.05 С V V

) 5 ю 15 20 5 I

Рис. 1

Полученный результат: ans = -0.0052, ans =0.2715 y = Columns 1 through 12

0.2663 0.2611 0.2558 0.2506 0.2454 0.2401 0.2349 0.2296 0.2244 0.2192 0.2139 0.2087

Columns 13 through 23

0.2035 0.1982 0.1930 0.1877 0.1825 0.1773 0.1720 0.1668 0.1616 0.1563 0.1511

На рис. 1 показано использование линейной НС newlind в задаче прогнозирования остаточных знаний учащихся 8а класса, на рис. 4 - 8б класса. Работа сети в обоих случаях может быть описана уравнением линейной регрессии. С учетом статистических критериев, применяемых к уравнению регрессии y=0,175 В.

w_range = -1:0.1:0.1; b_range = 0:0.1:1; ES = errsurf(P,T,w_range,b_range,'purelin'); figure plotes(w_range,b_range,ES) Результат изображен на рис. 2.

Рис. 2.

Обучим сеть в два этапа с использованием функции группового обучения 1хатЬ [1, с. 47].

После обучения сеть способна предсказать будущее значение заданной последовательности на основе предыдущих значений.

Первый этап: число шагов (эпох) 400, ошибка работы сети 1е-3. На втором этапе зададим число шагов 2000, ошибку работы сети -

1е-5. Остановка процесса тренировки будет осуществляться при достижении заданной ошибки функционирования сети или превышение максимального числа эпох [9, c. 249].

P = [1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 ]; T = [0.15 0.20 0.05 0.15 0.30 0.25 0.35 0.25 0.15 0.10 0.30 0.25 0.05 0.10 ... 0.40 0.20 0.25 0.20]; net = newlind(P, T); y = sim(net, P); plot (P, T, P, y) Результат изображен на рис. 3.

Рис. 3.

T = Columns 1 through 12

0.1500 0.2000 0.0500 0.1500 0.3000 0.2500 0.3500 0.2500 0.1500 0.1000 0.3000 0.2500

Columns 13 through 18

0.0500 0.1000 0.4000 0.2000 0.2500 0.2000

T = [0.300 0.250 0.400 0.100 0.400 0.200 0.100 0.300 0.250 0.050 0.350 ... 0.100 0.050 0.150 0.250 0.250 0.450 0.100 0.150 0.150 0.100 0.150 0.200]; time = 1:1:23; P = T; net = newlin(minmax(P),1,[0],0.01); y = sim(net,P) ; Первый этап тренировки:

net.trainParam.show = 50; net.trainParam.epochs = 400; net.trainParam. goal = 1e-3;

[net,tr] = train(net, P, T); net.IW{1}, net.b

Полученный результат: ans = 0.6952; ans = [0.0644] Второй этап тренировки НС:

net.trainParam.show = 50; net.trainParam.epochs = 2000; net.trainParam. goal = 1e-5;

[net,tr]=train(net,P,T); y = sim (net, P); plot (time, T, time, y) (рис. 4) Результат изображен на рис. 4.

Рис.4

net.IW{1}, net.b

w_range=0:0.1:1; b_range=0:0.01:0.1;

ES = errsurf(P,T, w_range, b_range, 'purelin')

contour(w_range, b_range,ES,60) [7, c.120]

На рис.6 показана работа линейной сети после первого этапа обучения, а на рис.8 - после второго этапа.

Последовательное представление обучающей последовательности: P = {0.300 0.250 0.400 0.100 0.400 0.200 0.100 0.300 0.250 0.050 0.350 ... 0.100 0.050 0.150 0.250 0.250 0.450 0.100 0.150 0.150 0.100 0.150 0.200}; T = P; lr = 0.01; net = newlin([0.150 0.4],1, [0],lr); net.mputWeights{1,1}. delays = [0 1 2];

Начальные значения весов и смещений:

net.IW{1,1} = [0.5 0.5 0.5]; net.b{1} = [0];

Начальные значения задержек:

pi = {0.1 0.1}; y = sim(net, P, pi); Y0 = cat(1,y{:});

for i =1:30, [net,a{i},e{i}] = adapt(net, P, T); W(i,:) = net.IW{1,1};

end; YY = cell2mat(a{30}) ; EE = cell2mat(e{30}) ; mse(cell2mat(e{30}))

Полученный результат:

ans = 0.0097

Адаптивная нейронная сеть - это самоорганизующаяся нейронная сеть. Адаптация производится функцией-методом adapt(net,P,T) [3, c. 428].

Адаптация сети происходит при достижении заданной ошибки функционирования, в нашем случае: EE=0.0001

Тогда последовательное представление обучающей последовательности будет:

P = {0.300 0.250 0.400 0.100 0.400 0.200 0.100 0.300 0.250 0.050 0.350 ... 0.100 0.050 0.150 0.250 0.250 0.450 0.100 0.150 0.150 0.100 0.150 0.200}; T = P; lr = 0.01; net = newlin([0.150 0.4],1,[0],lr); net.inputWeights{1,1}.delays = [0 1 2]; net.

Для дальнейшего прочтения статьи необходимо приобрести полный текст. Статьи высылаются в формате PDF на указанную при оплате почту. Время доставки составляет менее 10 минут. Стоимость одной статьи — 150 рублей.

Показать целиком