Sly32

Рейтинг
370
Регистрация
29.03.2012
Artem189 #:

Нет. Предложение не изменится, спрос сократится. ЦБ не будет делать интервенции и продавать валюту, он просто до НГ не станет ее покупать.

Ну да, я не так выразился. Я имел ввиду, если уходит один покупатель, для остальных предложение валюты бужет больше. Это будет работать, если есть стабильно большое предложение от продавцов, тогда курс  будет падать? 

Artem189 #:

Просто Центробанк объявил, что с 28.11.2024 до конца года не будет покупать валюту. Это немного снизит дефици, но не полностью. И это временно.

Правильно ли я понимаю, что это увеличит предложение валюты на торгах, но по факту начнется вымывание( в лучшем случае не пополнение) валютного резерва ЦБ?

Dmitriy_2014 #:
Ну даже и так, настройки в движке(которые по факту в базе данных), но работает то интерпретатор php, а не веб-сервер, так сам по себе и WordPress не может.

Интерпретатор тут не причем. Если в настройках у тебя адрес с www, то вордпрес и будет ждать роут с таким адресом. Протокол http - это не магия, почитай как он работает. 
<www.site.com> ---> DNS -->Nginx(redirect) ---> wordpress
ты ввел адрес <site.com> в строке браузера. DNS ищет соответствующую запись и возвращает ip сайта.

А запись должна быть вида A  ---  example.com -- 1.2.3.4

Дальше уже нжинкс слушает 80 порт и если на него приходит запрос начинают работать его редиректы. то есть:

server {
    listen 80;
    server_name example.com;
    
    # Перенаправление с www на без www
    return 301 http://www.example.com$request_uri;
}

Если в вордпрес у тебя  адрес- www.example.com - то на него и придет запрос

Если ты делаешь запрос вида www.exapmle.com то DNS ищет CNAME запись, потому что по сути это обычный поддомен и переадресует ее на А запись, дальше все тоже самое.

Также переадресация может быт не в твоем nginx.conf а в базовом. То есть панель управления хостингом может это делать незаметно для тебя.

plab #:
Но зачем?

Если ты до сих пор не понял, то для

plab #:
экономя свое время и ресурсы,

Но вот этот перл обьясняет все:

plab #:
На вскидку без вникания в то

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

Чтобы немного развеять мракобесие, сгустившееся над этим топиком, проведу небольшой ликбез и на простом примере расскажу, как могут генерироваться слова в нейросетях. 

Для примера возьму уже приведенный выше алгоритм "Цепи Маркова" Он был описан, если не ошибаюсь в ... 1906 году. Это информация для тех, кто рассказывает сказки о том, что знает, как улучшить нейросети))). Возможно, по ходу станет понятно, почему только сейчас это все получается реализовать.

Что бы вам не гуглить:

Це́пь Ма́ркова — последовательность случайных событий с конечным или счётным числом исходов, где вероятность наступления каждого события зависит только от состояния, достигнутого в предыдущем событии[1]. 

Еще проще - на основе имеющихся данных высчитывается вероятность появления следующего символа. 
Как это работает.
Возьмем конечный набор данных:

words = ["apple", "banana", "orange", "grape", "melon", "kiwi", "peach", "ananas", "grapefruit", "pepper", "melon", "watermelon", "potatoes", "pineapple", "coconut"]

В нашем алгоритме мы будем строить вероятности на основе   одного или двух символов, соответственно составляем словарь всех одно- и двухбуквенных сочетаний и количество появлений следующей буквы для них.
На выходе имеем следующий словарь( использую питоновские термины, но думаю их несложно интерпретировать в любой известный вам язык)
Код:

for word in words:
    for i in range(len(word)):
        key = word[max(0, i - 1):i + 1]  # use two symb
        next_letter = word[i + 1] if i + 1 < len(word) else None

        if key not in transitions:
            transitions[key] = {}

        if next_letter:
            transitions[key][next_letter] = transitions[key].get(next_letter, 0) + 1

Результат:

{'a': {'n': 1, 'p': 1},
'ac': {'h': 1},
'an': {'a': 4, 'g': 1},
'ap': {'e': 2, 'p': 2},
'as': {},
'at': {'e': 1, 'o': 1},
'b': {'a': 1},
'ba': {'n': 1},
'c': {'o': 1},
'ch': {},
'co': {'c': 1, 'n': 1},
'ea': {'c': 1, 'p': 1},
'ef': {'r': 1},
'el': {'o': 3},
'ep': {'p': 1},
'er': {'m': 1},
'es': {},
'fr': {'u': 1},
'g': {'r': 2},
'ge': {},
'gr': {'a': 2},
'in': {'e': 1},
'it': {},
'iw': {'i': 1},
'k': {'i': 1},
'ki': {'w': 1},
'le': {},
'lo': {'n': 3},
'm': {'e': 2},
'me': {'l': 3},
'na': {'n': 2, 's': 1},
'ne': {'a': 1},
'ng': {'e': 1},
'nu': {'t': 1},
'o': {'r': 1},
'oc': {'o': 1},
'oe': {'s': 1},
'on': {'u': 1},
'or': {'a': 1},
'ot': {'a': 1},
'p': {'e': 2, 'i': 1, 'o': 1},
'pe': {'a': 1, 'f': 1, 'p': 1, 'r': 1},
'pi': {'n': 1},
'pl': {'e': 2},
'po': {'t': 1},
'pp': {'e': 1, 'l': 2},
'ra': {'n': 1, 'p': 2},
'rm': {'e': 1},
'ru': {'i': 1},
'ta': {'t': 1},
'te': {'r': 1},
'to': {'e': 1},
'ui': {'t': 1},
'ut': {},
'w': {'a': 1},
'wa': {'t': 1},
'wi': {}}

