Python “什么是”呢;“自我”;在凯拉斯?

Python “什么是”呢;“自我”;在凯拉斯?,python,Python,我不熟悉机器学习和Python。 我一直在为一个项目使用Keras。 Model几乎所有属性的第一个参数都是self 例如: fit(self, x=None, y=None, batch_size=None, epochs=1, verbose=1, callbacks=None, validation_split=0.0, validation_data=None, shuffle=True, class_weight=None, sample_weight=None, initial_ep

我不熟悉机器学习和Python。 我一直在为一个项目使用Keras。
Model
几乎所有属性的第一个参数都是
self

例如:

fit(self, x=None, y=None, batch_size=None, epochs=1, verbose=1, callbacks=None, validation_split=0.0, validation_data=None, shuffle=True, class_weight=None, sample_weight=None, initial_epoch=0, steps_per_epoch=None, validation_steps=None)

有人能告诉我这个
self
指的是什么吗?

Model
的方法中,
self
是您正在使用的类
Model
的特定实例。如果一个类是一个物种,那么该类的一个实例(或对象)就是该物种的一个特定个体

在过程语言(如C)中,所有数据都作为参数传递给函数。在支持面向对象的语言(如Python)中,函数(方法)被视为属于某些对象类。该对象不是作为显式参数传递给函数,而是在
self
中“匿名”传递

。()
导致调用
(self=,)


在一些面向对象的语言(如C++)中,这个
self
(或者,在这种情况下,
如果调用来自同一对象的另一个方法,甚至不必提及此
参数,但它无论如何都隐式存在。

它并不特定于KerasI,我对model.fit中究竟是什么代替了self感到困惑。我知道x是训练数据,y是目标数据,但我并不真正理解一个类模型的对象,它包含表示模型状态的数据。因此,OO语言中的Model.fit()类似于fit(Model)如果你打算大量使用Python,先学习一个好的教程,它会回报你的努力。这与Keras和OO编程无关。