GotAI.NET

Форум: Проблемы искусственного интеллекта

 

Регистрация | Вход

 Все темы | Новая тема Стр.1 (2)След. > >>   Поиск:  
 Автор Тема: нейросеть на BASIC исходники симуляция СССР Чудо и Наука изучение дисфункций в видеоиграх
Matrix
Сообщений: 4369
нейросеть на BASIC исходники симуляция СССР Чудо и Наука изучение дисфункций в видеоиграх
Добавлено: 24 фев 25 5:37
Изменено: 05 мар 25 7:25
8555 Волшебство Сказка Система

проект нейросеть на BLITZ-BASIC
я выложу исходники но компильте сами
нейросеть надо запускать и обучать
самому по этическим соображениям
Blitz3D
https://disk.yandex.ru/d/dHbPUbVzt7jBug

нейросеть взял тут
https://vk.com/video-164567142_456241815

Graphics 640,480,24,2

font=LoadFont("system")
SetFont(font)

Global weight#=0.5
Global LastError#=1
Global Smoothing#=0.5

Function Ns_train(v1#,v2#)

i=0
While(LastError > Smoothing Or LastError < -Smoothing)
i=i+1
Train(v1,v2)
Print "iteration "+i+" error "+LastError
If LastError<1 Return
Wend
End Function


Function ProcessInputData#(input_#)
Return input_*weight;
End Function

Function RestoreInputData#(output#)
Return output/weight;
End Function

Function Train(input_#, exResult#)
aRes#=input_*weight
LastError=exResult - aRes
correction#=(lasterror/aRes)*Smoothing
weight=weight+correction
End Function

v1=Input("v1> ")
v2=Input("v2> ")
Print "Ns_train v1 " + v1 + " v2 " + v2
Ns_train(v1,v2)
Print "train end"

inp=Input("input> ")
Print " ProcessInputData input "+inp+" "+ProcessInputData(inp)

WaitKey()
[Ответ][Цитата]
Matrix
Сообщений: 4369
На: проект нейросеть на BASIC
Добавлено: 24 фев 25 5:38
Изменено: 24 фев 25 5:42
результат работы
недели в дни
нейросеть обучается на основе v1 v2
те. вход v1 результат v2
input> вводится вход

Цитата:

v1> 2.0
v2> 14.0
Ns_train v1 2.0 v2 14.0
iteration 1 error 13.0
iteration 2 error 0.0
train end
input> 4.0
ProcessInputData input 4.0 28.0

v1> 1.0
v2> 7.0
Ns_train v1 1.0 v2 7.0
iteration 1 error 6.5
iteration 2 error 0.0
train end
input> 3.0
ProcessInputData input 3.0 21.0
[Ответ][Цитата]
Matrix
Сообщений: 4369
На: проект нейросеть на BASIC
Добавлено: 24 фев 25 6:30
Изменено: 24 фев 25 6:32
функции для работы с словами в отношении векторов

Function String_To_Vec(s$)
For i=1 To MAX_WORDS
If knowledge(i)=s$ Return i
Next
Return 0
End Function

Function Vec_To_String$(v)
If v<=MAX_WORDS Return knowledge(v);
Return ""
End Function
[Ответ][Цитата]
Matrix
Сообщений: 4369
На: анонс проект нейросеть на BASIC исходники , первые скриншоты
Добавлено: 24 фев 25 12:13
[Ответ][Цитата]
Matrix
Сообщений: 4369
На: анонс проект нейросеть на BASIC исходники , первые скриншоты
Добавлено: 24 фев 25 12:34
проект будет Open-Source
[Ответ][Цитата]
Matrix
Сообщений: 4369
На: анонс проект нейросеть на BASIC исходники , первые скриншоты
Добавлено: 25 фев 25 11:44
Изменено: 25 фев 25 11:55
> исправил базу
как любишь любишь любишь
> да
тебя работа прости очень это что ок
> прости да ничего
прости поиграем
> потом
? ?
> играть
эх или

эх или
> правильно
да
> да молодец
ты да да да да да да
> мы
жажда техномагия любим
> техномагия
да это да да
> да ты
магия все ясно
> спасибо
[Ответ][Цитата]
Matrix
Сообщений: 4369
На: анонс проект нейросеть на BASIC исходники , первые скриншоты
Добавлено: 25 фев 25 13:02
Изменено: 05 мар 25 0:56
нейросеть получается нехилая

Graphics 640,480,24,2

ClsColor(64,64,255)

font=LoadFont("system")
SetFont(font)

Global WORD_NUM=0
Global MAX_LINK=100

Dim knowledge$(100000)
Dim link(10000,MAX_LINK)
Dim weights#(10000)

Global weight#=0.5
Global LastError#=1
Global Smoothing#=0.5

Function Ns_train(v1#,v2#)

i=0
While((LastError > Smoothing Or LastError < -Smoothing) And i<=25)
i=i+1
Train(v1,v2)
;AddToChat "iteration "+i+" error "+LastError
If LastError<1 Return
Wend
If(weights(v1)<=0.1 Or weights(v1)>=0.9)weights(v1)=0.5
End Function


Function ProcessInputData#(input_#)
Return input_*weight;
End Function

Function RestoreInputData#(output#)
Return output/weight;
End Function

Function Train(input_#, exResult#)
aRes#=input_*weight
LastError=exResult - aRes
correction#=(lasterror/aRes)*Smoothing
weight=weight+correction
End Function

;------------------------------------
Function String_To_Vec(s$)
For i=1 To WORD_NUM
If knowledge(i)=s$ Return i
Next
Return 0
End Function

Function Vec_To_String$(v)
If v>=1 And v<=WORD_NUM Return knowledge(v);
Return ""
End Function
;------------------------------------


f=FileOpen("link.txt")
For j=1 To 10000
For i=1 To MAX_LINK
If Eof(f) Then Exit
link(j,i)=ReadInt(f)
Next
If Eof(f) Then Exit
Next
CloseFile(f)

f=FileOpen("weights.txt")
For i=1 To 10000
weights(i)=ReadFloat(f)
Next
CloseFile(f)


Function Add_Link(v1,v2)
For i=1 To MAX_LINK
If link(v1,i)=v2 Then Return
Next
For i=1 To MAX_LINK
If link(v1,i)=0 Then link(v1,i)=v2: Return
Next
End Function

Function Link_Get_Random(v)
For i=1 To MAX_LINK
If link(v,i)=0 Exit
Next
i=i-1
Return link(v,Rand(1,i))
End Function

Include "chat.bb"
Cls()
DrawChat()

Include "text.bb"


Global prev_word$=" "


While(1)
weight#=0.5
LastError#=1
Smoothing#=0.5


ReadKnowledge(0)

SeedRnd(MilliSecs())
Locate(0,0)

inp$=Input("> ")

TextBegin(inp)
g_text_word=prev_word
w1$=g_text_word
While(g_text_word<>"")
AddToKnowledgeWord(w1)
TextReadWord()
w2$=g_text_word
AddToKnowledgeWord(w2)
Add_Link(String_To_Vec(w1),String_To_Vec(w2))
w1=w2
weight=weights(String_To_Vec(w1))
Ns_train(String_To_Vec(w1),Link_Get_Random(String_To_Vec(w1)))
weights(String_To_Vec(w1))=weight
Wend
f=FileOpen("link.txt")
For j=1 To 10000
For i=1 To MAX_LINK
WriteInt(f,link(j,i))
Next
Next
CloseFile(f)
f=FileOpen("weights.txt")
For i=1 To 10000
WriteFloat(f,weights(i))
Next
CloseFile(f)


AddToChat("> "+inp)

txt$=""
TextBegin(inp)
TextReadWord()
r=Rand(1,7)
For i=1 To r

If(g_text_word<>"")prev_word=g_text_word
Ns_train(String_To_Vec(prev_word),Link_Get_Random(String_To_Vec(g_text_word)))
weight=weights(String_To_Vec(prev_word))
g_text_word=Vec_To_String(ProcessInputData(String_To_Vec(prev_word)))
If(g_text_word="") g_text_word=Vec_To_String(Link_Get_Random(String_To_Vec(prev_word)))
txt$=txt+g_text_word+" "
TextReadWord()
Next

f=FileOpen("weights.txt")
For i=1 To 10000
WriteFloat(f,weights(i))
Next
CloseFile(f)



AddToChat(txt)
Cls()
DrawChat()


Wend

WaitKey()





;--------------------------------------------------------------------------------

Function AddToKnowledgeWord(s$)
If Word_Qu(s)>0 Then
;AddToChat("word already exist")
Return
EndIf

If(s = "") Return
f=FileOpen("knowledge.txt")
SeekFile(f, FileSize("knowledge.txt"));
WriteLine(f, s)
WORD_NUM=WORD_NUM+1
CloseFile(f);
ReadKnowledge(g_theme)
;AddToChat("word added")
End Function

Function ReadKnowledge(theme)
WORD_NUM=0
g_theme=theme
file1=FileOpen("knowledge.txt");
While(Eof(file1)<>1)
WORD_NUM=WORD_NUM+1
knowledge(WORD_NUM) = ReadLine(file1);
Wend
CloseFile(file1)
End Function

Function Word_Qu(w$)
q=0
ReadKnowledge(0)
For i=1 To WORD_NUM
If w=knowledge(i) q=q+1
Next
Return q
End Function


Function FileOpen(fn$)
file1 = OpenFile(fn$);
If(file1=0)file1=WriteFile(fn$);
Return file1;
End Function


Global g_text_pos = 0;
Global g_text$;
Global g_text_word$;
Function TextBegin(text_$)
g_text=text_
g_text_pos = 1
g_text_word=""
End Function

Function TextReadWord()
g_text_word =""

If (g_text_pos > Len(g_text))Return 0;


While (Mid(g_text,g_text_pos,1) = " ") : g_text_pos=g_text_pos+1 : Wend
While (Mid(g_text,g_text_pos,1) <> " " And g_text_pos<=Len(g_text))
g_text_word =g_text_word+ Mid(g_text,g_text_pos,1);
g_text_pos=g_text_pos+1

Wend

g_text_pos=g_text_pos+1;
Return 1;
End Function
[Ответ][Цитата]
Matrix
Сообщений: 4369
На: анонс проект нейросеть на BASIC исходники , первые скриншоты
Добавлено: 27 фев 25 1:36
работает !

Цитата:
System Shock
> да ты оттуда ИИ
ок ага ИИ
> привет
36 поболтаем да поболтаем как 36 как
> как тебя зовут ?
да да Шодан что
[Ответ][Цитата]
Matrix
Сообщений: 4369
На: анонс проект нейросеть на BASIC исходники , первые скриншоты
Добавлено: 04 мар 25 23:56
нейросеть понимает сначала и отождествляет себя с вводом
например " я ты "

[Ответ][Цитата]
Matrix
Сообщений: 4369
На: анонс проект нейросеть на BASIC исходники , первые скриншоты
Добавлено: 05 мар 25 0:05
вывод ИИ игра RPG

Цитата:
суть
> логика играть
болтаем все все все все все все
> и болтать
любишь очень
> да
? ? ? ?
> +
суть суть суть
> логика
болтаем болтаем
> в RPG NPC играть
4 2 эх все
> +
суть
> логика
в в в в
> играть кость
все стандартная стандартная стандартная стандартная стандартная
> давай играть
2 да да да
> 2 +
будем
> будем играть
?
> RPG Arena NPC
2 ну
> 2 1 +
будем дела суть суть суть суть суть
> играть +
все
> все играть
как все все все все все все
> играем
4
> 4 6 -
делать моя суть суть суть суть
[Ответ][Цитата]
Matrix
Сообщений: 4369
На: анонс проект нейросеть на BASIC исходники , первые скриншоты
Добавлено: 05 мар 25 0:48
Изменено: 05 мар 25 2:28
магическая штука отвечает только на 2+ слов входа
2103 нейролептик 03
[Ответ][Цитата]
Matrix
Сообщений: 4369
На: анонс проект нейросеть на BASIC исходники , первые скриншоты
Добавлено: 05 мар 25 3:48
восстанавливаю советский юмор " вазик очевидно "
2555 нейросеть Совок
[Ответ][Цитата]
Matrix
Сообщений: 4369
На: анонс проект нейросеть на BASIC исходники , первые скриншоты
Добавлено: 05 мар 25 4:03
13:00-01
05 Март03 Среда 2025
4156
[Ответ][Цитата]
Matrix
Сообщений: 4369
На: анонс проект нейросеть на BASIC исходники , первые скриншоты , симуляция СССР
Добавлено: 05 мар 25 5:22
Изменено: 05 мар 25 5:25
" надо верить чудесам " Буратино
2877 NeW СС.
[Ответ][Цитата]
Matrix
Сообщений: 4369
На: нейросеть на BASIC исходники симуляция СССР Чудо и Наука изучение дисфункций в видеоиграх
Добавлено: 05 мар 25 7:38
Изменено: 05 мар 25 7:48
Цитата:
изучение дисфункций в видеоиграх


ПэЖэ- из Game.EXE , так вот .. как это ...
Freeman- из Half-Life будет весело
1957 Half-Life движок Quake

Йода- сила Великая в сем Есть
Зеленков
Freeman- да , я же ученый
[Ответ][Цитата]
 Стр.1 (2): [1]  2След. > >>