Skip to content

Commit

Permalink
LDLLC
Browse files Browse the repository at this point in the history
  • Loading branch information
SpriteMisaka committed Aug 23, 2024
1 parent 635c876 commit e9dcc8a
Show file tree
Hide file tree
Showing 17 changed files with 197 additions and 150 deletions.
17 changes: 10 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,16 @@ Label distribution learning (LDL) and label enhancement (LE) toolkit implemented
+ ([Yang, Sun, and Sun 2017](https://doi.org/10.1609/aaai.v31i1.10485)) [*AAAI*]: `BCPNN` and `ACPNN`.
+ ([Xu and Zhou 2017](https://doi.org/10.24963/ijcai.2017/443)) [*IJCAI*]: `IncomLDL`$^2$.
+ ([Shen et al. 2017](https://papers.nips.cc/paper_files/paper/2017/hash/6e2713a6efee97bacb63e52c54f0ada0-Abstract.html)) [*NeurIPS*]: `LDLF`.
+ ([Wang and Geng 2019](https://doi.org/10.24963/ijcai.2019/515)) [*IJCAI*]: `LDL4C`$^3$.
+ ([Jia et al. 2018](https://doi.org/10.1609/aaai.v32i1.11664)) [*AAAI*]: $^\dagger$`LDLLC`.
+ ([Wang and Geng 2019](https://doi.org/10.24963/ijcai.2019/515)) [*IJCAI*]: $^\dagger$`LDL4C`$^3$.
+ ([Shen et al. 2020](https://dx.doi.org/10.14177/j.cnki.32-1397n.2020.44.06.004)) [*南京理工大学学报* (Chinese)]: `AdaBoostLDL`.
+ ([González et al. 2021a](https://doi.org/10.1016/j.ins.2020.07.071)) [*Inf. Sci.*]: `SSG_LDL`$^4$.
+ ([González et al. 2021b](https://doi.org/10.1016/j.inffus.2020.08.024)) [*Inf. Fusion*]: `DF_LDL`.
+ ([Wang and Geng 2021a](https://doi.org/10.24963/ijcai.2021/426)) [*IJCAI*]: `LDL_HR`$^3$.
+ ([Wang and Geng 2021b](https://proceedings.mlr.press/v139/wang21h.html)) [*ICML*]: `LDLM`$^3$.
+ ([Wang and Geng 2021a](https://doi.org/10.24963/ijcai.2021/426)) [*IJCAI*]: $^\dagger$`LDL_HR`$^3$.
+ ([Wang and Geng 2021b](https://proceedings.mlr.press/v139/wang21h.html)) [*ICML*]: $^\dagger$`LDLM`$^3$.
+ ([Jia et al. 2021](https://doi.org/10.1109/TKDE.2019.2943337)) [*TKDE*]: `LDL_SCL`.
+ ([Jia et al. 2023a](https://doi.org/10.1109/TKDE.2021.3099294)) [*TKDE*]: `LDL_LRR`.
+ ([Jia et al. 2023b](https://doi.org/10.1109/TNNLS.2023.3258976)) [*TNNLS*]: `LDL_DPA`.
+ ([Jia et al. 2023a](https://doi.org/10.1109/TKDE.2021.3099294)) [*TKDE*]: $^\dagger$`LDL_LRR`.
+ ([Jia et al. 2023b](https://doi.org/10.1109/TNNLS.2023.3258976)) [*TNNLS*]: $^\dagger$`LDL_DPA`.
+ ([Wen et al. 2023](https://doi.org/10.1109/ICCV51070.2023.02146)) [*ICCV*]: `CAD`$^1$, `QFD2`$^1$, and `CJS`$^1$.
+ ([Li and Chen 2024](https://doi.org/10.24963/ijcai.2024/494)) [*IJCAI*]: `WInLDL`$^2$.
+ ([Wu, Li, and Jia 2024](https://doi.org/10.1109/TBDATA.2024.3442562)) [*TBD*]: `LDL_DA`$^5$.
Expand All @@ -28,7 +29,7 @@ Label distribution learning (LDL) and label enhancement (LE) toolkit implemented
+ LDL metrics: `chebyshev`, `clark`, `canberra`, `kl_divergence`, `cosine`, `intersection`, etc.
+ Structured LDL datasets: *Human_Gene*, *Movie*, *Natural_Scene*, *s-BU_3DFE*, *s-JAFFE*, *Yeast*, etc.
+ LDL applications:
+ Facial emotion recognition (supported datasets: [*JAFFE*](https://zenodo.org/records/3451524) and [*BU-3DFE*](https://www.cs.binghamton.edu/~lijun/Research/3DFE/3DFE_Analysis.html))
+ Facial emotion recognition (supported datasets: [*JAFFE*](https://zenodo.org/records/3451524) and [*BU-3DFE*](https://www.cs.binghamton.edu/~lijun/Research/3DFE/3DFE_Analysis.html)).
+ ([Shirani et al. 2019](https://doi.org/10.18653/v1/P19-1112)) [*ACL*]: Emphasis selection (supported datasets: [*SemEval2020*](https://github.com/RiTUAL-UH/SemEval2020_Task10_Emphasis_Selection); pre-trained GloVe embeddings can be downloaded [here](https://nlp.stanford.edu/projects/glove/)).
+ ([Wu et al. 2019](https://doi.org/10.1109/ICCV.2019.01074)) [*ICCV*]: Lesion counting (supported datasets: [*ACNE04*](https://drive.google.com/drive/folders/18yJcHXhzOv7H89t-Lda6phheAicLqMuZ)).
+ ([Chen et al. 2020](https://doi.org/10.1109/CVPR42600.2020.01400)) [*CVPR*]: Facial emotion recognition with auxiliary label space graphs (supported datasets: [*CK+*](https://www.jeffcohn.net/Resources/); OpenFace can be downloaded [here](https://github.com/TadasBaltrusaitis/OpenFace/releases), and the required models can be downloaded [here](https://github.com/TadasBaltrusaitis/OpenFace/wiki/Model-download)).
Expand All @@ -41,7 +42,9 @@ Label distribution learning (LDL) and label enhancement (LE) toolkit implemented
>
> $^4$ These are oversampling algorithms for LDL, therefore you should use `fit_transform` to generate synthetic samples.
>
> $^5$: To use domain adaptation methods for LDL, you need to provide the source domain data via parameters `sX` and `sy` of the `fit` method. [Here](https://github.com/SpriteMisaka/PyLDL/blob/main/demo/domain_adaptation.ipynb) is a demo on domain adaptation for LDL.
> $^5$ To use domain adaptation methods for LDL, you need to provide the source domain data via parameters `sX` and `sy` of the `fit` method. [Here](https://github.com/SpriteMisaka/PyLDL/blob/main/demo/domain_adaptation.ipynb) is a demo on domain adaptation for LDL.
> $^\dagger$ These methods involve imposing constraints on model parameters, like regularization. Therefore, it is recommended to carefully tune the hyperparameters and apply feature preprocessing techniques like `StandardScaler` or `MinMaxScaler` before conducting experiments to achieve the expected performance.
## Installation

Expand Down
4 changes: 2 additions & 2 deletions docs/genindex.html
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,8 @@ <h2 id="L">L</h2>
<li><a href="index.html#pyldl.algorithms.LDL_SCL">LDL_SCL (class in pyldl.algorithms)</a>
</li>
<li><a href="index.html#pyldl.algorithms.LDLF">LDLF (class in pyldl.algorithms)</a>
</li>
<li><a href="index.html#pyldl.algorithms.LDLLC">LDLLC (class in pyldl.algorithms)</a>
</li>
<li><a href="index.html#pyldl.algorithms.LDLM">LDLM (class in pyldl.algorithms)</a>
</li>
Expand Down Expand Up @@ -127,8 +129,6 @@ <h2 id="P">P</h2>
<table style="width: 100%" class="indextable genindextable"><tr>
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="index.html#pyldl.algorithms.LDL_DA.pairwise_cosine">pairwise_cosine() (pyldl.algorithms.LDL_DA static method)</a>
</li>
<li><a href="index.html#pyldl.algorithms.LDL_DA.pairwise_euclidean">pairwise_euclidean() (pyldl.algorithms.LDL_DA static method)</a>
</li>
<li><a href="index.html#pyldl.algorithms.LDL_DA.pairwise_jsd">pairwise_jsd() (pyldl.algorithms.LDL_DA static method)</a>
</li>
Expand Down
26 changes: 6 additions & 20 deletions docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,12 @@ <h1>PyLDL documentation<a class="headerlink" href="#pyldl-documentation" title="
<dd><p>LDLF is proposed in paper <em>Label Distribution Learning Forests</em>.</p>
</dd></dl>

<dl class="py class">
<dt class="sig sig-object py" id="pyldl.algorithms.LDLLC">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">pyldl.algorithms.</span></span><span class="sig-name descname"><span class="pre">LDLLC</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyldl.algorithms.LDLLC" title="Link to this definition"></a></dt>
<dd><p>LDLLC is proposed in paper <em>Label Distribution Learning by Exploiting Label Correlations</em>.</p>
</dd></dl>

<dl class="py class">
<dt class="sig sig-object py" id="pyldl.algorithms.LDLM">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">pyldl.algorithms.</span></span><span class="sig-name descname"><span class="pre">LDLM</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#pyldl.algorithms.LDLM" title="Link to this definition"></a></dt>
Expand Down Expand Up @@ -133,26 +139,6 @@ <h1>PyLDL documentation<a class="headerlink" href="#pyldl-documentation" title="
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="pyldl.algorithms.LDL_DA.pairwise_euclidean">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">pairwise_euclidean</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">X</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Tensor</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Y</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Tensor</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Tensor</span></span></span><a class="headerlink" href="#pyldl.algorithms.LDL_DA.pairwise_euclidean" title="Link to this definition"></a></dt>
<dd><p>Pairwise Euclidean distance.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>X</strong> (<em>tf.Tensor</em>) – Matrix <span class="math notranslate nohighlight">\(\boldsymbol{X}\)</span> (shape: <span class="math notranslate nohighlight">\([m_X,\, n_X]\)</span>).</p></li>
<li><p><strong>Y</strong> (<em>tf.Tensor</em>) – Matrix <span class="math notranslate nohighlight">\(\boldsymbol{Y}\)</span> (shape: <span class="math notranslate nohighlight">\([m_Y,\, n_Y]\)</span>).</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Pairwise Euclidean distance (shape: <span class="math notranslate nohighlight">\([m_X,\, m_Y]\)</span>).</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>tf.Tensor</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="pyldl.algorithms.LDL_DA.pairwise_jsd">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">pairwise_jsd</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">X</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Tensor</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">Y</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Tensor</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">Tensor</span></span></span><a class="headerlink" href="#pyldl.algorithms.LDL_DA.pairwise_jsd" title="Link to this definition"></a></dt>
Expand Down
9 changes: 6 additions & 3 deletions docs/objects.inv
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@
# Project: PyLDL
# Version:
# The remainder of this file is compressed using zlib.
xڥ�Oo� ���M�k�-��ۦ13�I���W�B����~���RЛ����Jyy˚#v��PaY/
A*�KH9��8�{�k�se�7�b��3�T�z��2M�m� �=�g>[��1�Np�n�\w�H��JD�U�a�(��PaF ���[��x���1H���j8�~ٟ;_b��F�K�>��p���� =R��.�:�D��+c� ������Ǥ��S%#W֌����nj��6�3�����o��O��2�v2)����i�SN�ٰ�&?�<�Fȼm=�: � I���Ǚvm�+�6,����}�W�2�� x[�& {[7�wYm���| �1"pw�ô6��Y���D�
41�ut)X4���>�:��u�[�K+@�]ЮYfo�):A���0�
xڥ�Oo�0��|
��
ْ��m3H�v$�}�.�%-d�ۏ�N���zӾ��޾e� ˄�U^(�lV� 5�ŧ��o�W{�ׂg?���8E��4�R��Eg�6��v����u��1�n�݉�Y��N�\{�D��JD�U�b�(��ߊ<�3tv�A��dڸÉ�c�ܻ��9��Z�k��,��DA�.� �iV�.��B88y�R��T_I%�
fn'��0���à=������ɍb������Dӷ�F�,;��ӗ�©�KN�ٴ,�:��<���ٶ]R1<�$fY4�9G���骹0�8Ӷ���F[�ۏ����&��
��Ȫ�����vq�?z�xx�~���i�k=9QE��Mf�e\
=�����j���=->� ��!د�̡�'(��DC�
Loading

0 comments on commit e9dcc8a

Please sign in to comment.