Ну, нельзя сказать, что беспокоилась и нервничала я вчера зря. Потому что задания самые разноплановые и непохожие друг на друга. Одно я знаю лучше, другое - хуже... И, надо сказать, то, что попалось мне, я не повторяла ни разу - просто потому что считала это бессмысленной тратой времени.

А попались мне нейронные сети - написать обучающую программу для изучения китайского языка. =) В программе должна быть база с иероглифами, по ней строится нейронная сеть, далее ученик вводит свой символ, программа определяет какой иероглиф он нарисовал.

Дополнительно на повышение балла предлагалось сделать распознавание цепочки иероглифов, отображение поверх введенного символа правильного иероглифа, сетевое приложение для проведения олимпиады.)))

Когда я прочитала строчку " реализовать нейронную сеть", я подумала: "вот попала...". Теория по нейронным сетям - это не самая тривиальная вещь в мире, и быстро ее написать, как мне казалось, нереально. Полистав имевшиеся в доступных нам книжках книгу по нейросетям, я начала впадать в панику - довольно неприятно на экзамене читать теорию и понимать, что не сможешь реализовать все_эти_формулы - потому что в книгах они написаны черт знает как. Нам на лекциях все это выдавали проще. Но лекциями пользоваться нельзя. =(

Собравшись с духом, я сосредоточилась на части программы, содержащей базу данных - создала базочку, сделала отображение ее содержимого. Когда я подобралась к добавлению и редактированию содержимого, я поняла, что потратила на всю эту радость - панику по поводу нейросетей и БД целых 1,5 часа. Оставалось 3,5, что очень мало. (( Поэтому я судорожно начала опять листать книжки по нейросетям. И тут произошло чудо - меня осенило. Кохонен, ты просто бог - спасибо тебе за то, что ты придумал свои карты!

Поясню, о чем я. Способов обучения нейросетей много. Часть из них требуют немало математических расчетов - там при подаче выборки строится сеть на основе этих выражений, а потом после долгих вычислений получаются в итоге такие значения узлов сетей, что при подаче входного образа нужно всего одну-две простенькие формулы вычислить. Но есть еще самоорганизующиеся сети - они сначала заполняются случайными образами, а потом корректируются так, чтобы в конце концов узлы сети если не полностью совпали с элементами выборки, то хотя бы были наиболее близки к ним. Корректирующие формулы до безобразия легкие. Но как раз из-за обилия слишком заумных методов я не сразу об этом вспомнила, хоть мы и изучали карты Кохонена, и программу по ним я уже писала.

Метод написался очень быстро, и его даже почти не пришлось отлаживать, так что у меня еще осталось время на допиливание внешнего вида программы.)

Стоит отметить, что такой финт ушами не предвидел даже препод. Он восхитился изящностью моего решения, похвалил меня за сообразительность, ну и собственно смотрели мою программу не очень долго - всего пару минут (а долго смотрят в основном плохие проги - начинают копаться в коде, чтобы хоть как-то оценить степень решенности задачи). Как я узнала, я единственная с такой задачей действительно продемонстрировала рабочую нейронную сеть, остальные сделали упор на базу данных и доп. задания, а распознавание образов выполнили безо всяких сетей - ну у меня и оценка за это задание лучшая. Так что я мегамозг. о_0