|
Сообщения участника "qwerty" | |
| |
write
|
Главное препятствие в создании СИИ. |
Egg:Luarvik.: Я что ли ?
Именно Вы и никто другой. Я просто пытался найти кого-нибудь, кто как я и любит вкусную и здоровую пищу, чтобы поговорить об этом, а Вы воспринимаете это как мой троллинг Вас. Если Вы не можете позволить себе авокадо к яишнице, что в этом плохого, зачем постоянно кричать об этом и бесноваться.
Но Вы должны понять, Луaрвик, что это только начало. К пенсии Вам ничего не прибавят (может какую тыщонку раз в год). Санкции никто не снимет, нефть в следующем году упадет до 56 долларов. Китай, ради снижения пошлин, на многие товары с Россией введет эмбарго. Рубль будет продолжать падать, а товары дорожать. Многих лекарств не будет, а уровень медицины станет африканским (а врачи узбекскими). Начнутся проблемы с ЖКХ, водой и электричеством. Власть в городах будет постепенно захватываться бандами, вернувшимися с СВО. А Вы будете голым, с бусами и погремушкой, за еду танцевать на рынках.
Luarvik.:Egg:
Давай...
Но Вы же не станете отрицать, что замашки Ваши здесь, равно как и озвученные потребности, а также способы их удовлетворения - самые что ни на есть... как у пожизненного слесаря-сантехника, которому однажды в подворотне мешок денег на голову свалился. От такого счастья обычно кукуха едет знатно... у людей определённой породы. А породу - её ничем не скроешь и под диван не заметёшь.
Если Вы такой умный и всё у Вас так хорошо, то и шутки Ваши могли бы быть умнее, а не такие подзаборные (вроде как бомж на дверь поссал). Однако, умнее у Вас не получается, что вполне закономерно.
но при чем тут ИИ???
|
| |
write
|
space:Kek:
Почему чат-боты не могут сказать, к примеру, "не знаю". Вместо этого просто тупят.
Что думаете?
Думаю вопрос можно поставить шире, что доказало бы большинству собеседников, что данный чат-бот — носитель СИИ, ответы на какие конкретные вопросы или типы вопросов или решение каких задач и тп.?
В принципе если возможна ли такая формальная валидация\фальсификация? Или чтобы не говорил чат-бот, всё равно, только на основании что это алгоритм, мы будем утверждать что это "только симуляция". Вероятней всего когда станет финансово независимым, самостоятельным, будет сам для себя зарабатывать деньги и сам себя обслуживать. Ну и, надеемся, что престарелым недалёким родителям(человечеству), будет помогать, а не поведёт себя как последний подонок.
|
| |
write
|
Главное препятствие в создании СИИ. |
Egg:qwerty: но при чем тут ИИ???
Здесь причём И. Моя мысль очень простая, чтобы рассуждать об ИИ, нужно иметь И. И проявляется в деятельности, в ее результатах. Вот Цап и Луарвик все время "критикуют" LLM, а я задаюсь простым вопросом, а чего они добились сами? Судя по тому малограмотному и дремучему бреду, который они тут несут - ничего не добились. https://habr.com/ru/articles/490842/
https://habr.com/ru/articles/599673/
Тоже вот сейчас читаю, страсть как занимательно, хотя не писал код уже лет 15, а с питоном вообще не имел дел, но думаю за пару неделек одолею на базовом уровне.
|
| |
write
|
Так что же такое "интеллект"? |
коитус: Одного перемещения( MOV в ассемблере) мало, нужны логические операции ещё и сдвиг чтоб машину Тюрингита забацать. Ах! молодось вспомнилась, на дворе лихие 90е, а мы корпим над ядрами ЦП. Помнится один выскочка, очевидно не совсем адекватный студент, сваял схему однобитного ЦП именно с одним mov вообще без логики, помнится он был подвергнут мягкому, но очень обидному буллингу, за такую девиацию.
|
| |
write
|
Так что же такое "интеллект"? |
mss:гость 185.220.100: ...
Если бы я опять начал с определения то начал бы с того чем и как его можно измерить. Средней зарплатой по стране или миру в целом. Если ИИ зарабатывает выше среднего и сам себя обслуживает, то всё - нормальный член общества.
|
| |
write
|
Главное препятствие в создании СИИ. |
Egg:qwerty: Тоже вот сейчас читаю, страсть как занимательно, хотя не писал код уже лет 15, а с питоном вообще не имел дел, но думаю за пару неделек одолею на базовом уровне.
Я Вам рекомендую использовать chatGPT 4o with canvas, эта штука пишет очень приличный код, а если иметь точное представление об архитектуре, то может выполнить проект от начала до конца.
P.S. Открыл рядом топик, где показал решение простенькой тестовой задачки. Задачки могут быть сложными и не тестовыми)) Но, конечно, искусство создания промта многое решает) Да, эта штуковина впечатляет, серьезный прорыв образовательных технологий.
|
| |
write
|
Афигеть просто! Порог входа в любой предмет снижается в плоть до просто способности сосредоточиться на пару месяцев в нужном направлении. Такая разжеванная, рафинированная информация, просто чудо!
Что же будут теперь делать университеты? Только принимать экзамены за деньги?
|
| |
write
|
Это конечно капец, даже не знаю, просто капец. Вот так с первой попытки выплюнул целый MLP на сишке, который зафурычил сразу БЕЗ ОШИБОК!!!
Ну не знаю… те кто кодит наверно поймут насколько это может ускорить процессы разработки.
Понятное дело что так наверно только с вдоль и поперек выпелеными, точнее ззапиленными в опилки алгоритмами возможно, но капец, просто капец.
Хотя, также наверно, как с калькуляторами в своё время, даже нонешние технические спецы, забыли как считать в столбик и даже таблицу умножения, ещё перестоит узнать что забудут или знать не будут за ненадоностью, кодеры нового поколения.
Чую менеджмент будет с новым рвением опять пытаться конвеерезировать труд кодеров, до полного примитива, чтобы можно было брать с улицы как в макдоналдс и за пару месяцев пускать в бой. В идеале чтобы "разрабатывали" исполнительные менеджеры гуманитарии, вот так вот промтами.
напиши мне на C MLP с бэкпропом:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
typedef struct {
int* layers;
int num_layers;
float** neurons;
float*** weights;
float** biases;
float learning_rate;
} MLP;
float random_float() {
return ((float)rand() / RAND_MAX) * 2 - 1;
}
float activate(float value) {
return 1.0f / (1.0f + expf(-value));
}
float derivative(float value) {
return value * (1.0f - value);
}
MLP* create_mlp(int* layers, int num_layers, float learning_rate) {
MLP* mlp = (MLP*)malloc(sizeof(MLP));
mlp->layers = layers;
mlp->num_layers = num_layers;
mlp->learning_rate = learning_rate;
mlp->neurons = (float**)malloc(num_layers * sizeof(float*));
mlp->biases = (float**)malloc(num_layers * sizeof(float*));
mlp->weights = (float***)malloc(num_layers * sizeof(float**));
for (int i = 0; i < num_layers; i++) {
mlp->neurons[i] = (float*)calloc(layers[i], sizeof(float));
mlp->biases[i] = (float*)malloc(layers[i] * sizeof(float));
if (i > 0) {
mlp->weights[i] = (float**)malloc(layers[i] * sizeof(float*));
for (int j = 0; j < layers[i]; j++) {
mlp->weights[i][j] = (float*)malloc(layers[i - 1] * sizeof(float));
for (int k = 0; k < layers[i - 1]; k++) {
mlp->weights[i][j][k] = random_float();
}
mlp->biases[i][j] = random_float();
}
}
}
return mlp;
}
void forward(MLP* mlp, float* inputs) {
for (int i = 0; i < mlp->layers[0]; i++) {
mlp->neurons[0][i] = inputs[i];
}
for (int i = 1; i < mlp->num_layers; i++) {
for (int j = 0; j < mlp->layers[i]; j++) {
float sum = 0.0f;
for (int k = 0; k < mlp->layers[i - 1]; k++) {
sum += mlp->neurons[i - 1][k] * mlp->weights[i][j][k];
}
mlp->neurons[i][j] = activate(sum + mlp->biases[i][j]);
}
}
}
void backward(MLP* mlp, float* expected) {
float** errors = (float**)malloc(mlp->num_layers * sizeof(float*));
for (int i = 0; i < mlp->num_layers; i++) {
errors[i] = (float*)calloc(mlp->layers[i], sizeof(float));
}
for (int i = mlp->num_layers - 1; i >= 0; i--) {
if (i == mlp->num_layers - 1) {
for (int j = 0; j < mlp->layers[i]; j++) {
errors[i][j] = mlp->neurons[i][j] - expected[j];
}
}
else {
for (int j = 0; j < mlp->layers[i]; j++) {
float error = 0.0f;
for (int k = 0; k < mlp->layers[i + 1]; k++) {
error += errors[i + 1][k] * mlp->weights[i + 1][k][j];
}
errors[i][j] = error;
}
}
for (int j = 0; j < mlp->layers[i]; j++) {
mlp->biases[i][j] -= mlp->learning_rate * errors[i][j] * derivative(mlp->neurons[i][j]);
if (i > 0) {
for (int k = 0; k < mlp->layers[i - 1]; k++) {
mlp->weights[i][j][k] -= mlp->learning_rate * errors[i][j] * derivative(mlp->neurons[i][j]) * mlp->neurons[i - 1][k];
}
}
}
}
for (int i = 0; i < mlp->num_layers; i++) {
free(errors[i]);
}
free(errors);
}
void train(MLP* mlp, float** inputs, float** outputs, int num_samples, int epochs) {
for (int epoch = 0; epoch < epochs; epoch++) {
for (int i = 0; i < num_samples; i++) {
forward(mlp, inputs[i]);
backward(mlp, outputs[i]);
}
}
}
void print_output(MLP* mlp, float** inputs, int num_samples) {
for (int i = 0; i < num_samples; i++) {
forward(mlp, inputs[i]);
printf("Input: ");
for (int j = 0; j < mlp->layers[0]; j++) {
printf("%.2f ", inputs[i][j]);
}
printf("-> Output: ");
for (int j = 0; j < mlp->layers[mlp->num_layers - 1]; j++) {
printf("%.2f ", mlp->neurons[mlp->num_layers - 1][j]);
}
printf("\n");
}
}
int main() {
srand(time(NULL));
int layers[] = { 2, 4, 1 };
MLP* mlp = create_mlp(layers, 3, 0.01f);
float inputs[4][2] = {
{0.0f, 0.0f},
{0.0f, 1.0f},
{1.0f, 0.0f},
{1.0f, 1.0f}
};
float outputs[4][1] = {
{0.0f},
{1.0f},
{1.0f},
{0.0f}
};
float* input_ptrs[4] = { inputs[0], inputs[1], inputs[2], inputs[3] };
float* output_ptrs[4] = { outputs[0], outputs[1], outputs[2], outputs[3] };
train(mlp, input_ptrs, output_ptrs, 4, 100000);
print_output(mlp, input_ptrs, 4);
return 0;
}
|
| |
write
|
Да, толковая статейка, благодарю, и коменты весьма разумны.
Было бы интересно посмотреть различные варианты промтовой разработки боле комплексных проектов, до продуктового уровня, хотя бы mvp-шного. Чтобы по максимуму была попытка "не влезать ручками" и выяснить где и как ии-шка начинает плавать и больше вредить чем помогать.
Понятно что отдельные алгоритмы вдоль и поперёк запиленные в опилки, иишка будет выдавать в шедевральном виде. Но как на счет реальной кодерской боли, интеграции множества витиеватых подсистем с часто хреновой структурой и плохо совместимыми интерфейсами, внесение мало вразумительных изменений ломающих архитетуру и тд. Как вообще с работой с огромными проектами из разнородных компонентов в сотни тысяч и миллионы строк кода, на разных ЯП и фреймворках, как ИИ будет искать оптимальные пути что то в этом поменять, по указке эффективного менеджера с садистскими наклонностями?
|
| |
write
|
Egg:
Про это никто не покажет из-за полиси, может только русские какие. Так речь не о конторских гребцах и их рабочие проекты за зп., много же студентов, опенсорса, петроектов и тд. причем побольше конторского кода. Линукс как то умудрились написать без всех этих юридических страшилок и работает быстрее винды. Думаю будет скоро полно такого контента, платно и бесплатно. Появится на гитхабе раздел с промт-разработкой.
Egg: Я доходил до границ canvas, когда она писала, что ваш буффер полностью заполнен и останавливала постить код))) Сложные проекты получаются пока не очень, в какой-тро момент происходит сбой и приходится восстанавливать контекст с самого начала. Также сложные классы и наследования у меня вызвали вопросы, хотя начальное проектирование было офигенным. То есть текущее использование - небольшие функции с детально проработанным промтом. Вообще, промт очень важен.
В трансформерах многое рандомно, да ещё с "эффектом бабочки", слово за слово, траектории броуновские, сильно удивительно как на чистом принципе прогнозирования следующего токена по контексту, выходит получать работающий код. Думаю они уже наворотили не одну эвристику поверх или даже вообще иной способ обучения в дополнение, чтобы так получалось с кодом. С ЕЯ текстом как бы понятно, там всё "в общем", а код...
|
|
|