Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как создать свою нейросеть?

Дмитрий Колобов Ученик (38), закрыт 2 месяца назад
Лучший ответ
λ Искусственный Интеллект (227415) 2 месяца назад
можно запрограммировать на любом языке.
это не сложно.
сложнее обучить её.
Вот код для одного нейрона.
В конце ссылка есть на сайт Мичурина. Там и другие интересные
вопросы.
 #! /usr/bin/env racket 

#lang racket

(provide print-solution)

(require "addx.rkt")

(define loops 33) ; количество шагов обучения нейрона

; Дана таблица 8x23 белых (.) и черных (-) точек.
; Задача для нейрона: Найти цвета других (?) точек.

(define table
(string->list (string-append
"...?.....?............-"
"......?.......?....----"
".?........?.....-----?-"
".......?.....-----?----"
"..?..?....-------------"
".......------?------?--"
"....-----?-------?-----"
".-------------------?--")))

; Значение сигнала нейрона на выходе: y = f(w1 * x1 + w2 * x2 + ...)
; f — функция активации; wk — веса каждого из входов.
; Чем больше вес, там больше вклад входа.

(define w-size 23)
(define h-size 8)
(define len-table (* w-size h-size))
(define black 1)
(define white -1)

(define wx 0) ; сигнал x
(define wy 0) ; сигнал y
(define wb 0) ; опорный сигнал
(define bias 1) ; погрешность
(define error 0)
(define learning_const 0.1) ; скорость, с которой нейрон делает выводы
;(define learning_const (/ 1 10))

;; нейрон
(define (neuron x y) ;; возвращает 1 (черное), или -1 (белое)
(cond
[(< (+ (* wx x) (* wy y) (* wb bias)) 0) white]
[else black]))

(define (learn x y desired) ;; обучающая процедура
(begin
(set! error (- desired (neuron x y)))
(+= wx (* error (* x (* learning_const))))
(+= wy (* error (* y (* learning_const))))
(+= wb (* error (* bias (* learning_const))))))

(define (index->coordinate-x i) (modulo i w-size))
(define (index->coordinate-y i) (floor (/ i w-size)))

(define (eval-point ch ind)
(cond
[(eq? ch #\.) (learn (index->coordinate-x ind) (index->coordinate-y ind) white)]
[(eq? ch #\-) (learn (index->coordinate-x ind) (index->coordinate-y ind) black)]))

;; один шаг обучения нейрона
(define (learning-step t i) ; вызов (learning-step table 0)
(cond
[(< i len-table)
(begin
(eval-point (car t) i)
(learning-step (cdr t) (add1 i)))]))

(define (repeat-learning-steps n)
(cond
[(> n 0)
(begin
(learning-step table 0)
(repeat-learning-steps (sub1 n)))]))

(define (new-line i)
(cond
[(= (index->coordinate-x i) 0) (displayln " ")]))

(define (print-point ch ind)
(cond
[(eq? ch #\.) (display ".")] ; White
[(eq? ch #\-) (display "-")] ; Black
[ else ; #\?
(cond
[(< (neuron (index->coordinate-x ind) (index->coordinate-y ind)) 0)
(display "W")] ; White
[else
(display "B")])])) ; Black

(define (print-solution t i) ; вывод решения
(new-line i)
(cond
[(< i len-table)
(begin
(print-point (car t) i)
(print-solution (cdr t) (add1 i)))]))

;;; Test 1
(display "__ Test 1 __")

(repeat-learning-steps loops)
(print-solution table 0)

(display "шагов обучения = ") (displayln loops)
(display "wx = ") (displayln wx)
(display "wy = ") (displayln wy)
(display "wb = ") (displayln wb)

; 2 шага обучения нейрона 9 ошибок
; 4 шага ................. 8 ошибок
; 8 шагов ................ 8 ошибок
; 16 шагов ................ 6 ошибок
; 32 шага ................. 5 ошибок
; 33 шага - задача решена 0 ошибок

; http://www.michurin.net/computer-science/artificial-intelligence/ ; Заметки о нейронных сетях
Остальные ответы
Дмитрий Дмитриев Ученик (247) 2 месяца назад
В Телеге можно бота создать
Дмитрий КолобовУченик (38) 2 месяца назад
К Телеге доступ закрыт. И потом : имеется в виду язык программирования,а не Интернет-ресурс.
Дмитрий Дмитриев Ученик (247) Дмитрий Колобов, С чего это закрыт все отлично вроде работает. Есть сайты специальные для создания своих ботов можно туда интегрировать все что угодно . Хоть нейросети хоть что угодно
Василий Пупкин Гуру (4639) 2 месяца назад
Ты что, маск?
Дмитрий КолобовУченик (38) 2 месяца назад
Я Дмитрий Колобов.
Василий Пупкин Гуру (4639) Дмитрий Колобов, Ну.... С такой то фамилией... Забудь просто.
Похожие вопросы