Transcription
Good day, ladies and gentlemen. Can you hear me? >> Everything is heard perfectly. Thank you, Vladimir. >> Excellent. I hope you can see me too. I am Vladimir Satarov, a 1C developer at the company Ilex, and today I want to talk about the advantages of neural networks, and most importantly, what disadvantages they have. So, let's start with a rather general point. So, you have all, of course, encountered neural networks, so-called chatbots. This is Deep PSI, this is our Alice, this is chat GPT, Gemini, Grok, and a number of other chatbots. They draw pictures, write music, write poems, answer coherently. Even according to some reports, some comrades use it as a personal psychoanalyst. This is all good, of course, but the question is, how can we use neural networks for business purposes? This is a more interesting question. Well, first of all, I want to say that there is a huge amount of hype around neural networks. That is, it is presented as a universal tool, a universal button that can solve any business problem. This is not entirely true. There are some limitations, which I would like to talk about, well, a little later. Uh, but, perhaps, we should start with why I don't like the term artificial intelligence. I remind you that the English name for this field is artificial intelligence. However, in English, besides the word intelligence, there is also the word intellect. So why is this field called not Artificial Intellect, but specifically Artificial Intelligence? Well, because intellect is a somewhat broader concept and a higher concept. Intellect is about discovering a new law of nature, writing a brilliant poem, making a brilliant film, writing a completely unique book. Intelligence is a certain skill, it is, uh, let's say, like working according to some template. Therefore, in my opinion, the term artificial intelligence is not entirely correct. It would be more accurate to call it artificial researcher or, uh, artificial skill. Something like that.
And how is an artificial neuron structured? Well, let's start with the very basics. what was discovered, what was proposed back in 1943 by Warren McCulloch and Walter Pitts, they proposed this kind of system. Here, the inputs to the neuron are denoted by x, that is, these are the signals that are fed to the neuron's input. W are the weights, which each input has. Sigma is the summation function, and B is the bias, or bias, in our "bird" terminology. What does a neuron do? In reality, it calculates a very simple function. It multiplies each input by its weight and sums all these products, then adds the bias to it, and feeds the result to the activation function. Uh, uh, in fact, from the output of the activation function, we get the result of the neuron's work. Well, here arises a question. Look, essentially, this is an ordinary linear function. However, in nature, we encounter linearity extremely rarely. As a rule, we have non-linear dependencies. What exactly introduces non-linearity into the neuron's operation? And it is the activation function. Why? Because it can be, for example, like this. This is a sigmoid. And if on the x-axis we have the value of the sum after the summer, and on the y-axis, it is the output that will be the value that will be at the neuron's output. This is a hyperbolic tangent. You see, again, a non-linear dependence. And the most popular is the function. In fact, there are many more activation functions. However, there is no particular point in considering all of them. It is enough to understand that there are many of them and what they are in principle. Well, and now let's look at how this neuron works. Well, first of all, uh, I want to make a disclaimer. I am not prone to misogyny. Uh, so, in fact, well, let's say, each of us probably has an acquaintance about whom we can say that he thinks with one neuron. In this case, this slide shows the process of choosing, let's say, well, not a life partner, perhaps. A girl simply evaluates young men, whom she wants to get acquainted with and whom she will never get acquainted with. And we have three inputs. The first input is financial security. The second is a propensity for bad habits, alcohol, tobacco smoking, and so on. And the third input. Is our contender handsome or not. Each of the inputs is encoded by a zero or a one. Zero if no, and one if yes. Each input has a weight of 0.5, -0.5, and 0.5, and again 0.5. Then we have summation, after which the result is fed to the function. And after that, a choice is made. If the obtained value is greater than 0.5, then the girl will decide to get acquainted with the young man. If not, then the young man definitely has no chance. So, how does it work? Let's imagine that we have a financially secure, however, a comrade prone to various excesses and not handsome. What do we get? Here we have one, here we have one, and here we have zero. 1 x 0.5 + 1 x -0.5 = 0. And with this young man, our lady will not want to get acquainted. If, however, he is financially secure, does not smoke, does not drink, leads a healthy lifestyle, and is also handsome, then we get a one at the output, and the girl will get acquainted with this comrade. However, even in the case where he is financially secure, but nevertheless prone to abuse and still handsome, our lady will decide that, well, yes, she will go. And this is how the neuron initially worked. But, of course, any neural network is not one neuron, it is a collection of neurons. Here, before you is a schematic picture of a fully connected multilayer perceptron. This is one of the first neural network architectures that ever appeared in the world. Here we have inputs, a hidden layer, that is, the layer that we do not see. Each neuron in the input layer is connected to each neuron in the first hidden layer. Each neuron in the first hidden layer is connected to each neuron in the second layer. And each neuron of the second hidden layer is connected to the neurons of the output layer. This connection of each to each is the full connectivity of the network. So, what can this network do? In neural network developer courses, an example is given where a similar system is capable of recognizing handwritten digits with a probability of up to 70%. 70-75% this network gives. This is one of the first results that was obtained, in fact, in this field. Another point, in fact, using this network, one very important moment can be shown. So, let's assume we are dealing with handwritten digits. An image of 28x28 pixels. Each pixel has a number from zero to 255. And we feed all these pixels to the input of the neural network. There will be 784 of them in total. Each neuron at the input will be responsible for one pixel. We will have one hidden layer and one output layer. That is, the neural network will consist of only three layers. So the question is: how many parameters does this neural network have? And a simple calculation gives us the figure of 101,770 parameters. This is precisely why I emphasized this figure. Because even the simplest neural network has a huge number of parameters. It is this factor that gives us the ability to adapt to almost any situation, that is, to almost any task. In large neural networks, the ones you have worked with, we are already talking about billions of parameters.
And now you may have a logical question. Uh, do I have to manually configure all these parameters? I just won't be able to cope. Well, you don't have to. The fact is that in addition to the neuron itself, there are some algorithms for calculating the neuron, special training functions have also been developed for all of this, which adjust the neuron parameters during training so that they optimally solve the task. That is, the adjustment of all these hundred thousand is done using a specific algorithm. You only need to provide examples on which your neural network will learn. But, of course, since the first fully connected perceptron, a huge number of various neural network architectures have been invented. Here I have listed some of them. Of what is here, I can draw your attention, for example, to these neural networks. They look like hourglasses turned on their side. They are generally called autoencoders. These networks, one of the tasks that these neural networks can solve, is signal cleaning. or the identification of atypical spikes. How can this be applied in business? Well, for example, you have some business parameters that change over time, and you want them to be a little higher, a little higher every day, a little lower. Sometimes they are much higher, sometimes much lower. And you would like to know which of these changes is atypical. Well, for solving this problem, among others, such an architecture called an autoencoder is suitable. This little network, for example, can recognize images, that is, it is designed for this specific task. Well, of course, other models are used much more now. And, in particular, before you is a schematic diagram of a chatbot. Here, the user sends a request. It is processed by the so-called embedding model. Then there is a request to the vector DB. Then the result goes to the LLM, and the LLM sends you an answer. Well, you probably didn't understand anything because I'm speaking in our programmer "bird" language. Let's decipher a little what embedding is. The thing is this. The thing is that initially, well, for example, you decided to create a chatbot that will answer questions about your internal regulations, that is, about regulatory documents. What should you do? You need to feed all this to the so-called embedding model. What is embedding? It is the representation of your text in the form of vectors. That is, it is a model that translates your text into some, uh, well, it's a one-dimensional array in reality, a vector, into some vectors. And then, after training on your data, all these data, all the results are stored in a vector database. When a user sends a request, this text again goes through the embedding model. It builds a vector that corresponds to the request that the user made. This vector is sent as a request to the vector database, a certain answer is obtained, and this answer goes to the generative LLM. What is LLM? Large Language Model. This is precisely the thing that talks to you. That is, the thing that writes, in Russian or in English or in German, is able to formulate a grammatically correct and beautiful answer in a certain language.
And how do we organize the interaction between 1C and our neural network? Well, let's consider a very simple case where you have a neural network within your organization. The fact is that in 1C itself, there are three models that 1C has developed itself. These are text recognition, voice recognition, and forecasting. Perhaps I will dedicate some of the upcoming webinars to them, if possible. However, 1C has tools that allow it to be connected to any neural network that can exist in this world. I say this with complete confidence. It is done incredibly simply. A web server is placed between 1C and the neural network. And then communication occurs via the HTTP protocol. Well, again, you might say that I'm speaking in "bird" language, however, this situation is absolutely familiar to you. All sorts of honest signs, all sorts of markings, and other such things, they work precisely according to the same technology. That is, we are not inventing anything new here, we are using battle-tested classics. Further, a slightly more complex process, if you are using a global neural network. The whole problem is what? The global one is more powerful and functional. However, it has a very unpleasant feature. It knows nothing about your organization and knows nothing about what is happening inside. How should it be done in this case? The user sends a request to your system, that is, to the code that is on your side. This code takes the request, adds some context to it. Well, this can be some hints, it can be all sorts of additional information. And after that, it is sent to the global neural network. The global neural network parses the prompts, here they are added, it parses the request taking into account the prompts and makes a call, a callback to some function on your side. This function is executed, and its result is returned, again, to the global neural network. And there, the answer that will be returned to our dear user is formed.
So, what tasks can be solved with neural networks? Now, please prepare. There will be a lot of sweet and tasty things. So, I asked the neural network, what can you do? How can you be useful to business? And, uh, a large good model gave me many options. So, I can work with data. This includes sales analysis, demand forecasting, key metric calculation, cross-channel analytics. I can create context, I can segment the customer base, I can even generate ideas. And I will also work with reviews and create some kind of chatbot for a database, for a knowledge base, and train personnel, and so on. Assortment, supplier analysis, order generation, ABC XYZ analysis. In operational activities, I will optimize your processes and compile reports, analyze personnel efficiency, and prepare documents, and I will also deal with your strategy. So, what can I say about this? The well-known character from Ilf and Petrov, Ostap Suleyman Berta Maria Benderbey, would have been impressed by such a level of self-presentation. In reality, everything is a little sadder. The thing is this. The thing is that all these functions require the analysis of your internal information. which presents some problems, because it is necessary to inform the model about some important facts. And in general, I was engaged in the task of forecasting. Well, not everything is good there. I will tell you about my experience a little later. So, now, information from me. Having worked with neural networks, I have drawn a number of conclusions that I want to share with you. Well, first of all, neural networks are programs. They are built a little differently than our usual beloved 1C. However, in principle, they are just slightly different, but programs. These programs work only with numbers. If you need to work with categories, then these categories are represented by indices, well, ordinal numbers. If we work with text or some other context, then we must turn this context into some vector that we load into our database, which is very important. Neural networks implement fuzzy logic. In ordinary programming, we are used to true and false. This is clear logic. That is, we either have yes or no. There is no third option. However, in neural networks, there is never an unambiguous yes or an absolute no. If a neural network gives some result, then this result has a probability. For example, when recognizing an image, it can say that it is 80% a cat and 20% a dog. At the same time, an image of some bear might be presented. This is quite normal for neural networks, and this must always be taken into account. This is both a plus and a minus. Neural networks require training. If you are going to train some local neural network, you will need to provide a large amount of information for it to properly understand your dependent networks. Normal amounts of information are from 1,000 and above, preferably 3-5,000 minimum. And what is very important, neural networks can identify dependencies in data themselves. In general, a neural network can be compared to a specialist who has worked, well, for ten or twenty years in this field. Why? Because they are capable of very quickly reviewing tens of thousands of options of data and drawing conclusions from them. That is, they accumulate experience very quickly, well, incomparably faster than a person does. This is their advantage. Where can neural networks not be applied? Where explainability and transparency of decisions are required. Why is a neural network a black box? You put something in, you get something out. How did it happen? Well, the neural network does not always explain it to you, and it is not always possible to find out. Where there is little data or it is of low quality. Low quality is usually expressed in the fact that the data is noisy. That is, your sequence, your business parameter is affected by some random factors that we cannot account for at all. Where an error is unacceptable. Well, for example, I absolutely cannot imagine an accountant who would say: "This check, this entry is 80% correct." What does 80% correct mean? Interaction with government agencies depends on this. There may be fines, there may be some other very unpleasant things. Therefore, my dear, either this is an incorrect entry, or it is absolutely correct. A neural network cannot do that. Therefore, in regulated accounting, neural networks are not used at all. And when we use them in management accounting, we must always bear in mind that this is just advice. This is not an absolute prediction that must necessarily come true. Neural networks should not be applied where this method is not better than conventional methods. And I will talk about this a little later. Where would I recommend applying them? Precisely where others give poor results. This is text or speech recognition. However, here too, one must apply such things with great caution for one simple reason. We had a case in one of the companies where conversations were recorded, transcribed, and then passed through a neural network. And the neural network sent a conclusion, a summary of the conversation, that programmer Maxim, a hypothetical Maxim, spoke very confidently and well. Programmer Tanya, also hypothetical, spoke uncertainly about what she was saying, spoke unconfidently, and it was definitely worth paying attention to the fact that something was wrong here. Well, the problem was this. Tanya is a very good programmer, maybe not brilliant, but a very solid and good middle-class specialist who can develop a lot. However, she has a slow speech rate. She speaks unemotionally, at approximately the same level, and at a rather slow pace. And Maxim knows that when you come to a meeting, you need to chatter quickly, radiate confidence, optimism, corporatism, and creativity. It was precisely these signs that the neural network reacted to and gave a characteristic of our specialists that does not correspond to reality at all. Well, the fact is that both Maxim and Tanya are approximately at the same level of expertise. Neural networks can be used in forecasting. Well, I've delved into this idea a bit and can say that here neural networks should only be used if all other methods do not give good results. A simple period-to-period comparison sometimes gives a better result than any other methods. If, well, this must be determined by metrics, that is, we must take, say, September of the previous year, September of this year, measure, build a forecast, calculate the metrics, and if they are, let's say, in the zone of unsatisfactory results, then we can move on to other methods. However, there are, for example, methods that do not use neural networks, and they divide all your data into three categories: trend, seasonality, and noise. Trend is a long-term change in your parameter, a year or more. Seasonality is from month to month, from quarter to quarter. And noise, well, noise is what prevents you from seeing the true direction of your business. Where only a person with great experience can see dependencies. As I said earlier, neural networks have a property that in humans is called "exposure" or "experience." That is, with one glance, it can pick out some dependencies that a person simply wouldn't see. And here they are truly good. And neural networks can be used as assistants in working with textual information. But there is one very serious pitfall here. It lies in the fact that when a neural network works with text, it engages in generalization. That is, when we talk about legal information, or about documents related to regulated accounting, accounting, well, or some other regulatory matters, well, such documents can be processed through a neural network, of course, but after that, you still need to look at the original source with your own eyes. The fact is that a neural network can miss incredibly important points. Well, you all understand how important some formulations are. And now imagine that it somehow generalizes these formulations. That would be completely unacceptable. Well, that's all from me. I await your questions. Thank you for the useful information, Vladimir. Yes, indeed, if you have questions, you can ask them now. We also remind you that if you have 1C tasks, need modifications, or support, our specialists are ready to help. Implex company, an official 1C partner, has the status of a 1C:P center, received a quality certificate according to the international ISO standard, and has been managing projects since 2015.
So, let's see. So, I see that there are no questions as such. Mostly technical ones. Could you hear me, couldn't you hear me? So, I see. There is a question. Thank you. So, I might say it a little incorrectly. Vladimir, you see the question too, right? It's from Sergey. What LMA, ah, no, LM, in your opinion, is the most? Yes, yes, yes. Besides the banal and already overused chat GPT. Well, first of all, there is. Now I probably won't quickly find, in general, let's say, for 1C, here we need to clarify, for what purposes of 1C. If we want to build a chatbot, then any. If, well, if, well, we are talking specifically about business, not programming applications. So, look, there is such a resource. Now I will find it for you, because I saw it. Because I saw it literally yesterday. Uh, so, Ilino. Aha. I will show you this website now. Uh, >> while Vladimir is searching, maybe Alexey. >> No, I've already found it. >> Okay, we'll ask just one clarifying question. chat GPT5 or Psyk. Did you mean which neural network is preferable? Perhaps answer in the window so that the question is asked more correctly. Thank you. So, there is such a resource called LM Arena AI. And there is a Leaderboard page. And here you can see the networks that are currently, uh, in fact, let's say, the best. Besides chat GPT and Gemini, and Claude. Here is 4.5 GPT. And what else do we have here? Well, it's already tenth, eleventh place. Here is deep, only in eleventh place. Uh, refer to this resource and, in fact, choose the model that suits you. Let's say, there are no bad models now. You can use Grok, you can use chat GPT, Deep. As for Alice, I'm not sure, honestly. Not that she's bad, my opinion cannot be leading here, but for some reason I don't see her in the ratings. Either I just don't, or she's just called something else here. Like that. I can't understand. So, in principle, you can use any. >> So, >> yes, let me read the next question. Alexey Glushkov asked chat GPT5 or Psyk and a clarifying question, yes, to our question. Yes, from the perspective of a neural network specialist, which model is more preferable for the types of use cases that you, Vladimir, are proposing? What should be guided by >> when choosing a neural network? >> You should be guided, first of all, by your equipment. Can it handle it? Do you want to use it locally, or do you want to use it globally? If globally, then you need to allocate a budget. You need to maintain this, in fact, create an account, maintain this account and use it. If locally, then the question is, what is your equipment, how powerful a network can you install? That is, how many billions of parameters will it have? The more parameters, the more functional the network. And, but, it may happen that a network with a small number of parameters is quite capable of solving your problem. You are asking a question that, well, in principle, is about the same. What hardware should I choose for ERP? Well, this is a very big question. There is too much variation here. A more in-depth analysis is needed, and to answer it like this. Just take this box, unpack it, and everything will be fine. Unfortunately, I cannot. Well, it would be irresponsible. >> Thank you. So, the next question. How to use neural networks in daily management accounting in 1C? The question is, what tasks do you want to solve, what exactly do you need, what exactly do you require for work. Well, for example, I have two examples that I have worked with. This is forecasting business parameters. Once a day or, in fact, once a week or every 3 days, you contact a neural network located within your local network and get a forecast, say, for the next 3 days, in fact, for the next month, about how your revenue or profit, or costs, or any other business parameter for which you have history will change. Based on this, you start, you orient yourself on what will happen in the near future. From my experience working with similar tasks, I can tell you that neural networks on horizontal dependencies, that is, when we have a kind of plateau, it will jump a little higher, a little lower. So, it's probably not worth relying on this too much. But when, but if you have some spikes in magnitude, then it will catch the beginning of this spike easily. Both networks catch the beginning of a trend excellently. One is NBITS, the second is a combined LSTM GRU network. But it will catch the beginning of the trend, but probably not the peak. And it will most likely underestimate the indicator, that is, it will be a pessimistic assessment. Most likely, your peak spike will be higher than the neural network predicts. Uh-huh. Thank you for the answer. So, the next question. Can neural networks analyze linear statistical graphs in Excel? I may, I hope, have read it correctly. Please look, Vladimir, >> analyze linear graphs of statistics. >> And why linear ones? Linear ones are not needed for linearity. Linearity is easier to process with other methods. >> So, the next. >> They are for non-linear tasks. >> Uh-huh. Thank you. >> You can, but it's pointless. That's how I would answer. Okay, thank you. So, the penultimate question. So, you propose to deploy a neural network in a local cluster and give full access to the 1C database, and then ask it questions and tasks. Is that correct? >> Well, as an option. Well, as an option. As an option. Well, in reality, there is full access. What does that mean? It won't have a robot sitting there, pressing keys and going where it shouldn't. Nothing like that. It will be a call to some code on the 1C side. And here we can very carefully regulate access to our data and prevent all sorts of unpleasant things. That is, we still control access. Uh, I would not imagine it as a robot that presses keys and gets full access, and then starts poking around, and then starts asking stupid questions. It doesn't look quite like that. >> Well, and the last, quite pleasant question. Do you plan to have more webinars? On what topics, Vladimir? >> Well, I plan, but does Implex plan or not? I would gladly, >> with pleasure. >> For example, to figure out how to integrate. The thing is, for example, speech recognition is not only in document management, it is in a separate database. And the question is, if we have some configuration, then we can upload these changes as a subsystem to any other configuration. And, for example, I would consider such a question. I plan to do this anyway. Well, and then we'll see what comes of it. >> Vladimir, I suggest we put the last slide of our wonderful presentation, so that those who wish can, next slide, please, so that you can subscribe to our Telegram channel, because that's where we first start posting announcements of new webinars. So, please point your phone at the QR code, subscribe, and you can also comment and ask questions there. So, write to us, we are in touch. So, and there is one last question. Are such seminars planned to consider working with neural networks for 1C programmers? Well, how can I say, I don't know, I haven't thought in that direction yet. I haven't thought in that direction. In principle, for 1C programmers, well, I tried this thing called "code-writing" here. I can show what it is and how to work with it. In general, the thing is that I wrote one of the neural networks, precisely the one I mentioned, the LSTM GRU, a combined network, using code-writing in about an hour. The script was 250 lines long. It's Python. The script worked right out of the box, but I had to tinker a bit. However, I can say that I did not write or edit a single line of code. Such an interesting result. Yes, I can show programmers how it's done. And it will greatly expand their capabilities. They will, of course, write large projects in Python. Well, some global ones, but small tasks for business goals, yes, just easily. In any case, today, not only our listeners benefited, but we also gained topics for ourselves that can be used in new webinars, to tell, to share experience. Yes, thank you all very much for your questions. You can subscribe to the Telegram channel again. We will announce our new events in the future. We suggest saying goodbye for now. We remind you that we will definitely send the recording to everyone who registered and provided their email address. Thank you all for your attention, for being present. Goodbye. Thank you. Yes, thank you for thanking us too. We are very happy to be helpful. >> Thank you very much for coming and asking interesting questions. It was also very useful for me. Thank you. Goodbye.