 a flask app says what it looks like at the moment. Generating this different waveforms can add noise on top of it. And there's a fuzzy logic detector, so essentially classifier algorithm that should hear the output wave detect the original input measure detection error and present unknown moment is not really doing it. So we will be trying to improve it. We're essentially looking at two things, symmetry and sharpness. And then for each rule, we should have those defined. And they don't have to be high and low, they can be medium, high, low. So the main problem is once this output is way too low, it's always below one third, so it's always returning square. Symmetry of a triangle should be low. So symmetry is essentially comparing the first half of the signal to the second one. The noise amplitude to begin with is too high. Hey, we can change that noise. 1.5 steps. Hey, max should be 1. Let's make it 1.2 so we can actually see the signal right triangle, left triangle. The output numbers are extremely low, so they always be low. One third, 54 is thinking forever. Let's try and keep up code pilots as well. For square, the symmetry should be high. No, actually, it doesn't make sense. We have to double check. I'm wondering if there is a way to display the fuzzy logic parameters, because that should be like an explainable AI, XAI. Can GPT just design the model for us? Currently, it's not working at all. Also, before I never use the triangle A membership function, so it used to be minus 1, minus 1, 0 sharpness. Here's an example of how much is the rules. We need the rules for the AVA, say, for sinusoid. Symmetry low, sharpness low actually makes sense. Okay, that's just normalizing it, isn't it? Okay, but the point is, these numbers, the output is still super low for output. Yeah, we have to go back to how the features are extracted from the signal. Yeah, let's print those numbers for troubleshooting. And default is square. Okay, so peak sharpness kind of makes sense. Symmetry is way too low. Left triangle is a peak sharpness, should be higher. It's higher, but not by much. And symmetry remains low. Symmetry is even lower. Sharpness is low. Yeah, those numbers are not changing much. We need to look at those functions, extracting symmetry. So we're dividing the signal by two, first half, second half, reverse the second half, and the symmetry measures the inverse of the sum of the absolute differences. Yeah, this is a bad feature because so if the square function was actually different, it should have had the minus one then going one. So it's essentially, if maybe we shift and left trapezoid, we need to change those functions. What are all the other options for the types of membership functions? Triangleship membership. Yeah, it's normally I was using trapezoid, Gaussian, sigmoid. Can we also add symmetry medium, add the medium one, add the trapezoidal point two. Yeah, you expect them to overlap right now. Those mid ranges are not actually being used. So we have symmetry low. What rules should include the symmetry mid and sharpness mid? Include symmetry mid and sharpness mid. Yes, I did. What way did this circle come from? Does make any sense? We really need GPT4 to look at this. Let's start the new chat. The website is down or something. Probably the CEO is Gonski again. It's kind of to be expected. Okay, the aggregated numbers also don't make sense. They're all the same. Why? Let's try to fix the whole code. Yeah, obviously ideally we would have had the visualization of the fuzzy logic rules, membership functions. Hey, we don't have it. Just have to deal with it. Well, we're using a language model anyway. So okay, so the aggregated problem is that these two are not being used. They seem to mean the shaman are not used. Select the whole code because for GitHub Compat is important. GPT just refuses to work the back online. I don't know. Yeah, a system have detected. I don't know. Is anyone else getting those errors? Okay, why the circle? I don't have a circle. Where do you get a circle for? Currently most used fuzzy logic rules include them. You can create new rules. The new rule circle just associated with meet symmetry and meet sharpness with circle. No, I don't want that aggregation. If the classification steps, I don't have a circle shape waveform and I don't need it. No, I do want to use the sharpness, the symmetry medium. So the idea is that so looking at the symmetry and sharpness of the signal, now we try to add three ranges for the two parameters. So you can have low, medium and high symmetry and same low, medium and high sharpness. So for square, the symmetry is high, sharpness is low. Yeah, it would have been correct if the square actually had this extra bit. So if it was a symmetrical, we can actually do it. Can adjust the square triangle, symmetry, medium, sharpness, high. Okay, maybe trapezoid, symmetry, high. Yeah, trapezoid, definitely the symmetry is definitely high. Sharpness, okay, high, if you say so. Yes, we can check triangle versus trapezoid in terms of symmetry. Can it come in depth out for a sec? Use this to test, we expect, let's see, let's control f5 this. So say if we're comparing left triangle, symmetry, 0.03 and trapezoid, symmetry, 0.18. So yes, it's significantly higher, which is what we expect. And peak sharpness, 0.6 for trapezoid and 0.6 for triangle. Okay, that doesn't make sense. Yeah, now the problem is still that this output numbers are extremely low, rule square, right, so the output, no, we don't have the circle, we don't want the circle. So now we have three levels for each feature, low, medium, high. I'm assuming this is correct. Do we need any more rules? No. Do we need to fix aggregated? We might. And to update this, you're removing these zeros. Update your code, include mid-symmetry and mid-sharpness. Yeah, we need to explain that line. And this one remained the same. The other problem is that aggregated values are all the same. It could be a problem. I don't know why it's loading forever as well. Loading forever. Yeah, I know why it's loading forever because it's still loading that JavaScript having an error as well. Why? That's because I do need those zeros to know why it just doesn't work without them. Yeah, the plot Lee mean JS is loading forever. I don't know if it's because hopefully it's only because I'm live streaming at the moment. Just say we have left triangle, symmetry, 0.03, peak sharpness, 0.52, and we have a trapezoid symmetry, 0.06. So it's like double, but it's still very low number point and sharpness increased as well, which actually does not make sense. And these aggregated always meant to have the same numbers. Aggregated values are always the same. So returning sharpness low, open in here, doing some studying some heavy troubleshooting, peak sharpness, symmetry, then we have the rules, the four rules, and aggregated and output. Right. So this is what we get for square. Okay, it seems like those numbers are saturated. So I need to add square and the input signal and the amount of noise. Shall we make noise zero? Let's print input wave and noise altitude. That's right. Okay, output is 2.6. Now it's even the opposite and smaller. Getting an error. Thinkful when the noise is too low. This trapezoid noise altitude is essentially fixing our model. Bring this very close to zero, which is not expected. This might be due to the fact that the aggregated membership function is constant across the entire universe. That's a good sentence. Constant across the entire universe of discourse, whatever that means, the defacification process couplets, the weighted average of the universe discourse with the weights being the membership grades. If the membership grades are the same for all values in the universe, the specified value will be the centroid. In this case, the universe to fix this, you need to ensure the membership functions are defined in such a way that aggregated membership function varies across the universe. Here's an example of how you might update your membership functions and rules. Symmetry. Okay, but this will essentially just make all the symmetry medium and it's back to triangle. Why is it back to triangle? I don't like triangles as a membership function. It's repeating to that line problem that instead it doesn't work getting errors for it. When it's such a way that they overlap, a trip is sort of membership function better in this case, so it don't triangle Gaussian depends on specific complication. Of course it is. If you are using trip zone membership functions for both low and high in a triangle for the mid-category of this common approach, actually this makes a lot of sense for a change. Okay, can you actually do that? We can do a mid one could be trapezoidal as well, there's no problem. Okay, let's go with what it's suggesting over here. Symmetry, low, low, mid, high, high, low, high, a, aggregated, that one again, just go with it for a sec. And output is the same. So we know this works and it's actually cool that that suggestion that taking the original rule square actually printed again this after concatenation. There's this again. I wasn't working before, so it wasn't the right symmetry. Why are they becoming scaleless? And go try bodycalves.com. I'll see you later.