Обратите внимание, что для 15 базовых слов мы получили словарь из 57 элементов. Дальше поймете, почему я это отметил.
Но это пока еще сырой список. Нам же нужно понимать вероятность появления следующей буквы, поэтому несложным путем высчитаем ее:

for letter, next_letters in transitions.items():
    total = sum(next_letters.values())
    for next_letter in next_letters:
        next_letters[next_letter] /= total

В результате наш псеводнейрон уже выглядит так:

{'a': {'n': 0.5, 'p': 0.5},
'ac': {'h': 1.0},
'an': {'a': 0.8, 'g': 0.2},
'ap': {'e': 0.5, 'p': 0.5},
'as': {},
'at': {'e': 0.5, 'o': 0.5},
'b': {'a': 1.0},
'ba': {'n': 1.0},
'c': {'o': 1.0},
'ch': {},
'co': {'c': 0.5, 'n': 0.5},
'ea': {'c': 0.5, 'p': 0.5},
'ef': {'r': 1.0},
'el': {'o': 1.0},
'ep': {'p': 1.0},
'er': {'m': 1.0},
'es': {},
'fr': {'u': 1.0},
'g': {'r': 1.0},
'ge': {},
'gr': {'a': 1.0},
'in': {'e': 1.0},
'it': {},
'iw': {'i': 1.0},
'k': {'i': 1.0},
'ki': {'w': 1.0},
'le': {},
'lo': {'n': 1.0},
'm': {'e': 1.0},
'me': {'l': 1.0},
'na': {'n': 0.6666666666666666, 's': 0.3333333333333333},
'ne': {'a': 1.0},
'ng': {'e': 1.0},
'nu': {'t': 1.0},
'o': {'r': 1.0},
'oc': {'o': 1.0},
'oe': {'s': 1.0},
'on': {'u': 1.0},
'or': {'a': 1.0},
'ot': {'a': 1.0},
'p': {'e': 0.5, 'i': 0.25, 'o': 0.25},
'pe': {'a': 0.25, 'f': 0.25, 'p': 0.25, 'r': 0.25},
'pi': {'n': 1.0},
'pl': {'e': 1.0},
'po': {'t': 1.0},
'pp': {'e': 0.3333333333333333, 'l': 0.6666666666666666},
'ra': {'n': 0.3333333333333333, 'p': 0.6666666666666666},
'rm': {'e': 1.0},
'ru': {'i': 1.0},
'ta': {'t': 1.0},
'te': {'r': 1.0},
'to': {'e': 1.0},
'ui': {'t': 1.0},
'ut': {},
'w': {'a': 1.0},
'wa': {'t': 1.0},
'wi': {}}

И собственно, уже все готово для генерации слова. 

Как это происходит? Запускаем код и вводим первые 2 буквы, из которых мы хотим сгенерировать слово, например "pe" В словаре находим сочетания для него:

'pe': {'a': 0.25, 'f': 0.25, 'p': 0.25, 'r': 0.25},

Недалекий фрефоркер увидел в коде random, не удосужился почитать, что это за функция. А random.choice выбирает не случайную букву из последоваиельности, а на основе весов. В данном случае веса одинаковы, значит выбирается первая буква. Получаем "pea". Помним, что наш алгоритм использует 2 последних буквы. Значит ищем следующее сочетние для "ea":

'ea': {'c': 0.5, 'p': 0.5},

Получаем: "peac", продолжаем поиск для "ac":

'ac': {'h': 1.0},

Тут  уже без вариантов.  Получаем: "peach"
Ищем для "ch":

'ch': {},

Вариантов нет, генерация закончена, полученное слово - персик) Можно еще добавить проверку на наличие слова в словаре исходном и останавливать генерацию при совпадении.

Это простейший механизм генерции слов. Без дополнительного обучения системы, исправления ошибок и прочего. Просто? Да! А теперь подумаем - а не так ли работает наш мозг? Точно так же мы обрабатываем подходящие варианты и получаем результат.

