Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Общие вопросы по программированию, компьютерный форум
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.07.2018, 19:54   #1
3fx
Пользователь
 
Регистрация: 01.04.2018
Сообщений: 15
По умолчанию поделитесь нейросетью ?

https://habr.com/post/351922/ на хабре есть конструктор нейросети, но сеть работает с 0 и 1 (как с данными для обучения, так и выхода), а мне нужно подавать разное и получать на выходе не только 0 и 1 а от 0-9 и больше(возможно с точкой, например 5.193728942682), и что бы кушала любые текстовые данные, например 0xс11 которое равняется например 2, а 0xa12=3.50
3fx вне форума Ответить с цитированием
Старый 24.07.2018, 03:37   #2
3fx
Пользователь
 
Регистрация: 01.04.2018
Сообщений: 15
По умолчанию

нашел этот код
# -*- coding: utf-8 -*-

import sys
import numpy as np
import pickle
import re
from Stemmer import Stemmer
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.linear_model import SGDClassifier
from sklearn.pipeline import Pipeline
from sklearn.metrics import accuracy_score


# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# очистка текста с помощью regexp приведение слов в инфинитив и нижний регистр, замена цифр
def text_cleaner(text):
text = text.lower() # приведение в lowercase
stemmer = Stemmer('russian')
text = ' '.join( stemmer.stemWords( text.split() ) )
text = re.sub( r'\b\d+\b', ' digit ', text ) # замена цифр
return text


# - - - - - - - - - - - - - - - - - - - - - - - - -
# загрузка данных из файла 1.txt
#

def load_data():
data = { 'text':[],'tag':[] }
for line in open('1.txt'):
if(not('#' in line)):
row = line.split("@")
data['text'] += [row[0]]
data['tag'] += [row[1]]
return data




# - - - - - - - - - - - - - - - - - - - - - - - - -
# Обучение нейросети

def train_test_split( data, validation_split = 0.1):
sz = len(data['text'])
indices = np.arange(sz)
np.random.shuffle(indices)

X = [ data['text'][i] for i in indices ]
Y = [ data['tag'][i] for i in indices ]
nb_validation_samples = int( validation_split * sz )

return {
'train': { 'x': X[:-nb_validation_samples], 'y': Y[:-nb_validation_samples] },
'test': { 'x': X[-nb_validation_samples:], 'y': Y[-nb_validation_samples:] }
}


# - - - - - - - - - - - - - - - - - - - -
def openai():
data = load_data()
D = train_test_split( data )
text_clf = Pipeline([
('tfidf', TfidfVectorizer()),
('clf', SGDClassifier(loss='hinge')),
])
text_clf.fit(D['train']['x'], D['train']['y'])
predicted = text_clf.predict( D['train']['x'] )

# Начало тестирования программы

z=input("Введите вопрос без знака вопроса на конце: ")
zz=[]
zz.append(z)

predicted = text_clf.predict( zz )

print(predicted[0])


# - - - - - - - - - - - - - - - - - - - -
if __name__ == '__main__':
sys.exit( openai() )

но на питоне 2.7 или 3+ на виндовс или расбери не удалось опробывать, если кто знает что тут подправить подскажите пж.
File "<stdin>", line 1
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in positio
n 2-3: truncated \UXXXXXXXX escape
>>>

или
SyntaxError: unexpected character after line continuation character

пробывал и так
py -3.7 "D:\1\main.ру"
много чего перепробывал в общем ничего не помогло

Последний раз редактировалось 3fx; 24.07.2018 в 04:09.
3fx вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка текста нейросетью Ципихович Эндрю Фриланс 11 30.06.2017 23:34
поделитесь библиотекой offname C# (си шарп) 7 09.01.2012 14:26
Поделитесь Andrey770 PHP 1 07.09.2011 23:25