Почему я в начале привел длины исходного списка и результирующего словаря? Это почему алгоритмы, известные в начале прошлого века, получилось реализовать только сейчас. Я использую только 15 исходных слов и для генерации беру последних 2 буквы. А попробуйте создать словарь, например из 100 слов и анализировать 4 буквы? Надеюсь все знают что такое декартово множество и смогут посчитать результирующий словарь. 
А это самый простой и понятный механизм. Тензор использует более сложные алгоритмы для исключения ошибок, например. 

Поэтому все это полезно в образовательных целях. На практике нужно учиться использовать LLMs и механизмы работы со своими данными.

plab #:
Он не может равномерно убирать, если на полу стоят столы, стулья. Там вычисления идут геометрии. Не идеальные. Переезжает с места на место, в это время трет середину. Или у тебя запоминает, в каком метре уже потер и поднимает тряпку?

Слушай, ты хоть раз видел-то робот пылесос? Понимаешь как он работает? что он у тебя там трет? 

plab #:
Одна из главных проблем робототехники - аккумулятор. Массу твоего смартфона создают почти полностью.

Боюсь спросить - как вопрос аккумуляторов относиться к работе/полезности ИИ? Попробуешь перечитать тему топика? 

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

plab #:
Которые, специальные для данной модели, производитель продает по завышенной цене. Если многоразовые, то стирать отдельно. 

Копеечный и хватает месяца на три. Понятно что это не для нищебродов.

plab #:
Перед этим надо с пола убрать/поднять, ограничить чтобы где не навернулся. Роботы-пылесосы неплохи для больших хат, в среднестатистических - нет. Он обходит все объекты, это да. Но тогда сильно увеличивается время уборки, сажается зарядка. Замена зарядки регулярна, замена колес, может застрять под диваном.

А ты когда убираешь, моешь пол прямо по грязным трусам, которые перед этим на пол кинул? У меня 64 квадрата хата, мне хватает на 2-3 уборки одной зарядки. Для больших домов более чем тоже.

plab #:
Центр он тебе до дыр дотрет. Не вопрос.

Каких дыр, ты вообще хоть раз видел робот-пылесос? Равномерно убирает.

plab #:
Определись. Ты ему задаешь расписание программно или у него поведенческий инстинкт как у собаки выработался в результате наблюдения за людьми.

Можно програмно, можно по обучению. Так же как в автомобиле, если я с утра в будни выезжаю - он предложит мне маршрут на работу, если вечером - то в зависимости от дня - домой или в спортзал.

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


plab #:

Зачем вникать в то, что выглядит слабо имеющим перспективы? Очередной опиум для народа.

У вас есть/был робот-пылесос? Ерундистика. За 10 лет существования этой ниши ума ему  вы так и не прибавили. Как было проще и надежней орудовать обычным и тряпкой, так и осталось. 

И ты 30+ страниц пытаешься упорно этот опиум разоблачить? Лично я вот не пишу в темах, которые мне неинтересны. 

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

А ИИ такая бесперспективная вещь, что его уже скоро в утюги будут внедрять)

plab #:
создам проект "Ограниченные возможности ИИ для особо одаренных наполеонов", изучу все его технологии и разнесу ваш искусственный разум в пух и прах.

Не создашь и не изучишь. Ты за 30 страниц топика не смог понять о чем он, а нашему искусственному разуму понадобиться пара секунд, что понять твой уровень знаний.

ArbNet #:

В том то и дело, что написать примитивный пример который фактически не решает поставленной задачи с использованием случайных чисел, процентов и тп. это GPT выведет( и не всегда рабочий код к тому же).

Мой диагноз относительно тебя всё же верный с самого начала нашего общения, в очередной раз ты это подтвердил.. Что соображения у тебя нет, ты привёл пример кода и не смог даже промпт для нейронки нормальный составить, не говоря уже чтобы получить реальный прототип нейросети, которая реально генерирует осмысленные слова, а не методом rand и вероятностями, извини, но это ж реально диагноз..

ЗЫ. А ещё мне тут втирал про дифференциалы и интегралы..

Уже даже и не знаю, плакать или смеяться с твоей ограниченности... Ты хоть прочитал, то что я написал, прежде чем создавать свой "осмысленный " текст? Приведенный алгоритм - Цепь Маркова, не являющийся в полной мере реализацией нейросети, но позволяющий получать результат на основе предыдущих состояний. Ты не понимаешь, зачем там рандомизация? Ты не в курсе что и полноценные нейросети не создают "осмысленный " текст, а высчитывают вероятность, в данном случае следующей буквы на основе полученных данных? Если входной слой будет содержать ошибочные или бессмысленные данные то и на выходе будет набор букв, а не слово. Ровно как и в твоем случае - генерируешь тупость, вместо того, чтобы прочитать и вникнуть. Реализация тензора - сложнее, но там уже можно использовать несколько скрытых слоев для повышения точности выходного слоя. Жалко тратить время даже на тебя. Читать сначала научись, потом в умные дискуссии лезь.

Всего: 7322